@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

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

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

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

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

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

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

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

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

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

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

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

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

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

@-ms-viewport {
  width: device-width;
}
html {
  font-size: 14px;
  /* Sets default font size for rem units */
  height: 100%;
}

body {
  font-family: Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

nav#topnav {
  font-family: Muli, Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

h1, h2, h3, header, aside {
  font-family: "Jura", Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

body,
body nav + form {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  flex: 1 1 auto;
}

body {
  font-weight: normal;
  font-size: 14px;
  /* Sets default font size */
  line-height: 1.5em;
  background-color: #eeeeee;
  color: black;
  vertical-align: top;
}

h1 {
  position: relative;
  padding: 0.25em;
  /* 14x0.25=3.5px */
  font-size: 1.5em;
  /* 14x1.5=21px; Jura needs larger font */
  font-weight: bold;
  text-align: center;
  text-shadow: 0.05em 0.05em 0.1em silver;
}

h2 {
  position: static;
  font-size: 1.286em;
  /* 14x1.286=18px; Jura needs larger font */
  font-weight: bold;
}

h3 {
  position: static;
  font-size: 1.2em;
  font-weight: bold;
}

h4 {
  position: static;
  font-size: 1.1em;
  font-weight: bold;
}

a {
  display: inline;
  color: #555555;
}

a:hover {
  text-decoration: underline !important;
  color: #D10037 !important;
}

ol, ul {
  padding-left: 2em;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0.25em 0 0.25em 0;
  width: 100%;
  box-sizing: border-box;
}

p {
  margin: 1em 0 1em 0;
}
p.full {
  flex-basis: 100%;
}

iframe {
  border: 1px solid #ccc;
}

input,
button,
select,
textarea {
  transition: all 0.25s ease-in-out;
  display: inline-block;
  box-sizing: border-box;
  padding: 0.1em;
  margin: 0;
  -ms-appearance: none;
  -o-appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  box-shadow: none;
  border-radius: 0;
  background: none;
  border: solid 1px #ccc;
}
input:focus,
button:focus,
select:focus,
textarea:focus {
  outline: none;
  box-shadow: 0 0 5px 1px #ccc;
  border: solid 1px #0061A8 !important;
}

button,
input[type=submit],
input[type=button] {
  box-shadow: 1px 1px 2px 0 #ccc;
  background-color: #eeeeee;
  padding: 0.35em;
  border-radius: 5px;
}
button.primary,
input[type=submit].primary,
input[type=button].primary {
  background-color: #0061A8;
  color: white;
}
button:active,
input[type=submit]:active,
input[type=button]:active {
  box-shadow: inset 2px 2px 2px 0 rgba(50, 50, 50, 0.5);
  background-color: #0061A8;
  -webkit-transform: translate(2px, 2px);
          transform: translate(2px, 2px);
}

input.contact_date {
  position: absolute;
  left: -2000px;
}

input[type=search] {
  padding-left: 1.5rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3E%3Cg stroke-width='2' stroke='%230061A8' fill='none'%3E%3Cpath d='M11.29 11.71l-4-4'/%3E%3Ccircle cx='5' cy='5' r='4'/%3E%3C/g%3E%3C/svg%3E") transparent 2px 50%/1.1rem 1.1rem no-repeat;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
}
input[type=search]:focus {
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  filter: grayscale(0%);
}
input[type=checkbox], input[type=radio] {
  background-color: white;
  box-shadow: inset 1px 1px 2px 0 #ccc;
  width: 0.9rem;
  height: 0.9rem;
  margin: 0 0.2rem;
  vertical-align: middle;
}
input[type=checkbox]:checked, input[type=radio]:checked {
  box-shadow: 1px 1px 2px 0 #555555;
  background-color: #0061A8;
}

select {
  position: relative;
  padding-left: 0.5em;
  padding-right: 1.5em;
}
select option {
  background: none;
  color: #0061A8;
}
select option:active, select option:hover {
  color: white;
  background-color: #0061A8;
  border: none;
  outline: none;
}
select:focus, select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}
select:focus::-ms-value {
  color: white;
  background-color: #0061A8;
}
select::-ms-expand {
  display: none;
}

div.label,
label {
  position: relative;
  display: inline-block;
  vertical-align: top;
}
div.label.select::after,
label.select::after {
  transition: all 0.25s ease-in-out;
  position: absolute;
  font-size: 75%;
  top: 0.1em;
  right: 0.5em;
  display: inline;
  content: "▼";
  pointer-events: none;
}
div.label.select:hover::after, div.label.select:hover select,
label.select:hover::after,
label.select:hover select {
  color: #D10037;
}

img.max-width {
  max-width: 100%;
}

header {
  position: absolute;
  box-sizing: border-box;
  padding: 1em 1em 0 1em;
  width: 30vw;
  max-width: 250px;
  height: 8.5vw;
  min-height: 3.75rem;
  max-height: 5.5rem;
  z-index: 20;
}

header a {
  display: flex;
  text-align: left;
  padding: 0;
  height: 100%;
  margin: auto 0;
  text-decoration: none;
}

header #logo img {
  transition: all 0.25s ease-in-out;
  height: 100%;
  width: 100%;
  z-index: 1;
}

header #logo img:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

form.search {
  display: flex;
}
form.search input {
  font-size: 1rem;
  margin-right: 1rem;
}
form.search input[type=search] {
  flex: 1;
}

nav#topnav {
  width: 100%;
  color: #444;
  padding: 0;
  height: 8.5vw;
  min-height: 3.75rem;
  max-height: 5.5rem;
  font-size: 1.35em;
  text-shadow: 0.1em 0.1em 0.1em silver;
  background-color: white;
}
nav#topnav span#topnavToggler {
  display: none;
}
nav#topnav ul {
  box-sizing: border-box;
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
}
nav#topnav li {
  padding: 0.2em 0.5em;
}
nav#topnav ul#mainMenu {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-around;
  align-items: stretch;
  z-index: 10;
  height: 100%;
  font-variant: small-caps;
}
nav#topnav ul#mainMenu > li:first-child {
  margin-left: 245px;
}
nav#topnav ul#mainMenu > li:first-child > ul {
  padding-left: 245px !important;
}
nav#topnav ul#mainMenu > li:first-child > ul::after {
  margin-left: 235px;
}
nav#topnav ul#mainMenu > li:first-child > ul::before {
  margin-left: 234px;
}
nav#topnav ul#mainMenu > li:hover {
  cursor: default;
}
nav#topnav ul#mainMenu > li:hover > ul {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
nav#topnav ul#mainMenu > li {
  line-height: 5.5rem;
  text-align: center;
  z-index: 20;
  padding-top: 0;
  padding-bottom: 0;
  flex-grow: 1;
  display: inline-block;
}
nav#topnav ul#mainMenu > li > ul {
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateY(-1rem);
          transform: translateY(-1rem);
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 100%;
  white-space: nowrap;
  transition: all 0.25s ease-in-out;
  background-color: #f8f8f8;
  border: 1px solid #ccc;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
}
nav#topnav ul#mainMenu > li > ul a {
  border-color: #f8f8f8;
}
nav#topnav ul#mainMenu > li > ul li {
  display: block;
  font-weight: normal;
  font-size: 0.8em;
  line-height: 0.8em;
}
nav#topnav ul#mainMenu > li > ul::after, nav#topnav ul#mainMenu > li > ul::before {
  bottom: 100%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
