form .error {
  color: #ff0000;
  margin-left: 5px;
}

#svg-container svg {
  max-width: 600px;
  width: 100%;
  height: 50%;
}

#logo-msg {
  margin-top: 5px;
}

#logo-msg img {
  vertical-align: middle;
  margin: 5px;
}

#logo-msg span {
  vertical-align: middle;
  color: maroon;
}

.form-row {
  margin: 15px 0px 15px 0px;
}

.text-row input {
  min-width: 200px;
}

.text-name,
.label {
  font-weight: bold;
}

input::placeholder,
textarea::placeholder {
  color: #c0c0c0;
  font-size: 80%;
}

label {
  cursor: pointer;
  font-weight: bold;
}

.optional {
  font-size: 70%;
  color: #8f8f8f;
}

input[name*="text-value"] {
  text-transform: uppercase;
}

.uploadcare--widget__button,
.uploadcare--widget__button:hover {
  box-sizing: border-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;

  cursor: pointer;
  background-color: #1abc9c;
  padding: 12px 15px;
  line-height: 1;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
}

.uploadcare--widget__button:hover {
  background-color: #15a288;
}

#uploadStatus {
  display: none;
}

.ess-color1,
.ess-color2,
.ess-color3,
.ess-color4,
.ess-color5,
.ess-color6 {
  cursor: pointer;
}

.color1,
.color2,
.color3,
.color4,
.color5,
.color6 {
  cursor: pointer;
}

.color-button-label {
  margin-left: 5px;
}

.part-color-button {
  min-width: 100px;
  max-width: 180px;
  display: inline-block;
}

.text-color-button {
  min-width: 100px;
  max-width: 180px;
  display: inline-block;
}

.color-button {
  border: 1px black dotted;
  width: 98%;
  line-height: 2em;
  text-align: center;
  cursor: pointer;
}

.color-grid-button {
  border-left: 1px black solid;
  border-top: 1px black solid;
  width: 100%;
  line-height: 2em;
  text-align: center;
  white-space: nowrap;
  font-size: 0.8em;
}

/* == PALETTE PICKER WINDOW == */
/* The Modal (background) */
.palette-modal {
  display: none;
  /* Hidden by default */
  position: fixed;
  /* Stay in place */
  z-index: 10;
  /* Sit on top */
  left: 0;
  top: 0;
  width: 100%;
  /* Full width */
  height: 100%;
  /* Full height */
  overflow: auto;
  /* Enable scroll if needed */
  background-color: rgb(0, 0, 0);
  /* Fallback color */
  background-color: rgba(0, 0, 0, 0.4);
  /* Black w/ opacity */
}

/* Modal Content/Box */
.palette-content {
  background-color: #fefefe;
  margin: 10% auto;
  /* 10% from the top and centered */
  padding: 5px;
  border: 1px solid #888;
  max-width: 600px;
  width: 95%;
  /* Could be more or less, depending on screen size */
}

.palette-grid {
  margin: 0% auto;
  /* 10% from the top and centered */
  max-width: 500px;
  width: 98%;
  /* Could be more or less, depending on screen size */
}

.paletteColumn {
  width: 33%;
  display: inline-block;
  vertical-align: top;
}

/* The Close Button */
.palette-close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  line-height: 0.5em;
}

.palette-close:hover,
.palette-close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

/* Loading Animation */
.loader {
  border: 16px solid #f3f3f3;
  /* Light grey */
  border-top: 16px solid #3498db;
  /* Blue */
  border-radius: 50%;
  width: 120px;
  height: 120px;
  animation: spin 2s linear infinite;
}

.loader-small {
  border: 6px solid #f3f3f3;
  /* Light grey */
  border-top: 6px solid #3498db;
  /* Blue */
  border-radius: 50%;
  width: 24px;
  height: 24px;
  animation: spin 2s linear infinite;
  display: inline-block;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* ORDER FORM */
.error-display {
  color: red;
}

.warn-display {
  color: orange;
}

.start-hidden {
  display: none;
}

.start-hidden-important {
  display: none !important;
}

.clear {
  clear: both;
  margin: 0;
  padding: 0;
}

.sock_size_col {
  margin: 1px;
}

.sock_size_col label {
  display: inline-block !important;
  min-width: 100px;
}

.sock_size_col input {
  display: inline-block !important;
  padding: 2px;
}

.sock_total input {
  display: inline-block !important;
  padding: 2px;
  border: 0px;
  background-color: #fff;
}

.sock_total_error {
  color: red !important;
}

.section-divider {
  display: inline-block;
  width: 100%;
  text-align: left;
  background: #111111;
  border-radius: 5px;
  margin-top: 10px;
}

.section-divider h3 {
  margin: 3px 10px 3px 10px;
  padding: 3px 5px 3px 5px;
  font-size: 1.3em;
  text-transform: uppercase;
  color: #ffffff;
}

#btnAddDesign,
#btnSubmitOrder {
  min-width: 150px;
}

@media screen and (min-width: 700px) {
  .color-grid-button {
    font-size: 1.2em;
  }

  .sock_size_col {
    float: left;
    display: block !important;
    padding: 2px;
    margin: 1px;
  }

  .sock_size_col label {
    display: block !important;
    font-size: 85%;
    min-width: unset;
  }

  .sock_size_col input {
    padding: 2px;
  }

  .form-row-left {
    display: block;
    float: left;
    margin-right: 15px;
  }

  #btnAddDesign,
  #btnSubmitOrder {
    margin-left: 0px;
  }
}

/* Product Grid Display */
.sock-grid > ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  grid-gap: 1rem;

  margin: 0 !important;
  list-style: none;
}

