/*!
	Montale Design System
	https://montale.design
	(c) Pino Ceniccola
	MIT License
*/

/* Import Montale base/reset styles */

/*! montale-base.css | (c) Pino Ceniccola | MIT License */

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

html {
  text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

body {
  margin: 0;
}

body,
.body-font {
  font-family: var(--body-font-family);
  line-height: var(--body-line-height);
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  color: var(--body-color);
  background-color: var(--body-background-color);
}

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

svg:not(:root) {
  overflow: hidden;
}

svg {
  max-height: 100%;
}

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

/*a:visited {color: var(--link-visited-color);}*/

/* a:not(.btn):hover, a:not(.btn):focus {
  color: var(--link-hover-color);
  text-decoration: var(--link-hover-text-decoration);
} */

a:active {
}

h1,
h2,
h3,
h4,
h5,
h6,
.h {
  font-family: var(--heading-font-family);
  line-height: var(--heading-line-height);
  margin-top: var(--heading-margin-top);
  margin-bottom: var(--heading-margin-bottom);
  color: var(--heading-color);
}

h1 {
  font-size: var(--h1);
  font-weight: var(--heading-font-weight);
}

h2 {
  font-size: var(--h2);
  font-weight: var(--heading-font-weight);
}

h3 {
  font-size: var(--h3);
  font-weight: var(--medium-font-weight);
}

h4 {
  font-size: var(--h4);
  font-weight: var(--medium-font-weight);
}

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

h6 {
  font-size: var(--h6);
}

p,
dl,
ol,
ul,
pre,
figure,
table,
hr,
address,
.block-margin {
  margin-top: var(--block-margin-top);
  margin-bottom: var(--block-margin-bottom);
}

figure {
  margin-left: 0;
  margin-right: 0;
  max-width: 100%;
}

li > ul,
li > ol {
  margin-bottom: 0;
}

b,
strong {
  font-weight: var(--bold-font-weight);
}

.medium {
  font-weight: var(--medium-font-weight);
}

.monospace {
  font-family: var(--monospace-font-family);
}

pre,
code,
kbd {
  color: var(--pre-color);
  font-family: var(--monospace-font-family);
  font-size: var(--pre-font-size);
  background-color: var(--pre-background-color);
  border-radius: var(--pre-border-radius);
}

mark {
  border-radius: var(--pre-border-radius);
}

code,
mark,
kbd {
  padding: 0.5ex 0.5em;
}

pre {
  padding: 1ex 1em;
  overflow-x: scroll;
}

pre code {
  background: transparent;
  padding: 0;
}

address {
  font-style: normal;
  line-height: inherit;
}

dt {
  font-weight: var(--bold-font-weight);
}

hr {
  border: 0;
  border-bottom-style: var(--rule-border-style);
  border-bottom-width: var(--rule-border-width);
  border-bottom-color: var(--rule-border-color);
}

small {
  font-size: 1.5ex;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.5ex;
}

sup {
  top: -1ex;
}

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

/* table reset */

table {
  border-collapse: separate;
  border-spacing: 0;
  max-width: 100%;
  width: 100%;
}

th {
  text-align: left;
  font-weight: var(--table-header-font-weight);
  border-bottom: 1px solid var(--darken-1);
}

th,
td {
  padding: var(--table-cell-padding-y) var(--table-cell-padding-x);
  line-height: inherit;
}

th {
  vertical-align: bottom;
}

td {
  vertical-align: top;
  border-top: 1px solid var(--table-row-border-color);
}

/* basic form reset */

input {
  margin: 0;
  vertical-align: middle;
  font-family: inherit;
}

/*
input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="reset"]):not([type="button"]):not([type="color"]):not([type="range"]),
textarea, select {
  */

input,
textarea,
select {
  border: 1px solid var(--form-field-border-color);
  border-radius: var(--border-radius);
  display: inline-block;
  font-size: var(
    --form-field-font-size
  ); /*margin: var(--block-margin-top) 0 var(--block-margin-bottom) 0;*/
  max-width: 100%;
  padding: var(--form-field-padding-y) var(--form-field-padding-x);
  width: 100%;
  font-family: inherit; /*appearance: none;*/
  background-color: var(--form-field-background-color);
  color: var(--form-field-color);
}

/*
input:focus:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="reset"]):not([type="button"]):not([type="color"]):not([type="range"]), textarea:focus, select:focus {
*/

input:focus,
textarea:focus,
select:focus {
  border-color: var(--form-field-focus-border-color);
}

/*
  Since we defined our own select:focus styles, we can safetly remove the ugly Firefox dotted border.
 */

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}

/*
*   TO DO: Since we styled the naked input element, we have to reset every other input type: button, range,
*   file, radio, checkbox, etc..
*/

input[type="range"] {
  display: block;
  margin: var(--block-margin-top) 0 var(--block-margin-bottom) 0;
  max-width: 100%;
  width: 100%;
  padding: var(--block-margin-bottom);
  border: 0 none;
  background-color: transparent;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

input[type="color"] {
  border: 1px solid var(--darken-1);
  border-radius: var(--border-radius);
  margin: 0;
  padding: 0;
  font-size: inherit;
}

input[type="search"],
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="url"],
select,
textarea {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 0 1rem 0 0;
  vertical-align: middle;
  border: 0 none;
  width: auto;
  padding: 0;
}

input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 1.5rem;
  height: 1.5rem;
  border: 1px solid var(--form-field-border-color);
  border-radius: 5px;
}

input[type="checkbox"]:checked {
  background-image: url(../../assets/icons/icon-selected.svg);
  background-repeat: no-repeat;
  background-position: center;
}

input[type="reset"],
input[type="submit"] {
  width: auto;
}

input:disabled {
  opacity: 0.5;
}

input::placeholder,
textarea::placeholder,
input[type="date"] {
  color: var(--accent);
}

select {
  /*
    We are going to use this little hack for selects, at least until there will be
    more ways to style them more consistently across browsers.
   */
  appearance: none;
  background-image: url(../../assets/icons/list-arrow-blue.svg);
  background-position: calc(100% - 1rem) center;
  background-size: auto;
  background-repeat: no-repeat;
}

option {
  font-family: inherit;
  margin: var(--form-field-padding-y) var(--form-field-padding-x);
}

optgroup {
  padding: 0.2rem;
  font-style: normal;
  font-family: inherit;
}

optgroup option {
  margin: 0;
}

label {
  display: inline-block;
  margin-bottom: var(--space-2);
  color: var(--form-field-label-color);
  font-weight: var(--bold-font-weight);
}

fieldset {
  border: 0 none;
  margin: 0;
  padding: 0;
}

legend {
  width: 100%;
  max-width: 100%;
  margin-bottom: var(--block-margin-bottom);
}

/* Import Basscss modules */

/*@import 'basscss-addons/modules/forms';*/

/* Basscss Input Range */

.input-range {
  vertical-align: middle;
  background-color: transparent;
  padding-top: var(--form-field-padding-y);
  padding-bottom: var(--form-field-padding-y);
  color: inherit;
  background-color: transparent;
  -webkit-appearance: none;
}

.input-range::-webkit-slider-thumb {
  position: relative;
  width: var(--range-thumb-width);
  height: var(--range-thumb-height);
  cursor: pointer;
  margin-top: var(--range-thumb-offset);
  border-radius: var(--border-radius);
  background-color: currentcolor;
  -webkit-appearance: none;
}

/* Touch screen friendly pseudo element */

.input-range::-webkit-slider-thumb:before {
  content: '';
  display: block;
  position: absolute;
  top: calc( -.5 * var(--range-thumb-pseudo-size) + (.5 * var(--range-thumb-height)) );
  left: calc( (-.5 * var(--range-thumb-pseudo-size)) + (.5 * var(--range-thumb-width)) );
  width: var(--range-thumb-pseudo-size);
  height: var(--range-thumb-pseudo-size);
  opacity: 0;
}

.input-range::-moz-range-thumb {
  width: var(--range-thumb-width);
  height: var(--range-thumb-height);
  cursor: pointer;
  border-radius: var(--border-radius);
  border-color: transparent;
  border-width: 0;
  background-color: currentcolor;
}

.input-range::-webkit-slider-runnable-track {
  height: var(--range-track-height);
  cursor: pointer;
  border-radius: var(--border-radius);
  background-color: var(--darken-3);
}

.input-range::-moz-range-track {
  height: var(--range-track-height);
  cursor: pointer;
  border-radius: var(--border-radius);
  background-color: var(--darken-3);
}

.input-range:focus {
  outline: none;
}

:root {
  --form-field-padding-x: .5rem;
  --form-field-padding-y: .5rem;
  --form-field-height: 2.25rem;
  --border-radius: 3px;
  --darken-3: rgba(0, 0, 0, .25);

  --range-thumb-width: var(--form-field-padding-x);
  --range-thumb-height: calc( var(--form-field-height) - (var(--form-field-padding-y) * 2) );
  --range-track-height: calc( var(--form-field-padding-y) / 2 );
  --range-thumb-offset: calc( var(--range-thumb-height) / -2 + (var(--range-track-height) / 2) );
  --range-thumb-pseudo-size: var(--form-field-height);
}

/* Basscss Progress */

.progress {
  display: block;
  width: 100%;
  height: calc( var(--form-field-height) / 4 );
  margin: var(--form-field-padding-y) 0;
  overflow: hidden;
  background-color: var(--darken-2);
  border: 0;
  border-radius: 10000px;
  -webkit-appearance: none;
}

.progress::-webkit-progress-bar {
  -webkit-appearance: none;
  background-color: var(--darken-2)
}

.progress::-webkit-progress-value {
  -webkit-appearance: none;
  background-color: currentcolor;
}

.progress::-moz-progress-bar {
  background-color: currentcolor;
}

:root {
  --form-field-height: 2.25rem;
  --form-field-padding-y: .5rem;
  --darken-2: rgba(0, 0, 0, .125);
}

/* Basscss Btn */

.btn {
  font-family: var(--button-font-family);
  font-size: var(--button-font-size);
  font-weight: var(--button-font-weight);
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
  line-height: var(--button-line-height);
  padding: var(--button-padding-y) var(--button-padding-x);
  margin: 0;
  height: auto;
  border: var(--border-width) solid transparent;
  vertical-align: middle;
  -webkit-appearance: none;
  color: inherit;
  background-color: transparent;
}

.btn:hover {
  text-decoration: none;
}

.btn:focus {
  outline: none;
  border-color: var(--darken-2);
  box-shadow: 0 0 0 3px var(--darken-3);
}

::-moz-focus-inner {
  border: 0;
  padding: 0;
}

:root {
  --border-width: 1px;
  --bold-font-weight: bold;
  --button-font-family: inherit;
  --button-font-size: inherit;
  --button-font-weight: var(--bold-font-weight);
  --button-line-height: 1.125rem;
  --button-padding-y: .5rem;
  --button-padding-x: 1rem;
  --darken-2: rgba(0, 0, 0, .125);
  --darken-3: rgba(0, 0, 0, .25);
}

/* Basscss Btn Sizes */

.btn-small {
  padding: var(--button-small-padding-y) var(--button-small-padding-x);
}

.btn-big {
  padding: var(--button-big-padding-y) var(--button-big-padding-x);
}

.btn-narrow {
  padding-left: var(--button-narrow-padding-x);
  padding-right: var(--button-narrow-padding-x);
}

:root {
  --button-small-padding-y: .25rem;
  --button-small-padding-x: .5rem;
  --button-big-padding-y: 1rem;
  --button-big-padding-x: 1.25rem;
  --button-narrow-padding-x: .5rem;
}

/* Basscss Btn Primary */

.btn-primary {
  color: var(--button-color);
  background-color: var(--button-background-color);
  border-radius: var(--border-radius);
}

.btn-primary:hover {
  box-shadow: inset 0 0 0 20rem var(--darken-1);
}

.btn-primary:active {
  box-shadow: inset 0 0 0 20rem var(--darken-2),
    inset 0 3px 4px 0 var(--darken-3),
    0 0 1px var(--darken-2);
}

.btn-primary:disabled,
.btn-primary.is-disabled {
  opacity: .5;
}

:root {
  --blue: #0074d9;
  --button-color: #fff;
  --button-background-color: var(--blue);
  --border-radius: 3px;
  --darken-1: rgba(0, 0, 0, .0625);
  --darken-2: rgba(0, 0, 0, .125);
  --darken-3: rgba(0, 0, 0, .25);
}

/* Basscss Btn Outline */

.btn-outline,
.btn-outline:hover {
  border-color: currentcolor;
}

.btn-outline {
  border-radius: var(--border-radius);
}

.btn-outline:hover {
  box-shadow: inset 0 0 0 20rem var(--darken-1);
}

.btn-outline:active {
  box-shadow: inset 0 0 0 20rem var(--darken-2),
    inset 0 3px 4px 0 var(--darken-3),
    0 0 1px var(--darken-2);
}

.btn-outline:disabled,
.btn-outline.is-disabled {
  opacity: .5;
}

:root {
  --border-radius: 3px;
  --darken-1: rgba(0, 0, 0, .0625);
  --darken-2: rgba(0, 0, 0, .125);
  --darken-3: rgba(0, 0, 0, .25);
}

/* Basscss Media Object */

.media,
.sm-media,
.md-media,
.lg-media {
  margin-left: -var(--media-object-space);
  margin-right: -var(--media-object-space);
}

.media {
  display: flex;
}

.media-center {
  align-items: center;
}

.media-bottom {
  align-items: flex-end;
}

.media-img,
.media-body {
  padding-left: var(--media-object-space);
  padding-right: var(--media-object-space);
}

.media-body {
  flex: 1 1 auto;
}

@media (min-width: 40em) {
  .sm-media { display: flex }
}

@media (min-width: 50.625em) {
  .md-media { display: flex }
}

@media (min-width: 64em) {
  .lg-media { display: flex }
}

:root {
  --space-1: .5rem;
  --media-object-space: var(--space-1);
}

/*! Basscss | http://basscss.com | MIT License */

/* Basscss Type Scale */

.h00 { font-size: var(--h00) }

.h0 { font-size: var(--h0) }

.h1 { font-size: var(--h1) }

.h2 { font-size: var(--h2) }

.h3 { font-size: var(--h3) }

.h4 { font-size: var(--h4) }

.h5 { font-size: var(--h5) }

.h6 { font-size: var(--h6) }

:root {
  --h00: 4rem;
  --h0: 3rem;
  --h1: 2rem;
  --h2: 1.5rem;
  --h3: 1.25rem;
  --h4: 1rem;
  --h5: .875rem;
  --h6: .75rem;
}

/* Basscss Typography */

.font-family-inherit { font-family: inherit }

.font-size-inherit { font-size: inherit }

.text-decoration-none { text-decoration: none }

.bold    { font-weight: var(--bold-font-weight, bold) }

.regular { font-weight: normal }

.italic  { font-style: italic }

.caps    { text-transform: uppercase; letter-spacing: var(--caps-letter-spacing); }

.left-align   { text-align: left }

.center       { text-align: center }

.right-align  { text-align: right }

.justify      { text-align: justify }

.nowrap { white-space: nowrap }

.break-word { word-wrap: break-word }

.line-height-1 { line-height: var(--line-height-1) }

.line-height-2 { line-height: var(--line-height-2) }

.line-height-3 { line-height: var(--line-height-3) }

.line-height-4 { line-height: var(--line-height-4) }

.list-style-none { list-style: none }

.underline { text-decoration: underline }

.truncate {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.list-reset {
  list-style: none;
  padding-left: 0;
}

:root {
  --line-height-1: 1;
  --line-height-2: 1.125;
  --line-height-3: 1.25;
  --line-height-4: 1.5;
  --caps-letter-spacing: .2em;
  --bold-font-weight: bold;
}

/* Basscss Layout */

.inline       { display: inline }

.block        { display: block }

.inline-block { display: inline-block }

.table        { display: table }

.table-cell   { display: table-cell }

.overflow-hidden { overflow: hidden }

.overflow-scroll { overflow: scroll }

.overflow-auto   { overflow: auto }

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table
}

.clearfix:after { clear: both }

.left  { float: left }

.right { float: right }

.fit { max-width: 100% }

.max-width-1 { max-width: var(--width-1) }

.max-width-2 { max-width: var(--width-2) }

.max-width-3 { max-width: var(--width-3) }

.max-width-4 { max-width: var(--width-4) }

.border-box { box-sizing: border-box }

:root {
  --width-1: 24rem;
  --width-2: 32rem;
  --width-3: 48rem;
  --width-4: 64rem;
}

/* Basscss Align */

.align-baseline { vertical-align: baseline }

.align-top      { vertical-align: top }

.align-middle   { vertical-align: middle }

.align-bottom   { vertical-align: bottom }

/* Basscss Margin */

.m0  { margin:        0 }

.mt0 { margin-top:    0 }

.mr0 { margin-right:  0 }

.mb0 { margin-bottom: 0 }

.ml0 { margin-left:   0 }

.mx0 { margin-left:   0; margin-right:  0 }

.my0 { margin-top:    0; margin-bottom: 0 }

.m1  { margin:        var(--space-1) }

.mt1 { margin-top:    var(--space-1) }

.mr1 { margin-right:  var(--space-1) }

.mb1 { margin-bottom: var(--space-1) }

.ml1 { margin-left:   var(--space-1) }

.mx1 { margin-left:   var(--space-1); margin-right:  var(--space-1) }

.my1 { margin-top:    var(--space-1); margin-bottom: var(--space-1) }

.m2  { margin:        var(--space-2) }

.mt2 { margin-top:    var(--space-2) }

.mr2 { margin-right:  var(--space-2) }

.mb2 { margin-bottom: var(--space-2) }

.ml2 { margin-left:   var(--space-2) }

.mx2 { margin-left:   var(--space-2); margin-right:  var(--space-2) }