nav#topnav ul#mainMenu > li > ul::after {
  border-bottom-color: #f8f8f8;
  border-width: 10px;
  margin-left: -10px;
}
nav#topnav ul#mainMenu > li > ul::before {
  border-bottom-color: #ccc;
  border-width: 11px;
  margin-left: -11px;
}
nav#topnav ul#mainMenu li.puzzle > ul::after, nav#topnav ul#mainMenu li.puzzle > ul::before {
  left: 6.25%;
}
nav#topnav ul#mainMenu li.puzzle > ul {
  display: flex;
  padding: 0.36em;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: flex-start;
  width: 100%;
  height: 21rem;
  text-align: left;
}
nav#topnav ul#mainMenu li.puzzle > ul li {
  padding-left: 0;
  padding-bottom: 0;
  font-variant: normal;
}
nav#topnav ul#mainMenu li.puzzle > ul > li {
  padding: 0;
  margin-bottom: 0;
  min-width: 6rem;
}
nav#topnav ul#mainMenu li.puzzle > ul > li ul {
  font-family: Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-shadow: none;
  margin-top: 0.3rem;
  margin-right: 1rem;
}
nav#topnav ul#mainMenu li.puzzle > ul > li.hasSubmenu {
  cursor: pointer;
  margin-top: 3rem;
}
nav#topnav ul#mainMenu li.puzzle > ul > li.search {
  position: absolute;
  width: 100%;
  max-width: 40rem;
  min-height: 2.5rem;
}
nav#topnav ul#mainMenu li.puzzle > ul > li.pieces, nav#topnav ul#mainMenu li.puzzle > ul > li.sizes {
  min-height: 0;
}
nav#topnav ul#mainMenu li.puzzle > ul > li.versions > ul {
  -webkit-column-count: 5;
     -moz-column-count: 5;
          column-count: 5;
  /*height: 100%;*/
}
nav#topnav ul#mainMenu li.puzzle > ul > li.versions > ul > li {
  width: 11em;
}
nav#topnav ul#mainMenu li#languageSelector {
  position: relative;
  font-size: 0.7em;
  /*font-variant: normal;*/
}
nav#topnav ul#mainMenu li#languageSelector ul::after,
nav#topnav ul#mainMenu li#languageSelector ul::before {
  left: 50%;
}
nav#topnav ul#mainMenu li#languageSelector ul li {
  font-size: 1.1428em;
  margin-top: 1em;
  margin-bottom: 1em;
}
nav#topnav h1 {
  display: inline-block;
  padding: 0;
  margin: 0;
  font-size: 1em;
  line-height: 1em;
}
nav#topnav a,
nav#topnav ul span:not(.caret):not(#cartSummary) {
  display: inline-block;
  text-decoration: none;
  color: #444;
  margin: 0;
  line-height: 1em;
  border: 0px solid white;
  border-bottom: 3px solid white;
  transition: border 0.25s ease-in-out;
}
nav#topnav a:hover,
nav#topnav ul span:not(.caret):not(#cartSummary):hover {
  color: black;
  text-decoration: none !important;
  border-bottom: 3px solid #D10037 !important;
}
nav#topnav a:hover span.caret,
nav#topnav ul span:not(.caret):not(#cartSummary):hover span.caret {
  color: #D10037;
}
nav#topnav a.selected {
  color: #0061A8;
}

nav.breadcrumb ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav.breadcrumb ol li {
  display: inline-block;
}
nav.breadcrumb ol li:not(:first-child)::before {
  content: " > ";
}

aside.sidebar {
  position: relative;
  width: 245px;
  box-sizing: border-box;
  padding-left: 0.75em;
  padding-right: 0.25em;
  background-color: white;
}
aside.sidebar h2 {
  text-align: center;
}
aside.sidebar a:hover {
  text-decoration: none;
}
aside.sidebar a {
  color: black;
}
aside.sidebar div,
aside.sidebar ul {
  margin: 0;
  padding: 0 0 0.5em 0;
  box-sizing: border-box;
}
aside.sidebar ul li {
  list-style-type: none;
}

main {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  flex: 1;
  margin: 0;
  box-sizing: border-box;
  min-height: 21rem;
  min-width: 0;
  vertical-align: top;
  border-top: 1px solid #ccc;
  background-color: white;
  padding: 0.5rem;
}
main > section {
  min-width: 0;
}
main nav.breadcrumb {
  flex-basis: 100%;
}
main > h1 {
  width: 100%;
}
main.error {
  text-align: center;
}
main.error p {
  position: static;
  font-size: 1.2em;
  text-align: center;
  flex-basis: 100%;
}
main.error form {
  margin: 0 auto;
  width: 50%;
}

aside.sidebar + main {
  border-left: 1px solid #ccc;
}

aside.sidebar + main::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 1em;
  height: 1em;
  background-color: white;
}

main.hide, footer.hide {
  display: none;
  height: 1px;
  min-height: 0;
  opacity: 0;
  transition: all 0.25s ease-in-out;
}

