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

.h1{ font-size: 2rem }
.h2{ font-size: 1.5rem }
.h3{ font-size: 1.25rem }
.h4{ font-size: 1rem }
.h5{ font-size: .875rem }
.h6{ font-size: .75rem }

a:hover{
		color:#a10127 !important;
}
input:focus {
    outline: none;
}
img { -ms-interpolation-mode: bicubic; }

.font-family-inherit{ font-family:inherit }
.font-size-inherit{ font-size:inherit }
.text-decoration-none{ text-decoration:none }

.bold{ font-weight: bold; font-weight: bold }
.regular{ font-weight:normal }
.italic{ font-style:italic }
.caps{ text-transform:uppercase; letter-spacing: .2em; }

.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: 1 }
.line-height-2{ line-height: 1.125 }
.line-height-3{ line-height: 1.25 }
.line-height-4{ line-height: 1.5 }

.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;
}

.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: 24rem }
.max-width-2{ max-width: 32rem }
.max-width-3{ max-width: 48rem }
.max-width-4{ max-width: 64rem }

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

.align-baseline{ vertical-align:baseline }
.align-top{ vertical-align:top }
.align-middle{ vertical-align:middle }
.align-bottom{ vertical-align:bottom }

.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: .5rem }
.mt1{ margin-top: .5rem }
.mr1{ margin-right: .5rem }
.mb1{ margin-bottom: .5rem }
.ml1{ margin-left: .5rem }
.mx1{ margin-left: .5rem; margin-right: .5rem }
.my1{ margin-top: .5rem; margin-bottom: .5rem }

.m2{ margin: 1rem }
.mt2{ margin-top: 1rem }
.mr2{ margin-right: 1rem }
.mb2{ margin-bottom: 1rem }
.ml2{ margin-left: 1rem }
.mx2{ margin-left: 1rem; margin-right: 1rem }
.my2{ margin-top: 1rem; margin-bottom: 1rem }

.m3{ margin: 2rem }
.mt3{ margin-top: 2rem }
.mr3{ margin-right: 2rem }
.mb3{ margin-bottom: 2rem }
.ml3{ margin-left: 2rem }
.mx3{ margin-left: 2rem; margin-right: 2rem }
.my3{ margin-top: 2rem; margin-bottom: 2rem }

.m4{ margin: 4rem }
.mt4{ margin-top: 4rem }
.mr4{ margin-right: 4rem }
.mb4{ margin-bottom: 4rem }
.ml4{ margin-left: 4rem }
.mx4{ margin-left: 4rem; margin-right: 4rem }
.my4{ margin-top: 4rem; margin-bottom: 4rem }

.mxn1{ margin-left: -.5rem; margin-right: -.5rem; }
.mxn2{ margin-left: -1rem; margin-right: -1rem; }
.mxn3{ margin-left: -2rem; margin-right: -2rem; }
.mxn4{ margin-left: -4rem; margin-right: -4rem; }

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

.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: .5rem }
.pt1{ padding-top: .5rem }
.pr1{ padding-right: .5rem }
.pb1{ padding-bottom: .5rem }
.pl1{ padding-left: .5rem }
.py1{ padding-top: .5rem; padding-bottom: .5rem }
.px1{ padding-left: .5rem; padding-right: .5rem }

.p2{ padding: 1rem }
.pt2{ padding-top: 1rem }
.pr2{ padding-right: 1rem }
.pb2{ padding-bottom: 1rem }
.pl2{ padding-left: 1rem }
.py2{ padding-top: 1rem; padding-bottom: 1rem }
.px2{ padding-left: 1rem; padding-right: 1rem }

.p3{ padding: 2rem }
.pt3{ padding-top: 2rem }
.pr3{ padding-right: 2rem }
.pb3{ padding-bottom: 2rem }
.pl3{ padding-left: 2rem }
.py3{ padding-top: 2rem; padding-bottom: 2rem }
.px3{ padding-left: 2rem; padding-right: 2rem }

.p4{ padding: 4rem }
.pt4{ padding-top: 4rem }
.pr4{ padding-right: 4rem }
.pb4{ padding-bottom: 4rem }
.pl4{ padding-left: 4rem }
.py4{ padding-top: 4rem; padding-bottom: 4rem }
.px4{ padding-left: 4rem; padding-right: 4rem }

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

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

.col-1{
  width:8.33333%;
}

.col-2{
  width:16.66667%;
}

.col-3{
  width:25%;
}

.col-4{
  width:33.33333%;
}

.col-5{
  width:41.66667%;
}

.col-6{
  width:50%;
}

.col-7{
  width:58.33333%;
}

.col-8{
  width:66.66667%;
}

.col-9{
  width:75%;
}

.col-10{
  width:83.33333%;
}

.col-11{
  width:91.66667%;
}

.col-12{
  width:100%;
}
@media (min-width: 40em){

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

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

  .sm-col-1{
    width:8.33333%;
  }

  .sm-col-2{
    width:16.66667%;
  }

  .sm-col-3{
    width:25%;
  }

  .sm-col-4{
    width:33.33333%;
  }

  .sm-col-5{
    width:41.66667%;
  }

  .sm-col-6{
    width:50%;
  }

  .sm-col-7{
    width:58.33333%;
  }

  .sm-col-8{
    width:66.66667%;
  }

  .sm-col-9{
    width:75%;
  }

  .sm-col-10{
    width:83.33333%;
  }

  .sm-col-11{
    width:91.66667%;
  }

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

}
@media (min-width: 52em){

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

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

  .md-col-1{
    width:8.33333%;
  }

  .md-col-2{
    width:16.66667%;
  }

  .md-col-3{
    width:25%;
  }

  .md-col-4{
    width:33.33333%;
  }

  .md-col-5{
    width:41.66667%;
  }

  .md-col-6{
    width:50%;
  }

  .md-col-7{
    width:58.33333%;
  }

  .md-col-8{
    width:66.66667%;
  }

  .md-col-9{
    width:75%;
  }

  .md-col-10{
    width:83.33333%;
  }

  .md-col-11{
    width:91.66667%;
  }

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

}
@media (min-width: 64em){

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

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

  .lg-col-1{
    width:8.33333%;
  }

  .lg-col-2{
    width:16.66667%;
  }

  .lg-col-3{
    width:25%;
  }

  .lg-col-4{
    width:33.33333%;
  }

  .lg-col-5{
    width:41.66667%;
  }

  .lg-col-6{
    width:50%;
  }

  .lg-col-7{
    width:58.33333%;
  }

  .lg-col-8{
    width:66.66667%;
  }

  .lg-col-9{
    width:75%;
  }

  .lg-col-10{
    width:83.33333%;
  }

  .lg-col-11{
    width:91.66667%;
  }

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

}
.flex{ display:-webkit-box; display:-ms-flexbox; display:flex }

@media (min-width: 40em){
  .sm-flex{ display:-webkit-box; display:-ms-flexbox; display:flex }
}

@media (min-width: 52em){
  .md-flex{ display:-webkit-box; display:-ms-flexbox; display:flex }
}

@media (min-width: 64em){
  .lg-flex{ display:-webkit-box; display:-ms-flexbox; display:flex }
}

.flex-column{ -webkit-box-orient:vertical; -webkit-box-direction:normal; -ms-flex-direction:column; flex-direction:column }
.flex-wrap{ -ms-flex-wrap:wrap; flex-wrap:wrap }

.items-start{ -webkit-box-align:start; -webkit-align-items:flex-start; -ms-flex-align:start; -ms-grid-row-align:flex-start; align-items:flex-start }
.items-end{ -webkit-box-align:end; -webkit-align-items:flex-end; -ms-flex-align:end; -ms-grid-row-align:flex-end; align-items:flex-end }
.items-center{ -webkit-box-align:center; -webkit-align-items:center; -ms-flex-align:center; -ms-grid-row-align:center; align-items:center }
.items-baseline{ -webkit-box-align:baseline; -webkit-align-items:baseline; -ms-flex-align:baseline; -ms-grid-row-align:baseline; align-items:baseline }
.items-stretch{ -webkit-box-align:stretch; -webkit-align-items:stretch; -ms-flex-align:stretch; -ms-grid-row-align:stretch; align-items:stretch }

.self-start{ -webkit-align-self:flex-start; -ms-flex-item-align:start; align-self:flex-start }
.self-end{ -webkit-align-self:flex-end; -ms-flex-item-align:end; align-self:flex-end }
.self-center{ -webkit-align-self:center; -ms-flex-item-align:center; align-self:center }
.self-baseline{ -webkit-align-self:baseline; -ms-flex-item-align:baseline; align-self:baseline }
.self-stretch{ -webkit-align-self:stretch; -ms-flex-item-align:stretch; align-self:stretch }