.my2 { margin-top:    var(--space-2); margin-bottom: var(--space-2) }

.m3  { margin:        var(--space-3) }

.mt3 { margin-top:    var(--space-3) }

.mr3 { margin-right:  var(--space-3) }

.mb3 { margin-bottom: var(--space-3) }

.ml3 { margin-left:   var(--space-3) }

.mx3 { margin-left:   var(--space-3); margin-right:  var(--space-3) }

.my3 { margin-top:    var(--space-3); margin-bottom: var(--space-3) }

.m4  { margin:        var(--space-4) }

.mt4 { margin-top:    var(--space-4) }

.mr4 { margin-right:  var(--space-4) }

.mb4 { margin-bottom: var(--space-4) }

.ml4 { margin-left:   var(--space-4) }

.mx4 { margin-left:   var(--space-4); margin-right:  var(--space-4) }

.my4 { margin-top:    var(--space-4); margin-bottom: var(--space-4) }

.mxn1 { margin-left: calc(var(--space-1) * -1); margin-right: calc(var(--space-1) * -1); }

.mxn2 { margin-left: calc(var(--space-2) * -1); margin-right: calc(var(--space-2) * -1); }

.mxn3 { margin-left: calc(var(--space-3) * -1); margin-right: calc(var(--space-3) * -1); }

.mxn4 { margin-left: calc(var(--space-4) * -1); margin-right: calc(var(--space-4) * -1); }

.m-auto  { margin: auto; }

.mt-auto { margin-top: auto }

.mr-auto { margin-right: auto }

.mb-auto { margin-bottom: auto }

.ml-auto { margin-left: auto }

.mx-auto { margin-left: auto; margin-right: auto; }

.my-auto { margin-top: auto; margin-bottom: auto; }

:root {
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 2rem;
  --space-4: 4rem;
}

/* Basscss Padding */

.p0  { padding: 0 }

.pt0 { padding-top: 0 }

.pr0 { padding-right: 0 }

.pb0 { padding-bottom: 0 }

.pl0 { padding-left: 0 }

.px0 { padding-left: 0; padding-right:  0 }

.py0 { padding-top: 0;  padding-bottom: 0 }

.p1  { padding:        var(--space-1) }

.pt1 { padding-top:    var(--space-1) }

.pr1 { padding-right:  var(--space-1) }

.pb1 { padding-bottom: var(--space-1) }

.pl1 { padding-left:   var(--space-1) }

.py1 { padding-top:    var(--space-1); padding-bottom: var(--space-1) }

.px1 { padding-left:   var(--space-1); padding-right:  var(--space-1) }

.p2  { padding:        var(--space-2) }

.pt2 { padding-top:    var(--space-2) }

.pr2 { padding-right:  var(--space-2) }

.pb2 { padding-bottom: var(--space-2) }

.pl2 { padding-left:   var(--space-2) }

.py2 { padding-top:    var(--space-2); padding-bottom: var(--space-2) }

.px2 { padding-left:   var(--space-2); padding-right:  var(--space-2) }

.p3  { padding:        var(--space-3) }

.pt3 { padding-top:    var(--space-3) }

.pr3 { padding-right:  var(--space-3) }

.pb3 { padding-bottom: var(--space-3) }

.pl3 { padding-left:   var(--space-3) }

.py3 { padding-top:    var(--space-3); padding-bottom: var(--space-3) }

.px3 { padding-left:   var(--space-3); padding-right:  var(--space-3) }

.p4  { padding:        var(--space-4) }

.pt4 { padding-top:    var(--space-4) }

.pr4 { padding-right:  var(--space-4) }

.pb4 { padding-bottom: var(--space-4) }

.pl4 { padding-left:   var(--space-4) }

.py4 { padding-top:    var(--space-4); padding-bottom: var(--space-4) }

.px4 { padding-left:   var(--space-4); padding-right:  var(--space-4) }

:root {
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 2rem;
  --space-4: 4rem;
}

/* Basscss Grid */

.col {
  float: left;
  box-sizing: border-box;
}

.col-right {
  float: right;
  box-sizing: border-box;
}

.col-1 {
  width: calc(1/12 * 100%);
}

.col-2 {
  width: calc(2/12 * 100%);
}

.col-3 {
  width: calc(3/12 * 100%);
}

.col-4 {
  width: calc(4/12 * 100%);
}

.col-5 {
  width: calc(5/12 * 100%);
}

.col-6 {
  width: calc(6/12 * 100%);
}

.col-7 {
  width: calc(7/12 * 100%);
}

.col-8 {
  width: calc(8/12 * 100%);
}

.col-9 {
  width: calc(9/12 * 100%);
}

.col-10 {
  width: calc(10/12 * 100%);
}

.col-11 {
  width: calc(11/12 * 100%);
}

.col-12 {
  width: 100%;
}

@media (min-width: 40em) {

  .sm-col {
    float: left;
    box-sizing: border-box;
  }

  .sm-col-right {
    float: right;
    box-sizing: border-box;
  }

  .sm-col-1 {
    width: calc(1/12 * 100%);
  }

  .sm-col-2 {
    width: calc(2/12 * 100%);
  }

  .sm-col-3 {
    width: calc(3/12 * 100%);
  }

  .sm-col-4 {
    width: calc(4/12 * 100%);
  }

  .sm-col-5 {
    width: calc(5/12 * 100%);
  }

  .sm-col-6 {
    width: calc(6/12 * 100%);
  }

  .sm-col-7 {
    width: calc(7/12 * 100%);
  }

  .sm-col-8 {
    width: calc(8/12 * 100%);
  }

  .sm-col-9 {
    width: calc(9/12 * 100%);
  }

  .sm-col-10 {
    width: calc(10/12 * 100%);
  }

  .sm-col-11 {
    width: calc(11/12 * 100%);
  }

  .sm-col-12 {
    width: 100%;
  }

}

@media (min-width: 50.625em) {

  .md-col {
    float: left;
    box-sizing: border-box;
  }

  .md-col-right {
    float: right;
    box-sizing: border-box;
  }

  .md-col-1 {
    width: calc(1/12 * 100%);
  }

  .md-col-2 {
    width: calc(2/12 * 100%);
  }

  .md-col-3 {
    width: calc(3/12 * 100%);
  }

  .md-col-4 {
    width: calc(4/12 * 100%);
  }

  .md-col-5 {
    width: calc(5/12 * 100%);
  }

  .md-col-6 {
    width: calc(6/12 * 100%);
  }

  .md-col-7 {
    width: calc(7/12 * 100%);
  }

  .md-col-8 {
    width: calc(8/12 * 100%);
  }

  .md-col-9 {
    width: calc(9/12 * 100%);
  }

  .md-col-10 {
    width: calc(10/12 * 100%);
  }

  .md-col-11 {
    width: calc(11/12 * 100%);
  }

  .md-col-12 {
    width: 100%;
  }

}

@media (min-width: 64em) {

  .lg-col {
    float: left;
    box-sizing: border-box;
  }

  .lg-col-right {
    float: right;
    box-sizing: border-box;
  }

  .lg-col-1 {
    width: calc(1/12 * 100%);
  }

  .lg-col-2 {
    width: calc(2/12 * 100%);
  }

  .lg-col-3 {
    width: calc(3/12 * 100%);
  }

  .lg-col-4 {
    width: calc(4/12 * 100%);
  }

  .lg-col-5 {
    width: calc(5/12 * 100%);
  }

  .lg-col-6 {
    width: calc(6/12 * 100%);
  }

  .lg-col-7 {
    width: calc(7/12 * 100%);
  }

  .lg-col-8 {
    width: calc(8/12 * 100%);
  }

  .lg-col-9 {
    width: calc(9/12 * 100%);
  }

  .lg-col-10 {
    width: calc(10/12 * 100%);
  }

  .lg-col-11 {
    width: calc(11/12 * 100%);
  }

  .lg-col-12 {
    width: 100%;
  }

}

.flex { display: flex }

@media (min-width: 40em) {
  .sm-flex { display: flex }
}

@media (min-width: 50.625em) {
  .md-flex { display: flex }
}

@media (min-width: 64em) {
  .lg-flex { display: flex }
}

.flex-column  { flex-direction: column }

.flex-wrap    { flex-wrap: wrap }

.items-start    { align-items: flex-start }

.items-end      { align-items: flex-end }

.items-center   { align-items: center }

.items-baseline { align-items: baseline }

.items-stretch  { align-items: stretch }

.self-start    { align-self: flex-start }

.self-end      { align-self: flex-end }

.self-center   { align-self: center }

.self-baseline { align-self: baseline }

.self-stretch  { align-self: stretch }

.justify-start   { justify-content: flex-start }

.justify-end     { justify-content: flex-end }

.justify-center  { justify-content: center }

.justify-between { justify-content: space-between }

.justify-around  { justify-content: space-around }

.justify-evenly  { justify-content: space-evenly }

.content-start   { align-content: flex-start }

.content-end     { align-content: flex-end }

.content-center  { align-content: center }

.content-between { align-content: space-between }

.content-around  { align-content: space-around }

.content-stretch { align-content: stretch }

/* 1. Fix for Chrome 44 bug. https://code.google.com/p/chromium/issues/detail?id=506893 */

.flex-auto {
  flex: 1 1 auto;
  min-width: 0; /* 1 */
  min-height: 0; /* 1 */
}

.flex-none { flex: none }

.order-0 { order: 0 }

.order-1 { order: 1 }

.order-2 { order: 2 }

.order-3 { order: 3 }

.order-last { order: 99999 }

/* Basscss Position */

.relative { position: relative }

.absolute { position: absolute }

.fixed    { position: fixed }

.top-0    { top: 0 }

.right-0  { right: 0 }

.bottom-0 { bottom: 0 }

.left-0   { left: 0 }

.z1 { z-index: var(--z1) }

.z2 { z-index: var(--z2) }

.z3 { z-index: var(--z3) }

.z4 { z-index: var(--z4) }

:root {
  --z1: 1;
  --z2: 2;
  --z3: 3;
  --z4: 4;
}

/* Basscss Border */

.border {
  border-style: solid;
  border-width: var(--border-width);
}

.border-top {
  border-top-style: solid;
  border-top-width: var(--border-width);
}

.border-right {
  border-right-style: solid;
  border-right-width: var(--border-width);
}

.border-bottom {
  border-bottom-style: solid;
  border-bottom-width: var(--border-width);
}

.border-left {
  border-left-style: solid;
  border-left-width: var(--border-width);
}

.border-none { border: 0 }

.rounded { border-radius: var(--border-radius) }

.circle  { border-radius: 50% }

.rounded-top    { border-radius: var(--border-radius) var(--border-radius) 0 0 }

.rounded-right  { border-radius: 0 var(--border-radius) var(--border-radius) 0 }

.rounded-bottom { border-radius: 0 0 var(--border-radius) var(--border-radius) }

.rounded-left   { border-radius: var(--border-radius) 0 0 var(--border-radius) }

.not-rounded { border-radius: 0 }

:root {
  --border-width: 1px;
  --border-radius: 3px;
}

/* Basscss Hide */