footer {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  box-shadow: inset -1px 7px 6px -6px rgba(50, 50, 50, 0.75);
  padding: 1em;
  text-align: center;
  font-size: 0.857rem;
}
footer .contact,
footer .languages.socialMedia,
footer .catalog {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: calc(100% / 3);
  box-sizing: border-box;
}
footer a {
  color: #444444;
}
footer a img {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
}
footer a:hover img {
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  filter: grayscale(0%);
}
footer .contact > div,
footer .contact > form {
  display: inline-block;
  vertical-align: top;
  text-align: left;
}
footer .contact a {
  white-space: nowrap;
}
footer .contact p {
  position: relative;
  padding-left: 1.25em;
  line-height: 1.5em;
}
footer .contact p:first-child {
  margin-top: 0;
}
footer .contact p::before {
  position: absolute;
  content: "";
  width: 1em;
  height: 100%;
  left: 0;
  background-position: center center;
  background-repeat: no-repeat;
}
footer .contact p.address::before {
  background-position: top center;
  /* Entypo pictograms by Daniel Bruce — www.entypo.com */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23000000' d='M19.799,5.165l-2.375-1.83c-0.135-0.093-0.324-0.176-0.521-0.237C16.705,3.037,16.5,3,16.336,3H9.5l0.801,5h6.035 c0.164,0,0.369-0.037,0.566-0.098s0.387-0.145,0.521-0.236l2.375-1.832C19.933,5.743,20,5.622,20,5.5S19.933,5.257,19.799,5.165z M8.5,1h-1C7.224,1,7,1.224,7,1.5V5H3.664c-0.166,0-0.37,0.037-0.567,0.099C2.899,5.159,2.71,5.242,2.576,5.335l-2.375,1.83 C0.066,7.256,0,7.378,0,7.5c0,0.121,0.066,0.242,0.201,0.335l2.375,1.832C2.71,9.758,2.899,9.842,3.097,9.902 C3.294,9.963,3.498,10,3.664,10H7v8.5C7,18.776,7.224,19,7.5,19h1C8.776,19,9,18.776,9,18.5v-17C9,1.224,8.776,1,8.5,1z' /%3E%3C/svg%3E");
}
footer .contact p.phone::before {
  /* Entypo pictograms by Daniel Bruce — www.entypo.com */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23000000' d='M11.229,11.229c-1.583,1.582-3.417,3.096-4.142,2.371c-1.037-1.037-1.677-1.941-3.965-0.102 c-2.287,1.838-0.53,3.064,0.475,4.068c1.16,1.16,5.484,0.062,9.758-4.211c4.273-4.274,5.368-8.598,4.207-9.758 c-1.005-1.006-2.225-2.762-4.063-0.475c-1.839,2.287-0.936,2.927,0.103,3.965C14.324,7.812,12.811,9.646,11.229,11.229z' /%3E%3C/svg%3E");
}
footer .contact p.email::before {
  /* Entypo pictograms by Daniel Bruce — www.entypo.com */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23000000' d='M14.608,12.172c0,0.84,0.239,1.175,0.864,1.175c1.393,0,2.28-1.775,2.28-4.727c0-4.512-3.288-6.672-7.393-6.672 c-4.223,0-8.064,2.832-8.064,8.184c0,5.112,3.36,7.896,8.52,7.896c1.752,0,2.928-0.192,4.727-0.792l0.386,1.607 c-1.776,0.577-3.674,0.744-5.137,0.744c-6.768,0-10.393-3.72-10.393-9.456c0-5.784,4.201-9.72,9.985-9.72 c6.024,0,9.215,3.6,9.215,8.016c0,3.744-1.175,6.6-4.871,6.6c-1.681,0-2.784-0.672-2.928-2.161 c-0.432,1.656-1.584,2.161-3.145,2.161c-2.088,0-3.84-1.609-3.84-4.848c0-3.264,1.537-5.28,4.297-5.28 c1.464,0,2.376,0.576,2.782,1.488l0.697-1.272h2.016v7.057H14.608z M11.657,9.004c0-1.319-0.985-1.872-1.801-1.872 c-0.888,0-1.871,0.719-1.871,2.832c0,1.68,0.744,2.616,1.871,2.616c0.792,0,1.801-0.504,1.801-1.896V9.004z' /%3E%3C/svg%3E");
}
footer .contact form {
  margin: 0 2em;
}
footer .contact form input:not([type=submit]),
footer .contact form select,
footer .contact form textarea {
  display: inline-block;
  box-sizing: border-box;
  width: 12em;
  padding: 0.1em 0.25em;
}
footer .contact form input:not([type=submit]):-ms-input-placeholder,
footer .contact form select:-ms-input-placeholder,
footer .contact form textarea:-ms-input-placeholder {
  color: #555555;
}
footer .contact form input:not([type=submit]):-moz-placeholder,
footer .contact form select:-moz-placeholder,
footer .contact form textarea:-moz-placeholder {
  opacity: 1;
  color: #555555;
}
footer .contact form input:not([type=submit])::-moz-placeholder,
footer .contact form select::-moz-placeholder,
footer .contact form textarea::-moz-placeholder {
  opacity: 1;
  color: #555555;
}
footer .contact form input:not([type=submit])::-webkit-input-placeholder,
footer .contact form select::-webkit-input-placeholder,
footer .contact form textarea::-webkit-input-placeholder {
  color: #555555;
}
footer .contact form input:not([type=submit]):placeholder-shown,
footer .contact form select:placeholder-shown,
footer .contact form textarea:placeholder-shown {
  color: #555555;
}
footer .contact form input:not([type=submit])::-webkit-input-placeholder,
footer .contact form select::-webkit-input-placeholder,
footer .contact form textarea::-webkit-input-placeholder {
  color: #555555;
}
footer .contact form input:not([type=submit])::-moz-placeholder,
footer .contact form select::-moz-placeholder,
footer .contact form textarea::-moz-placeholder {
  color: #555555;
}
footer .contact form input:not([type=submit]):-ms-input-placeholder,
footer .contact form select:-ms-input-placeholder,
footer .contact form textarea:-ms-input-placeholder {
  color: #555555;
}
footer .contact form input:not([type=submit])::-ms-input-placeholder,
footer .contact form select::-ms-input-placeholder,
footer .contact form textarea::-ms-input-placeholder {
  color: #555555;
}
footer .contact form input:not([type=submit])::placeholder,
footer .contact form select::placeholder,
footer .contact form textarea::placeholder {
  color: #555555;
}
footer .contact form input:not([type=submit]):optional,
footer .contact form select:optional,
footer .contact form textarea:optional {
  border-style: dotted;
}
footer .contact form textarea {
  transition: all 0.25s ease-in-out;
}
footer .contact form textarea:focus {
  height: 10em;
  width: 18em;
}
footer .contact form label {
  display: none;
}
footer .languages.socialMedia {
  margin-top: 2em;
}
footer .languages.socialMedia .socialMedia img {
  max-width: 60px;
}
footer .languages.socialMedia .languages {
  padding: 0.5em 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  -o-border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
     border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
}
footer .languages.socialMedia .languages ul {
  display: inline;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
footer .languages.socialMedia .languages ul li {
  display: inline;
  text-transform: capitalize;
}
footer .languages.socialMedia .languages ul li:not(:last-child)::after {
  content: ", ";
}
footer .languages.socialMedia .languages img {
  width: 1.25em;
  vertical-align: middle;
  margin-right: 0.25em;
}
footer .catalog {
  font-size: 115%;
}
footer .catalog img {
  border: 1px solid #ccc;
  display: block;
  margin: 0 auto;
  max-height: 10em;
}
footer .copyright {
  order: 99;
  width: 100%;
  line-height: 1.2em;
  margin-top: 1em;
}

/* Front page */
main div#banner {
  width: calc(100% + 1rem);
  text-align: center;
  vertical-align: middle;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: -0.5rem;
  min-height: 250px;
  overflow: hidden;
}
main div#banner > img {
  flex-shrink: 1;
  flex-grow: 0;
}
main div#banner article {
  padding: 0 2rem;
}
main div#banner article img {
  width: 100%;
  max-width: 20rem;
}
main div#banner article h1, main div#banner article h2 {
  margin-bottom: 1.25rem;
}
main div#banner article p {
  font-size: 1.1em;
}
main div#banner article section.webshop {
  background-color: #0061A8;
  color: white;
  margin: 2rem auto 3rem auto;
  box-shadow: 1px 1px 2px 0 #ccc;
  padding: 0.35em;
  border-radius: 10px;
  max-width: 25rem;
}
main div#banner article section.webshop h1 {
  text-shadow: none;
}
main div#banner article section.webshop a {
  color: white;
}
main div#banner article section.webshop a img.cart {
  width: 2rem;
  vertical-align: middle;
  margin: 0 1rem 0.5rem 1rem;
}
main div#banner article section.webshop div a img {
  background-color: white;
  border: 1px solid #000;
  border-radius: 5px;
}

main div#banner img:first-child {
  margin-left: 0;
}

main section.newest {
  background: #f8f8f8;
  margin: 0 -0.5rem 1em -0.5rem;
  border: solid #ccc;
  border-width: 1px 0;
  flex: 1 1 100%;
}
main section.newest li h3 {
  max-width: 300px;
  text-align: center;
  margin: 0 auto;
}
main section.newest .swiper-container {
  padding: 0.5rem;
}
main section.newest .swiper-container .swiper-button-next,
main section.newest .swiper-container .swiper-button-prev {
  width: 3rem;
}
main section.newest .swiper-container .swiper-button-next::before,
main section.newest .swiper-container .swiper-button-prev::before {
  width: 3rem;
  height: 3rem;
  top: calc(50% - 1.5rem);
  left: calc(50% - 1.5rem);
  border-radius: 3rem;
}
main section.newest .swiper-container .swiper-button-next, main section.newest .swiper-container.swiper-container-rtl .swiper-button-prev {
  background: none;
}
main section.newest .swiper-container .swiper-button-prev, main section.newest .swiper-container.swiper-container-rtl .swiper-button-next {
  background: none;
}