.sock-grid li {
  background-color: #fff;
  margin: 0 0 10px 0;
  box-shadow: 0 1px 6px rgba(32, 33, 36, 0.28);
  border-radius: 8px;
  border-bottom: 1px hidden #fff;
}

.sock-grid li:hover {
  box-shadow: 0 1px 6px #1abc9c;
  background-color: #d7faf2;
}

.sock-grid a {
  display: block;
  height: 100%;
  margin: 0px;
  padding: 5px;
}

.sock-grid-heroshot {
  text-align: center;
}

.sock-grid-heroshot img {
  max-height: 300px;
  max-width: 95%;
}

.sock-grid-text {
  color: #595959;
  margin: 1px 20px 8px 20px;
  text-align: center;
}

.sock-grid-button {
  color: #fff;
  font-weight: bold;
  font-size: 120%;
  margin: 8px 20px 8px 20px;
  padding: 5px;
  text-align: center;
  border-radius: 20px;
  background-color: #1abc9c;
}

.sock-grid li:hover .sock-grid-button {
  background-color: #147763;
  margin: 3px 15px 3px 15px;
  padding: 10px;
  border-radius: 25px;
}

.sock-grid li:hover .sock-grid-text {
  color: #000;
}

.sock-grid-text-header {
  font-weight: bold;
  font-size: 1.2em;
}

.sock-grid-text-style {
  font-style: italic;
}

.sock-grid-text-awareness {
  display: block;
}

/* sock lenghts grid (inherits a lot from standard grid */
.length-grid > ul {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.length-grid img {
  max-height: 225px;
}

.length-leg {
  stroke: #000000;
  stroke-width: 12;
  stroke-miterlimit: 4;
  stroke-dasharray: none;
  stroke-opacity: 1;
}

.length-sock {
  fill: #a5d6af;
}

.notice-banner {
  background: rgb(240, 234, 147);
  padding: 5px;
  border-radius: 5px;
  border: 2px dashed #bbb;
  margin: 15px 5px;
  text-align: center;
}

.cta-button,
.cta-button:hover,
.cta-button:focus,
.cta-button:active {
  display: inline-block;

  border-radius: 10px;

  color: #efefef;
  font-weight: bold;
  text-shadow: rgb(0 0 0 / 50%) 0px 1px 2px;

  cursor: pointer;
  background-color: #1abc9c;
  line-height: 1;
  border: 2px solid #15a288;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
  text-align: center;
}

.cta-button:hover {
  background-color: #15a288;
}

a:link {
  text-decoration: none;
}

.cta-button-normal {
  padding: 10px 12px;
  margin-top: 10px;
}

.cta-button-big {
  font-size: larger;
  padding: 20px 25px;
  margin-top: 15px;
}

/* 
  https://codepen.io/cimmanon/pen/DgPNZv 
  Newspaper container for splitting items into multiple columns
  where items can have variable height
*/
div.newspaper-container {
  -moz-columns: 15em;
  -webkit-columns: 15em;
  columns: 15em;
  -moz-column-gap: 1em;
  -webkit-column-gap: 1em;
  column-gap: 1em;
}

div.newspaper-container div {
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}

div.newspaper-container div:first-child {
  margin-top: 0;
}

/* Social Testimonial Box */
.social-box {
  background-color: rgb(28, 30, 33);
  border-radius: 5px;
  margin: 8px 3px 18px 5px;
  padding: 15px;
  max-width: 400px;
  color: white;
  box-shadow: 3px 3px 6px #000000;
}

.social-header,
.social-box {
  font-family: "Segoe UI Historic", "Segoe UI", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 15px;
  text-align: left;
  word-break: break-word;
  padding-bottom: 10px;
}

.social-location {
  color: #7f7f7f;
}

.social-icon {
  height: 1em;
  width: 1em;
  fill: rgb(176, 179, 184);
  display: inline-flex;
  align-self: center;
  position: relative;
  top: 2px;
}

.social-text {
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 0.9375rem;
  line-height: 1.333;
  overflow-wrap: break-word;
  text-align: left;
  border-bottom: #4f4f4f 1px solid;
  border-top: #4f4f4f 1px solid;
  padding: 10px 0px 10px 0px;
}

img.social-avatar {
  border-radius: 20px;
  margin-right: 5px;
}

img.social-image {
  margin-top: 15px;
  border-radius: 5px;
}

.social-avatar-block,
.social-info-block {
  display: inline-block;
  min-height: 50px;
  height: 1em;
}

.social-text-big {
  font-size: 1.5rem;
  line-height: 1.1667;
}

/* auto-expand */
textarea.autoExpand::-webkit-scrollbar {
  width: 0px;
}

/* 
  Development / TeamSocks test site colors
  Avoid confusion - make sure you are working on the correct platform!
  Build filter color here: https://codepen.io/sosuke/pen/Pjoqqp 
*/
.topbar-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 3px;
}
.topbar-env-dev {
  background: rgb(188, 21, 21);
}
.topbar-env-ets {
  background: rgb(110, 10, 153);
}

.logo-filter-env-dev {
  filter: invert(10%) sepia(72%) saturate(6584%) hue-rotate(10deg)
    brightness(102%) contrast(104%);
}

.logo-filter-env-ets {
  filter: invert(15%) sepia(99%) saturate(5327%) hue-rotate(271deg)
    brightness(91%) contrast(124%);
}

.contained-content {
  max-width: 1024px;
  margin: auto;
}

.wide-content-grey {
  background-color: #efefef;
  padding: 15px;
  padding-bottom: 45px;
  margin-top: 25px;

  text-align: center;
  border-top: 2px #dddddd solid;
  border-bottom: 2px #dddddd solid;
}

/* Gallery customization */
.gallery-thumbnail {
  border-radius: 9px;
}