.justify-start{ -webkit-box-pack:start; -ms-flex-pack:start; justify-content:flex-start }
.justify-end{ -webkit-box-pack:end; -ms-flex-pack:end; justify-content:flex-end }
.justify-center{ -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center }
.justify-between{ -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between }
.justify-around{ -ms-flex-pack:distribute; justify-content:space-around }

.content-start{ -ms-flex-line-pack:start; align-content:flex-start }
.content-end{ -ms-flex-line-pack:end; align-content:flex-end }
.content-center{ -ms-flex-line-pack:center; align-content:center }
.content-between{ -ms-flex-line-pack:justify; align-content:space-between }
.content-around{ -ms-flex-line-pack:distribute; align-content:space-around }
.content-stretch{ -ms-flex-line-pack:stretch; align-content:stretch }
.flex-auto{
  -webkit-box-flex:1;
      -ms-flex:1 1 auto;
          flex:1 1 auto;
  min-width:0;
  min-height:0;
}
.flex-none{ -webkit-box-flex:0; -ms-flex:none; flex:none }

.order-0{ -webkit-box-ordinal-group:1; -ms-flex-order:0; order:0 }
.order-1{ -webkit-box-ordinal-group:2; -ms-flex-order:1; order:1 }
.order-2{ -webkit-box-ordinal-group:3; -ms-flex-order:2; order:2 }
.order-3{ -webkit-box-ordinal-group:4; -ms-flex-order:3; order:3 }
.order-last{ -webkit-box-ordinal-group:100000; -ms-flex-order:99999; order:99999 }

.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: 1 }
.z2{ z-index: 2 }
.z3{ z-index: 3 }
.z4{ z-index: 4 }

.border{
  border-style:solid;
  border-width: 1px;
}

.border-top{
  border-top-style:solid;
  border-top-width: 1px;
}

.border-right{
  border-right-style:solid;
  border-right-width: 1px;
}

.border-bottom{
  border-bottom-style:solid;
  border-bottom-width: 1px;
}

.border-left{
  border-left-style:solid;
  border-left-width: 1px;
}

.border-none{ border:0 }

.rounded{ border-radius: 3px }
.circle{ border-radius:50% }

.rounded-top{ border-radius: 3px 3px 0 0 }
.rounded-right{ border-radius: 0 3px 3px 0 }
.rounded-bottom{ border-radius: 0 0 3px 3px }
.rounded-left{ border-radius: 3px 0 0 3px }

.not-rounded{ border-radius:0 }

.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: 52em){
  .sm-hide{ display:none !important }
}

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

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

.display-none{ display:none !important }

/*! Flickity v2.0.9
http://flickity.metafizzy.co
---------------------------------------------- */

.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus { outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
          tap-highlight-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: white;
  background: hsla(0, 0%, 100%, 0.75);
  cursor: pointer;
  /* vertically center */
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.flickity-prev-next-button:hover { background: white; }

.flickity-prev-next-button:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 5px #09F;
          box-shadow: 0 0 0 5px #09F;
}

.flickity-prev-next-button:active {
  opacity: 0.6;
}

.flickity-prev-next-button.previous { left: 10px; }
.flickity-prev-next-button.next { right: 10px; }
/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button:disabled {
  opacity: 0.3;
  cursor: auto;
}

.flickity-prev-next-button svg {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

.flickity-prev-next-button .arrow {
  fill: #333;
}

/* ---- page dots ---- */

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots { direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}
/**
 Breakpoints
 */

/* 0, 640px */

/* 641px, 1024px */

/* 1025px, 1440px */

/* 1441px, 1920px */

/* 1921px */

/************************************** header ********************************************/

.header {
  width: 100%;
  -webkit-box-shadow: 2px 2px 7px 0px rgba(148, 148, 148, 0.43);
          box-shadow: 2px 2px 7px 0px rgba(148, 148, 148, 0.43);
  margin: 0 auto;
  margin-bottom: 4em;
}

@media screen and (max-width: 80em) {
  .header {
    margin-bottom: 1em;
  }
}

.banner {
  position: relative;
  width: 100%;
  height: 30vh;
  /* 23em; */
  max-height: 500px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-size: cover;
  background-position: 40% 50%;
  background-repeat: no-repeat;
}

@media screen and (max-width: 1088px) {
  .banner {
    max-height: 300px;
  }
}

.lang-menu {
  margin-top: 1em;
  padding: 5px;
  padding-bottom: 6px;
  border-radius: 5px;
  position: absolute;
  right: 1em;
  background-color: rgba(255, 255, 255, 0.75);
}

.lang-menu .p {
  padding-left: .5em;
  padding-right: .5em;
  text-decoration: none;
  -webkit-transition: .255s;
  transition: .255s;
}

.lang-menu .p:hover {
  color: #9f0127;
  text-decoration: underline;
}

.lang-menu .p.active {
  color: #9f0127;
  font-weight: 600;
}

@media screen and (max-width: 1088px) {
  .lang-menu {
    display: none;
  }
}

/****** main nav ******/

.nav {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -ms-flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: 100%;
  height: 5.8em;
  margin: 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 2.5em;
  padding-right: 2.5em;
}

@media screen and (max-width: 672px) and (min-width: 0em) {
  .nav {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    padding: 0;
  }
}

@media screen and (min-width: 672px) {
  .nav {
    padding: 0.5em;
    width: 100%;
  }
}

@media screen and (min-width: 80em) {
  .nav {
    width: 95%;
    max-width: 1200px;
  }
}

.main-nav-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: 73%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: .5em;
}

.main-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
  white-space: nowrap;
}

@media screen and (max-width: 1088px) {
  .main-nav {
    display: none;
  }
}

.main-nav .main-nav-item {
  font-size: 1.2em;
  color: #858585;
  padding-left: .6em;
  padding-right: .6em;
  -webkit-transition: 0.2s ease-in;
  transition: 0.2s ease-in;
  cursor: pointer;
}

.main-nav .main-nav-item:hover {
  color: black;
}

.nav-icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

@media screen and (max-width: 1088px) {
  .nav-icons {
    display: none;
  }
}

.nav-icons-icon {
  margin-left: .7em;
  margin-right: .7em;
  height: 2.5em;
  width: 2.5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
}