main section.newest, main section.featured, main section.info {
  text-align: center;
}

main section.featured, main section.info {
  /*width: calc(100% / 3);
  min-width: 300px;*/
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: calc(100% / 3);
  padding: 0 0.5em;
  box-sizing: border-box;
}

main section.featured img,
main section.info img {
  width: 90%;
  max-width: 450px;
}

main section.info h1:not(:first-child) {
  margin-top: 3rem;
}
main section.info img {
  max-height: 6rem;
  width: auto;
}

/* General */
img.centered {
  margin: 0 auto;
  display: block;
}

.caret {
  font-size: 0.5em;
  padding-left: 0.5em;
  transition: color 0.25s ease-in-out;
}

div.alert {
  width: 100%;
  text-align: center;
  color: #D10037;
  font-size: 130%;
  padding: 0.5em;
  margin: 0.5em 0;
}
div.alert ul {
  list-style-position: inside;
}
div.alert.error {
  border: 2px solid #D10037;
}

article.column {
  box-sizing: border-box;
  flex: 1 1;
  padding: 1em;
  min-width: 300px;
}

ul.flexi-column,
ol.flexi-column {
  list-style-position: inside;
  -webkit-column-count: 4;
     -moz-column-count: 4;
          column-count: 4;
}

div.flexi-column {
  display: flex;
  flex-flow: row wrap;
}
div.flexi-column > div {
  box-sizing: border-box;
  flex: 1 1;
}

.columns.max2 {
  -webkit-column-count: 2;
     -moz-column-count: 2;
          column-count: 2;
}

form.contact input:required:valid,
form.contact textarea:required:valid {
  /* Entypo pictograms by Daniel Bruce — www.entypo.com */
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%230061A8' d='M8.294,16.998c-0.435,0-0.847-0.203-1.111-0.553L3.61,11.724c-0.465-0.613-0.344-1.486,0.27-1.951 c0.615-0.467,1.488-0.344,1.953,0.27l2.351,3.104l5.911-9.492c0.407-0.652,1.267-0.852,1.921-0.445 c0.653,0.406,0.854,1.266,0.446,1.92L9.478,16.34c-0.242,0.391-0.661,0.635-1.12,0.656C8.336,16.998,8.316,16.998,8.294,16.998z' /%3E%3C/svg%3E") no-repeat 98% top/1em 1em;
  /*box-shadow: 0 0 5px #5cd053;*/
  /*border-color: #28921f;*/
}