.hide {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

@media (max-width: 40em) {
  .xs-hide { display: none !important }
}

@media (min-width: 40em) and (max-width: 50.624em) {
  .sm-hide { display: none !important }
}

@media (min-width: 50.625em) and (max-width: 64em) {
  .md-hide { display: none !important }
}

@media (min-width: 64em) {
  .lg-hide { display: none !important }
}

.display-none { display: none !important }

/* Basscss Responsive Margin */

@media (min-width: 40em) {

  .sm-m0  { margin:        0 }
  .sm-mt0 { margin-top:    0 }
  .sm-mr0 { margin-right:  0 }
  .sm-mb0 { margin-bottom: 0 }
  .sm-ml0 { margin-left:   0 }
  .sm-mx0 { margin-left:   0; margin-right:  0 }
  .sm-my0 { margin-top:    0; margin-bottom: 0 }

  .sm-m1  { margin:        var(--space-1) }
  .sm-mt1 { margin-top:    var(--space-1) }
  .sm-mr1 { margin-right:  var(--space-1) }
  .sm-mb1 { margin-bottom: var(--space-1) }
  .sm-ml1 { margin-left:   var(--space-1) }
  .sm-mx1 { margin-left:   var(--space-1); margin-right:  var(--space-1) }
  .sm-my1 { margin-top:    var(--space-1); margin-bottom: var(--space-1) }

  .sm-m2  { margin:        var(--space-2) }
  .sm-mt2 { margin-top:    var(--space-2) }
  .sm-mr2 { margin-right:  var(--space-2) }
  .sm-mb2 { margin-bottom: var(--space-2) }
  .sm-ml2 { margin-left:   var(--space-2) }
  .sm-mx2 { margin-left:   var(--space-2); margin-right:  var(--space-2) }
  .sm-my2 { margin-top:    var(--space-2); margin-bottom: var(--space-2) }

  .sm-m3  { margin:        var(--space-3) }
  .sm-mt3 { margin-top:    var(--space-3) }
  .sm-mr3 { margin-right:  var(--space-3) }
  .sm-mb3 { margin-bottom: var(--space-3) }
  .sm-ml3 { margin-left:   var(--space-3) }
  .sm-mx3 { margin-left:   var(--space-3); margin-right:  var(--space-3) }
  .sm-my3 { margin-top:    var(--space-3); margin-bottom: var(--space-3) }

  .sm-m4  { margin:        var(--space-4) }
  .sm-mt4 { margin-top:    var(--space-4) }
  .sm-mr4 { margin-right:  var(--space-4) }
  .sm-mb4 { margin-bottom: var(--space-4) }
  .sm-ml4 { margin-left:   var(--space-4) }
  .sm-mx4 { margin-left:   var(--space-4); margin-right:  var(--space-4) }
  .sm-my4 { margin-top:    var(--space-4); margin-bottom: var(--space-4) }

  .sm-mxn1 { margin-left: -var(--space-1); margin-right: -var(--space-1) }
  .sm-mxn2 { margin-left: -var(--space-2); margin-right: -var(--space-2) }
  .sm-mxn3 { margin-left: -var(--space-3); margin-right: -var(--space-3) }
  .sm-mxn4 { margin-left: -var(--space-4); margin-right: -var(--space-4) }

  .sm-ml-auto { margin-left:  auto }
  .sm-mr-auto { margin-right: auto }
  .sm-mx-auto { margin-left:  auto; margin-right: auto }

}

@media (min-width: 50.625em) {

  .md-m0  { margin:        0 }
  .md-mt0 { margin-top:    0 }
  .md-mr0 { margin-right:  0 }
  .md-mb0 { margin-bottom: 0 }
  .md-ml0 { margin-left:   0 }
  .md-mx0 { margin-left:   0; margin-right:  0 }
  .md-my0 { margin-top:    0; margin-bottom: 0 }

  .md-m1  { margin:        var(--space-1) }
  .md-mt1 { margin-top:    var(--space-1) }
  .md-mr1 { margin-right:  var(--space-1) }
  .md-mb1 { margin-bottom: var(--space-1) }
  .md-ml1 { margin-left:   var(--space-1) }
  .md-mx1 { margin-left:   var(--space-1); margin-right:  var(--space-1) }
  .md-my1 { margin-top:    var(--space-1); margin-bottom: var(--space-1) }

  .md-m2  { margin:        var(--space-2) }
  .md-mt2 { margin-top:    var(--space-2) }
  .md-mr2 { margin-right:  var(--space-2) }
  .md-mb2 { margin-bottom: var(--space-2) }
  .md-ml2 { margin-left:   var(--space-2) }
  .md-mx2 { margin-left:   var(--space-2); margin-right:  var(--space-2) }
  .md-my2 { margin-top:    var(--space-2); margin-bottom: var(--space-2) }

  .md-m3  { margin:        var(--space-3) }
  .md-mt3 { margin-top:    var(--space-3) }
  .md-mr3 { margin-right:  var(--space-3) }
  .md-mb3 { margin-bottom: var(--space-3) }
  .md-ml3 { margin-left:   var(--space-3) }
  .md-mx3 { margin-left:   var(--space-3); margin-right:  var(--space-3) }
  .md-my3 { margin-top:    var(--space-3); margin-bottom: var(--space-3) }

  .md-m4  { margin:        var(--space-4) }
  .md-mt4 { margin-top:    var(--space-4) }
  .md-mr4 { margin-right:  var(--space-4) }
  .md-mb4 { margin-bottom: var(--space-4) }
  .md-ml4 { margin-left:   var(--space-4) }
  .md-mx4 { margin-left:   var(--space-4); margin-right:  var(--space-4) }
  .md-my4 { margin-top:    var(--space-4); margin-bottom: var(--space-4) }

  .md-mxn1 { margin-left: -var(--space-1); margin-right: -var(--space-1); }
  .md-mxn2 { margin-left: -var(--space-2); margin-right: -var(--space-2); }
  .md-mxn3 { margin-left: -var(--space-3); margin-right: -var(--space-3); }
  .md-mxn4 { margin-left: -var(--space-4); margin-right: -var(--space-4); }

  .md-ml-auto { margin-left:  auto }
  .md-mr-auto { margin-right: auto }
  .md-mx-auto { margin-left: auto; margin-right: auto; }

}

@media (min-width: 64em) {

  .lg-m0  { margin:        0 }
  .lg-mt0 { margin-top:    0 }
  .lg-mr0 { margin-right:  0 }
  .lg-mb0 { margin-bottom: 0 }
  .lg-ml0 { margin-left:   0 }
  .lg-mx0 { margin-left:   0; margin-right:  0 }
  .lg-my0 { margin-top:    0; margin-bottom: 0 }

  .lg-m1  { margin:        var(--space-1) }
  .lg-mt1 { margin-top:    var(--space-1) }
  .lg-mr1 { margin-right:  var(--space-1) }
  .lg-mb1 { margin-bottom: var(--space-1) }
  .lg-ml1 { margin-left:   var(--space-1) }
  .lg-mx1 { margin-left:   var(--space-1); margin-right:  var(--space-1) }
  .lg-my1 { margin-top:    var(--space-1); margin-bottom: var(--space-1) }

  .lg-m2  { margin:        var(--space-2) }
  .lg-mt2 { margin-top:    var(--space-2) }
  .lg-mr2 { margin-right:  var(--space-2) }
  .lg-mb2 { margin-bottom: var(--space-2) }
  .lg-ml2 { margin-left:   var(--space-2) }
  .lg-mx2 { margin-left:   var(--space-2); margin-right:  var(--space-2) }
  .lg-my2 { margin-top:    var(--space-2); margin-bottom: var(--space-2) }

  .lg-m3  { margin:        var(--space-3) }
  .lg-mt3 { margin-top:    var(--space-3) }
  .lg-mr3 { margin-right:  var(--space-3) }
  .lg-mb3 { margin-bottom: var(--space-3) }
  .lg-ml3 { margin-left:   var(--space-3) }
  .lg-mx3 { margin-left:   var(--space-3); margin-right:  var(--space-3) }
  .lg-my3 { margin-top:    var(--space-3); margin-bottom: var(--space-3) }

  .lg-m4  { margin:        var(--space-4) }
  .lg-mt4 { margin-top:    var(--space-4) }
  .lg-mr4 { margin-right:  var(--space-4) }
  .lg-mb4 { margin-bottom: var(--space-4) }
  .lg-ml4 { margin-left:   var(--space-4) }
  .lg-mx4 { margin-left:   var(--space-4); margin-right:  var(--space-4) }
  .lg-my4 { margin-top:    var(--space-4); margin-bottom: var(--space-4) }

  .lg-mxn1 { margin-left: -var(--space-1); margin-right: -var(--space-1); }
  .lg-mxn2 { margin-left: -var(--space-2); margin-right: -var(--space-2); }
  .lg-mxn3 { margin-left: -var(--space-3); margin-right: -var(--space-3); }
  .lg-mxn4 { margin-left: -var(--space-4); margin-right: -var(--space-4); }

  .lg-ml-auto { margin-left:  auto }
  .lg-mr-auto { margin-right: auto }
  .lg-mx-auto { margin-left: auto; margin-right: auto; }

}

:root {
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 2rem;
  --space-4: 4rem;
}

/* Basscss Responsive Padding */

@media (min-width: 40em) {

  .sm-p0  { padding:        0 }
  .sm-pt0 { padding-top:    0 }
  .sm-pr0 { padding-right:  0 }
  .sm-pb0 { padding-bottom: 0 }
  .sm-pl0 { padding-left:   0 }
  .sm-px0 { padding-left:   0; padding-right:  0 }
  .sm-py0 { padding-top:    0; padding-bottom: 0 }

  .sm-p1  { padding:        var(--space-1) }
  .sm-pt1 { padding-top:    var(--space-1) }
  .sm-pr1 { padding-right:  var(--space-1) }
  .sm-pb1 { padding-bottom: var(--space-1) }
  .sm-pl1 { padding-left:   var(--space-1) }
  .sm-px1 { padding-left:   var(--space-1); padding-right:  var(--space-1) }
  .sm-py1 { padding-top:    var(--space-1); padding-bottom: var(--space-1) }

  .sm-p2  { padding:        var(--space-2) }
  .sm-pt2 { padding-top:    var(--space-2) }
  .sm-pr2 { padding-right:  var(--space-2) }
  .sm-pb2 { padding-bottom: var(--space-2) }
  .sm-pl2 { padding-left:   var(--space-2) }
  .sm-px2 { padding-left:   var(--space-2); padding-right:  var(--space-2) }
  .sm-py2 { padding-top:    var(--space-2); padding-bottom: var(--space-2) }

  .sm-p3  { padding:        var(--space-3) }
  .sm-pt3 { padding-top:    var(--space-3) }
  .sm-pr3 { padding-right:  var(--space-3) }
  .sm-pb3 { padding-bottom: var(--space-3) }
  .sm-pl3 { padding-left:   var(--space-3) }
  .sm-px3 { padding-left:   var(--space-3); padding-right:  var(--space-3) }
  .sm-py3 { padding-top:    var(--space-3); padding-bottom: var(--space-3) }

  .sm-p4  { padding:        var(--space-4) }
  .sm-pt4 { padding-top:    var(--space-4) }
  .sm-pr4 { padding-right:  var(--space-4) }
  .sm-pb4 { padding-bottom: var(--space-4) }
  .sm-pl4 { padding-left:   var(--space-4) }
  .sm-px4 { padding-left:   var(--space-4); padding-right:  var(--space-4) }
  .sm-py4 { padding-top:    var(--space-4); padding-bottom: var(--space-4) }

}

@media (min-width: 50.625em) {

  .md-p0  { padding:        0 }
  .md-pt0 { padding-top:    0 }
  .md-pr0 { padding-right:  0 }
  .md-pb0 { padding-bottom: 0 }
  .md-pl0 { padding-left:   0 }
  .md-px0 { padding-left:   0; padding-right:  0 }
  .md-py0 { padding-top:    0; padding-bottom: 0 }

  .md-p1  { padding:        var(--space-1) }
  .md-pt1 { padding-top:    var(--space-1) }
  .md-pr1 { padding-right:  var(--space-1) }
  .md-pb1 { padding-bottom: var(--space-1) }
  .md-pl1 { padding-left:   var(--space-1) }
  .md-px1 { padding-left:   var(--space-1); padding-right:  var(--space-1) }
  .md-py1 { padding-top:    var(--space-1); padding-bottom: var(--space-1) }

  .md-p2  { padding:        var(--space-2) }
  .md-pt2 { padding-top:    var(--space-2) }
  .md-pr2 { padding-right:  var(--space-2) }
  .md-pb2 { padding-bottom: var(--space-2) }
  .md-pl2 { padding-left:   var(--space-2) }
  .md-px2 { padding-left:   var(--space-2); padding-right:  var(--space-2) }
  .md-py2 { padding-top:    var(--space-2); padding-bottom: var(--space-2) }

  .md-p3  { padding:        var(--space-3) }
  .md-pt3 { padding-top:    var(--space-3) }
  .md-pr3 { padding-right:  var(--space-3) }
  .md-pb3 { padding-bottom: var(--space-3) }
  .md-pl3 { padding-left:   var(--space-3) }
  .md-px3 { padding-left:   var(--space-3); padding-right:  var(--space-3) }
  .md-py3 { padding-top:    var(--space-3); padding-bottom: var(--space-3) }

  .md-p4  { padding:        var(--space-4) }
  .md-pt4 { padding-top:    var(--space-4) }
  .md-pr4 { padding-right:  var(--space-4) }
  .md-pb4 { padding-bottom: var(--space-4) }
  .md-pl4 { padding-left:   var(--space-4) }
  .md-px4 { padding-left:   var(--space-4); padding-right:  var(--space-4) }
  .md-py4 { padding-top:    var(--space-4); padding-bottom: var(--space-4) }

}

@media (min-width: 64em) {

  .lg-p0  { padding:        0 }
  .lg-pt0 { padding-top:    0 }
  .lg-pr0 { padding-right:  0 }
  .lg-pb0 { padding-bottom: 0 }
  .lg-pl0 { padding-left:   0 }
  .lg-px0 { padding-left:   0; padding-right:  0 }
  .lg-py0 { padding-top:    0; padding-bottom: 0 }

  .lg-p1  { padding:        var(--space-1) }
  .lg-pt1 { padding-top:    var(--space-1) }
  .lg-pr1 { padding-right:  var(--space-1) }
  .lg-pb1 { padding-bottom: var(--space-1) }
  .lg-pl1 { padding-left:   var(--space-1) }
  .lg-px1 { padding-left:   var(--space-1); padding-right:  var(--space-1) }
  .lg-py1 { padding-top:    var(--space-1); padding-bottom: var(--space-1) }

  .lg-p2  { padding:        var(--space-2) }
  .lg-pt2 { padding-top:    var(--space-2) }
  .lg-pr2 { padding-right:  var(--space-2) }
  .lg-pb2 { padding-bottom: var(--space-2) }
  .lg-pl2 { padding-left:   var(--space-2) }
  .lg-px2 { padding-left:   var(--space-2); padding-right:  var(--space-2) }
  .lg-py2 { padding-top:    var(--space-2); padding-bottom: var(--space-2) }

  .lg-p3  { padding:        var(--space-3) }
  .lg-pt3 { padding-top:    var(--space-3) }
  .lg-pr3 { padding-right:  var(--space-3) }
  .lg-pb3 { padding-bottom: var(--space-3) }
  .lg-pl3 { padding-left:   var(--space-3) }
  .lg-px3 { padding-left:   var(--space-3); padding-right:  var(--space-3) }
  .lg-py3 { padding-top:    var(--space-3); padding-bottom: var(--space-3) }

  .lg-p4  { padding:        var(--space-4) }
  .lg-pt4 { padding-top:    var(--space-4) }
  .lg-pr4 { padding-right:  var(--space-4) }
  .lg-pb4 { padding-bottom: var(--space-4) }
  .lg-pl4 { padding-left:   var(--space-4) }
  .lg-px4 { padding-left:   var(--space-4); padding-right:  var(--space-4) }
  .lg-py4 { padding-top:    var(--space-4); padding-bottom: var(--space-4) }

}

:root {
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 2rem;
  --space-4: 4rem;
}

/* Basscss Responsive Layout */

@media (min-width: 40em) {

  .sm-inline       { display: inline }
  .sm-block        { display: block }
  .sm-inline-block { display: inline-block }
  .sm-table        { display: table }
  .sm-table-cell   { display: table-cell }

  .sm-overflow-hidden { overflow: hidden }
  .sm-overflow-scroll { overflow: scroll }
  .sm-overflow-auto   { overflow: auto }

  .sm-left  { float: left }
  .sm-right { float: right }

}

@media (min-width: 50.625em) {

  .md-inline       { display: inline }
  .md-block        { display: block }
  .md-inline-block { display: inline-block }
  .md-table        { display: table }
  .md-table-cell   { display: table-cell }

  .md-overflow-hidden { overflow: hidden }
  .md-overflow-scroll { overflow: scroll }
  .md-overflow-auto   { overflow: auto }

  .md-left  { float: left }
  .md-right { float: right }

}

@media (min-width: 64em) {

  .lg-inline       { display: inline }
  .lg-block        { display: block }
  .lg-inline-block { display: inline-block }
  .lg-table        { display: table }
  .lg-table-cell   { display: table-cell }

  .lg-overflow-hidden { overflow: hidden }
  .lg-overflow-scroll { overflow: scroll }
  .lg-overflow-auto   { overflow: auto }

  .lg-left  { float: left }
  .lg-right { float: right }

}

:root {
  --width-1: 24rem;
  --width-2: 32rem;
  --width-3: 48rem;
  --width-4: 64rem;
}

/* Basscss Responsive Position */

@media (min-width: 40em) {
  .sm-relative { position: relative }
  .sm-absolute { position: absolute }
  .sm-fixed    { position: fixed }

  .sm-top-0    { top: 0 }
  .sm-right-0  { right: 0 }
  .sm-bottom-0 { bottom: 0 }
  .sm-left-0   { left: 0 }
}

@media (min-width: 50.625em) {
  .md-relative { position: relative }
  .md-absolute { position: absolute }
  .md-fixed    { position: fixed }

  .md-top-0    { top: 0 }
  .md-right-0  { right: 0 }
  .md-bottom-0 { bottom: 0 }
  .md-left-0   { left: 0 }
}

@media (min-width: 64em) {
  .lg-relative { position: relative }
  .lg-absolute { position: absolute }
  .lg-fixed    { position: fixed }

  .lg-top-0    { top: 0 }
  .lg-right-0  { right: 0 }
  .lg-bottom-0 { bottom: 0 }
  .lg-left-0   { left: 0 }
}

/* Basscss Responsive Typography */

@media (min-width: 40em) {
  .sm-left-align   { text-align: left }
  .sm-center       { text-align: center }
  .sm-right-align  { text-align: right }
  .sm-justify      { text-align: justify }
}

@media (min-width: 50.625em) {
  .md-left-align   { text-align: left }
  .md-center       { text-align: center }
  .md-right-align  { text-align: right }
  .md-justify      { text-align: justify }
}

@media (min-width: 64em) {
  .lg-left-align   { text-align: left }
  .lg-center       { text-align: center }
  .lg-right-align  { text-align: right }
  .lg-justify      { text-align: justify }
}

/* Basscss Responsive Type Scale */

@media (min-width: 40em) {
  .sm-h00 { font-size: var(--h00) }
  .sm-h0 { font-size: var(--h0) }
  .sm-h1 { font-size: var(--h1) }
  .sm-h2 { font-size: var(--h2) }
  .sm-h3 { font-size: var(--h3) }
  .sm-h4 { font-size: var(--h4) }
  .sm-h5 { font-size: var(--h5) }
  .sm-h6 { font-size: var(--h6) }
}

@media (min-width: 50.625em) {
  .md-h00 { font-size: var(--h00) }
  .md-h0 { font-size: var(--h0) }
  .md-h1 { font-size: var(--h1) }
  .md-h2 { font-size: var(--h2) }
  .md-h3 { font-size: var(--h3) }
  .md-h4 { font-size: var(--h4) }
  .md-h5 { font-size: var(--h5) }
  .md-h6 { font-size: var(--h6) }
}

@media (min-width: 64em) {
  .lg-h00 { font-size: var(--h00) }
  .lg-h0 { font-size: var(--h0) }
  .lg-h1 { font-size: var(--h1) }
  .lg-h2 { font-size: var(--h2) }
  .lg-h3 { font-size: var(--h3) }
  .lg-h4 { font-size: var(--h4) }
  .lg-h5 { font-size: var(--h5) }
  .lg-h6 { font-size: var(--h6) }
}

:root {
  --h00: 4rem;
  --h0: 3rem;
  --h1: 2rem;
  --h2: 1.5rem;
  --h3: 1.25rem;
  --h4: 1rem;
  --h5: .875rem;
  --h6: .75rem;
}

/* Basscss Colors */

/* 

   VARIABLES

   - Cool
   - Warm
   - Gray Scale

*/

:root {

--aqua:  #7FDBFF;
--blue:  #0074D9;
--navy:  #001F3F;
--teal:  #39CCCC;
--green: #2ECC40;
--olive: #3D9970;
--lime:  #01FF70;

--yellow:  #FFDC00;
--orange:  #FF851B;
--red:     #FF4136;
--fuchsia: #F012BE;
--purple:  #B10DC9;
--maroon:  #85144B;

--white:  #FFFFFF;
--silver: #DDDDDD;
--gray:   #AAAAAA;
--black:  #111111;

}

.black  { color: var(--black) }

.gray   { color: var(--gray) }

.silver { color: var(--silver) }

.white  { color: var(--white) }

.aqua  { color: var(--aqua) }

.blue  { color: var(--blue) }

.navy  { color: var(--navy) }

.teal  { color: var(--teal) }

.green { color: var(--green) }

.olive { color: var(--olive) }

.lime  { color: var(--lime) }

.yellow  { color: var(--yellow) }

.orange  { color: var(--orange) }

.red     { color: var(--red) }

.fuchsia { color: var(--fuchsia) }

.purple  { color: var(--purple) }

.maroon  { color: var(--maroon) }

.color-inherit { color: inherit }

.muted { opacity: .5 }

/* Basscss Background Colors */

.bg-black  { background-color: var(--black) }

.bg-gray   { background-color: var(--gray) }

.bg-silver { background-color: var(--silver) }

.bg-white  { background-color: var(--white) }

.bg-aqua  { background-color: var(--aqua) }

.bg-blue  { background-color: var(--blue) }

.bg-navy  { background-color: var(--navy) }

.bg-teal  { background-color: var(--teal) }

.bg-green { background-color: var(--green) }

.bg-olive { background-color: var(--olive) }

.bg-lime  { background-color: var(--lime) }

.bg-yellow  { background-color: var(--yellow) }

.bg-orange  { background-color: var(--orange) }

.bg-red     { background-color: var(--red) }

.bg-fuchsia { background-color: var(--fuchsia) }

.bg-purple  { background-color: var(--purple) }

.bg-maroon  { background-color: var(--maroon) }

/* Basscss Border Colors */

.border-black  { border-color: var(--black) }

.border-gray   { border-color: var(--gray) }

.border-silver { border-color: var(--silver) }

.border-white  { border-color: var(--white) }

.border-aqua  { border-color: var(--aqua) }

.border-blue  { border-color: var(--blue) }

.border-navy  { border-color: var(--navy) }

.border-teal  { border-color: var(--teal) }

.border-green { border-color: var(--green) }

.border-olive { border-color: var(--olive) }

.border-lime  { border-color: var(--lime) }

.border-yellow  { border-color: var(--yellow) }

.border-orange  { border-color: var(--orange) }

.border-red     { border-color: var(--red) }

.border-fuchsia { border-color: var(--fuchsia) }

.border-purple  { border-color: var(--purple) }

.border-maroon  { border-color: var(--maroon) }

/* Basscss Darken */

.bg-darken-1 { background-color: var(--darken-1) }

.bg-darken-2 { background-color: var(--darken-2) }

.bg-darken-3 { background-color: var(--darken-3) }

.bg-darken-4 { background-color: var(--darken-4) }

:root {
  --darken-1: rgba(0, 0, 0, .0625);
  --darken-2: rgba(0, 0, 0, .125);
  --darken-3: rgba(0, 0, 0, .25);
  --darken-4: rgba(0, 0, 0, .5);
}

/* Basscss Lighten */

.bg-lighten-1 { background-color: var(--lighten-1) }

.bg-lighten-2 { background-color: var(--lighten-2) }

.bg-lighten-3 { background-color: var(--lighten-3) }

.bg-lighten-4 { background-color: var(--lighten-4) }

:root {
  --lighten-1: rgba(255, 255, 255, .0625);
  --lighten-2: rgba(255, 255, 255, .125);
  --lighten-3: rgba(255, 255, 255, .25);
  --lighten-4: rgba(255, 255, 255, .5);
}

/* Basscss Background Images */

.bg-cover   { background-size: cover }

.bg-contain { background-size: contain }

.bg-center  { background-position: center }

.bg-top     { background-position: top }

.bg-right   { background-position: right }

.bg-bottom  { background-position: bottom }

.bg-left    { background-position: left }

.bg-no-repeat { background-repeat: no-repeat }

.bg-repeat-x { background-repeat: repeat-x }

.bg-repeat-y { background-repeat: repeat-y }

/* Basscss All */

.all-initial { all: initial }

.all-unset { all: unset }

.all-inherit { all: inherit }

.all-revert { all: revert }

/* fix for: https://github.com/basscss/basscss/issues/224 */

/*
 *  Fix Basscss bug: https://github.com/basscss/basscss/issues/224
 */

.mxn1 {margin-left: calc( var(--space-1)  * -1 ); margin-right: calc( var(--space-1) * -1 );}

.mxn2 {margin-left: calc( var(--space-2)  * -1 ); margin-right: calc( var(--space-2) * -1 );}

.mxn3 {margin-left: calc( var(--space-3)  * -1 ); margin-right: calc( var(--space-3) * -1 );}

.mxn4 {margin-left: calc( var(--space-4)  * -1 ); margin-right: calc( var(--space-4) * -1 );}

@media (min-width: 40em) {
	.sm-mxn1 { margin-left: calc( var(--space-1) * -1 ); margin-right: calc( var(--space-1) * -1 ) }
	.sm-mxn2 { margin-left: calc( var(--space-2) * -1 ); margin-right: calc( var(--space-2) * -1 ) }
	.sm-mxn3 { margin-left: calc( var(--space-3) * -1 ); margin-right: calc( var(--space-3) * -1 ) }
	.sm-mxn4 { margin-left: calc( var(--space-4) * -1 ); margin-right: calc( var(--space-4) * -1 ) }
}

@media (min-width: 50.625em) {
	.md-mxn1 { margin-left: calc( var(--space-1) * -1 ); margin-right: calc( var(--space-1) * -1 ) }
	.md-mxn2 { margin-left: calc( var(--space-2) * -1 ); margin-right: calc( var(--space-2) * -1 ) }
	.md-mxn3 { margin-left: calc( var(--space-3) * -1 ); margin-right: calc( var(--space-3) * -1 ) }
	.md-mxn4 { margin-left: calc( var(--space-4) * -1 ); margin-right: calc( var(--space-4) * -1 ) }
}

@media (min-width: 64em) {
	.lg-mxn1 { margin-left: calc( var(--space-1) * -1 ); margin-right: calc( var(--space-1) * -1 ) }
	.lg-mxn2 { margin-left: calc( var(--space-2) * -1 ); margin-right: calc( var(--space-2) * -1 ) }
	.lg-mxn3 { margin-left: calc( var(--space-3) * -1 ); margin-right: calc( var(--space-3) * -1 ) }
	.lg-mxn4 { margin-left: calc( var(--space-4) * -1 ); margin-right: calc( var(--space-4) * -1 ) }
}

/* Import Montale modules */

/*! montale-extra.css | (c) Pino Ceniccola | MIT License */

/*
 *	MOTION
 */

.transition {
 	transition: all var(--transition-timing) var(--transition-easing);
}

.transition-fast {
 	transition: all var(--transition-timing-fast) var(--transition-easing);
}

.transition-slow {
 	transition: all var(--transition-timing-slow) var(--transition-easing);
}

:root {
	--transition-timing: 0.25s;
	--transition-timing-fast: 0.1s;
	--transition-timing-slow: 0.5s;
	--transition-easing: ease-in-out;
}

/*
 *	TYPOGRAPHY
 */

/* http://kennethormandy.com/journal/normalize-opentype-css */

html, body, table {
	font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "dlig" 0;
}

.no-font-features {
	font-feature-settings: normal;
}

abbr {
	text-transform: uppercase;
	font-feature-settings: "kern" 1, "liga" 1, "calt" 1, "pnum" 1, "tnum" 0, "onum" 1, "lnum" 0, "smcp" 1, "c2sc" 1;
}

/* font-weight utilities */

.weight-100 { font-weight: 100 }

.weight-200 { font-weight: 200 }

.weight-300 { font-weight: 300 }

.weight-400 { font-weight: 400 }

.weight-500 { font-weight: 500 }

.weight-600 { font-weight: 600 }

.weight-700 { font-weight: 700 }

.weight-800 { font-weight: 800 }

.weight-900 { font-weight: 900 }

.uppercase {
	text-transform: uppercase;
}

.text-balance {
	text-wrap: balance;
}

.text-pretty {
	text-wrap: pretty;
}

.text-trim {
	/* https://developer.mozilla.org/en-US/docs/Web/CSS/text-box */
    text-box: trim-both cap alphabetic;
}

.monospace {
    font-family: var(--monospace-font-family);
}

:root {
        --line-height-1: 1;
        --line-height-2: 1.125;
        --line-height-3: 1.25;
        --line-height-4: 1.5;
}

/* Responsive line-height utilities */

.line-height-1 { line-height: var(--line-height-1) }

.line-height-2 { line-height: var(--line-height-2) }

.line-height-3 { line-height: var(--line-height-3) }

.line-height-4 { line-height: var(--line-height-4) }

@media (min-width: 40em) {
        .sm-line-height-1 { line-height: var(--line-height-1) }
        .sm-line-height-2 { line-height: var(--line-height-2) }
        .sm-line-height-3 { line-height: var(--line-height-3) }
        .sm-line-height-4 { line-height: var(--line-height-4) }
}

@media (min-width: 50.625em) {
        .md-line-height-1 { line-height: var(--line-height-1) }
        .md-line-height-2 { line-height: var(--line-height-2) }
        .md-line-height-3 { line-height: var(--line-height-3) }
        .md-line-height-4 { line-height: var(--line-height-4) }
}

@media (min-width: 64em) {
        .lg-line-height-1 { line-height: var(--line-height-1) }
        .lg-line-height-2 { line-height: var(--line-height-2) }
        .lg-line-height-3 { line-height: var(--line-height-3) }
        .lg-line-height-4 { line-height: var(--line-height-4) }
}

/*
 *	COLORS
 */

:root {
	--orange: orangered;
	--white: #FFFFFF;
	--black: #222;

	--red: #FF4136;
	--green: #2ECC40;
	--blue: #0074D9;

	--gray-1: #EEEEEE;
	--gray-2: #DEDEDE;
	--gray-3: #BEBEBE;
	--gray-4: #7E7E7E;

	--primary: var(--red);
}

.primary {color:var(--primary);}

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

.border-primary {border-color:var(--primary);}

.orange {color:var(--orange);}

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

.black {color:var(--black);}

.bg-orange {background-color:var(--orange);}

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

.bg-black  {background-color:var(--black);}

.border-orange {border-color:var(--orange);}

.border-white  {border-color:var(--white);}

.border-black  {border-color:var(--black);}

.gray-1 {color:var(--gray-1);}

.gray-2 {color:var(--gray-2);}

.gray-3 {color:var(--gray-3);}

.gray-4 {color:var(--gray-4);}

.bg-lightgray { background-color: var(--lightgray) }

.bg-gray-1 {background-color:var(--gray-1);}

.bg-gray-2 {background-color:var(--gray-2);}

.bg-gray-3 {background-color:var(--gray-3);}

.bg-gray-4 {background-color:var(--gray-4);}

.border-gray-1 {border-color:var(--gray-1);}

.border-gray-2 {border-color:var(--gray-2);}

.border-gray-3 {border-color:var(--gray-3);}

.border-gray-4 {border-color:var(--gray-4);}

/* extra color utils */

.color-inherit {
	color:inherit;
}

.current-color {
	color:currentColor;
}

/*
 *  Layout
 */

.sticky {
	position:sticky;
}

@media (min-width: 40em) {
	.sm-sticky {
  		position:sticky;
	}
}

@media (min-width: 50.625em) {
	.md-sticky {
  		position:sticky;
	}
}

@media (min-width: 64em) {
	.lg-sticky {
  		position:sticky;
	}
}

.fill {
	width:100%;
}

/* flex/grid based gap */

.gap-1 {
	gap: var(--space-1);
}

.gap-2 {
	gap: var(--space-2);
}

.gap-3 {
	gap: var(--space-3);
}

.gap-4 {
	gap: var(--space-4);
}

/* link utils */

.no-underline a,.no-underline a:hover, a.no-underline, .no-underline a:focus, a.no-underline:hover, a.no-underline:focus {
	text-decoration:none !important;
}

.currentcolor, .currentcolor a, a.currentcolor:hover, .currentcolor a:hover, a.currentcolor:focus, .currentcolor a:focus, a.currentcolor a:active, .currentcolor a:active {color:currentColor !important;}

.a-color-inherit a, .a-color-inherit a:hover, .a-color-inherit a:focus, .a-color-inherit a:active {color:inherit;}

/* other utils */

.opacity-0 {
	opacity: 0;
}

.js-support .js-opacity-0 {
	opacity: 0;
}

.no-select {
	user-select: none;
}

.pointer-none {
	pointer-events: none;
}

.pointer-all {
	pointer-events: all;
}

.touch-action-none {
	touch-action: none;
}

.cursor-pointer {
	cursor: pointer;
}

/*! montale-grid.css | (c) Pino Ceniccola | MIT License */

.grid {display:grid;}

@media (min-width: 40em) { .sm-grid {display:grid;} }

@media (min-width: 50.625em) { .md-grid {display:grid;} }

@media (min-width: 64em) { .lg-grid {display:grid;} }

.grid-col-2 { grid-template-columns: repeat(2, 1fr); }

.grid-col-3 { grid-template-columns: repeat(3, 1fr); }

.grid-col-4 { grid-template-columns: repeat(4, 1fr); }

.grid-col-5 { grid-template-columns: repeat(5, 1fr); }

.grid-col-6 { grid-template-columns: repeat(6, 1fr); }

@media (min-width: 40em) {
	.sm-grid-col-2 { grid-template-columns: repeat(2, 1fr); }
	.sm-grid-col-3 { grid-template-columns: repeat(3, 1fr); }
	.sm-grid-col-4 { grid-template-columns: repeat(4, 1fr); }
	.sm-grid-col-5 { grid-template-columns: repeat(5, 1fr); }
	.sm-grid-col-6 { grid-template-columns: repeat(6, 1fr); }
}

@media (min-width: 50.625em) {
	.md-grid-col-2 { grid-template-columns: repeat(2, 1fr); }
	.md-grid-col-3 { grid-template-columns: repeat(3, 1fr); }
	.md-grid-col-4 { grid-template-columns: repeat(4, 1fr); }
	.md-grid-col-5 { grid-template-columns: repeat(5, 1fr); }
	.md-grid-col-6 { grid-template-columns: repeat(6, 1fr); }
}

@media (min-width: 64em) {
	.lg-grid-col-2 { grid-template-columns: repeat(2, 1fr); }
	.lg-grid-col-3 { grid-template-columns: repeat(3, 1fr); }
	.lg-grid-col-4 { grid-template-columns: repeat(4, 1fr); }
	.lg-grid-col-5 { grid-template-columns: repeat(5, 1fr); }
	.lg-grid-col-6 { grid-template-columns: repeat(6, 1fr); }
}

/*@import 'montale-switch.css';*/

/*@import 'montale-modal.css';*/

/*@import 'montale-tooltip.css';*/

/*@import 'montale-contentgrid.css';*/

/*! montale-columns.css | (c) Pino Ceniccola | MIT License */

/* clash with woocoomerce.css, prefix with montale- */

.montale-columns-2 {columns:2}

.montale-columns-3 {columns:3}

.montale-columns-4 {columns:4}

@media (min-width: 40em) {
	.sm-columns-2 {columns:2}
	.sm-columns-3 {columns:3}
	.sm-columns-4 {columns:4}
}

@media (min-width: 50.625em) {
	.md-columns-2 {columns:2}
	.md-columns-3 {columns:3}
	.md-columns-4 {columns:4}
}

@media (min-width: 64em) {
	.lg-columns-2 {columns:2}
	.lg-columns-3 {columns:3}
	.lg-columns-4 {columns:4}
}

.columns-gap-0 {
	column-gap: 0;
}

.columns-gap-1 {
	column-gap: var(--space-1);
}

.columns-gap-2 {
	column-gap: var(--space-2);
}

.columns-gap-3 {
	column-gap: var(--space-3);
}

.columns-gap-4 {
	column-gap: var(--space-4);
}

/*
 *  Montale WP
 */

.alignnone {
    /*margin: 5px 20px 20px 0;*/
}

.aligncenter {
    display: block;
    margin-left:auto;
    margin-right:auto;
}

.alignright {
    float:right;
    /*margin: 5px 0 20px 20px;*/
    margin-left:var(--space-3);
    margin-bottom:var(--space-1);
}

.alignleft {
    float: left;
    /*margin: 5px 20px 20px 0;*/
    margin-right:var(--space-3);
    margin-bottom:var(--space-1);
}

/*
a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}
*/

/*
.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}
*/

/*
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
*/

.wp-caption-text {
    font-size: var(--h6);
    /*line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;*/
}

/* Text meant only for screen readers. */

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/*@import 'montale-wp-gutenberg.css';*/

/* Extra margin utilities: spaces 5 to 9 */

.m5  { margin:        var(--space-5) }

.mt5 { margin-top:    var(--space-5) }

.mr5 { margin-right:  var(--space-5) }

.mb5 { margin-bottom: var(--space-5) }

.ml5 { margin-left:   var(--space-5) }

.mx5 { margin-left:   var(--space-5); margin-right:  var(--space-5) }

.my5 { margin-top:    var(--space-5); margin-bottom: var(--space-5) }

.m6  { margin:        var(--space-6) }

.mt6 { margin-top:    var(--space-6) }

.mr6 { margin-right:  var(--space-6) }

.mb6 { margin-bottom: var(--space-6) }

.ml6 { margin-left:   var(--space-6) }

.mx6 { margin-left:   var(--space-6); margin-right:  var(--space-6) }

.my6 { margin-top:    var(--space-6); margin-bottom: var(--space-6) }

.m7  { margin:        var(--space-7) }

.mt7 { margin-top:    var(--space-7) }

.mr7 { margin-right:  var(--space-7) }

.mb7 { margin-bottom: var(--space-7) }

.ml7 { margin-left:   var(--space-7) }

.mx7 { margin-left:   var(--space-7); margin-right:  var(--space-7) }

.my7 { margin-top:    var(--space-7); margin-bottom: var(--space-7) }

.m8  { margin:        var(--space-8) }

.mt8 { margin-top:    var(--space-8) }

.mr8 { margin-right:  var(--space-8) }

.mb8 { margin-bottom: var(--space-8) }

.ml8 { margin-left:   var(--space-8) }

.mx8 { margin-left:   var(--space-8); margin-right:  var(--space-8) }

.my8 { margin-top:    var(--space-8); margin-bottom: var(--space-8) }

.m9  { margin:        var(--space-9) }

.mt9 { margin-top:    var(--space-9) }

.mr9 { margin-right:  var(--space-9) }

.mb9 { margin-bottom: var(--space-9) }

.ml9 { margin-left:   var(--space-9) }

.mx9 { margin-left:   var(--space-9); margin-right:  var(--space-9) }

.my9 { margin-top:    var(--space-9); margin-bottom: var(--space-9) }

@media (min-width: 40em) {

  .sm-m5  { margin:        var(--space-5) }
  .sm-mt5 { margin-top:    var(--space-5) }
  .sm-mr5 { margin-right:  var(--space-5) }
  .sm-mb5 { margin-bottom: var(--space-5) }
  .sm-ml5 { margin-left:   var(--space-5) }
  .sm-mx5 { margin-left:   var(--space-5); margin-right:  var(--space-5) }
  .sm-my5 { margin-top:    var(--space-5); margin-bottom: var(--space-5) }

  .sm-m6  { margin:        var(--space-6) }
  .sm-mt6 { margin-top:    var(--space-6) }
  .sm-mr6 { margin-right:  var(--space-6) }
  .sm-mb6 { margin-bottom: var(--space-6) }
  .sm-ml6 { margin-left:   var(--space-6) }
  .sm-mx6 { margin-left:   var(--space-6); margin-right:  var(--space-6) }
  .sm-my6 { margin-top:    var(--space-6); margin-bottom: var(--space-6) }

  .sm-m7  { margin:        var(--space-7) }
  .sm-mt7 { margin-top:    var(--space-7) }
  .sm-mr7 { margin-right:  var(--space-7) }
  .sm-mb7 { margin-bottom: var(--space-7) }
  .sm-ml7 { margin-left:   var(--space-7) }
  .sm-mx7 { margin-left:   var(--space-7); margin-right:  var(--space-7) }
  .sm-my7 { margin-top:    var(--space-7); margin-bottom: var(--space-7) }

  .sm-m8  { margin:        var(--space-8) }
  .sm-mt8 { margin-top:    var(--space-8) }
  .sm-mr8 { margin-right:  var(--space-8) }
  .sm-mb8 { margin-bottom: var(--space-8) }
  .sm-ml8 { margin-left:   var(--space-8) }
  .sm-mx8 { margin-left:   var(--space-8); margin-right:  var(--space-8) }
  .sm-my8 { margin-top:    var(--space-8); margin-bottom: var(--space-8) }

  .sm-m9  { margin:        var(--space-9) }
  .sm-mt9 { margin-top:    var(--space-9) }
  .sm-mr9 { margin-right:  var(--space-9) }
  .sm-mb9 { margin-bottom: var(--space-9) }
  .sm-ml9 { margin-left:   var(--space-9) }
  .sm-mx9 { margin-left:   var(--space-9); margin-right:  var(--space-9) }
  .sm-my9 { margin-top:    var(--space-9); margin-bottom: var(--space-9) }

}

@media (min-width: 50.625em) {

  .md-m5  { margin:        var(--space-5) }
  .md-mt5 { margin-top:    var(--space-5) }
  .md-mr5 { margin-right:  var(--space-5) }
  .md-mb5 { margin-bottom: var(--space-5) }
  .md-ml5 { margin-left:   var(--space-5) }
  .md-mx5 { margin-left:   var(--space-5); margin-right:  var(--space-5) }
  .md-my5 { margin-top:    var(--space-5); margin-bottom: var(--space-5) }

  .md-m6  { margin:        var(--space-6) }
  .md-mt6 { margin-top:    var(--space-6) }
  .md-mr6 { margin-right:  var(--space-6) }
  .md-mb6 { margin-bottom: var(--space-6) }
  .md-ml6 { margin-left:   var(--space-6) }
  .md-mx6 { margin-left:   var(--space-6); margin-right:  var(--space-6) }
  .md-my6 { margin-top:    var(--space-6); margin-bottom: var(--space-6) }

  .md-m7  { margin:        var(--space-7) }
  .md-mt7 { margin-top:    var(--space-7) }
  .md-mr7 { margin-right:  var(--space-7) }
  .md-mb7 { margin-bottom: var(--space-7) }
  .md-ml7 { margin-left:   var(--space-7) }
  .md-mx7 { margin-left:   var(--space-7); margin-right:  var(--space-7) }
  .md-my7 { margin-top:    var(--space-7); margin-bottom: var(--space-7) }

  .md-m8  { margin:        var(--space-8) }
  .md-mt8 { margin-top:    var(--space-8) }
  .md-mr8 { margin-right:  var(--space-8) }
  .md-mb8 { margin-bottom: var(--space-8) }
  .md-ml8 { margin-left:   var(--space-8) }
  .md-mx8 { margin-left:   var(--space-8); margin-right:  var(--space-8) }
  .md-my8 { margin-top:    var(--space-8); margin-bottom: var(--space-8) }

  .md-m9  { margin:        var(--space-9) }
  .md-mt9 { margin-top:    var(--space-9) }
  .md-mr9 { margin-right:  var(--space-9) }
  .md-mb9 { margin-bottom: var(--space-9) }
  .md-ml9 { margin-left:   var(--space-9) }
  .md-mx9 { margin-left:   var(--space-9); margin-right:  var(--space-9) }
  .md-my9 { margin-top:    var(--space-9); margin-bottom: var(--space-9) }

}

@media (min-width: 64em) {

  .lg-m5  { margin:        var(--space-5) }
  .lg-mt5 { margin-top:    var(--space-5) }
  .lg-mr5 { margin-right:  var(--space-5) }
  .lg-mb5 { margin-bottom: var(--space-5) }
  .lg-ml5 { margin-left:   var(--space-5) }
  .lg-mx5 { margin-left:   var(--space-5); margin-right:  var(--space-5) }
  .lg-my5 { margin-top:    var(--space-5); margin-bottom: var(--space-5) }

  .lg-m6  { margin:        var(--space-6) }
  .lg-mt6 { margin-top:    var(--space-6) }
  .lg-mr6 { margin-right:  var(--space-6) }
  .lg-mb6 { margin-bottom: var(--space-6) }
  .lg-ml6 { margin-left:   var(--space-6) }
  .lg-mx6 { margin-left:   var(--space-6); margin-right:  var(--space-6) }
  .lg-my6 { margin-top:    var(--space-6); margin-bottom: var(--space-6) }

  .lg-m7  { margin:        var(--space-7) }
  .lg-mt7 { margin-top:    var(--space-7) }
  .lg-mr7 { margin-right:  var(--space-7) }
  .lg-mb7 { margin-bottom: var(--space-7) }
  .lg-ml7 { margin-left:   var(--space-7) }
  .lg-mx7 { margin-left:   var(--space-7); margin-right:  var(--space-7) }
  .lg-my7 { margin-top:    var(--space-7); margin-bottom: var(--space-7) }

  .lg-m8  { margin:        var(--space-8) }
  .lg-mt8 { margin-top:    var(--space-8) }
  .lg-mr8 { margin-right:  var(--space-8) }
  .lg-mb8 { margin-bottom: var(--space-8) }
  .lg-ml8 { margin-left:   var(--space-8) }
  .lg-mx8 { margin-left:   var(--space-8); margin-right:  var(--space-8) }
  .lg-my8 { margin-top:    var(--space-8); margin-bottom: var(--space-8) }

  .lg-m9  { margin:        var(--space-9) }
  .lg-mt9 { margin-top:    var(--space-9) }
  .lg-mr9 { margin-right:  var(--space-9) }
  .lg-mb9 { margin-bottom: var(--space-9) }
  .lg-ml9 { margin-left:   var(--space-9) }
  .lg-mx9 { margin-left:   var(--space-9); margin-right:  var(--space-9) }
  .lg-my9 { margin-top:    var(--space-9); margin-bottom: var(--space-9) }

}

:root {
  --space-5: 1.25rem;
  --space-6: 2rem;
  --space-7: 2.75rem;
  --space-8: 4.5rem;
  --space-9: 6rem;
}

/* Extra padding utilities: spaces 5 to 9 */

.p5  { padding:        var(--space-5) }

.pt5 { padding-top:    var(--space-5) }

.pr5 { padding-right:  var(--space-5) }

.pb5 { padding-bottom: var(--space-5) }

.pl5 { padding-left:   var(--space-5) }

.px5 { padding-left:   var(--space-5); padding-right:  var(--space-5) }

.py5 { padding-top:    var(--space-5); padding-bottom: var(--space-5) }

.p6  { padding:        var(--space-6) }

.pt6 { padding-top:    var(--space-6) }

.pr6 { padding-right:  var(--space-6) }

.pb6 { padding-bottom: var(--space-6) }

.pl6 { padding-left:   var(--space-6) }

.px6 { padding-left:   var(--space-6); padding-right:  var(--space-6) }

.py6 { padding-top:    var(--space-6); padding-bottom: var(--space-6) }

.p7  { padding:        var(--space-7) }

.pt7 { padding-top:    var(--space-7) }

.pr7 { padding-right:  var(--space-7) }

.pb7 { padding-bottom: var(--space-7) }

.pl7 { padding-left:   var(--space-7) }

.px7 { padding-left:   var(--space-7); padding-right:  var(--space-7) }

.py7 { padding-top:    var(--space-7); padding-bottom: var(--space-7) }

.p8  { padding:        var(--space-8) }

.pt8 { padding-top:    var(--space-8) }

.pr8 { padding-right:  var(--space-8) }

.pb8 { padding-bottom: var(--space-8) }

.pl8 { padding-left:   var(--space-8) }

.px8 { padding-left:   var(--space-8); padding-right:  var(--space-8) }

.py8 { padding-top:    var(--space-8); padding-bottom: var(--space-8) }

.p9  { padding:        var(--space-9) }

.pt9 { padding-top:    var(--space-9) }

.pr9 { padding-right:  var(--space-9) }

.pb9 { padding-bottom: var(--space-9) }

.pl9 { padding-left:   var(--space-9) }

.px9 { padding-left:   var(--space-9); padding-right:  var(--space-9) }

.py9 { padding-top:    var(--space-9); padding-bottom: var(--space-9) }

@media (min-width: 40em) {

  .sm-p5  { padding:        var(--space-5) }
  .sm-pt5 { padding-top:    var(--space-5) }
  .sm-pr5 { padding-right:  var(--space-5) }
  .sm-pb5 { padding-bottom: var(--space-5) }
  .sm-pl5 { padding-left:   var(--space-5) }
  .sm-px5 { padding-left:   var(--space-5); padding-right:  var(--space-5) }
  .sm-py5 { padding-top:    var(--space-5); padding-bottom: var(--space-5) }

  .sm-p6  { padding:        var(--space-6) }
  .sm-pt6 { padding-top:    var(--space-6) }
  .sm-pr6 { padding-right:  var(--space-6) }
  .sm-pb6 { padding-bottom: var(--space-6) }
  .sm-pl6 { padding-left:   var(--space-6) }
  .sm-px6 { padding-left:   var(--space-6); padding-right:  var(--space-6) }
  .sm-py6 { padding-top:    var(--space-6); padding-bottom: var(--space-6) }

  .sm-p7  { padding:        var(--space-7) }
  .sm-pt7 { padding-top:    var(--space-7) }
  .sm-pr7 { padding-right:  var(--space-7) }
  .sm-pb7 { padding-bottom: var(--space-7) }
  .sm-pl7 { padding-left:   var(--space-7) }
  .sm-px7 { padding-left:   var(--space-7); padding-right:  var(--space-7) }
  .sm-py7 { padding-top:    var(--space-7); padding-bottom: var(--space-7) }

  .sm-p8  { padding:        var(--space-8) }
  .sm-pt8 { padding-top:    var(--space-8) }
  .sm-pr8 { padding-right:  var(--space-8) }
  .sm-pb8 { padding-bottom: var(--space-8) }
  .sm-pl8 { padding-left:   var(--space-8) }
  .sm-px8 { padding-left:   var(--space-8); padding-right:  var(--space-8) }
  .sm-py8 { padding-top:    var(--space-8); padding-bottom: var(--space-8) }

  .sm-p9  { padding:        var(--space-9) }
  .sm-pt9 { padding-top:    var(--space-9) }
  .sm-pr9 { padding-right:  var(--space-9) }
  .sm-pb9 { padding-bottom: var(--space-9) }
  .sm-pl9 { padding-left:   var(--space-9) }
  .sm-px9 { padding-left:   var(--space-9); padding-right:  var(--space-9) }
  .sm-py9 { padding-top:    var(--space-9); padding-bottom: var(--space-9) }

}

@media (min-width: 50.625em) {

  .md-p5  { padding:        var(--space-5) }
  .md-pt5 { padding-top:    var(--space-5) }
  .md-pr5 { padding-right:  var(--space-5) }
  .md-pb5 { padding-bottom: var(--space-5) }
  .md-pl5 { padding-left:   var(--space-5) }
  .md-px5 { padding-left:   var(--space-5); padding-right:  var(--space-5) }
  .md-py5 { padding-top:    var(--space-5); padding-bottom: var(--space-5) }

  .md-p6  { padding:        var(--space-6) }
  .md-pt6 { padding-top:    var(--space-6) }
  .md-pr6 { padding-right:  var(--space-6) }
  .md-pb6 { padding-bottom: var(--space-6) }
  .md-pl6 { padding-left:   var(--space-6) }
  .md-px6 { padding-left:   var(--space-6); padding-right:  var(--space-6) }
  .md-py6 { padding-top:    var(--space-6); padding-bottom: var(--space-6) }

  .md-p7  { padding:        var(--space-7) }
  .md-pt7 { padding-top:    var(--space-7) }
  .md-pr7 { padding-right:  var(--space-7) }
  .md-pb7 { padding-bottom: var(--space-7) }
  .md-pl7 { padding-left:   var(--space-7) }
  .md-px7 { padding-left:   var(--space-7); padding-right:  var(--space-7) }
  .md-py7 { padding-top:    var(--space-7); padding-bottom: var(--space-7) }

  .md-p8  { padding:        var(--space-8) }
  .md-pt8 { padding-top:    var(--space-8) }
  .md-pr8 { padding-right:  var(--space-8) }
  .md-pb8 { padding-bottom: var(--space-8) }
  .md-pl8 { padding-left:   var(--space-8) }
  .md-px8 { padding-left:   var(--space-8); padding-right:  var(--space-8) }
  .md-py8 { padding-top:    var(--space-8); padding-bottom: var(--space-8) }

  .md-p9  { padding:        var(--space-9) }
  .md-pt9 { padding-top:    var(--space-9) }
  .md-pr9 { padding-right:  var(--space-9) }
  .md-pb9 { padding-bottom: var(--space-9) }
  .md-pl9 { padding-left:   var(--space-9) }
  .md-px9 { padding-left:   var(--space-9); padding-right:  var(--space-9) }
  .md-py9 { padding-top:    var(--space-9); padding-bottom: var(--space-9) }

}

@media (min-width: 64em) {

  .lg-p5  { padding:        var(--space-5) }
  .lg-pt5 { padding-top:    var(--space-5) }
  .lg-pr5 { padding-right:  var(--space-5) }
  .lg-pb5 { padding-bottom: var(--space-5) }
  .lg-pl5 { padding-left:   var(--space-5) }
  .lg-px5 { padding-left:   var(--space-5); padding-right:  var(--space-5) }
  .lg-py5 { padding-top:    var(--space-5); padding-bottom: var(--space-5) }

  .lg-p6  { padding:        var(--space-6) }
  .lg-pt6 { padding-top:    var(--space-6) }
  .lg-pr6 { padding-right:  var(--space-6) }
  .lg-pb6 { padding-bottom: var(--space-6) }
  .lg-pl6 { padding-left:   var(--space-6) }
  .lg-px6 { padding-left:   var(--space-6); padding-right:  var(--space-6) }
  .lg-py6 { padding-top:    var(--space-6); padding-bottom: var(--space-6) }

  .lg-p7  { padding:        var(--space-7) }
  .lg-pt7 { padding-top:    var(--space-7) }
  .lg-pr7 { padding-right:  var(--space-7) }
  .lg-pb7 { padding-bottom: var(--space-7) }
  .lg-pl7 { padding-left:   var(--space-7) }
  .lg-px7 { padding-left:   var(--space-7); padding-right:  var(--space-7) }
  .lg-py7 { padding-top:    var(--space-7); padding-bottom: var(--space-7) }

  .lg-p8  { padding:        var(--space-8) }
  .lg-pt8 { padding-top:    var(--space-8) }
  .lg-pr8 { padding-right:  var(--space-8) }
  .lg-pb8 { padding-bottom: var(--space-8) }
  .lg-pl8 { padding-left:   var(--space-8) }
  .lg-px8 { padding-left:   var(--space-8); padding-right:  var(--space-8) }
  .lg-py8 { padding-top:    var(--space-8); padding-bottom: var(--space-8) }

  .lg-p9  { padding:        var(--space-9) }
  .lg-pt9 { padding-top:    var(--space-9) }
  .lg-pr9 { padding-right:  var(--space-9) }
  .lg-pb9 { padding-bottom: var(--space-9) }
  .lg-pl9 { padding-left:   var(--space-9) }
  .lg-px9 { padding-left:   var(--space-9); padding-right:  var(--space-9) }
  .lg-py9 { padding-top:    var(--space-9); padding-bottom: var(--space-9) }

}

:root {
  --space-5: 1.25rem;
  --space-6: 2rem;
  --space-7: 2.75rem;
  --space-8: 4.5rem;
  --space-9: 6rem;
}

/* Import 3rd party modules */

/*@import 'tippy.css';*/

/*@import 'slick.css';*/

/*@import 'keen-slider.css';*/

/*@import 'aos.css';*/

/*@import 'fancybox.css';*/

/* forms */

.vfb-section {
        margin:0;
        padding:0;
        list-style-type:none;
        display: flex;
        flex-wrap: wrap;

        padding-left: 0 !important;
        margin-bottom: 0!important;
        margin-left: calc( var(--space-3) * -1 );
        margin-right: calc( var(--space-3) * -1 );
}

.vfb-desc {
    /*
        font-size:var(--h6);
        text-transform: uppercase;
        font-weight:bold;
        clear:both;
        */
        display:block;
}

.vfb-item {
        /*margin-bottom:var(--space-2);*/
        width: 100%;

        padding:var(--space-3);
}

.vfb-textarea {
        min-height:200px;
}

.vfb-required-asterisk {
        color:var(--red);
}

label.vfb-error {
        color:var(--red);
        /*position:absolute;*/
        font-size:var(--h6);
        clear:both;
        text-transform: uppercase;
        line-height: 1;
        font-weight: bold;
}

.vfb-choice {
        font-size:var(--h6);
        /*padding-left:var(--space-1);*/
        vertical-align: middle;
        cursor: pointer;
        margin-bottom:0;
}

@media (min-width: 50.625em) {
.vfb-choice {
        /*padding-left:var(--space-1);*/
}
}

.vfb-item-instructions {
        /*float:right;
        font-size:var(--h6);*/
        /*margin-bottom:var(--space-3);*/
}

.vfb-item-instructions .vfb-desc {
        /*color: var(--red);
        font-size: var(--h5);
        margin-bottom: var(--space-2)*/
}

.verification {
        font-size: var(--h6);
}

.vfb-item-radio .vfb-span {
        margin-right:var(--space-2);
}

.vfb-item-checkbox .vfb-span {
        display: block;
}

@media (min-width: 50.625em) {
        .vfb-left-half {
                width:50%;
        }
        .vfb-right-half {
                width:50%;
        }

}

/* Privacy */

.privacy-checkbox .vfb-desc {display:none}

.privacy-checkbox-hidden input {display:none}

.privacy-checkbox-hidden .vfb-span {pointer-events:none;}

/*@import 'wp-dropdown-nav.css';*/

/*@import 'nprogress.css';*/

/**
 * Swiper 12.0.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 21, 2025
 */

:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
  .swiper-slide,
  .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
}