.nav-icons-icon:hover path {
  fill: #9f0127;
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

.search {
  margin-left: .5em;
  margin-right: .5em;
  height: 2em;
  width: 2em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-size: contain;
  background-repeat: no-repeat;
}

.search-field {
  position: relative;
  margin-left: 1.2em;
  height: 2.4em;
  width: 13em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: .5em;
  border: 2px solid #858585;
}

@media screen and (max-width: 1088px) {
  .secondary-nav-item .search-field {
    width: 218px;
    display: block;
    margin-left:0;
    font-size: 1em!important;
    padding-left: .5em;
    border-radius: 10px;
    padding-right: 2em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 2px solid #858585;
    font-size: 1.2em;
    color: #666666;
  }
  .secondary-nav-item .search-field .search-icon{
  	width: 0.8em;
    height: auto;
  }
  .secondary-nav-item .search-field input {
  	background-color: inherit;
  }
  .search-field {
    display: none;
    width: 100%;
    height: 100%;
    padding-left: .5em;
    border-radius: 10px;
    padding-right: 2em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 2px solid #858585;
    font-size: 1.2em;
    color: #666666;
  }
}

@media screen and (max-width: 448px) {
  .search-field.open {
    width: 90%;
    position: fixed;
  }
}

.search-field input {
  border: none;
  width: 90%;
  height: 100%;
  font-size: 1.1em;
  color: #666666;
  padding: 0;
  margin: 0;
  -webkit-appearance: textfield;
}

.search-field input:focus {
  outline-width: 0;
}

.search-field .search-icon {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: none;
  position: absolute;
  right: 0;
  top: 0.2em;
  -ms-flex-item-align: center;
      align-self: center;
  padding-right: .6em;
  background-repeat: no-repeat;
  width: 1.8em;
  height: 1.8em;
  cursor: pointer;
}

.brand {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  margin-left: 0.5em;
  xheight: 2em;
  height: auto;
  width: 16em;
  cursor: pointer;
}

/*.brand:hover svg path {
  fill: #9f0127;
  -webkit-transition: 0.1s ease-in;
  transition: 0.1s ease-in;
}*/ 

@media screen and (max-width: 768px) {
  .brand {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: 20em;
    margin: 0 auto;
  }
  .brand.desktop {
  	display: none;
  }
  .brand.mobile {
  	display: block !important;
  }
}

@media screen and (max-width: 1088px) {
  .brand {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-left: 1em;
  }
  .brand.desktop {
  	display: none;
  }
  .brand.mobile {
  	display: block !important;
  	width: 20em;
  }
}

@media screen and (max-width: 448px) {
  .brand {
    width: 20em;
    overflow: hidden;
  }
}

@media screen and (max-width: 310px) {
  .brand {
    width: 12em;
    overflow: hidden;
  }
}

.brand svg {
  width: 100%;
  height: 100%;
}

.brand.mobile {
	display: none;
}



/****** mobile nav ******/

.nav-button {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-self: flex-end;
  -ms-flex-item-align: center;
      align-self: center;
  padding: 2.1em;
  padding-right: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 60px;
  height: 100%;
  right: 0;
  top: 0;
  -webkit-transform: rotate(0deg) scale(0.55);
          transform: rotate(0deg) scale(0.55);
  cursor: pointer;
  background: transparent;
  border: none;
  z-index: 600;
  border-radius: 4px;
}

@media screen and (min-width: 1088px) {
  .nav-button {
    display: none;
    visibility: hidden;
  }
}

@media screen and (max-width: 310px) {
  .nav-button {
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    right: -.5em;
  }
}

.nav-button.active,
.nav-button:hover,
.nav-button:focus {
  outline: none;
}

.nav-button span {
  display: block;
  position: absolute;
  height: 5px;
  height: 7px;
  width: 60px;
  background: #9f0127;
  border-radius: 4px;
  opacity: 1;
  left: calc(50% - 30px);
  top: calc(50% - 22.5px);
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: .225s ease-in-out;
  transition: .225s ease-in-out;
}

.nav-button span:nth-child(1) {
  top: calc(50% - 22.5px);
  -webkit-transform-origin: left center;
          transform-origin: left center;
}

.nav-button span:nth-child(2) {
  top: calc(50% - 4.5px);
  -webkit-transform-origin: left center;
          transform-origin: left center;
}

.nav-button span:nth-child(3) {
  top: calc(50% + 13.5px);
  -webkit-transform-origin: left center;
          transform-origin: left center;
}

.nav-button.open {
  right: 1em;
  top: 2em;
  position: fixed;
}

@media screen and (max-width: 672px) {
  .nav-button.open {
    right: 1em;
    height: 30px;
    top: 1.5em;
    position: fixed;
    z-index: 500;
  }
}

@media screen and (min-width: 672px) {
  .nav-button.open {
    right: 1em;
    height: 30px;
    top: 1.5em;
    position: fixed;
    z-index: 500;
  }
}

.nav-button.open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: calc(50% - 25.5px);
  left: calc(50% - 22px);
}

.nav-button.open span:nth-child(2) {
  width: 0;
  opacity: 0;
}

.nav-button.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: calc(50% + 16.5px);
  left: calc(50% - 22px);
}

.secondary-nav {
  position: fixed;
  right: -100%;
  top: 0;
  margin: 0;
  width: 0;
  overflow-y: scroll;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 1em;
  padding-left: 2em;
  height: 100vh;
  z-index: 400;
  background-color: rgba(255, 255, 255, 0.98);
  -webkit-transition: 0.5s;
  transition: 0.5s;
  visibility: hidden;
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.secondary-nav.open {
  visibility: visible;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  right: 0;
  padding-bottom: 150px;
}

@media screen and (min-width: 1088px) {
  .secondary-nav.open {
    visibility: hidden;
  }
}

@media screen and (min-width: 0) {
  .secondary-nav {
    width: 100%;
  }
}

@media screen and (min-width: 448px) and (max-width: 672px) {
  .secondary-nav {
    width: 22em;
  }
}

@media screen and (min-width: 672px) {
  .secondary-nav {
    width: 22em;
  }
}

@media screen and (min-width: 1088px) {
  .secondary-nav {
    visibility: hidden;
    display: none;
  }
}

.secondary-nav .secondary-nav-item {
  text-align: start;
  font-size: 1.4em;
  color: #858585;
  margin-top: 1em;
  padding: 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  cursor: pointer;
  white-space: nowrap;
}

.secondary-nav .secondary-nav-item:hover > a:first-child {
  color: #9f0127;
  text-decoration: underline;
}

.secondary-nav .secondary-nav-item:active a {
  color: #9f0127;
}

.secondary-nav .secondary-nav-item:last-of-type {
  padding-bottom: 2em;
}

.secondary-nav .subnav {
  padding-left: 1em;
  font-size: .8em;
  margin-top: 1em;
}

.secondary-nav .subnav .nav-item-sub {
  margin-top: .5em;
  margin-bottom: .5em;
}

.secondary-nav .subnav .nav-item-sub a {
  color: #858585;
  text-decoration: none;
  -webkit-transition: 0.1s ease-in;
  transition: 0.1s ease-in;
}

.secondary-nav .subnav .nav-item-sub:hover a {
  color: #9f0127;
  text-decoration: underline;
}

.secondary-nav .subnav .nav-item-sub:active a {
  color: #9f0127;
}

.nav-icons-secondary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 400;
  padding-left: 0;
  margin-top: 1em;
  margin-bottom: 1em;
}

.nav-icons-secondary .nav-icons-icon {
  height: 1.5em;
  width: 1.5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
  margin-left: 0;
}

.nav-icons-secondary .nav-icons-icon:hover path {
  fill: #9f0127;
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

.lang-menu-secondary {
  padding-bottom: 1.5em;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  font-size: 0.8em;
}

.lang-menu-secondary .p {
  padding-right: .5em;
  text-decoration: none;
  -webkit-transition: .255s;
  transition: .255s;
}

.lang-menu-secondary .p:hover {
  color: #9f0127;
  text-decoration: underline;
}

.lang-menu-secondary .p.active {
  color: #9f0127;
  font-weight: 600;
}

/*********************************** footer ******************************/

#footer {
  width: 100%;
  -webkit-box-shadow: 0px -2px 7px 0px rgba(138, 138, 138, 0.38);
  box-shadow: 0px -2px 7px 0px rgba(138, 138, 138, 0.38);
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.footer {
  margin-top: 4em;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-bottom: 5em;
  color: #858585;
   box-shadow: 0px -2px 7px 0px rgba(138, 138, 138, 0.38);
}

	@media screen and (min-width: 1160px){
		.info-footer-weibel-content {
			 display: flex;
  			 flex-wrap: wrap;
  			 justify-content: space-between;
		}
		
		.footerBox{
		width: 20%!important;
		}
		input#newsletterInput {
		height: 40px;
		}
	}
		@media all and (max-width: 1160px) and (min-width: 672px) {
		.footerBox{
		width: 50%!important;
		}
		input#newsletterInput {
		height: 40px;
		}
}
	@media all and (max-width: 42em) {
		.footerBox{
		width: 100%!important;
		}
		input#newsletterInput {
		height: 40px;
		}
}

@supports (display: grid) {
	.info-footer-weibel-content {
	  display: grid;
	  grid-template-columns: repeat(5, 1fr);
	  grid-template-rows: repeat(2, 1fr);
	  gap: 20px 2px;
	  grid-template-areas:
	    ". . . . ."
	    ". . . . .";
	}
		.footerBox{
		width: 100%!important;
		}
	@media all and (max-width: 830px) and (min-width: 672px) {
		.info-footer-weibel-content  {
		  display: grid;
		  grid-template-columns: repeat(2, 1fr);
		  grid-template-rows: repeat(2, 1fr);
		  gap: 20px 2px;
		  grid-template-areas:
		    ". ."
		    ". .";
		}
		.footerBox{
		width: 100%!important;
		}
	}
		@media all and (max-width: 1160px) and (min-width: 830px) {
			.info-footer-weibel-content {
			  display: -ms-grid;
			  display: grid;
			  -ms-grid-columns: 1fr 2px 1fr;
			  grid-template-columns: repeat(3, 1fr);
			  -ms-grid-rows: 1fr 20px 1fr;
			  grid-template-rows: repeat(3, 1fr);
			  gap: 20px 2px;
			          grid-template-areas:
			    ". . x"
			    ". . .";
			}
			.footerBox:nth-child(5){
			  grid-area: x;
			}
		.footerBox{
		width: 100%!important;
		}
	}
	@media all and (-ms-high-contrast:none) {
	  .info-footer-weibel-content {
	    display: -ms-grid;
	    -ms-grid-columns: repeat(5, 1fr);
	    -ms-grid-rows: repeat(2, 1fr);
	  }
	  	.footerBox{
		width: 100%
		}
	}
}