/* Pages */
main > nav.secondary,
main > section.staticPage {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}
main > nav.secondary p.banner,
main > section.staticPage p.banner {
  text-align: center;
}
main > nav.secondary p.banner img,
main > section.staticPage p.banner img {
  max-width: 400px;
  border: 1px solid #ccc;
}
main > nav.secondary div.flexi-column > div,
main > section.staticPage div.flexi-column > div {
  position: relative;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  margin: 0 1em;
  padding: 1em;
}
main > nav.secondary div.flexi-column > div a,
main > section.staticPage div.flexi-column > div a {
  color: #444444;
}
main > nav.secondary div.flexi-column > div h3,
main > section.staticPage div.flexi-column > div h3 {
  text-align: center;
  border-bottom: 1px solid #ccc;
  border-top-width: 0;
  -o-border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
     border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
  margin-bottom: 1em;
}
main > nav.secondary div.flexi-column > div div.illustration.examples,
main > section.staticPage div.flexi-column > div div.illustration.examples {
  text-align: center;
}
main > nav.secondary div.flexi-column > div span.examples,
main > section.staticPage div.flexi-column > div span.examples {
  display: inline-block;
  text-align: center;
}
main > nav.secondary div.flexi-column > div img.illustration,
main > section.staticPage div.flexi-column > div img.illustration {
  height: 300px;
  margin-right: 0.5em;
}
main > nav.secondary div.flexi-column > div a.more,
main > section.staticPage div.flexi-column > div a.more {
  display: block;
  text-align: center;
  padding: 0.5em 0 0 0;
  border-top: 1px solid #ccc;
  border-bottom-width: 0;
  -o-border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
     border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
  font-size: 115%;
}
main > nav.secondary.puzzles article,
main > section.staticPage.puzzles article {
  width: 100%;
}
main > nav.secondary.puzzles article img,
main > section.staticPage.puzzles article img {
  max-width: 100%;
}
main > nav.secondary.puzzles article img.whyLarsenIllustration,
main > section.staticPage.puzzles article img.whyLarsenIllustration {
  background-image: url("/images/illustration.jpg");
  max-height: 600px;
  padding-right: 5em;
  width: calc(100% - 5em);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
main > nav.secondary.about article.column,
main > section.staticPage.about article.column {
  flex-basis: calc(100% / 3);
}
main > nav.secondary.about article.column h2, main > nav.secondary.about article.column h3,
main > section.staticPage.about article.column h2,
main > section.staticPage.about article.column h3 {
  white-space: nowrap;
}
main > nav.secondary.about img,
main > section.staticPage.about img {
  width: 90%;
  max-width: 600px;
  border: 1px solid #ccc;
  display: block;
  margin: 0 auto;
}
main > nav.secondary.about p.phone,
main > section.staticPage.about p.phone {
  clear: left;
}
main > nav.secondary.about p.profiles,
main > section.staticPage.about p.profiles {
  margin: 0 auto;
  text-align: center;
}
main > nav.secondary.about p.profiles img,
main > section.staticPage.about p.profiles img {
  width: 20%;
  display: inline;
}
main > nav.secondary.about form label,
main > section.staticPage.about form label {
  width: 450px;
  margin-bottom: 1em;
}
main > nav.secondary.about form label input, main > nav.secondary.about form label textarea,
main > section.staticPage.about form label input,
main > section.staticPage.about form label textarea {
  position: absolute;
  right: 0;
  left: 150px;
}
main > nav.secondary.about form label textarea,
main > section.staticPage.about form label textarea {
  height: 100%;
}
main > nav.secondary.about form label:last-of-type,
main > section.staticPage.about form label:last-of-type {
  height: 10em;
}
main > nav.secondary.location img,
main > section.staticPage.location img {
  border: 1px solid #ccc;
  width: 100%;
  max-width: 600px;
}
main > nav.secondary.location iframe,
main > section.staticPage.location iframe {
  flex: 0 1 600px;
  width: 100%;
  max-width: 600px;
  height: 400px;
}
main > nav.secondary.history ul.photos,
main > section.staticPage.history ul.photos {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
main > nav.secondary.history ul.photos li,
main > section.staticPage.history ul.photos li {
  display: inline;
  margin-right: 0.5em;
}
main > nav.secondary.history ul.photos li img,
main > section.staticPage.history ul.photos li img {
  height: 150px;
  border: 1px solid #ccc;
}
main > nav.secondary.employees article,
main > section.staticPage.employees article {
  flex-basis: 25%;
}
main > nav.secondary.employees article img,
main > section.staticPage.employees article img {
  max-width: 200px;
}

/* Swiper */
.swiper-container {
  padding: 0.5rem 3rem;
  box-sizing: border-box;
}
.swiper-container a {
  text-decoration: none;
}
.swiper-container ul,
.swiper-container li {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.swiper-container.swiper-container-coverflow img {
  -webkit-box-reflect: below 0px -webkit-gradient(linear, 0% 100%, 0% 0%, color-stop(0.05, rgba(255, 255, 255, 0.117647)), color-stop(0.2, transparent)) 0 fill/auto/0px stretch;
}
.swiper-container.swiper-container-vertical {
  height: 100%;
  max-height: 70vh;
  padding: 3rem 0.5rem;
}
.swiper-container.swiper-container-vertical .swiper-button-next,
.swiper-container.swiper-container-vertical .swiper-button-prev {
  width: 100%;
  height: 2rem;
}
.swiper-container.swiper-container-vertical .swiper-button-next, .swiper-container.swiper-container-vertical.swiper-container-rtl .swiper-button-prev {
  right: 0;
  bottom: 0;
  top: auto;
}
.swiper-container.swiper-container-vertical .swiper-button-prev, .swiper-container.swiper-container-vertical.swiper-container-rtl .swiper-button-next {
  left: 0;
  bottom: auto;
  top: 0;
}
.swiper-container.swiper-container-vertical .swiper-button-next, .swiper-container.swiper-container-vertical.swiper-container-rtl .swiper-button-prev {
  padding: 0.5rem 0 0 0;
  background: linear-gradient(to top, white 0%, rgba(255, 255, 255, 0.85) 75%, rgba(255, 255, 255, 0) 100%);
}
.swiper-container.swiper-container-vertical .swiper-button-prev, .swiper-container.swiper-container-vertical.swiper-container-rtl .swiper-button-next {
  padding: 0 0 0.5rem 0;
  background: linear-gradient(to bottom, white 0%, rgba(255, 255, 255, 0.85) 75%, rgba(255, 255, 255, 0) 100%);
}
.swiper-container.swiper-container-vertical .swiper-button-next::before, .swiper-container.swiper-container-vertical.swiper-container-rtl .swiper-button-prev::before {
  /* Entypo pictograms by Daniel Bruce — www.entypo.com */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23ffffff' d='M4.516,7.548c0.436-0.446,1.043-0.481,1.576,0L10,11.295l3.908-3.747c0.533-0.481,1.141-0.446,1.574,0 c0.436,0.445,0.408,1.197,0,1.615c-0.406,0.418-4.695,4.502-4.695,4.502C10.57,13.888,10.285,14,10,14s-0.57-0.112-0.789-0.335 c0,0-4.287-4.084-4.695-4.502C4.107,8.745,4.08,7.993,4.516,7.548z' /%3E%3C/svg%3E");
}
.swiper-container.swiper-container-vertical .swiper-button-prev::before, .swiper-container.swiper-container-vertical.swiper-container-rtl .swiper-button-next::before {
  /* Entypo pictograms by Daniel Bruce — www.entypo.com */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23ffffff' d='M15.484,12.452c-0.436,0.446-1.043,0.481-1.576,0L10,8.705l-3.908,3.747c-0.533,0.481-1.141,0.446-1.574,0 c-0.436-0.445-0.408-1.197,0-1.615c0.406-0.418,4.695-4.502,4.695-4.502C9.43,6.112,9.715,6,10,6s0.57,0.112,0.789,0.335 c0,0,4.287,4.084,4.695,4.502C15.893,11.255,15.92,12.007,15.484,12.452z' /%3E%3C/svg%3E");
}
.swiper-container .swiper-wrapper {
  align-items: flex-end;
}
.swiper-container .swiper-button-next,
.swiper-container .swiper-button-prev {
  padding: 0;
  top: 0;
  height: 100%;
  width: 2rem;
  background: rgba(255, 255, 255, 0.85);
  text-align: center;
}
.swiper-container .swiper-button-next, .swiper-container.swiper-container-rtl .swiper-button-prev {
  padding: 0 0 0 0.5rem;
  right: 0;
  background: linear-gradient(to left, white 0%, rgba(255, 255, 255, 0.85) 75%, rgba(255, 255, 255, 0) 100%);
}
.swiper-container .swiper-button-prev, .swiper-container.swiper-container-rtl .swiper-button-next {
  padding: 0 0.5rem 0 0;
  left: 0;
  background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0.85) 75%, rgba(255, 255, 255, 0) 100%);
}
.swiper-container .swiper-button-next:hover::before,
.swiper-container .swiper-button-prev:hover::before {
  background-color: #0061A8;
  -webkit-transform: translate(2px, 2px);
          transform: translate(2px, 2px);
}
.swiper-container .swiper-button-next::before,
.swiper-container .swiper-button-prev::before {
  position: absolute;
  display: inline-block;
  box-shadow: 1px 1px 2px 0 #ccc;
  transition: all 0.25s ease-in-out;
  box-sizing: border-box;
  content: "";
  width: 2rem;
  height: 2rem;
  top: calc(50% - 1rem);
  bottom: 0;
  left: calc(50% - 1rem);
  right: 0;
  border-radius: 2rem;
  background-color: rgba(0, 98, 168, 0.75);
  background-size: cover;
}
.swiper-container .swiper-button-next::before, .swiper-container.swiper-container-rtl .swiper-button-prev::before {
  /* Entypo pictograms by Daniel Bruce — www.entypo.com */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23ffffff' d='M9.163,4.516c0.418,0.408,4.502,4.695,4.502,4.695C13.888,9.43,14,9.715,14,10s-0.112,0.57-0.335,0.787 c0,0-4.084,4.289-4.502,4.695c-0.418,0.408-1.17,0.436-1.615,0c-0.446-0.434-0.481-1.041,0-1.574L11.295,10L7.548,6.092 c-0.481-0.533-0.446-1.141,0-1.576C7.993,4.08,8.745,4.107,9.163,4.516z' /%3E%3C/svg%3E");
}
.swiper-container .swiper-button-prev::before, .swiper-container.swiper-container-rtl .swiper-button-next::before {
  /* Entypo pictograms by Daniel Bruce — www.entypo.com */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23ffffff' d='M12.452,4.516c0.446,0.436,0.481,1.043,0,1.576L8.705,10l3.747,3.908c0.481,0.533,0.446,1.141,0,1.574 c-0.445,0.436-1.197,0.408-1.615,0c-0.418-0.406-4.502-4.695-4.502-4.695C6.112,10.57,6,10.285,6,10s0.112-0.57,0.335-0.789 c0,0,4.084-4.287,4.502-4.695C11.255,4.107,12.007,4.08,12.452,4.516z' /%3E%3C/svg%3E");
}
.swiper-container .swiper-pagination {
  background-color: #f8f8f8;
  border: 1px solid #ccc;
}
.swiper-container .swiper-pagination li {
  display: inline-block;
  border: 1px solid #555555;
  margin: 0.5rem 0.25em;
  padding: 0.5em 1em;
}
.swiper-container .swiper-pagination li:hover, .swiper-container .swiper-pagination lifocus, .swiper-container .swiper-pagination li.active {
  border-color: #D10037;
  color: #D10037;
}
.swiper-container .swiper-pagination li.active {
  color: #D10037;
}
.swiper-container .swiper-pagination li a {
  transition: all 0.25s ease-in-out;
  color: inherit;
}

@media screen and (max-width: 1380px) {
  nav#topnav ul#mainMenu li.puzzle > ul {
    padding-left: 0 !important;
    justify-content: center;
  }
  nav#topnav ul#mainMenu li#shop span#cartSummary {
    display: none;
  }

  ul.flexi-column,