/* CSS Mode */

.swiper-css-mode {
  > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none; /* For Firefox */
    -ms-overflow-style: none; /* For Internet Explorer and Edge */
    &::-webkit-scrollbar {
      display: none;
    }
  }
  > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  &.swiper-horizontal {
    > .swiper-wrapper {
      scroll-snap-type: x mandatory;
    }
  }
  &.swiper-vertical {
    > .swiper-wrapper {
      scroll-snap-type: y mandatory;
    }
  }
  &.swiper-free-mode {
    > .swiper-wrapper {
      scroll-snap-type: none;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: none;
    }
  }
  &.swiper-centered {
    > .swiper-wrapper::before {
      content: '';
      flex-shrink: 0;
      order: 9999;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: center center;
      scroll-snap-stop: always;
    }
  }
  &.swiper-centered.swiper-horizontal {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      height: 100%;
      min-height: 1px;
      width: var(--swiper-centered-offset-after);
    }
  }
  &.swiper-centered.swiper-vertical {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      width: 100%;
      min-width: 1px;
      height: var(--swiper-centered-offset-after);
    }
  }
}

/* Slide styles start */

/* 3D Shadows */

.swiper-3d {
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom,
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }
  .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress),
.swiper-watch-progress .swiper-slide-visible {
  .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Slide styles end */

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode {
  .swiper-wrapper::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
  }
}