.info-footer-weibelEdit .info-footer-weibel-content {
	display: block;
}


.info-footer-weibel {
	padding: 40px 10px;
	box-sizing: border-box;
}
@supports (display: grid) {
	@media all and (min-width: 1160px) {
		.info-footer-weibel-content {
		  display: grid;
		  grid-template-columns: repeat(5, 1fr);
		  grid-template-rows: repeat(2, 1fr);
		  gap: 20px 2px;
		  grid-template-areas:
		    ". . . . ."
		    ". . . . .";
		}
		.footerBox{
		width: 100%!important;
		}
		.info-footer-weibel {
			padding: 40px 10px;
			box-sizing: border-box;
		}
	}


@media screen and (max-width: 830px) and (min-width: 672px) {
	.info-footer-weibel-content {
	  display: grid;
	  grid-template-columns: repeat(2, 1fr);
	  grid-template-rows: repeat(2, 1fr);
	  gap: 20px 2px;
	  grid-template-areas:
	    ". ."
	    ". .";
	}
}
@media screen and (max-width: 1160px) and (min-width: 830px) {
	.info-footer-weibel-content {
	  display: -ms-grid;
	  display: grid;
	  -ms-grid-columns: 1fr 2px 1fr;
	  grid-template-columns: repeat(3, 1fr);
	  -ms-grid-rows: 1fr 20px 1fr;
	  grid-template-rows: repeat(3, 1fr);
	  gap: 20px 2px;
	          grid-template-areas:
	    ". . x"
	    ". . .";
	}
	.footerBox:nth-child(5){
	  grid-area: x;
	}
}


@media all and (-ms-high-contrast:none) {
  .info-footer-weibel-content {
    display: -ms-grid;
    -ms-grid-columns: repeat(5, 1fr);
    -ms-grid-rows: repeat(2, 1fr);
  }
}
}

.info-footer-weibelEdit .info-footer-weibel-content {
	display: block;
}

.info-footer-weibelEdit .footerBox {
	width: 15% !important;
}


.info-footer-weibel {
	padding: 40px 100px;
	box-sizing: border-box;
}


.info-footer-weibelEdit .footerBox {
	width: 15% !important;
}
.footerBox{
	float: left; 
	font-family: 'Open Sans', sans-serif;
	color: #858585;
	box-sizing: border-box;
	line-height: 26px;
	white-space: nowrap; 
	padding-right: 15px;
}
.footerBox li {
    line-height: 26px;
}
#newsletterInput{
	margin-top: 10px;
	line-height: 40px;
	width: 220px;
}
#newsletterInput, #newsletterButton{
    padding-left: 10px;
	font-family: 'Open Sans', sans-serif;
	font-size: 18px;
	border-radius: 10px;
	border-style: solid;
	border-width: 1px;
	text-align: left;
	-webkit-box-shadow: none;
	        box-shadow: none;
}
#newsletterButton{
	margin-top: 10px;
	border-style: none;
	width: 234px;
	line-height: 30px;
}
.footerBox ul{
	list-style-type: none;
	padding-left: 0px;
	margin: 0px;
	}
.footerBox a{
	text-decoration: none;
	color: #858585;
	text-decoration: none;
}
.footerBox strong{
	font-size: 18px;
}
.footerBox div.linkList h3, #newsletterTitle{
	font-family: 'Open Sans', sans-serif;
	font-size: 18px;
	color: #858585;
	font-weight: bold;
	margin-bottom: 0px;
	line-height: 26px;
}
.footer-content{
	position: relative;
}
@media screen and (max-width: 42em){
		.info-footer-weibel-content {
		display: block;
	}
	.footerBox ul{
	display:none
	}
}

@media screen and (max-width: 1160px) {
		.footerBox{
		margin-bottom: 10px;
		padding-left: 50px;
		position: relative;
		height: auto !important;
		min-height: auto !important;
		float: left;
		font-size: 16px;
	}
}

@media screen and (max-width: 80em) {
  .footer {
	    padding-right: 1em;
	    padding-left: 1em;
	    height: auto;
  	}
	 .footer-content{
 		position: relative;
 	}
	.footerBox h3, .footerBox #Layer_1 {
		float:left;
	}
	.footerBox #Layer_1 {
		position: absolute;
		left: 0px;
		padding-top: 5px;
		-webkit-transform: rotate(-90deg);
		    -ms-transform: rotate(-90deg);
		        transform: rotate(-90deg);
	}
	.footerBox li{
	clear: both;
	}
	#newsletterInput, #newsletterButton{
	clear: both;
	}
	#recaptcha-info {
	clear: both;
	}
	#newsletterInput, #newsletterButton{
	float: left;
	}
}

.footer .content-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  padding-top: 1em;
}

.footer .content-wrapper:last-child {
  margin-top: 5em;
}

@media screen and (max-width: 1088px) {
  .footer .content-wrapper:last-child {
    margin-top: 1em;
  }
}

.footer-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 20%;
  height: auto;
  margin-bottom: 25px;
}

@media screen and (max-width: 1160px) {
  .footer-logo {
  display: block;
    width: 100%;
	padding-left: 50px;
  }
}
#recaptcha-info {
    font-size: 10px;
    margin-top: 10px;
    margin-bottom: 10px;
    line-height: 12px;
}
.footer-nav {
  padding-bottom: 0.75em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 79%;
  color: #858585;
}

@media screen and (max-width: 80em) {
  .footer-nav {
    width: 70%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (max-width: 1088px) {
  .footer-nav {
    margin: 0 auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    display: none;
    height: 0;
    width: 0;
  }
}

.footer-nav ul {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  white-space: nowrap;
  width: 100%;
}

@media screen and (max-width: 1088px) {
  .footer-nav ul {
    -ms-flex-flow: wrap;
        flex-flow: wrap;
  }
}

@media screen and (max-width: 672px) {
  .footer-nav ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    -ms-flex-item-align: center;
        align-self: center;
  }
  
  .GIFMobile {
	display: block !important;
	}
.GIFDesktop {
	display: none !important;
}
}

.footer-nav ul li {
  cursor: pointer;
}

.footer-nav ul li:hover {
  text-decoration: underline;
}

.footer-nav ul li:hover a {
  color: #9f0127;
}

.footer-nav .footer-nav-item {
  margin-top: 1em;
}

.footer-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  width: 20%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 1088px) {
  .footer-social {
    width: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 2em;
  }

  .footer-social .social-icon {
    margin: 1em;
  }
}

.footer-social .social-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 2.3em;
  height: 2.3em;
  margin-right: 1em;
  cursor: pointer;
  margin-bottom: .1em;
  background-color: #666666;
  -webkit-transition: 0.2s ease-in;
  transition: 0.2s ease-in;
}

.footer-social .social-icon:hover {
  background-color: #858585;
}

.footer-social .social-icon svg {
  padding: 6px;
  height: 100%;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.footer-social .social-icon svg path {
  fill: white;
}

.footer-contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: 40%;
}

.footer-contact .box-inner:first-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 1em;
}

.footer-contact .box-inner:first-child .p:first-child {
  padding: 0;
  margin-bottom: .5em;
}

.footer-contact .box-inner {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 1em;
}

.footer-contact .box-inner .p {
  margin: 0;
  padding: 0;
}

@media screen and (max-width: 1088px) {
  .footer-contact {
    width: 50%;
    height: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 auto;
    margin-bottom: 1em;
    margin-top: 3.1em;
  }

  .footer-contact .box-inner:first-child {
    margin: 0;
    padding: 0;
  }

  .footer-contact .box-inner:first-child .p:first-child {
    margin-bottom: 1em;
  }

  .footer-contact .box-inner:first-child p:nth-child(2) {
    margin-bottom: 1em;
  }

  .footer-contact .box-inner {
    margin: 0;
    padding: 0;
  }
}