ol.flexi-column {
    -webkit-column-count: 3;
       -moz-column-count: 3;
            column-count: 3;
  }

  main section.featured {
    order: 97;
    flex-basis: 100%;
  }

  main section.info {
    flex-basis: 50%;
  }
}
@media screen and (max-width: 1180px) {
  nav#topnav ul#mainMenu li.puzzle > ul {
    height: 24rem;
  }
  nav#topnav ul#mainMenu li.puzzle > ul li.versions ul {
    -webkit-column-count: 4;
       -moz-column-count: 4;
            column-count: 4;
  }

  footer .contact form {
    display: none;
  }

  /* Front page */
  main div#banner > img {
    display: none;
  }

  main > section.staticPage.about article.column {
    flex-basis: calc(100% / 2);
  }
}
@media screen and (max-width: 980px) {
  nav#topnav ul#mainMenu li.puzzle > ul {
    height: 29rem;
  }
  nav#topnav ul#mainMenu li.puzzle > ul li.versions ul {
    -webkit-column-count: 3;
       -moz-column-count: 3;
            column-count: 3;
  }

  main > section.staticPage div.flexi-column > div {
    flex-basis: 100%;
    margin: 1em 0;
  }
  main > section.staticPage.employees article {
    flex-basis: 50%;
  }
}
@media screen and (any-hover: none), screen and (max-width: 820px) {
  .transitioning {
    transition: all 0.25s ease-in-out;
  }

  header {
    height: 4rem;
    line-height: 3rem;
    padding: 0.5rem;
  }
  header #logo img {
    transition: all 0.25s ease-in-out;
  }

  nav#topnav {
    z-index: 1;
    box-shadow: 0px 6px 5px -5px rgba(50, 50, 50, 0.75);
    line-height: 1em;
    display: inline-block;
    position: relative;
    top: 0;
    left: 0;
    margin: 0;
    width: 100%;
    height: 4rem;
    max-height: none;
    vertical-align: top;
    overflow: hidden;
  }
  nav#topnav span#topnavToggler {
    transition: all 0.25s ease-in-out;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 4rem;
    height: 4rem;
    background: url("/images/iconmonstr-menu-1.svg") center center no-repeat;
    cursor: pointer;
  }
  nav#topnav.expanded {
    height: auto;
  }
  nav#topnav.expanded span#topnavToggler {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  nav#topnav.expanded ul#mainMenu {
    visibility: visible;
    opacity: 1;
  }
  nav#topnav ul#mainMenu {
    transition: all 0.25s ease-in-out;
    visibility: hidden;
    opacity: 0;
    display: block;
    position: static;
    width: 100%;
    top: auto;
    right: auto;
    overflow: hidden;
    height: auto;
  }
  nav#topnav ul#mainMenu a {
    transition: none;
    box-sizing: border-box;
    width: 100%;
    padding: 0.5em 1em;
    border: none;
  }
  nav#topnav ul#mainMenu a:hover {
    color: #D10037;
    border: none !important;
  }
  nav#topnav ul#mainMenu > li:first-child {
    margin-left: 0;
  }
  nav#topnav ul#mainMenu > li:first-child > ul {
    padding-left: 0 !important;
  }
  nav#topnav ul#mainMenu > li:not(:first-child) {
    border-width: 1px 0 0 0;
    border-top: 1px solid #ccc;
    -o-border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
       border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
  }
  nav#topnav ul#mainMenu > li > ul {
    transition: none;
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    position: relative;
    background: none;
    border: none;
    box-shadow: none;
  }
  nav#topnav ul#mainMenu > li > ul li {
    font-size: 0.9em;
    line-height: 0.9em;
  }
  nav#topnav ul#mainMenu li.puzzle > ul::after, nav#topnav ul#mainMenu li.puzzle > ul::before {
    content: none;
  }
  nav#topnav ul#mainMenu li.puzzle > ul {
    height: auto;
    display: block;
    background-color: #f8f8f8;
    box-shadow: inset -1px 7px 6px -6px rgba(50, 50, 50, 0.75);
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li {
    position: relative;
    line-height: 1.3em;
    height: 1.3em;
    margin-bottom: 0;
    border-top: 1px solid #ccc;
    padding: 0.25em;
    overflow: hidden;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li:first-child {
    border-top-width: 0;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.hasSubmenu {
    margin-top: 0;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.hasSubmenu::after {
    transition: all 0.25s ease-in-out;
    position: absolute;
    content: ">";
    top: 0.25em;
    right: 0.5em;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.expanded {
    height: auto;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.expanded.hasSubmenu::after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.search {
    position: static;
    max-width: none;
    min-height: 0;
    width: auto;
    height: 2em;
    display: inherit;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.search form.search {
    height: 100%;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.search form.search input[type=submit] {
    width: 4rem;
    margin-left: 0.5rem;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.search form.search input[type=search] {
    width: calc(100% - 4.5rem);
    border: none;
    height: 100%;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.versions ul {
    -webkit-column-count: 1;
       -moz-column-count: 1;
            column-count: 1;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li.versions ul > li {
    width: auto;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li > ul {
    margin-right: 0;
  }
  nav#topnav ul#mainMenu li.puzzle > ul > li > ul li {
    padding: 0;
    border-top: 1px solid #eeeeee;
  }
  nav#topnav ul li {
    display: inline-block;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  nav#topnav ul li a {
    line-height: 1.4em;
  }
  nav#topnav ul li .caret {
    display: none;
  }
  nav#topnav ul li#languageSelector,
nav#topnav ul li#shop {
    display: none;
  }
}
@media screen and (max-width: 820px) {
  aside.sidebar + main {
    margin: 0;
    border-left: none;
    top: auto;
  }

  aside.sidebar + main::before {
    content: none;
    background: none;
  }

  footer {
    order: 99;
  }
  footer .contact,
footer .languages.socialMedia,
footer .catalog {
    flex: 1 1 auto;
    width: 100%;
  }
  footer .contact > div {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }
  footer .languages.socialMedia {
    margin-top: 0;
    order: 98;
  }
  footer .languages.socialMedia .socialMedia img {
    width: 9vw;
    max-width: 40px;
  }
  footer .catalog {
    padding: 0.5em 0;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    -o-border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
       border-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ccc, rgba(255, 255, 255, 0)) 100% 1;
  }
  footer .catalog img {
    display: inline-block;
    max-height: 2em;
    margin-right: 0.5em;
    vertical-align: middle;
  }

  ul.flexi-column,
ol.flexi-column {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }

  /* Front page */
  main div#banner article p {
    /*display: none;*/
    font-size: 0.85em;
    line-height: 1.5em;
  }

  main section.featured {
    order: initial;
  }

  main section.featured, main section.info {
    flex-basis: 100%;
  }

  main > section.staticPage.about article.column {
    flex-basis: 100%;
  }
}
@media screen and (max-width: 620px) {
  main div#banner {
    /*font-size: 0.7em;*/
    min-height: 200px;
  }
}
@media screen and (max-width: 420px) {
  ul.flexi-column,
ol.flexi-column {
    -webkit-column-count: 1;
       -moz-column-count: 1;
            column-count: 1;
  }

  main div#banner {
    /*font-size: 0.5em;*/
  }

  main > section.staticPage.employees article {
    flex-basis: 100%;
  }
}
@media print {
  * {
    background: transparent !important;
    float: none !important;
    color: black !important;
    text-shadow: none !important;
    -webkit-filter: none !important;
            filter: none !important;
    -ms-filter: none !important;
  }

  img {
    display: block;
    page-break-inside: avoid;
  }

  aside.sidebar, footer form.contact {
    display: none;
  }

  aside.sidebar + main {
    border: none;
  }
}
@page {
  size: A4 portrait;
}
a.filterToggler {
  display: none;
}

aside.filters.show input[type=submit] {
  display: none;
}
aside.filters.show input[type=button].closeFilters {
  display: inline;
}
aside.filters input[type=checkbox] {
  margin-left: 0;
  margin-right: 0.5em;
}
aside.filters input[type=submit] {
  display: inline;
}
aside.filters input[type=button].closeFilters {
  display: none;
}
aside.filters .pieces input {
  width: 3.15em;
}
aside.filters ul li label:hover {
  color: #D10037;
}
aside.filters .searchableCheckboxList.search {
  padding-right: 1.75em;
  width: 10em;
  margin-right: 0.25em;
  height: 20px;
}
aside.filters .searchableCheckboxList.reset {
  display: none;
  position: relative;
  margin-left: -1.75em;
  margin-right: 0.25em;
  padding: 0 0.5em;
}
aside.filters .searchableCheckboxList.reset.show {
  display: inline-block;
}
aside.filters ul.searchableCheckboxList {
  transition: all 0.25s ease-in-out;
  overflow-y: scroll;
  max-height: 15em;
  border: 1px solid #ccc;
  padding: 0.5em;
  margin-top: -1px;
}
aside.filters ul.searchableCheckboxList.showAll {
  overflow-y: auto;
  max-height: none;
  border: none;
  padding: 0;
}
aside.filters div.actions {
  margin-top: 1em;
}

div.searchControls {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  align-content: space-between;
  padding: 0.5em;
  background-color: #f8f8f8;
  font-family: "Jura", Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 2em;
  border: 1px solid #ccc;
  width: 100%;
}
div.searchControls a {
  text-decoration: none;
}
div.searchControls div.filters {
  width: 100%;
}
div.searchControls div.filters ul {
  display: inline-block;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
div.searchControls div.filters li {
  display: inline-block;
}
div.searchControls div.filters a {
  position: relative;
  font-family: Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-style: italic;
  word-break: break-all;
  /*color: $pagination-focus-color;*/
  border: none;
}
div.searchControls div.filters a::after {
  position: relative;
  top: -0.25em;
  right: -0.25em;
  font-weight: 700;
  font-style: normal;
  content: "x";
  color: #555555;
  padding: 0.1em;
}
div.searchControls div.filters > ul > li {
  font-size: 90%;
  padding: 0 0.25em;
  border: 1px solid #ccc;
  margin: 0.5em 0.5em 0.5em 0;
}
div.searchControls a.filterToggler,
div.searchControls div,
div.searchControls label,
div.searchControls ul.pagination li {
  margin: 0.25em 0.5em;
}
div.searchControls input,
div.searchControls select {
  border-color: #555555;
}
div.searchControls select {
  box-sizing: content-box;
  padding-top: 0;
  padding-bottom: 0;
  height: 2em;
  font-size: inherit;
  font-family: "Jura", Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, "Helvetica Neue", Helvetica, Arial, sans-serif;
}
div.searchControls li a,
div.searchControls li:not(.summary) span {
  display: inline-block;
  box-sizing: border-box;
  margin: 0 0.5em;
  padding: 0 1em;
  border: 1px solid #555555;
}
div.searchControls ul.pagination {
  align-items: center;
  margin: 0;
}
div.searchControls ul.pagination.summary {
  display: none;
}
div.searchControls ul.pagination.summary li.summary {
  font-size: 90%;
}
div.searchControls ul.pagination.summary li:not(.summary) {
  margin-left: 0;
  marging-right: 0;
}
div.searchControls ul.pagination li.disabled span {
  color: #ccc;
  border: 1px solid #ccc;
}
div.searchControls ul.pagination li.active span {
  color: #D10037;
  font-weight: bolder;
  border-color: #D10037;
}
div.searchControls ul.pagination li.active span.extended {
  display: none;
}

ul.resultList,
ul.pagination {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
ul.resultList.custom,
ul.pagination.custom {
  width: 100%;
}

ul.resultList {
  flex-basis: 100%;
}

ul.resultList li,
ul.pagination li {
  box-sizing: border-box;
}

ul.resultList li {
  margin: 0 auto;
  width: 500px;
  text-align: center;
}
ul.resultList li h2 a {
  text-decoration: none;
}

ul.resultList li img[src*=".svg"],
.swiper-slide img[src*=".svg"] {
  border: 1px solid #eeeeee;
  max-width: 100%;
  max-height: 100%;
  box-sizing: border-box;
}

div#loading {
  transition: all 0.25s ease-in-out;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 100000;
  background-color: rgba(255, 255, 255, 0.85);
  opacity: 0;
  visibility: hidden;
}
div#loading:not(.preventShow).show {
  opacity: 1;
  visibility: visible;
}
div#loading img {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
}

@media screen and (max-width: 820px) {
  .filterToggler {
    cursor: pointer;
  }

  a.filterToggler {
    display: block;
    height: 2em;
  }

  aside.filters {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateX(-1rem);
            transform: translateX(-1rem);
    transition: all 0.25s ease-in-out;
    padding: 3em 0;
    display: block;
  }
  aside.filters h2 {
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0.5em;
    margin: 0;
    background-color: rgba(255, 255, 255, 0.85);
    border-bottom: 1px solid #ccc;
    z-index: 10000;
    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
  }
  aside.filters h2::after {
    position: absolute;
    font-size: 150%;
    top: 0;
    right: 0;
    font-weight: 700;
    font-style: normal;
    content: "x";
    color: #555555;
    padding: 0.1em;
  }
  aside.filters.show {
    visibility: visible;
    opacity: 1;
    -webkit-transform: none;
            transform: none;
    z-index: 100;
    top: 0;
    left: 0;
    min-height: 100%;
    background-color: white;
    width: 100vw;
  }
  aside.filters.show section[role=search] {
    display: none;
  }
  aside.filters.show div.filters, aside.filters.transitioning div.filters {
    display: block;
  }
  aside.filters div.filters {
    display: none;
    padding-left: 0.5em;
  }
  aside.filters div.actions {
    position: fixed;
    text-align: center;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0.5em;
    background-color: rgba(255, 255, 255, 0.85);
    border-top: 1px solid #ccc;
    z-index: 10000;
  }
  aside.filters .searchableCheckboxList {
    display: none;
  }
  aside.filters ul.searchableCheckboxList {
    display: block;
    overflow-y: auto;
    max-height: none;
    border: none;
    padding: 0;
  }
  aside.filters ul.searchableCheckboxList li {
    display: inline-block;
    width: 180px;
    box-sizing: border-box;
  }

  aside.filters.show + main,
aside.filters.show + main + footer {
    display: none;
    height: 1px;
    min-height: 0;
    opacity: 0;
    transition: all 0.25s ease-in-out;
  }

  div.searchControls {
    justify-content: space-around;
  }
  div.searchControls a.filterToggler {
    box-sizing: border-box;
    margin-left: 1em;
    margin-right: 1em;
    padding: 0 1em;
    border: 1px solid #555555;
    position: relative;
    color: black;
    vertical-align: middle;
  }
  div.searchControls a.filterToggler::after {
    content: "≡";
    font-size: 150%;
    font-weight: bold;
    display: inline-block;
    padding-left: 0.25em;
    vertical-align: top;
  }
  div.searchControls div.filters {
    display: none;
  }
  div.searchControls div.paginationSummary {
    display: none;
  }
  div.searchControls ul.perPage {
    display: none;
  }
  div.searchControls ul.pagination {
    display: none;
  }
  div.searchControls ul.pagination.summary {
    display: inherit;
    justify-content: space-around;
  }
  div.searchControls ul.pagination.summary li.summary span {
    display: block;
    line-height: 1em;
  }

  ul#resultList li,
ul.resultList li {
    max-width: 500px;
    width: auto;
  }
  ul#resultList li img,
ul.resultList li img {
    max-width: 100%;
  }
}
@media print {
  a.filterToggler, ul.pagination {
    display: none;
  }

  ul#resultList li,
ul.resultList li {
    display: inline-block;
    page-break-inside: avoid;
    orphans: 3;
    widows: 3;
  }
  ul#resultList li h2,
ul.resultList li h2 {
    page-break-after: avoid;
  }
}
aside.sidebar.randomCategoryPuzzles section.category .swiper-container {
  padding: 0 3rem;
}
aside.sidebar.randomCategoryPuzzles section.category .swiper-container.swiper-container-vertical {
  padding: 3rem 0.5rem;
  min-height: calc(100vh - 17.5rem);
  max-height: calc(100vh - 8.5rem);
}
aside.sidebar.randomCategoryPuzzles section.category .swiper-container.swiper-container-vertical .swiper-slide {
  width: 100%;
}
aside.sidebar.randomCategoryPuzzles section.category .swiper-container .swiper-slide {
  width: auto;
  min-width: 160px;
}
aside.sidebar.randomCategoryPuzzles section.category ul {
  text-align: center;
}

article.puzzle {
  display: flex;
  flex-flow: row wrap;
  min-width: 0;
}
article.puzzle h3 + p {
  margin-top: 0.25em;
  margin-bottom: 0.25em;
}
article.puzzle div.linkToWebshop {
  background-color: #0061A8;
  color: white;
  margin: 2rem auto 3rem auto;
  box-shadow: 1px 1px 2px 0 #ccc;
  padding: 0.35em;
  border-radius: 5px;
  max-width: 30rem;
  text-align: center;
  font-size: 115%;
}
article.puzzle div.linkToWebshop a {
  color: white;
}
article.puzzle div.linkToWebshop a img.cart {
  width: 2rem;
  vertical-align: middle;
  margin: 0 1rem 0.5rem 1rem;
}
article.puzzle > section {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 1100px;
  min-width: 0;
  max-width: 1100px;
}
article.puzzle > section div#puzzleImage, article.puzzle > section div#consistsOfSwiper {
  width: 100%;
  padding: 0;
  text-align: center;
}
article.puzzle > section div.description div.subDescription {
  border: 1px solid #ccc;
  border-left-width: 0;
  border-right-width: 0;
}
article.puzzle > section .swiper-pagination {
  position: relative;
  box-sizing: border-box;
  bottom: 0;
  margin-top: 0.5rem;
}
article.puzzle > section .swiper-pagination.above {
  bottom: none;
  top: 0;
}
article.puzzle > section .swiper-pagination li {
  cursor: pointer;
}
article.puzzle > section .swiper-zoom-container > picture,
article.puzzle > section .swiper-zoom-container > picture > canvas,
article.puzzle > section .swiper-zoom-container > picture > img,
article.puzzle > section .swiper-zoom-container > picture > svg {
  max-width: 1000px;
  max-height: 1000px;
  -o-object-fit: contain;
     object-fit: contain;
}
article.puzzle > section .swiper-zoom-container > picture,
article.puzzle > section .swiper-zoom-container > picture > img {
  width: 100%;
}
article.puzzle ul#versionList li {
  display: inline-block;
  width: 20em;
}
article.puzzle aside {
  flex: 1 1 0%;
  min-width: 300px;
  text-align: center;
}
article.puzzle aside section {
  margin-bottom: 2em;
}
article.puzzle aside section ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex: 1 1 auto;
}
article.puzzle aside section ul li {
  display: inline-block;
  box-sizing: border-box;
  width: 260px;
  vertical-align: top;
  padding: 0 1em;
}