.swiper-virtual.swiper-css-mode.swiper-horizontal {
  .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size);
  }
}

.swiper-virtual.swiper-css-mode.swiper-vertical {
  .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size);
  }
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 4px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;

  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);

  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  &.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }
  &.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-navigation-disabled & {
    display: none !important;
  }
  svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform-origin: center;
    fill: currentColor;
    pointer-events: none;
  }
}

.swiper-button-lock {
  display: none;
}

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
  .swiper-navigation-icon {
    transform: rotate(180deg);
  }
}

.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}

.swiper-horizontal {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    top: var(--swiper-navigation-top-offset, 50%);
    margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
    margin-left: 0;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 4px);
    right: auto;
  }
  .swiper-button-next,
  & ~ .swiper-button-next,
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 4px);
    left: auto;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    .swiper-navigation-icon {
      transform: rotate(180deg);
    }
  }
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    .swiper-navigation-icon {
      transform: rotate(0deg);
    }
  }
}

.swiper-vertical {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    left: var(--swiper-navigation-top-offset, 50%);
    right: auto;
    margin-left: calc(0px - (var(--swiper-navigation-size) / 2));
    margin-top: 0;
  }
  .swiper-button-prev,
  ~ .swiper-button-prev {
    top: var(--swiper-navigation-sides-offset, 4px);
    bottom: auto;
    .swiper-navigation-icon {
      transform: rotate(-90deg);
    }
  }
  .swiper-button-next,
  ~ .swiper-button-next {
    bottom: var(--swiper-navigation-sides-offset, 4px);
    top: auto;
    .swiper-navigation-icon {
      transform: rotate(90deg);
    }
  }
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
  &.swiper-pagination-hidden {
    opacity: 0;
  }
  .swiper-pagination-disabled > &,
  &.swiper-pagination-disabled {
    display: none !important;
  }
}