@media screen and (max-width: 672px) {
  .footer-contact {
    margin: 0;
    margin-top: 2em;
    padding: 0;
    width: 100%;
  }

  .footer-contact .box-inner {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
}

.footer-payment {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: 40%;
}

@media screen and (max-width: 1088px) {
  .footer-payment {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto;
    margin-top: 1.8em;
    padding-top: 1em;
  }

  .footer-payment .p {
    margin-bottom: 1em;
  }

  .footer-payment .box-inner:last-child {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

@media screen and (max-width: 1088px) and (max-width: 672px) {
  .footer-payment {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0 auto;
    margin-top: 2em;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .footer-payment .payment-icon {
    margin: 0 auto;
    padding: 0;
    /*width: 75%;*/
  }

  .footer-payment .payment-icon svg {
    padding: 0;
    margin: 0;
  }
}

.footer-payment .box-inner {
  width: 65%;
  margin-left: 1em;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 1088px) {
  .footer-payment .box-inner {
    width: auto;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.footer-payment .box-inner .payment-icon {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.footer-payment .box-inner .payment-icon img {
  padding: 0.1em;
  width: 80px;
  height: 100%;
}

.footer-payment .box-inner .payment-icon .postfinance-logo {
  height: auto;
  width: 150px;
  margin-right: .8em;
  margin-left: .8em;
}

@media screen and (max-width: 672px) {
  .footer-payment .box-inner .payment-icon .postfinance-logo {
    width: 15em;
    max-width: 65vw;
    margin: 0;
    padding: 0;
  }
}

.footer-payment .box-inner:last-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 0;
  -ms-flex-line-pack: end;
      align-content: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media screen and (max-width: 1088px) {
  .footer-payment .box-inner:last-child {
    margin-left: 6%;
    padding: 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media screen and (max-width: 672px) {
  .footer-payment .box-inner:last-child {
    margin: 0 auto;
    width: auto;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  
  
}
.footer-payment .box-inner:last-child .payment-icon:first-child {
  height: 2.6em;
  padding-bottom: .1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 0.2em;
}
body {
  margin: 0;
  padding: 0;
}

@media screen and (max-width: 768px) {
  body {
    font-size: .88rem;
  }
}

/******************************************* font and text ***********************************/

p,
a,
h1,
h2,
h3,
h4,
li {
  line-height: 1.2em;
  font-family: 'Open Sans', sans-serif;
  padding: 0;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a:active {
  color: #9f0127;
}

.p {
  font-size: 1em;
  line-height: 1.4em;
  color: #545454;
  text-decoration: none;
}

.color-60 {
  color: #eeeeee;
}

.color-50 {
  color: #858585;
}

.small {
  font-size: .8em;
}

.h1-thin {
  font-size: 23px;
  font-weight: 100;
}

@media screen and (max-width: 672px) {
  .h1-thin {
    font-size: 1.4em;
  }
}

.h3-thin {
  font-size: 1.2em;
  font-weight: 400;
}

.thick {
  font-weight: 600;
}

.medium {
  font-size: .9em;
}

.light {
  font-style: light;
}

.h3 {
  font-size: 1.2em;
}

/**** input & form style ****/

::-webkit-search-cancel-button {
  -webkit-appearance: none;
          appearance: none;
  height: 0;
  width: 0;
}

::-moz-search-cancel-button {
  -moz-appearance: none;
       appearance: none;
  height: 0;
  width: 0;
}

::-ms-search-cancel-button {
  appearance: none;
  height: 0;
  width: 0;
}

::search-cancel-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #858585;
  opacity: 1;
}

::-moz-placeholder {
  /* Firefox 19+ */
  opacity: 1;
  color: #858585;
}

:-ms-input-placeholder {
  /* IE 10+ */
  opacity: 1;
  color: #858585;
}

:-moz-placeholder {
  /* Firefox 18- */
  opacity: 1;
  color: #858585;
}

/* input spin-buttons (inc/dec-buttons) */

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

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

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

input[type=number] {
  -moz-appearance: textfield;
}

.productInc {
  position: absolute;
  left: 32px;
  width: 12px;
  height: 13px;
  top: 7px;
  border-top-right-radius: 1em;
  border-top-left-radius: 1em;
  border: none;
  padding: 0;
  padding-bottom: 3px;
  background-color: rgba(255, 255, 255, 0.75);
  border: 1px solid #eeeeee;
  color: #545454;
  padding-top: 0;
  padding-bottom: 1px;
  background-image: url("../img/svg/arrow_up.svg");
  background-size: 7px;
  background-repeat: no-repeat;
  background-position: center;
}

.productInc:hover {
  background-color: #eeeeee;
}

.productDec {
  border-bottom-right-radius: 1em;
  border-bottom-left-radius: 1em;
  position: absolute;
  left: 32px;
  height: 15px;
  top: 19px;
  width: 12px;
  border: none;
  padding: 0;
  padding-top: 0;
  padding-bottom: 2px;
  background-color: rgba(255, 255, 255, 0.75);
  border: 1px solid #eeeeee;
  color: #545454;
  background-image: url("../img/svg/arrow_down.svg");
  background-size: 7px;
  background-repeat: no-repeat;
  background-position: center;
}

.productDec:hover {
  background-color: #eeeeee;
}

/*************************************** main ********************************************/

.container {
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
}

@media screen and (max-width: 672px) and (min-width: 0em) {
  .container {
    width: 100%;
  }
}

@media screen and (min-width: 672px) {
  .container {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .container {
    width: 100%;
  }
}

@media screen and (min-width: 1088px) {
  .container {
    width: 100%;
  }
}

@media screen and (min-width: 80em) {
  .container {
    width: 100%;
    max-width: 1200px;
  }
}

.content-wrapper {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -ms-flex;
  -webkit-flex: 1 1 auto;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  flex-wrap: -webkit-wrap;
  -webkit-flex-wrap: wrap;
  display: -webkit-flex;
  width: auto;
  height: auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-flow: row-wrap;
      flex-flow: row-wrap;
}
.footer-content .content-wrapper {
	display: block;
}

.box-wrapper {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  max-width: 100vw;
  height: auto;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-display: flex;
  display: -webkit-flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row-wrap;
          flex-flow: row-wrap;
  -webkit-flex-wrap: wrap;
  -webkit-flex-wrap: -webkit-wrap;
  -webkit-flex: 1 1 auto;
}

/**************** cards and media boxes **********************/

.card {
  height: 33em;
  min-height: 20em;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1em;
  min-width: auto;
}

@media screen and (max-width: 290px) {
  .card {
    padding: 0%;
    margin: 0%;
  }
}

@media screen and (max-width: 448px) {
  .card {
    width: 100%;
    padding: 1em;
    margin-top: .1em;
    margin-bottom: .1em;
  }
}

@media screen and (min-width: 672px) {
  .card {
    width: 50%;
  }
}

@media screen and (max-width: 768px) {
  .card {
    min-height: 15em;
  }
}

@media screen and (min-width: 1088px) {
  .card {
    width: 33.333%;
  }

  .card:hover .card-info p:nth-child(3) {
    -webkit-filter: opacity(1);
            filter: opacity(1);
    filter: alpha(opacity=100);
    opacity: 1;
  }
}

.card-inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  background-color: white;
  -webkit-box-shadow: 2px 2px 7px 0px rgba(148, 148, 148, 0.43);
          box-shadow: 2px 2px 7px 0px rgba(148, 148, 148, 0.43);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
}

.card-header {
  position: relative;
  background-color: #eeeeee;
  margin-top: 2em;
  width: 50%;
  max-width: 15em;
  min-width: 175px;
  padding: .8em;
  white-space: nowrap;
  padding-left: 2em;
  z-index: 1;
  border: none;
  /*
  -webkit-clip-path: polygon(0 100%, 0 0, 100% 0, 90% 100%);
  clip-path: polygon(0 100%, 0 0, 100% 0, 90% 100%);
  */
}

.card-media-alt a .media-image {
    /*width: 100%;*/
    height: auto;
    margin: 10% auto;
}
.media-box a .media-image {
    width: 100%;
}
.productPriceSale{
	color:#AC162C;
	font-weight: bold;
}
.productBox .productListPrice span.productPriceSale{
	display: block;
}

.productPriceInstead{
	color:#858585;
	font-size:13px;
	white-space: nowrap;
	display: block;
	padding-top: 5px;
}

.bundleProductPriceInstead{
	color:#858585;
	font-size:13px;
	position: absolute;
	top: 30px;
	left: 79px;
	white-space: nowrap;
	display: block;
	padding-top: 5px;
}
@media screen and (max-width: 1088px){
  .bundleProductPriceInstead {
 	color:#858585;
	font-size:13px;
	position: relative;
	top: 0px;
    left: 0px;
  }
}
.productRedBold{
	color:#AC162C;
	text-decoration: none;
	-webkit-filter: opacity(1) !important;
	filter: opacity(1) !important;
	filter: alpha(opacity=1) !important;
	opacity: 1 !important;
}
.productListPrice{
	position: absolute;
    bottom: 70px;
    line-height: 22px;
}
.productListTyp{
	position: absolute;
	bottom: 54px;
}
@media screen and (max-width: 310px) {
  .card-header {
    width: 35vw;
    padding-left: 1em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    box-sizing: border-box;
  }
}

.card-header:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 145%;
  max-height: 15em;
  height: 101%;
  padding: .8em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: skew(-30deg);
  -wms-transform: skew(-30deg);
  transform: skew(-30deg);
  z-index: -1;
  background: inherit;
  border: none;
}

@media screen and (max-width: 672px) {
  .card-header:after {
    left: 0;
    width: 140%;
  }
}

@media screen and (max-width: 310px) {
  .card-header:after {
    width: 135%;
  }
}

.card-content {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: auto;
  width: 100%;
  height: 80%;
  margin-top: .5em;
  margin-bottom: 1.5em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
/*für gleichen abstand*/
.card-content .gift-ribbon {
  position: absolute;
  width: 4em;
  height: 4em;
  border-radius: 50px;
  left: 1em;
  bottom: -.5em;
}

.card-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 7.5em;
  min-height: 250px;
  height: 90%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 25%;
  background-size: cover;
  background-repeat: no-repeat;
}

.card-media-link{
	display:flex;
}

.card-media-link img{
	width:100%;
}

.card-media .media-image {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}

.card-info {
  position: relative;
  justify-self: flex-start;
  -ms-flex-item-align: end;
      align-self: flex-end;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 85%;
  width: 60%;
  min-height: 250px;
  padding-bottom: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 1em;
  padding-right: 1em;
  word-wrap: break-word;
  white-space: normal;
}

.card-info p {
  padding: 0.1em;
  margin: 0;
}

.card-info h3 {
  color: #9f0127;
}

.card-info :nth-child(2) {
  margin-bottom: 1.5em;
}

.card-info p:nth-child(3) {
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
  margin-bottom: 1.5em;
  max-height: 120px;
  overflow: hidden;
	display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
}
@media screen and (max-width: 1218px) {
	.card-info p:nth-child(3) {

		-webkit-line-clamp: 4;
    }
}
	
@media screen and (min-width: 1070px) {
	.card-info p:nth-child(3) {
	    -webkit-filter: opacity(0);
	    	filter: opacity(0);
	    filter: alpha(opacity=0);
	    opacity: 0;
	}
}
.card-action {
  position: absolute;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: 100%;
  margin-top: 2.5em;
  margin-left: 4em;
  bottom: 1em;
  left: .8em;
}

@media screen and (max-width: 1088px) {
  .card-action {
    left: 0;
  }
}

@media screen and (max-width: 448px) {
  .card-action {
    left: .4em;
  }
}

@media screen and (max-width: 290px) {
  .card-action {
    margin-left: 0;
  }
}

.card-action .cart {
  position: absolute;
  height: 2.5em;
  width: 2.5em;
  margin-left: .5em;
  margin-right: .5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  cursor: pointer;
}

.card-action .cart:hover path {
  fill: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.card-action .cart.active path {
  fill: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}


.card-action .success-tooltip.in-cart {
  -webkit-animation: fade-in-out 1.5s linear 0s 1 normal;
          animation: fade-in-out 1.5s linear 0s 1 normal;
}

@-webkit-keyframes fade-in-out {
  20% {
    -webkit-filter: opacity(1);
            filter: opacity(1);
    visibility: visible;
    opacity: 1;
  }

  80% {
    -webkit-filter: opacity(1);
            filter: opacity(1);
    visibility: visible;
    opacity: 1;
  }
}

@keyframes fade-in-out {
  20% {
    -webkit-filter: opacity(1);
            filter: opacity(1);
    visibility: visible;
    opacity: 1;
  }

  80% {
    -webkit-filter: opacity(1);
            filter: opacity(1);
    visibility: visible;
    opacity: 1;
  }
}

.card-action .success-tooltip p {
  color: white;
  white-space: nowrap;
  margin: 0 auto;
}

.card-action .counter {
  border: none;
  margin: 0 auto;
  -webkit-box-shadow: 1px 2px 3px 0px rgba(156, 156, 156, 0.3);
          box-shadow: 1px 2px 3px 0px rgba(156, 156, 156, 0.3);
  height: 2.1em;
  padding-right: .2em;
  padding-left: .5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: .35em;
  margin-right: 1em;
  width: 3.2em;
  align-items: center;
  font-size: .9em;
  background: rgba(255, 255, 255, 0.75);
}

/******* geschenke  card ********/

.card-content-alt {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: auto;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 77.5%;
  margin-top: .5em;
  margin-bottom: 1.5em;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.card-header-alt {
  position: relative;
  background-color: #9f0127;
  margin-top: 2em;
  width: 50%;
  max-width: 15em;
  min-width: 175px;
  padding: .8em;
  white-space: nowrap;
  padding-left: 2em;
  z-index: 1;
  border: none;
}

@media screen and (max-width: 310px) {
  .card-header-alt {
    width: 35vw;
    padding-left: 1em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    box-sizing: border-box;
  }
}

.card-header-alt .h3-thin {
  color: white;
}

.card-header-alt:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 145%;
  height: 101%;
  padding: .8em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: skew(-30deg);
  -wms-transform: skew(-30deg);
  transform: skew(-30deg);
  z-index: -1;
  background: inherit;
}

@media screen and (max-width: 672px) {
  .card-header-alt:after {
    left: 0;
    width: 140%;
  }
}

@media screen and (max-width: 310px) {
  .card-header-alt:after {
    width: 130%;
  }
}

.gift-icon {
  position: absolute;
  left: 2em;
  bottom: 5.5em;
}

.gift-icon svg {
  width: 4em;
  height: 4em;
}

.card-media-alt {
  padding: .6em;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-width: 7.5em;
  min-height: 225px;
  height: 65%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 95%;
  background-size: cover;
  background-repeat: no-repeat;
}

.card-media-alt .media-image {
  height: 100%;
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.card-info-alt {
  max-width: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  justify-self: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  flex-direction: column;
  padding-left: 2em;
  padding-right: 1em;
  margin-top: 1em;
  word-wrap: break-word;
  white-space: normal;
  margin-bottom: .5em;
}

.card-info-two {
  width: 100%;
  margin-top: auto;
  position: absolute;
  bottom: 18px;
  height: 40px;
}

.card-info-two .p {
  width: auto;
  margin-left: 2.2em;
}
.card-info-two .h1-thin {
	  padding-top: 5px;
	  margin-right: 0;
}
.card-info-two .small {
 	padding-top: 10px;
 }
.card-info-two p {
  margin-right: 4%;
  float: left;
  white-space: nowrap;
  justify-self: center;
  -ms-flex-item-align: center;
      align-self: center;
}

@media screen and (max-width: 672px) and (min-height: 448px) {
  .card-info-two .p {
    margin-left: 1em;
  }
}

@media screen and (max-width: 672px) and (min-width: 448px) {
  .card-info-two p {
    margin-right: 1.5em;
  }
}
@media screen and (max-width: 680px) and (min-width: 655px) {
  .card-info-two .h1-thin {
    margin-right: 0;
  }
  .card-header::after {
  	width: 135%;
  }
}
.card-action-alt {
	position: relative;
	width: 8em;
	float:right;
}


@media screen and (max-width: 290px) {
  .card-action-alt {
    margin-left: 0;
  }
}

.card-action-alt .cart {
  position: absolute;
  height: 2.5em;
  width: 2.5em;
  margin-left: .5em;
  margin-right: .5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  cursor: pointer;
}

.card-action-alt .cart:hover path {
  fill: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.card-action-alt .cart.active path {
  fill: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.card-action-alt .success-tooltip {
  height: 2em;
  position: absolute;
  background-color: #9f0127;
  z-index: 500;
  padding-right: .5em;
  padding-left: .5em;
  border-radius: 5px;
  right: 2em;
  min-width: 12em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-shadow: 1px 2px 3px 0px rgba(156, 156, 156, 0.3);
          box-shadow: 1px 2px 3px 0px rgba(156, 156, 156, 0.3);
  -webkit-filter: opacity(0);
          filter: opacity(0);
  visibility: hidden;
  opacity: 0;
  text-align: center;
  bottom: 6em !important;
}

.card-action-alt .success-tooltip .p {
  margin: 0 auto;
}

.card-action-alt .success-tooltip.in-cart {
  -webkit-animation: fade-in-out 1.5s linear 0s 1 normal;
          animation: fade-in-out 1.5s linear 0s 1 normal;
}

@keyframes fade-in-out {
  20% {
    -webkit-filter: opacity(1);
            filter: opacity(1);
    visibility: visible;
    opacity: 1;
  }

  80% {
    -webkit-filter: opacity(1);
            filter: opacity(1);
    visibility: visible;
    opacity: 1;
  }
}

.card-action-alt .success-tooltip p {
  color: white;
  white-space: nowrap;
}

.card-action-alt .counter {
  border: none;
  margin: 0 auto;
  -webkit-box-shadow: 1px 2px 3px 0px rgba(156, 156, 156, 0.3);
          box-shadow: 1px 2px 3px 0px rgba(156, 156, 156, 0.3);
  height: 2.1em;
  padding-right: .2em;
  padding-left: .5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: .35em;
  margin-right: 1em;
  width: 3.2em;
  min-width: 3.2em;
  align-items: center;
  font-size: .9em;
}

/******** media boxes *********/

.media-box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  padding: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: auto;
  -webkit-display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media screen and (max-width: 672px) {
  .media-box {
    width: 100%;
    padding: 1em;
    margin-top: .1em;
    margin-bottom: .1em;
    z-index: 5;
  }
}

.media-box-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  overflow: hidden;
  display: flex;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  width: 100%;
  min-height: 31em;
  -webkit-box-shadow: 2px 2px 7px 0px rgba(148, 148, 148, 0.43);
          box-shadow: 2px 2px 7px 0px rgba(148, 148, 148, 0.43);
}

.media-box-overlay {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: absolute;
  z-index: 200;
  width: 100%;
  height: 6em;
  background-color: rgba(255, 255, 255, 0.75);
  padding: 1.5em 1.5em 0em 1.5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

media-box-inner flex, media-box-inner,  banner{

  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;

  overflow: hidden;

}



.media-box-inner.flex a img, .media-box-inner a img, .banner img {

  position: absolute;
  top: 50%;
  left: 50%;

  width: auto;
  height: auto;

  max-height: 100%;
  max-width: 100%;
  object-fit: cover;
  -o-object-fit: cover;

  min-height: 100%;
  min-width: 100%;

  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);

}


.media-box-overlay .p {
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .media-box-overlay {
    height: 6em;
    padding: 1em;
  }
}

.media-box-overlay h3:first-child {
  color: #9f0127;
  margin-bottom: .1em;
}

.media-box-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 0;
  z-index: 100;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 100%;
  width: 100%;
}

.GIFMobile {
	display: none;
	}
.GIFDesktop {
	display: block;
	min-height: 100%;
	width: auto;
}

/********************************* Carousel ****************************************/

.carousel-wrapper {
  position: relative;
  height: auto;
  width: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 1em;
  margin-bottom: 1em;
  box-sizing: border-box;
  -webkit-box-shadow: 2px 2px 7px 0px rgba(148, 148, 148, 0.43);
          box-shadow: 2px 2px 7px 0px rgba(148, 148, 148, 0.43);
  margin-left: 1em;
  margin-right: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-display: flex;
  display: -webkit-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-justify-self: stretch;
  overflow: hidden;
}

@media screen and (max-width: 1088px) {
  .carousel-wrapper {
    padding-bottom: 5em;
    margin-bottom: 4em;
    margin-top: 1.5em;
  }
}

@media screen and (max-width: 768px) {
  .carousel-wrapper {
    width: auto;
    min-width: 96%;
  }
}

@media screen and (max-width: 672px) {
  .carousel-wrapper {
    min-width: 0;
  }
}

.custom-carousel-buttons {
  position: relative;
  width: 6%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: none;
  box-sizing: border-box;
  height: auto;
  justify-self: center;
  -ms-flex-item-align: center;
      align-self: center;
  justify-self: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  margin-top: 0 auto;
  margin-bottom: 0 auto;
}

@media screen and (max-width: 768px) {
  .custom-carousel-buttons {
    position: absolute;
    bottom: 0%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 5%;
    margin: 5%;
    margin-bottom: 1em;
  }

  .custom-carousel-buttons.previous {
    left: 35%;
  }

  .custom-carousel-buttons.next {
    right: 35%;
  }
}

@media screen and (max-width: 768px) and (max-width: 448px) {
  .custom-carousel-buttons.previous {
    left: 28%;
  }

  .custom-carousel-buttons.next {
    right: 28%;
  }
}

.custom-carousel-buttons .button-next {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 2.5em;
  width: 2.5em;
  padding-right: .2em;
  border: none;
  cursor: pointer;
}

.custom-carousel-buttons .button-next svg {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  height: 100%;
  width: 100%;
  min-height: 2.5em;
  min-width: 2.5em;
}

@media screen and (max-width: 768px) {
  .custom-carousel-buttons .button-next {
    height: 2.5em;
    width: 2.5em;
    padding: 0;
  }
}

.custom-carousel-buttons .button-next:hover path:first-child {
  fill: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.custom-carousel-buttons .button-next:hover path:nth-child(2) {
  stroke: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.custom-carousel-buttons .button-next:hover path:last-child {
  stroke: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.custom-carousel-buttons .button-previous {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 200;
  height: 2.5em;
  width: 2.5em;
  border: none;
  padding: none;
  padding-left: .2em;
  margin: none;
  cursor: pointer;
}

.custom-carousel-buttons .button-previous svg {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  height: 100%;
  min-height: 2.5em;
  min-width: 2.5em;
}

@media screen and (max-width: 1088px) {
  .custom-carousel-buttons .button-previous {
    height: 2.5em;
    width: 2.5em;
    padding: 0;
  }
}

.custom-carousel-buttons .button-previous:hover path:first-child {
  fill: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.custom-carousel-buttons .button-previous:hover path:nth-child(2) {
  stroke: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.custom-carousel-buttons .button-previous:hover path:last-child {
  stroke: #9f0127;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.main-carousel {
  width: 85%;
  height: 20em;
  margin: 0 auto;
  margin-top: 2.5em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: .5em;
  padding-bottom: 2.5em;
}

@media screen and (max-width: 448px) {
  .main-carousel {
    width: 100%;
  }
}

@media screen and (max-width: 672px) {
  .main-carousel {
    width: 100%;
    margin: 0;
    padding: 0;
    margin-top: .5em;
    margin-bottom: .5em;
  }
}

@media screen and (max-width: 768px) {
  .main-carousel {
    padding: 0;
    width: 100%;
    margin: 0 auto;
    padding-top: 1.5em;
    padding-bottom: 1em;
    margin-bottom: 1em;
  }
}

@media screen and (max-width: 1088px) {
  .main-carousel {
    width: 85%;
  }
}

.carousel-header {
  position: relative;
  background-color: #eeeeee;
  margin-top: 2em;
  margin-bottom: 0;
  margin-right: 100%;
  height: 3em;
  width: 60%;
  max-width: 14em;
  min-width: 13em;
  white-space: nowrap;
  padding: .8em;
  padding-left: 2em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 1;
}

@media screen and (max-widht: 768px) {
  .carousel-header {
    width: 100%;
    margin-right: 0;
    min-width: none;
  }
}

@media screen and (max-width: 310px) {
  .carousel-header {
    width: 100%;
    padding-left: 1.6em;
    margin-right: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

.carousel-header:after {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 100%;
  height: 3em;
  padding: .8em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: skew(-30deg);
  -wms-transform: skew(-30deg);
  transform: skew(-30deg);
  z-index: -1;
  background: inherit;
}

@media screen and (max-width: 310px) {
  .carousel-header:after {
    height: 0%;
    width: 0;
  }
}

@media screen and (max-width: 672px) {
  .carousel-header:after {
    left: 60%;
    width: 100%;
    height: 100%;
  }
}

@media screen and (max-width: 768px) {
  .carousel-header:after {
    left: 60%;
  }
}

.carousel-cell {
  width: 25%;
  min-width: 250px;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox!important;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.carousel-cell .card-media {
  width: 25%;
  min-width: 100px;
  height: 100px;
}

.carousel-cell .card-media .media-img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}

.carousel-cell .card-content {
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-line-pack: end;
      align-content: flex-end;
}

.carousel-cell .card-content .card-info {
	height: 150px;
  padding-top: 1em;
  padding-left: 0;
  -ms-flex-line-pack: end;
      align-content: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.carousel-cell .card-content .card-info p:first-child {
  /*margin-top: 2em;*/
}

.carousel-cell .card-content .card-info p:nth-child(2) {
  margin-top: .8em;
}

.carousel-cell .card-content .card-info p:nth-child(3) {
  visibility: visible;
  opacity: 1;
  -webkit-filter: opacity(1);
          filter: opacity(1);
}

.carousel-cell .card-content .card-info p {
  margin: 0;
  padding: 0;
}

.carousel-cell .card-content .card-action {
  position: relative;
  margin-right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  justify-self: flex-start;
  padding: none;
  margin: none;
  margin-left: 0;
}

.carousel-cell .card-content .card-action .counter {
  height: 2.1em;
}

.carousel-cell .card-content .card-action .cart {
  padding: 0;
  margin: 0;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.main-nav-item a:hover{
	color:#9f0127;
}
.carousel-cell .card-content .card-action .success-tooltip p {
  padding-bottom: 2em;
}

@media screen and (max-width: 80em) {
  .carousel-cell {
    width: 33.33%;
    max-width: 250px;
  }
}

@media screen and (max-width: 80em) {
  .carousel-cell {
    width: 50%;
    max-width: 250px;
  }
}

@media screen and (max-width: 672px) {
  .carousel-cell {
    width: 100%;
    padding-left: 1em;
    padding-right: 1em;
    max-width: 250px;
  }
}

@media screen and (max-width: 448px) {
  .carousel-cell {
    widht: 100%;
    min-width: 75vw;
  }
}

/***************************************** utility classes *******************************/

.padding-top {
  padding-top: 1.5em;
}

.medium-height-m {
  height: 43em;
}

@media screen and (max-width: 1088px) {
  .medium-height-m {
    height: auto;
  }
}

@media screen and (max-width: 672px) {
  .column-xs {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media screen and (max-width: 1088px) {
  .column-s {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 1088px) {
  .column-m {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.width-full {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .width-full-s {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .width-half-s {
    width: 50%;
  }
}

@media screen and (min-width: 768px) {
  .width-quart-s {
    width: 25%;
  }
}

@media screen and (min-width: 768px) {
  .width-two-quart-m {
    width: 75%;
  }
}

@media screen and (min-width: 768px) {
  .width-third-s {
    width: 33.332%;
  }
}

@media screen and (min-width: 1088px) {
  .width-full-m {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .width-two-quart-s {
    width: 75%;
  }
}

.width-two-third {
  width: 66.666%;
}

@media screen and (min-width: 1088px) {
  .width-two-third-m {
    width: 66.666%;
  }
}

@media screen and (min-width: 1088px) {
  .width-half-m {
    width: 50%;
  }
}

@media screen and (min-width: 1088px) {
  .width-third-m {
    width: 33.333%;
  }
}

@media screen and (min-width: 1088px) {
  .height-two-two-m {
    height: 66em;
  }
	
}

@media screen and (max-width: 448px) {
  .overflow-hidden-custom {
    overflow: hidden;
  }
}

#contact a svg #letter{
		fill: #9f0127;
}
#contact a svg #letter-background{
		fill: #ffffff;
		transform: scale(1);
}
#contact a:hover svg #letter{
		fill: #ffffff;
}
#contact a:hover svg #letter-background {
		fill: #9f0127;
		transform: scale(0.9);
		transform-origin:center;
}

@media screen and (max-width: 1088px){

	.info-footer-weibel {
	padding: 40px 10px;
	box-sizing: border-box;
}
	
}
#toTop{
		width: 60px;
		height: 60px;
		display: block;
		position: fixed;
		right: 25px;
		bottom: 10px;
		background-color: #fcfcfc;
		border-radius: 60px;
		z-index: 500;
		box-shadow: 0px 0px 4px 1px rgba(123,123,123,0.35);
		-webkit-transition: box-shadow 0.24s ease-out;
		-moz-transition: box-shadow 0.24s ease-out;
		-ms-transition: box-shadow 0.24s ease-out;
		transition: box-shadow 0.24s ease-out;
	}
	
#toTop a{
	display:block;
	width:60px;
	height:60px;
	background-color: rgba(255,255,255,0.8);
	border-radius: 30px;
}

#toTop:before {
  content: "";
  width: 25px;
  height: 25px;
  position: absolute;
  left: calc(50% - 14px);
  top: calc(50% - 7px);
  border-top: 3px solid #a10127;
  border-left: 3px solid #a10127;
  border-radius: 3px;
  		-webkit-transform: rotate(45deg);
		    -ms-transform: rotate(45deg);
		        transform: rotate(45deg);
}

#toTop:hover:before {
  top: calc(50% - 11px);
}

/*Cookie Banner*/
#cookieConsent {
    background-color: #ccc;
    width: calc(100% - 60px);
    min-height: 70px;
    line-height: 26px;
    padding: 30px 30px 8px 30px;
    xpadding: 30px 0 8px 30px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    display: none;
    z-index: 9999;
}
.cookieConsentContent {
	position: relative;
	max-width: calc(1200px - 32px);
	display: table;
	margin: 0 auto;
}
#cookieConsent p.p a {
    color: #a10127;
    text-decoration: none;
}
#cookieConsentOK{
        color: #FFFFFF;
        position: relative;
        display: table-cell;
        vertical-align: middle;
        xposition: absolute;
        xright: 563px;
        xbottom: 30px;
}
#cookieConsent a.cookieConsentOK:hover {
    background-color: #000000;
}

.buttonRed {
		display:inline-block;
		padding:14px 18px 14px 18px;
		text-decoration:none;
		background-color:#a10127;
		color:#ffffff;
		cursor:pointer;
		transition: background-color 0.2s;
}
 #newsletterButton{
		display:inline-block;
		background-color:#a10127;
		color:#ffffff;
		cursor:pointer;
		transition: background-color 0.2s;
}
.simpleFormError{
	color: #ff0000;
	margin-bottom: 20px;
}
#cookieConsent p {
		xmargin-left: 655px;
		position: relative;
		display: table-cell;
		vertical-align: middle;
		font-size: 15px;
		xmax-width: calc(1200px - 32px);
		xmargin: 0 auto;
}
#contact {
width: 60px;
height: 60px;
position: fixed !important;
right: 25px;
bottom: 77px;
z-index:500;
border-radius: 30px;
box-shadow: 0px 0px 4px 1px rgba(123,123,123,0.35);
}
@media screen and (max-width: 68em) {
		.grecaptcha-badge { 
		bottom: 5px !important;
		}
		#contact {
		width: 60px;
		height: 60px;
		position: fixed !important;
		right: 25px;
		bottom: 77px;
		z-index:500;
		}
		#toTop {
		width: 60px;
		height: 60px;
		position: fixed !important;
		right: 25px;
		bottom: 10px;
		z-index:500;
		}
		#cookieConsent {
	    background-color: #ccc;
	    min-height: 70px;
	    line-height: 26px;
	    width: calc(100% - 40px);
    	padding: 30px 20px 8px 20px;
	    position: fixed;
	    bottom: 0;
	    left: 0;
	    right: 0;
	    display: none;
	    z-index: 9999;
	}
	.cookieConsentContent {
		max-width: 100%;
		width: 100%;
	}
	#cookieConsent p.p a {
	    color: #a10127;
	    text-decoration: none;
	}
	#cookieConsentOK{
	        color: #FFFFFF;
	        position: relative;
	        right: 0px;
	        bottom: 0px;
	        xfloat: right;
	        xmargin-top: 5px;
	        xmargin-right: 15px;
	        xmargin-bottom: 10px;
	}
	#cookieConsent a.cookieConsentOK:hover {
	    background-color: #000000;
	}
	.footerBox .simpleForm{
		width: 100%;
	}
	.simpleFormError{
		 float: left;
	}
	.buttonRed, #newsletterButton {
		display:inline-block;
		padding:10px 15px 10px 15px;
		text-decoration:none;
		background-color:#a10127;
		color:#ffffff;
		cursor:pointer;
		transition: background-color 0.2s;
	}
	#newsletterButton{
	line-height: 16px;
	}
	#cookieConsent p {
		margin-left: 0px;
		font-size: 12px;
		vertical-align: middle;
	}
	#footer{
		overflow: auto;
		vertical-align: middle;
	}
}
@media screen and (max-width: 30em) {
	#cookieConsent p {
		display: block;
	    width: 100%;
	    text-align: center;
	    margin-bottom: 20px;
	}
	#cookieConsentOK {
		display: block;
		width: 100%;
		text-align: center;
	}
}
@media screen and (max-width: 80em) {
	
	#recaptcha-info {
	    padding-top: 10px;
	}
}
@media screen and (max-width: 30em) {
	
	#cookieConsent p {
		display: block;
	    width: 100%;
	    text-align: center;
	    margin-bottom: 20px;
	}
	#cookieConsentOK {
		display: block;
		width: 100%;
		text-align: center;
	}
}
.grecaptcha-badge { 
	opacity:0;
	}

h1 a, h2 a, h3 a, h4 a, #infoboxLargeTitle{
	color: #9f0127;
	text-decoration: none;
} 