@media all and (max-width: 1680px) {
  article.puzzle > section {
    max-width: none;
  }
  article.puzzle > section div#puzzleImage {
    max-width: 1100px;
  }
}
@media all and (max-width: 1380px) {
  aside.sidebar.randomCategoryPuzzles + main {
    margin-left: 0;
    border-left: none;
  }

  aside.sidebar.randomCategoryPuzzles + main::before {
    content: none;
  }

  aside.sidebar.randomCategoryPuzzles,
article.puzzle aside {
    width: 100%;
  }

  aside.sidebar.randomCategoryPuzzles {
    float: none;
    border-top: 1px solid #ccc;
    border-right: none;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  aside.sidebar.randomCategoryPuzzles section.category > div,
aside.sidebar.randomCategoryPuzzles section.category ul {
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
    margin-bottom: 0;
  }
  aside.sidebar.randomCategoryPuzzles section.category .swiper-container {
    align-content: stretch;
    align-items: stretch;
  }
  aside.sidebar.randomCategoryPuzzles section.category .swiper-container li {
    height: auto;
  }
  aside.sidebar.randomCategoryPuzzles section.category .swiper-container li h3 {
    transition: all 0.25s ease-in-out;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(1em);
            transform: translateY(1em);
    margin: 0;
    width: 100%;
    text-align: center;
    position: absolute;
    bottom: 0;
    font-size: 90%;
  }
  aside.sidebar.randomCategoryPuzzles section.category .swiper-container li:hover h3 {
    opacity: 1;
    visibility: visible;
    display: block;
    -webkit-transform: none;
            transform: none;
    background-color: rgba(255, 255, 255, 0.85);
  }
  aside.sidebar.randomCategoryPuzzles section.category .swiper-container li img {
    max-width: 100px;
    max-height: 100px;
  }
}
@media all and (max-width: 820px) {
  aside.sidebar.randomCategoryPuzzles {
    order: 10;
    border-top: none;
  }

  article.puzzle aside section div div {
    width: 200px;
  }
}
main #map {
  height: 400px;
  width: 100%;
}
main div#distributors input {
  width: 20em;
  margin-bottom: 0.5em;
}
main div#distributors table {
  border-collapse: collapse;
  width: 100%;
}
main div#distributors table thead {
  font-weight: bold;
  background-color: #f8f8f8;
}
main div#distributors table,
main div#distributors table td,
main div#distributors table th {
  border: 1px solid #ccc;
}
main div#distributors table td {
  padding: 0.5em;
}
main div#distributors table tbody td.country span {
  margin-right: 0.5em;
  width: 24px;
  height: 18px;
  border: 1px solid #ccc;
}

@media (max-width: 820px) {
  body.distributors aside.sidebar {
    order: 99;
    width: 100%;
  }

  body.distributors aside.sidebar + main {
    flex-basis: 100%;
  }

  main div#distributors {
    overflow-x: scroll;
  }
}
main > section.staticPage.size img.illustration {
  float: left;
  height: 300px;
  margin-right: 0.5em;
}
main > section.staticPage.size ul#resultList.custom li {
  border: 1px solid #ccc;
  padding: 0.5em;
  margin: 0.5em;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
}
main > section.staticPage.custom h4 {
  font-family: "Jura", Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, "Helvetica Neue", Helvetica, Arial, sans-serif;
}