/* Common Styles */

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
  .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
  }
  .swiper-pagination-bullet-active {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }
  .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  button& {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    appearance: none;
  }
  .swiper-pagination-clickable & {
    cursor: pointer;
  }

  &:only-child {
    display: none !important;
  }
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
  .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
  }
  &.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    .swiper-pagination-bullet {
      display: inline-block;
      transition:
        200ms transform,
        200ms top;
    }
  }
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-horizontal.swiper-pagination-bullets {
  .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }
  &.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    .swiper-pagination-bullet {
      transition:
        200ms transform,
        200ms left;
    }
  }
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition:
    200ms transform,
    200ms right;
}

/* Fraction */

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
  .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
  }
  .swiper-rtl & .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }
  .swiper-horizontal > &,
  &.swiper-pagination-horizontal,
  .swiper-vertical > &.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
  }
  .swiper-vertical > &,
  &.swiper-pagination-vertical,
  .swiper-horizontal > &.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
  }
}

.swiper-pagination-lock {
  display: none;
}

:root {
  /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
  .swiper-scrollbar-disabled > &,
  &.swiper-scrollbar-disabled {
    display: none !important;
  }
  .swiper-horizontal > &,
  &.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
  .swiper-vertical > &,
  &.swiper-scrollbar-vertical {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

/* Zoom container styles start */

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;

  > img,
  > svg,
  > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
}

/* Zoom container styles end */

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

/* a11y */

.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-thumbs {
  .swiper-slide-thumb-active {
    /* Styles for active thumb slide */
  }
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade {
  &.swiper-free-mode {
    .swiper-slide {
      transition-timing-function: ease-out;
    }
  }
  .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
    .swiper-slide {
      pointer-events: none;
    }
  }
  .swiper-slide-active {
    pointer-events: auto;
    & .swiper-slide-active {
      pointer-events: auto;
    }
  }
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube {
  .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
    .swiper-slide {
      pointer-events: none;
    }
  }
  &.swiper-rtl .swiper-slide {
    transform-origin: 100% 0;
  }
  .swiper-slide-active {
    &,
    & .swiper-slide-active {
      pointer-events: auto;
    }
  }
  .swiper-slide-active,
  .swiper-slide-next,
  .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
  }

  .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    z-index: 0;

    &:before {
      content: '';
      background: #000;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      right: 0;
      filter: blur(50px);
    }
  }
}

.swiper-cube {
  .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
  }
}

/* Cube slide shadows start */

.swiper-cube {
  .swiper-slide-shadow-cube.swiper-slide-shadow-top,
  .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
  .swiper-slide-shadow-cube.swiper-slide-shadow-left,
  .swiper-slide-shadow-cube.swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
  }
}

/* Cube slide shadows end */

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip {
  .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    .swiper-slide {
      pointer-events: none;
    }
  }
  .swiper-slide-active {
    &,
    & .swiper-slide-active {
      pointer-events: auto;
    }
  }
}

/* Flip slide shadows start */

.swiper-flip {
  .swiper-slide-shadow-flip.swiper-slide-shadow-top,
  .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
  .swiper-slide-shadow-flip.swiper-slide-shadow-left,
  .swiper-slide-shadow-flip.swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
  }
}

/* Flip slide shadows end */

.swiper-coverflow {
}

.swiper-creative {
  .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height;
  }
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards {
  .swiper-slide {
    transform-origin: center bottom;
    backface-visibility: hidden;
    overflow: hidden;
  }
}

/* This project custom CSS */

/* This very project extends */

/* Project Name: SuperSigma/Sisa */

/*
 * Stili per il font variabile IBM Plex Sans
 */

body {
    font-optical-sizing: auto;
    font-variation-settings: "wdth" 100;
}

/**
 * Custom colors
 * Primary è già definito di default.
 * PS: Per SISA basterà cambiare queste 3 variabili.
 */

:root {
    --accent: var(--blue);
    --light: var(--aqua);
}

.accent {
    color: var(--accent);
}

.bg-accent {
    background-color: var(--accent);
}

.border-accent {
    border-color: var(--accent);
}

.light {
    color: var(--light);
}

.bg-light {
    background-color: var(--light);
}

.border-light {
    border-color: var(--light);
}

/**
 * Gradient sul body
 */

.gradient-body {
    background: var(--light);
    background: linear-gradient(
        180deg,
        #f6f8ff 0,
        var(--light) 300px,
        var(--light) 100%
    );
}

/**
 * Custom btn border radius
 */

:root {
    --btn-border-radius: 100px;
}

.btn {
    border-radius: var(--btn-border-radius);
}

.btn.rounded-left {
    border-radius: var(--btn-border-radius) 0 0 var(--btn-border-radius);
}

.btn.rounded-right {
    border-radius: 0 var(--btn-border-radius) var(--btn-border-radius) 0;
}

.btn.not-rounded {
    border-radius: 0;
}

/* btn big hanno un border radius standard (10px) */

.btn.btn-big {
    border-radius: var(--border-radius);
}

/**
 * Altri border radius:
 * `rounded-2`: 25px per i div di sfondo arrotondati
 * Estende l'utility base `rounded`
 */

:root {
    --border-radius-2: 10px;
}

.rounded-2 {
    border-radius: var(--border-radius-2);
}

.rounded-2-top {
    border-radius: var(--border-radius-2) var(--border-radius-2) 0 0;
}

.rounded-2-bottom {
    border-radius: 0 0 var(--border-radius-2) var(--border-radius-2);
}

.rounded-2-left {
    border-radius: var(--border-radius-2) 0 0 var(--border-radius-2);
}

.rounded-2-right {
    border-radius: 0 var(--border-radius-2) var(--border-radius-2) 0;
}

/**
 * Box Shadows
 * Li collezioniamo man mano che escono e vediamo se
 * riusciamo a razionalizzarli
 */

.shadow-1 {
    /* utilizzata nell'header e nelle card */
    box-shadow: 0px 2px 5px 2px #ababab4d;
}

/**
 * Thumbnails
 */

.thumbnail {
    aspect-ratio: calc(332 / 272);
    object-fit: cover;
}

.thumbnail-product {
    aspect-ratio: 1;
}

/**
 * Other utils
 */

.fit-contain {
    object-fit: contain;
}

.fit-cover {
    object-fit: cover;
}

.fit-content {
    width: fit-content;
}

/**
 * Entry Content
 */

.entry-content ul,
.entry-content ol {
    padding-left: var(--space-6);
    margin-bottom: var(--space-2);
}

.flex-items-auto > div {
	flex: 1 1 auto;
	width: 100%;
}

.child-p-m0 > p {
    margin:0
}

.child-ul-mb2 > ul {
    margin-bottom: var(--space-2);
}

.child-full-height > div {
    height: 100%;
}

/**
 * Component-specific
 */

/* eccezione widget negozio in post header actions */

@media (min-width: 64em) {
    .lg-min-width-1 {
        min-width:440px
    }
}

.swiper {
    z-index: 0;
}

.bg-loading {
    background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><radialGradient id="a6" cx=".66" fx=".66" cy=".3125" fy=".3125" gradientTransform="scale(1.5)"><stop offset="0" stop-color="%23B5B5B5"></stop><stop offset=".3" stop-color="%23B5B5B5" stop-opacity=".9"></stop><stop offset=".6" stop-color="%23B5B5B5" stop-opacity=".6"></stop><stop offset=".8" stop-color="%23B5B5B5" stop-opacity=".3"></stop><stop offset="1" stop-color="%23B5B5B5" stop-opacity="0"></stop></radialGradient><circle transform-origin="center" fill="none" stroke="url(%23a6)" stroke-width="15" stroke-linecap="round" stroke-dasharray="200 1000" stroke-dashoffset="0" cx="100" cy="100" r="70"><animateTransform type="rotate" attributeName="transform" calcMode="spline" dur="0.6" values="360;0" keyTimes="0;1" keySplines="0 0 1 1" repeatCount="indefinite"></animateTransform></circle><circle transform-origin="center" fill="none" opacity=".2" stroke="%23B5B5B5" stroke-width="15" stroke-linecap="round" cx="100" cy="100" r="70"></circle></svg>');
    background-position:center center;
    background-repeat:no-repeat;
    background-size:50px auto;
}

.breadcrumb_last {
    font-weight: 400;
    font-style: italic;
}

.ditsso-loader {
    width: 25px;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 5px solid #0099ff;
    animation:
        l20-1 0.4s infinite linear alternate,
        l20-2 0.8s infinite linear;
}

@keyframes l20-1 {
    0% {
        clip-path: polygon(
            50% 50%,
            0 0,
            50% 0%,
            50% 0%,
            50% 0%,
            50% 0%,
            50% 0%
        );
    }
    12.5% {
        clip-path: polygon(
            50% 50%,
            0 0,
            50% 0%,
            100% 0%,
            100% 0%,
            100% 0%,
            100% 0%
        );
    }
    25% {
        clip-path: polygon(
            50% 50%,
            0 0,
            50% 0%,
            100% 0%,
            100% 100%,
            100% 100%,
            100% 100%
        );
    }
    50% {
        clip-path: polygon(
            50% 50%,
            0 0,
            50% 0%,
            100% 0%,
            100% 100%,
            50% 100%,
            0% 100%
        );
    }
    62.5% {
        clip-path: polygon(
            50% 50%,
            100% 0,
            100% 0%,
            100% 0%,
            100% 100%,
            50% 100%,
            0% 100%
        );
    }
    75% {
        clip-path: polygon(
            50% 50%,
            100% 100%,
            100% 100%,
            100% 100%,
            100% 100%,
            50% 100%,
            0% 100%
        );
    }
    100% {
        clip-path: polygon(
            50% 50%,
            50% 100%,
            50% 100%,
            50% 100%,
            50% 100%,
            50% 100%,
            0% 100%
        );
    }
}

@keyframes l20-2 {
    0% {
        transform: scaleY(1) rotate(0deg);
    }
    49.99% {
        transform: scaleY(1) rotate(135deg);
    }
    50% {
        transform: scaleY(-1) rotate(0deg);
    }
    100% {
        transform: scaleY(-1) rotate(-135deg);
    }
}

/* WP Admin Bar Custom color */

#wpadminbar {background-color:var(--navy)!important}

/**
 * Dialog Modals
 */

dialog::backdrop {
     background: rgba(255, 255, 255, 0.20);
     box-shadow: 0 2px 5px 2px rgba(171, 171, 171, 0.30);
     backdrop-filter: blur(2px);
 }

/* home specials */

.swiper-principale {
     margin-left:  calc( var(--space-3)  * -1 );
     margin-right: calc( var(--space-3)  * -1 );
 }

@media (min-width: 40em) {
     .swiper-principale {
         margin-left:  auto;
         margin-right: auto;
     }
 }

.menu-mobile li {padding-top:var(--space-2);padding-bottom:var(--space-2);}

.auto-height {
    height: auto;
}

.image-16-9 {
    aspect-ratio: 16 / 9;
}

.bg-navy-opacity-1 {
    background-color: rgba(22, 65, 147, 0.75)
}

.widget-type-1 {
    height: 17.5rem;
}

.swiper.shadows {
    padding: 10px;
}

.height-stretch {
    align-self: stretch;
}

.card-homepage-1 {
    height: 50%;
}

@media (min-width: 50.625em) and (max-width: 64em) {
    .card-homepage-1 {
        height: 100%;
    }
}

.card-homepage-1 .btn-bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.card-homepage-2 .btn-bottom {
    width: 100%;
    border-radius: 0 0 var(--border-radius-2) var(--border-radius-2);
}

@media (min-width: 50.625em) {

    .card-homepage-2 {
        height: 50%;
    }

    .card-homepage-2 .btn-bottom {
        border-radius: var(--border-radius-2) 0 var(--border-radius-2) 0;
    }
}

.card-type-volantino>img {
    height: 15rem;
    object-fit: contain;
}

.slider .swiper-slide {
    height: auto;
}

.slider .swiper-controls {
    height: 30px;
    width: fit-content;
    border-radius: 30px;
    padding: 0 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    backdrop-filter: blur(4px);
    z-index: 1;
}

.slider .swiper-controls.absolute {
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
}

.slider .swiper-controls .swiper-button-prev,
.slider .swiper-controls .swiper-button-next {
    background: none;
    border: none;
    width: fit-content;
    height: auto;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    top: unset;
    bottom: unset;
    left: unset;
    right: unset;
    transition: all 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {

    .slider .swiper-controls .swiper-button-prev,
    .slider .swiper-controls .swiper-button-next {
        transition: none;
    }
}

.slider svg.swiper-navigation-icon {
    display: none;
}

.slider .swiper-controls .swiper-button-prev:after,
.slider-rtl .swiper-controls .swiper-button-next:after {
    content: none;
}

.slider .swiper-controls .swiper-button-next:after,
.slider-rtl .swiper-controls .swiper-button-prev:after {
    content: none;
}

.slider .swiper-controls .swiper-pagination.swiper-pagination-horizontal {
    display: flex;
    gap: 5px;
    position: relative;
    bottom: 0;
    top: 0;
    width: fit-content;
}

.slider .swiper-controls .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background-color: var(--black);
    border-radius: 12px;
    opacity: 0.5;
    transition: all 0.2s ease;
    margin: 0;
}

@media (prefers-reduced-motion: reduce) {
    .slider .swiper-controls .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
        transition: none;
    }
}

.slider .swiper-controls .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active {
    opacity: 1;
    width: 40px;
}

.pager-controls {
    height: 30px;
    width: fit-content;
    border-radius: 30px;
    padding: 0 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    backdrop-filter: blur(4px);
    z-index: 1;
}

.pager-controls.absolute {
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
}

.pager-button-prev,
.pager-button-next {
    background: none;
    border: none;
    width: fit-content;
    height: auto;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    top: unset;
    bottom: unset;
    left: unset;
    right: unset;
    transition: all 0.2s ease;
}

.pager-button-prev.pager-button-disabled,
.pager-button-next.pager-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {

    .pager-button-prev,
    .pager-button-next {
        transition: none;
    }
}

.pager-pagination {
    display: flex;
    gap: 5px;
    position: relative;
    bottom: 0;
    top: 0;
    width: fit-content;
}

.pager-pagination-bullet {
    width: 10px;
    height: 10px;
    background-color: var(--black);
    border-radius: 12px;
    opacity: 0.5;
    transition: all 0.2s ease;
    margin: 0;
    cursor: pointer;
}

@media (prefers-reduced-motion: reduce) {
    .pager-pagination-bullet {
        transition: none;
    }
}

.pager-pagination-bullet-active {
    opacity: 1;
    width: 40px;
}

/* Small: sm-col-6 con gap */

/*
@media (--breakpoint-sm) {
    .flex-grid.gap-1>.sm-col-6 {
        width: calc(50% - var(--space-1) / 2);
    }

    .flex-grid.gap-2>.sm-col-6 {
        width: calc(50% - var(--space-2) / 2);
    }

    .flex-grid.gap-3>.sm-col-6 {
        width: calc(50% - var(--space-3) / 2);
    }

    .flex-grid.gap-4>.sm-col-6 {
        width: calc(50% - var(--space-4) / 2);
    }

    .flex-grid.gap-5>.sm-col-6 {
        width: calc(50% - var(--space-5) / 2);
    }

    .flex-grid.gap-6>.sm-col-6 {
        width: calc(50% - var(--space-6) / 2);
    }
}
*/

/* Medium: md-col-6 con gap */

/*
@media (--breakpoint-md) {
    .flex-grid.gap-1>.md-col-6 {
        width: calc(50% - var(--space-1) / 2);
    }

    .flex-grid.gap-2>.md-col-6 {
        width: calc(50% - var(--space-2) / 2);
    }

    .flex-grid.gap-3>.md-col-6 {
        width: calc(50% - var(--space-3) / 2);
    }

    .flex-grid.gap-4>.md-col-6 {
        width: calc(50% - var(--space-4) / 2);
    }

    .flex-grid.gap-5>.md-col-6 {
        width: calc(50% - var(--space-5) / 2);
    }

    .flex-grid.gap-6>.md-col-6 {
        width: calc(50% - var(--space-6) / 2);
    }

    .flex-grid.gap-1>.md-col-4 {
        width: calc(33.333% - var(--space-1) * 2 / 3);
    }

    .flex-grid.gap-2>.md-col-4 {
        width: calc(33.333% - var(--space-2) * 2 / 3);
    }

    .flex-grid.gap-3>.md-col-4 {
        width: calc(33.333% - var(--space-3) * 2 / 3);
    }

    .flex-grid.gap-4>.md-col-4 {
        width: calc(33.333% - var(--space-4) * 2 / 3);
    }

    .flex-grid.gap-5>.md-col-4 {
        width: calc(33.333% - var(--space-5) * 2 / 3);
    }

    .flex-grid.gap-6>.md-col-4 {
        width: calc(33.333% - var(--space-6) * 2 / 3);
    }
}
*/

/* Large: lg-col-4 e lg-col-3 con gap */

/*
@media (--breakpoint-lg) {
    .flex-grid.gap-1>.lg-col-4 {
        width: calc(33.333% - var(--space-1) * 2 / 3);
    }

    .flex-grid.gap-1>.lg-col-3 {
        width: calc(25% - var(--space-1) * 3 / 4);
    }

    .flex-grid.gap-2>.lg-col-4 {
        width: calc(33.333% - var(--space-2) * 2 / 3);
    }

    .flex-grid.gap-2>.lg-col-3 {
        width: calc(25% - var(--space-2) * 3 / 4);
    }

    .flex-grid.gap-3>.lg-col-4 {
        width: calc(33.333% - var(--space-3) * 2 / 3);
    }

    .flex-grid.gap-3>.lg-col-3 {
        width: calc(25% - var(--space-3) * 3 / 4);
    }

    .flex-grid.gap-4>.lg-col-4 {
        width: calc(33.333% - var(--space-4) * 2 / 3);
    }

    .flex-grid.gap-4>.lg-col-3 {
        width: calc(25% - var(--space-4) * 3 / 4);
    }

    .flex-grid.gap-5>.lg-col-4 {
        width: calc(33.333% - var(--space-5) * 2 / 3);
    }

    .flex-grid.gap-5>.lg-col-3 {
        width: calc(25% - var(--space-5) * 3 / 4);
    }

    .flex-grid.gap-6>.lg-col-4 {
        width: calc(33.333% - var(--space-6) * 2 / 3);
    }

    .flex-grid.gap-6>.lg-col-3 {
        width: calc(25% - var(--space-6) * 3 / 4);
    }
}
*/

@media (min-width: 64em) {
    .lg-justify-start {
        justify-content: flex-start;
    }

    .lg-justify-center {
        justify-content: center;
    }

    .lg-justify-end {
        justify-content: flex-end;
    }
}

@media (min-width: 50.625em) {
    .md-justify-start {
        justify-content: flex-start;
    }

    .md-justify-center {
        justify-content: center;
    }

    .md-justify-end {
        justify-content: flex-end;
    }
}

.product-thumb-btn {
    /*appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: none;*/
}

.product-thumb-btn:focus {
    box-shadow:none;
    outline:none;
    border-color:unset;

}

.product-thumb-btn.border-blue {
    outline: 1px solid var(--blue);
}

.product-thumbnail {
    max-width: 75px;
    max-height: 75px;
    object-fit: contain;
    /*width: 100%;*/
}

@media (min-width: 50.625em) {
    .product-thumbnail {
        width: unset;
    }
}

.list-indent {
    margin-left: 1.5rem;
}

li.list-item:not(:last-child) {
    margin-bottom: 5px;
}

.list-aligned {
    padding-left: 1.25rem;
}

.tabs-full .tabs-trigger {
    padding: var(--space-5) var(--space-6);
    transform: translateY(3px);
}

.tabs-full .tabs-trigger[aria-selected="true"] {
    color: var(--black);
    background-color: var(--white);
    padding: var(--space-5) var(--space-6);
    font-style: normal;
    border-radius: var(--border-radius-2) var(--border-radius-2) 0 0;
    box-shadow: 0px 2px 5px 2px #ABABAB4D;
    clip-path: inset(-10px -10px 2px -10px);
}

.tabs-full .tabs-panels {
    border-radius: 0;
    padding: var(--space-6);
    padding-bottom: var(--space-8);
    border-radius: 0 var(--border-radius-2) var(--border-radius-2) var(--border-radius-2);
}

.full-height-swiper {
    height: calc(100% - var(--space-2));
}

.full-height-swiper.shadows {
    height: calc(100% - 30px - var(--space-2) - 10px);
}

@media (min-width: 64em) {

    .lg-justify-start {
        justify-content: flex-start
    }

    .lg-justify-end {
        justify-content: flex-end
    }

    .lg-justify-center {
        justify-content: center
    }

    .lg-justify-between {
        justify-content: space-between
    }

    .lg-justify-around {
        justify-content: space-around
    }

    .lg-justify-evenly {
        justify-content: space-evenly
    }

}

@media (min-width: 50.625em) {

    .md-justify-start {
        justify-content: flex-start
    }

    .md-justify-end {
        justify-content: flex-end
    }

    .md-justify-center {
        justify-content: center
    }

    .md-justify-between {
        justify-content: space-between
    }

    .md-justify-around {
        justify-content: space-around
    }

    .md-justify-evenly {
        justify-content: space-evenly
    }

}

@media (min-width: 40em) {

    .sm-justify-start {
        justify-content: flex-start
    }

    .sm-justify-end {
        justify-content: flex-end
    }

    .sm-justify-center {
        justify-content: center
    }

    .sm-justify-between {
        justify-content: space-between
    }

    .sm-justify-around {
        justify-content: space-around
    }

    .sm-justify-evenly {
        justify-content: space-evenly
    }

}

.img-richiamo-prodotto {
    max-height: 150px;
}

.overflow-x-auto {
    overflow-x: auto;
}

/* Preheader */

#preheader-panel {
    top: 3.5rem;
    width: 100%;
    max-width: 685px;
    min-width: 300px;
    height: calc(100vh - 3.5rem);
    z-index: 1002;
    box-shadow: 0px 5px 5px 2px #ABABAB4D;
    background: #fff;
    transform: translateX(calc(-1 * 100% - 2.5rem));
    pointer-events: none;
    transition: transform .3s ease-out;
}

#preheader-panel.open {
    transform: translateX(0);
    pointer-events: auto;
}

.preheader-panel-open .preheader::after {
    content: "";
    position: fixed;
    top: 3.5rem;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    z-index: 1001;
    transition: none;
}

.close-panel {
    width: 2.5rem;
    height: 2.5rem;
}

.close-panel:focus {
    outline: none;
    border-color: transparent;
    box-shadow: none;
}

.close-panel:focus-visible,
.close-panel.focus-visible {
    border-color: var(--darken-2);
    box-shadow: 0 0 0 3px var(--darken-3);
}

@media (min-width: 50em) {
    .close-panel {
        margin: 0;
        right: -2.5rem;
        border-radius: 0 0 20px 0;
    }
}

#location-input {
    min-width: 300px;
    border-radius: 100px;
}

/* Menu mobile */

#menu-mobile {
    top: 6.25rem;
    width: 100%;
    min-height: 0;
    z-index: 1001;
    pointer-events: none;
    transition: min-height .3s ease;
}

#menu-mobile.open {
    min-height: calc(100vh - 9.5rem);
    pointer-events: auto;
}

#menu-mobile ul {
    opacity: 0;
    transition: all .15s ease;
}

#menu-mobile.open ul {
    opacity: 1;
    transition: all .6s ease;
}

.open-menu:focus {
    outline: none;
    border-color: transparent;
    box-shadow: none;
}

.open-menu:focus-visible,
.open-menu.focus-visible {
    border-color: var(--darken-2);
    box-shadow: 0 0 0 3px var(--darken-3);
}

.burger-menu-icon span {
    transition: transform .3s ease-out;
}

.burger-menu-icon[aria-expanded="true"] span {
    transform: rotate(45deg) translate(4px, 4px);
}

.burger-menu-icon[aria-expanded="true"] span:nth-child(even) {
    transform: rotate(-45deg) translate(4px, -4px);
}

/* Back to Top */

#back-to-top {
    width: 3rem;
    height: 3rem;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 999;
}

#back-to-top.visible {
    opacity: 1;
    pointer-events: auto;
}

/* margherita */

body {
  max-width: 100vw;
  overflow-x: hidden;
}

a,
.favourite-icon,
button {
  cursor: pointer;
}

ul {
  margin-block-start: unset;
  margin-block-end: unset;
  padding-inline-start: unset;
}

/* p: Ho ristabilito la scala h1-h6 su montale-base.css
   Questa eccezione l'inseriamo qui per il desktop */

@media (min-width: 64em) {
  h5 {font-size:var(--h6)}
}

.bg-white-opacity-1 {
  background: rgba(255, 255, 255, 0.5);
}

.bg-white-opacity-2 {
  background: rgba(255, 255, 255, 0.8);
}

.bg-light-opacity {
  background: rgba(226, 236, 255, 0.8);
}

.blur {
  backdrop-filter: blur(2px);
}

.rounded-3 {
  border-radius: 30px;
}

.underline {
  text-underline-offset: 2px;
}

.full-height {
  height: 100%;
}

.col-offset-0 {
  margin-left: 0;
}

.col-offset-1 {
  margin-left: calc(1 / 12 * 100%);
}

.col-offset-2 {
  margin-left: calc(2 / 12 * 100%);
}

.col-offset-3 {
  margin-left: calc(3 / 12 * 100%);
}

.col-offset-4 {
  margin-left: calc(4 / 12 * 100%);
}

.col-offset-5 {
  margin-left: calc(5 / 12 * 100%);
}

.col-offset-6 {
  margin-left: calc(6 / 12 * 100%);
}

.col-offset-7 {
  margin-left: calc(7 / 12 * 100%);
}

.col-offset-8 {
  margin-left: calc(8 / 12 * 100%);
}

.col-offset-9 {
  margin-left: calc(9 / 12 * 100%);
}

.col-offset-10 {
  margin-left: calc(10 / 12 * 100%);
}

.col-offset-11 {
  margin-left: calc(11 / 12 * 100%);
}

.no-flex-wrap {
  flex-wrap: nowrap;
}

.flex-columnreverse {
  flex-direction: column-reverse;
}

.flex-row {
  flex-direction: row;
}

.flex-rowreverse {
  flex-direction: row-reverse;
}

.gap-4 {
  gap: var(--space-4);
}

.gap-5 {
  gap: var(--space-5);
}

.gap-6 {
  gap: var(--space-6);
}

@media (min-width: 40em) {
  .sm-col-offset-0 {
    margin-left: 0;
  }

  .sm-col-offset-1 {
    margin-left: calc(1 / 12 * 100%);
  }

  .sm-col-offset-2 {
    margin-left: calc(2 / 12 * 100%);
  }

  .sm-col-offset-3 {
    margin-left: calc(3 / 12 * 100%);
  }

  .sm-col-offset-4 {
    margin-left: calc(4 / 12 * 100%);
  }

  .sm-col-offset-5 {
    margin-left: calc(5 / 12 * 100%);
  }

  .sm-col-offset-6 {
    margin-left: calc(6 / 12 * 100%);
  }

  .sm-col-offset-7 {
    margin-left: calc(7 / 12 * 100%);
  }

  .sm-col-offset-8 {
    margin-left: calc(8 / 12 * 100%);
  }

  .sm-col-offset-9 {
    margin-left: calc(9 / 12 * 100%);
  }

  .sm-col-offset-10 {
    margin-left: calc(10 / 12 * 100%);
  }

  .sm-col-offset-11 {
    margin-left: calc(11 / 12 * 100%);
  }

  .sm-flex-wrap {
    flex-wrap: wrap;
  }

  .sm-no-flex-wrap {
    flex-wrap: nowrap;
  }

  .sm-flex-column {
    flex-direction: column;
  }

  .sm-flex-columnreverse {
    flex-direction: column-reverse;
  }

  .sm-flex-row {
    flex-direction: row;
  }

  .sm-flex-rowreverse {
    flex-direction: row-reverse;
  }
}

@media (min-width: 50.625em) {
  .md-col-offset-0 {
    margin-left: 0;
  }

  .md-col-offset-1 {
    margin-left: calc(1 / 12 * 100%);
  }

  .md-col-offset-2 {
    margin-left: calc(2 / 12 * 100%);
  }

  .md-col-offset-3 {
    margin-left: calc(3 / 12 * 100%);
  }

  .md-col-offset-4 {
    margin-left: calc(4 / 12 * 100%);
  }

  .md-col-offset-5 {
    margin-left: calc(5 / 12 * 100%);
  }

  .md-col-offset-6 {
    margin-left: calc(6 / 12 * 100%);
  }

  .md-col-offset-7 {
    margin-left: calc(7 / 12 * 100%);
  }

  .md-col-offset-8 {
    margin-left: calc(8 / 12 * 100%);
  }

  .md-col-offset-9 {
    margin-left: calc(9 / 12 * 100%);
  }

  .md-col-offset-10 {
    margin-left: calc(10 / 12 * 100%);
  }

  .md-col-offset-11 {
    margin-left: calc(11 / 12 * 100%);
  }

  .md-flex-column {
    flex-direction: column;
  }

  .md-flex-columnreverse {
    flex-direction: column-reverse;
  }

  .md-flex-row {
    flex-direction: row;
  }

  .md-flex-rowreverse {
    flex-direction: row-reverse;
  }

  .md-flex-wrap {
    flex-wrap: wrap;
  }

  .md-no-flex-wrap {
    flex-wrap: nowrap;
  }
}

@media (min-width: 64em) {
  .lg-items-start {
    align-items: flex-start;
  }

  .lg-col-offset-0 {
    margin-left: 0;
  }

  .lg-col-offset-1 {
    margin-left: calc(1 / 12 * 100%);
  }

  .lg-col-offset-2 {
    margin-left: calc(2 / 12 * 100%);
  }

  .lg-col-offset-3 {
    margin-left: calc(3 / 12 * 100%);
  }

  .lg-col-offset-4 {
    margin-left: calc(4 / 12 * 100%);
  }

  .lg-col-offset-5 {
    margin-left: calc(5 / 12 * 100%);
  }

  .lg-col-offset-6 {
    margin-left: calc(6 / 12 * 100%);
  }

  .lg-col-offset-7 {
    margin-left: calc(7 / 12 * 100%);
  }

  .lg-col-offset-8 {
    margin-left: calc(8 / 12 * 100%);
  }

  .lg-col-offset-9 {
    margin-left: calc(9 / 12 * 100%);
  }

  .lg-col-offset-10 {
    margin-left: calc(10 / 12 * 100%);
  }

  .lg-col-offset-11 {
    margin-left: calc(11 / 12 * 100%);
  }

  .lg-flex-wrap {
    flex-wrap: wrap;
  }

  .lg-no-flex-wrap {
    flex-wrap: nowrap;
  }

  .lg-flex-column {
    flex-direction: column;
  }

  .lg-flex-columnreverse {
    flex-direction: column-reverse;
  }

  .lg-flex-row {
    flex-direction: row;
  }

  .lg-flex-rowreverse {
    flex-direction: row-reverse;
  }
}

/* Accessibilità fix */

.screen-reader-text {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.visually-hidden-focusable:focus,
.visually-hidden-focusable:active {
  position: static !important;
  width: auto;
  height: auto;
  margin: 0;
  clip: auto;
  padding: 0.5rem 0.75rem;
  background: #000;
  color: #fff;
  z-index: 1000;
  display: inline-block;
}

a:focus-visible,
button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* Prefooter */

.shadow-accent {
  box-shadow: var(--blue-shadow);
}

/*
.prefooter-btn a {
  border-radius: var(--border-radius);
  font-size: 1.25rem;
}
*/

.notice-on {
  color: var(--red);
}

.notice-small-btn {
  border-color: var(--red);
  width: 1.5rem;
  height: 1.5rem;
  top: -0.5rem;
  left: -0.5rem;
  font-size: 1rem;
}

/* Footer */

/*
footer a,
footer a:not(.btn):hover,
footer a:not(.btn):focus {
  display: block;
  color: var(--white);
  text-decoration: none;
  margin: 0.25rem 0;
}
*/

footer .social-links a {
  display: block;
  height: 2.5rem;
  width: 2.5rem;
  background-image: url(../../assets/instagram-icon.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

footer .social-links a.linkedin-link {
  background-image: url(../../assets/linkedin-icon.svg);
}

footer .social-links a.facebook-link {
  background-image: url(../../assets/facebook-icon.svg);
}

footer .social-links a.youtube-link {
  background-image: url(../../assets/youtube-icon.svg);
}

/* Preheader e Header */

.preheader,
.preheader-content {
  height: 3.5rem;
  width: 100vw;
  /*z-index: 1000;*/
}

.preheader-logo {
  height: 1.5rem;
  width: auto
}

.preheader-orari[open] {
  background-color: var(--white);
}

.header,
.header-content {
  height: 6.25rem;
  width: 100vw;
  /*z-index: 100;*/
}

.header-dx {
  gap: var(--space-3);
}

header nav.main-menu a {
  font-size: 1.25rem;
  font-weight: 500;
}

.social-links img {
  border-radius: 100%;
  height: 2.5rem;
  width: 2.5rem;
}

.burger-menu-icon {
  width: 2.5rem;
}

.burger-menu-icon span {
  width: 100%;
  height: 1.5px;
}

/*
.header-dx .btn {
  height: 2.5rem;
  padding: 0.5rem;
}
*/

@media (min-width: 50.625em) and (max-width: 75em) {
  .header-logo {
    max-width: 10rem;
  }

  header nav a {
    font-size: 1rem;
  }

  .social-links img {
    height: 2rem;
    width: 2rem;
  }

  .social-links.gap-3 {
    gap: var(--space-2)
  }
}

/* Buttons */

.btn-label {
  white-space: nowrap;
}

/* Cards */

.btn-bottom {
  font-size: var(--button-font-size);
  font-weight: var(--button-font-weight);
}

.card-type-1 {
  height: 13.5rem;
}

.img-cover {
  object-fit: cover;
  height: 100%;
}

.card-type-1 .btn-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.card-type-3 .btn-bottom {
  width: 100%;
  border-radius: 0 0 var(--border-radius-2) var(--border-radius-2);
}

.card-type-5 .btn-bottom {
  width: 100%;
  border-radius: 0 0 var(--border-radius-2) 0;
}

.card-type-articolo-img {
  height: 17rem;
}

@media (min-width: 50.625em) {
  .card-type-3 .btn-bottom {
    border-radius: var(--border-radius-2) 0 var(--border-radius-2) 0;
  }
}

summary {
  cursor: pointer;
}

.summary-arrow {
  transition: var(--transition-timing) var(--transition-easing);
}

details[open] .summary-arrow {
  transform: rotate(180deg);
}

/* Fix icona accordion Safari */

details > summary {
  list-style: none;
}

details > summary::-webkit-details-marker {
  display: none;
}

details > summary::marker {
  content: "";
}

.breadcrumb {
  width: 100%;
  overflow-x: auto;
}

.breadcrumb a {
  white-space: pre;
}

.reparti-e-servizi .icon {
  height: 1.25rem;
  width: 1.25rem;
  object-fit: contain;
}

@media (max-width: 64em) {
  .negozi-e-volantini-search {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 1rem;
  }

  .xs-m0 {
    margin: 0
  }
}

.presume-no-mouse .negozio-section .neg-accordion:active {
  box-shadow: inset 0 0 0 20rem var(--darken-2),
    inset 0 3px 4px 0 var(--darken-3),
    0 0 1px var(--darken-2);
}

.negozio-section .neg-accordion {
  border-radius: 20px;
  box-shadow: 0 2px 5px 2px rgba(171, 171, 171, 0.30);
}

.negozio-section .neg-summary:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

@media (max-width: 50.625em) {
  .negozio-section .neg-panel> :where(h1, h2, h3, h4, h5, h6):first-child {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .negozio-section .neg-summary::after {
    transition: none;
  }
}

@media (max-width: 50.625em) {
  .negozio-section {
    padding-top: var(--space-2);
    padding-bottom: var(--space-2);
    margin: 0;
  }

  .negozio-section.iniziative-cui-aderisce-negozio {
    padding-bottom: var(--space-6)
  }
}

@media (min-width: 50.625em) {
  .negozio-section .neg-accordion {
    border: 0;
    border-radius: 0;
    background: transparent;
    margin: 0;
    overflow: visible;
    box-shadow: none;
  }

  .negozio-section .neg-summary {
    display: none;
  }

  .negozio-section .neg-panel {
    padding: 0;
  }
}

/* Tabs */

.tabs-col .tabs-list {
  padding-left: var(--space-6);
  padding-right: var(--space-6);
  padding-bottom: var(--space-7)
}

.tabs-trigger {
  border: none;
  background: none;
  cursor: pointer;
  font-family: var(--body-font-family);
  font-weight: var(--medium-font-weight);
  font-size: var(--p);
  position: relative;
}

.tabs-base .tabs-trigger[aria-selected="true"] {
  color: var(--black);
  background-color: var(--white);
  padding: var(--space-5) var(--space-6);
  font-style: normal;
  border-radius: var(--border-radius-2) var(--border-radius-2) 0 0;
  box-shadow: 0px 2px 5px 2px #ABABAB4D;
  clip-path: inset(-10px -10px 2px -10px);
  margin-bottom: -2px;
  z-index: -1;
}

.tabs-trigger {
  padding: var(--space-1);
}

.tabs-col .tabs-trigger[aria-selected="true"] {
  color: var(--accent);
  background-color: var(--white);
  font-style: italic;
  border-radius: var(--border-radius-2) var(--border-radius-2) 0 0;

  position: absolute;
  bottom: 0;
}

.tabs-panels {
  border-radius: var(--border-radius-2);
}

.subcats {
  display: grid;
  gap: var(--space-2);
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height .25s ease, opacity .25s ease;
}

.subcats.is-open {
  max-height: 100%;
  width: 100%;
  background: var(--white);
  padding: var(--space-2) 0;
  opacity: 1;
  border-radius: 0 0 0 var(--border-radius-2);
}

.subcat-link {
  display: inline-block;
  text-decoration: none;
  font-size: var(--p);
  color: var(--black);
  padding: var(--space-1);
  border-radius: var(--border-radius-1);
}

.subcat-link.active {
  font-weight: var(--bold-font-weight, bold)
}

.subcat-link:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

@media (min-width: 64em) {
  .tabs-col .tabs-list {
    padding-left: var(--space-6);
    padding-right: 0;
    padding-bottom: 0
  }

  .tabs-trigger {
    font-size: var(--h3);
  }

  .tabs-col .tabs-trigger[aria-selected="true"] {
    padding: var(--space-2);
    border-radius: var(--border-radius-2) 0 0 var(--border-radius-2);
    width: 100%;
    position: relative;
    bottom: unset;
  }

  .tabs-col .tabs-trigger[aria-expanded="true"][aria-selected="true"] {
    border-radius: var(--border-radius-2) 0 0 0;
  }

  .tabs-panels {
    border-radius: 0 var(--border-radius-2) var(--border-radius-2) var(--border-radius-2);
  }

  .tabs-col .tabs-panels {
    padding-left: var(--space-5)
  }
}

.edit-icon,
.delete-icon {
  border: 0;
  width: 2rem;
  height: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  justify-self: end;
}

.delete-icon {
  top: .5rem;
  right: .5rem;
}

.tab-panel {
  overflow-wrap: break-word;
}

.dettagli-carta-fedelta-profilo {
  margin-top: var(--space-8);
  align-items: center;
  text-align: center;
}

.carta-fedelta-profilo {
  max-width: 20rem;
}

@media (min-width: 64em) {
  .carta-fedelta-profilo {
    max-width: 100%;
  }

  .dettagli-carta-fedelta-profilo {
    margin: 0;
    align-items: left;
    text-align: left;
  }

  .tabs-col .tabs-panels {
    padding-right: var(--space-6);
  }
}

/* Modale */

.modal-overlay {
  inset: 0;
  display: none;
  background: rgba(255, 255, 255, 0.20);
  box-shadow: 0 2px 5px 2px rgba(171, 171, 171, 0.30);
  backdrop-filter: blur(2px);
  z-index: 10;
}

.modal-overlay.is-open {
  display: flex;
}

.modal-dialog {
  width: 100%;
  outline: none;
}

.modal-close {
  background: transparent;
  border: 0;
}

.modal-close.btn-outline {
  border: solid 1px currentcolor;
  border-radius: var(--btn-border-radius);
}

.social-links {
  justify-content: center;
}

@media (min-width: 50.625em) {
  .social-links {
    justify-content: flex-start;
  }
}

/* Filtri */

.filter-button,
.filter-option {
  background: transparent;
  border: none;
  cursor: pointer;
  transition: all var(--transition-timing) var(--transition-easing);
  font-family: var(--button-font-family);
}

/*
.filter-dropdown {
  border: solid 1px var(--accent);
  font-size: var(--body-font-size);
}
*/

.filter-option:hover {
  font-weight: var(--bold-font-weight);
}

/* Finally, import design tokens */

/* montale-defaults.css | (c) Pino Ceniccola | MIT License */

/*
@custom-media --breakpoint-sm (min-width: 40em);
@custom-media --breakpoint-md (min-width: 50em);
@custom-media --breakpoint-lg (min-width: 64em);
*/

:root {
  --breakpoint-sm-value: 40em;
  --breakpoint-md-value: 50.625em;
  --breakpoint-lg-value: 64em;

  /* base defaults */
  --body-font-family: "IBM Plex Sans", sans-serif;
  --body-line-height: 1.35;
  --body-font-size: var(--p);
  --body-font-weight: 400;
  --heading-font-family: var(--body-font-family);
  --heading-font-weight: 700;
  --heading-line-height: 1.3;
  --heading-margin-top: 0;
  --heading-margin-bottom: 1.5rem; /*.5em;*/
  --monospace-font-family: "SF Mono", "Menlo", "Inconsolata", "Fira Mono",
    "Droid Sans Mono", "Source Code Pro", monospace;
  --bold-font-weight: 700;
  --medium-font-weight: 500;
  --block-margin-top: 0;
  --block-margin-bottom: 1.5rem;
  --pre-font-size: inherit;

  /* base colors */
  --body-background-color: var(--white);
  --body-color: var(
    --black
  ); /*color(var(--body-background-color) contrast(70%));*/
  --heading-color: inherit;
  --link-color: var(--primary);
  /* --link-hover-color: var(--primary); */
  --link-visited-color: inherit; /*color(var(--link-color) blackness(10%));*/
  --link-text-decoration: none;
  --link-hover-text-decoration: none;
  --pre-color: var(--black);
  --pre-background-color: var(--gray);
  --pre-border-radius: var(--border-radius);
  --rule-border-style: inset;
  --rule-border-width: 1px;
  --rule-border-color: var(--gray);
  --selection-color: var(--white);
  --selection-background-color: var(--primary);

  /* base tables  */
  --table-header-font-weight: var(--body-font-weight);
  --table-cell-padding-x: 0.5rem;
  --table-cell-padding-y: 0.5rem;
  --table-row-border-color: var(--accent);

  /* base forms */
  --form-field-font-size: inherit;
  --form-field-background-color: var(--lighten-1);
  --form-field-color: var(--black);
  --form-field-border-color: var(--accent);
  --form-field-focus-border-color: var(--red); /*var(--gray-3);*/
  --form-field-label-color: var(--black);
  --form-field-padding-x: 1rem;
  --form-field-padding-y: 1.25rem;

  /* typography */
  --line-height-1: 1;
  --line-height-2: 1.125;
  --line-height-3: 1.25;
  --line-height-4: 1.5;
  --letter-spacing: 1;
  --caps-letter-spacing: 0.1em;
  /*--bold-font-weight: bold;*/

  /* base typographic scale */
  --h1: 2rem;
  --h2: 1.56rem;
  --h3: 1.25rem;
  --h4: 1rem;
  --h5: 0.875rem;
  --h6: 0.75rem;
  --p: var(--h4);

  /*
		experimental modular typographic scale
		ref: https://cloudfour.com/thinks/responsive-guide-to-type-sizing/
	*/
  /* --ratio: 1.3;
  --base: 1;
  --base-rem: calc(var(--base) * 1rem);
  --ms0: 1;
  --ms1: var(--ratio);
  --ms2: calc(var(--ratio) * var(--ms1));
  --ms3: calc(var(--ratio) * var(--ms2));
  --ms4: calc(var(--ratio) * var(--ms3));
  --ms5: calc(var(--ratio) * var(--ms4));
  --ms6: calc(var(--ratio) * var(--ms5));
  --ms7: calc(var(--ratio) * var(--ms6));
  --h00: calc(var(--base-rem) * var(--ms5));
  --h0: calc(var(--base-rem) * var(--ms4));
  --h1: calc(var(--base-rem) * var(--ms3));
  --h2: calc(var(--base-rem) * var(--ms2));
  --h3: calc(var(--base-rem) * var(--ms1));
  --h4: calc(var(--base-rem) * var(--ms0));
  --h5: calc(var(--base-rem) / var(--ms1));
  --h6: calc(var(--base-rem) / var(--ms2)); */

  /* layout */
  --width-1: 24.5rem;
  --width-2: 32rem;
  --width-3: 48rem;
  --width-4: 90rem;

  /* white space */
  --space-1: 0.5rem;
  --space-2: 0.75rem;
  --space-3: 1rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 2rem;
  --space-7: 2.75rem;
  --space-8: 4.5rem;
  --space-9: 6rem;

  /* border */
  --border-width: 1px;
  --border-radius: 10px;

  /* shadow */
  --blue-shadow: 0 2px 5px 2px rgba(87, 131, 217, 0.2);

  /* position */
  --z1: 1;
  --z2: 2;
  --z3: 3;
  --z4: 4;

  /* motion */
  --transition-timing: 0.25s;
  --transition-timing-fast: 0.1s;
  --transition-timing-slow: 0.5s;
  --transition-easing: cubic-bezier(0.455, 0.03, 0.515, 0.955);

  /* button */
  --button-font-family: inherit;
  --button-font-size: var(--p);
  --button-font-weight: 700;
  --button-line-height: 1.125rem;
  --button-padding-y: 0.5rem; /*var(--form-field-padding-y);*/
  --button-padding-x: 0.8rem;
  --button-color: var(--white);
  --button-background-color: var(--primary);

  /* button sizes */
  --button-small-padding-y: 0.2rem;
  --button-small-padding-x: 0.5rem;
  --button-big-padding-y: 2.5rem;
  --button-big-padding-x: 2rem;
  --button-narrow-padding-x: 6rem;

  /* darken */
  --darken-1: rgba(0, 0, 0, 0.03);
  --darken-2: rgba(0, 0, 0, 0.1);
  --darken-3: rgba(0, 0, 0, 0.25);
  --darken-4: rgba(0, 0, 0, 0.5);

  /* lighten */
  --lighten-1: rgba(255, 255, 255, 0.0625);
  --lighten-2: rgba(255, 255, 255, 0.125);
  --lighten-3: rgba(255, 255, 255, 0.25);
  --lighten-4: rgba(255, 255, 255, 0.5);

  /* colors */

  --navy: #164193; /* primary */
  --blue: #5783d9; /* accent */
  --aqua: #eaf1ff; /* light */
  --red: #e30234;

  --teal: #39cccc;
  --green: #1E852A;
  --olive: #3d9970;
  --lime: #01ff70;
  --yellow: #ffec00;
  --orange: orangered;
  --fuchsia: #f012be;
  --purple: #b10dc9;
  --maroon: #af2d26;
  --white: #ffffff;
  --silver: #dddddd;
  --lightgray: #efefef;
  --gray: #f0f0f0;
  --black: #272727;

  /* neutral colors */
  --gray-1: #f6f7f8;
  --gray-2: #f0f0f0;
  --gray-3: #aaaaaa;
  --gray-4: #7e7e7e;

  --primary: var(--navy);
  --accent: var(--blue);
  --light: var(--aqua);
}

/* Questo no

@media (--breakpoint-lg) {
  :root {
  --space-4: 1.25rem;
  --space-5: 1.8rem;
  --space-6: 2.5rem;
  --space-7: 3.75rem;
  --space-8: 5.6rem;
  --space-9: 7.5rem;

  --h1: 2.5rem;
  --h2: 2rem;
  --h4: 1.25rem;
  }
}

@media (max-width: 23.5em) {
  :root {
    --space-6: 1.25rem;
  }
}


*/

/* SISA */

/* SISA CSS */

/**
 * Facciamo un overwrite delle classi interessate (e qualche altra eccezione
 * tipo background image, etc).
 *
 * I colori SISA sono:
 * Primary #005A43
 * Accent  #009973
 * Light   #E7F2EF
 */

.sisa.gradient-body {
	background: #E7F2EF;
	background: linear-gradient(180deg, #f3f9f7 0, #E7F2EF 300px, #E7F2EF 100%);
}

.sisa .primary {color:#005A43}

.sisa .bg-primary, .sisa .btn-primary {background-color:#005A43}

.sisa .border-primary {border-color:#005A43}

.sisa .accent {color:#009973;}

.sisa .bg-accent {background-color:#009973;}

.sisa .border-accent {border-color:#009973;}

.sisa .light {color:#E7F2EF;}

.sisa .bg-light {background-color:#E7F2EF;}

.sisa .border-light {border-color:#E7F2EF;}

.sisa .icon-filter {
	filter: hue-rotate(288deg) brightness(108%);
}

.sisa a:not(.btn):not(.white):not(.red) {color:#005A43}

.sisa .shadow-accent {
	box-shadow: 0px 2px 5px 2px #00997333!important;
}

.sisa .tabs-col .tabs-trigger[aria-selected="true"] {
	color: #009973;
}

/* forms etc */

.sisa input,
.sisa textarea,
.sisa select {
	border-color: #009973;
}

.sisa input::placeholder,
.sisa textarea::placeholder,
.sisa input[type="date"] {
  color: #009973;
}

.sisa ::selection {
  background: #005A43;
}

.sisa td {border-top: 1px solid #009973;}

/* WP Admin Bar Custom color */

body.sisa #wpadminbar {background-color:#005A43!important}

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