.configurator {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  background: #ffffff;
  padding: 1em;
  box-shadow: 15px 15px 35px #777676;
}
@media only screen and (max-width: 768px) {
  .configurator {
    margin-top: 6em;
    margin-bottom: 2em;
  }
}
@media only screen and (min-width: 768px) {
  .configurator {
    padding: 2em 3em;
  }
}
@media only screen and (min-width: 1280px) {
  .configurator {
    max-width: 85%;
    margin: 10% auto 0 auto;
    padding: 3em 1em;
  }
}
@media only screen and (min-width: 1400px) {
  .configurator {
    max-width: 70%;
    margin: 10% auto 0 auto;
  }
}
.configurator-step img {
  width: 100%;
}
.configurator-content {
  width: 100%;
}
.configurator-content__heading {
  font-size: 28px;
  font-family: Engel;
  color: #777676;
  text-transform: uppercase;
  margin: 1em 0;
  width: 100%;
}
.configurator-content__promp {
  margin-bottom: 1em;
  font: normal 18px/1.88 "Open sans";
}
.configurator-content__description {
  margin: 1em 0;
  padding: 0 1em;
  font: normal 18px/1.88 "Open sans";
  font-size: 14px;
}
@media only screen and (min-width: 1280px) {
  .configurator-content__description {
    margin: 1em 0;
    padding: 0;
  }
}
.configurator-content__guitar-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
}
@media only screen and (min-width: 768px) {
  .configurator-content__guitar-list {
    gap: 5%;
  }
}
@media only screen and (min-width: 1280px) {
  .configurator-content__guitar-list {
    gap: 0;
  }
}
.configurator-content__guitar-list .guitar-list__item {
  cursor: pointer;
  -ms-flex: 1 50%;
      flex: 1 50%;
  max-width: 50%;
  position: relative;
  margin: 1em 0 2em 0;
}
@media only screen and (min-width: 576px) {
  .configurator-content__guitar-list .guitar-list__item {
    -ms-flex: 1 30%;
        flex: 1 30%;
    max-width: 30%;
  }
}
@media only screen and (min-width: 768px) {
  .configurator-content__guitar-list .guitar-list__item {
    -ms-flex: 1 30%;
        flex: 1 30%;
    min-width: 30%;
    max-width: 30%;
  }
}
@media only screen and (min-width: 1280px) {
  .configurator-content__guitar-list .guitar-list__item {
    -ms-flex: 1;
        flex: 1;
    min-width: 0;
  }
}
.configurator-content__guitar-list .guitar-list__item-image img {
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  width: calc(100% - 50px);
}
@media only screen and (min-width: 768px) {
  .configurator-content__guitar-list .guitar-list__item-image img {
    width: 60%;
  }
}
.configurator-content__guitar-list .guitar-list__item-text {
  background: #777676;
  font: 400 18px/1.5 Cobassi;
  color: #ffffff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  padding: 0.5em 0.2em;
  display: flex;
  width: calc(100% - 40px);
  position: absolute;
  bottom: 0;
  left: 50%;
  min-width: -webkit-fit-content;
  min-width: fit-content;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  box-shadow: 15px 15px 35px #777676;
}
@media only screen and (min-width: 768px) {
  .configurator-content__guitar-list .guitar-list__item-text {
    width: 60%;
  }
}
.configurator-content__carousel {
  margin: 1em;
}
@media only screen and (min-width: 1280px) {
  .configurator-content__carousel {
    width: 45%;
    margin: 2em 0;
  }
}
.configurator-content__carousel .section-carousel {
  margin: 0;
}
.configurator-content__carousel .template-section {
  margin-top: 0;
}
.configurator-content__carousel .carousel-entry__image {
  width: 100%;
}
.configurator-content__carousel .carousel-entry__image img {
  width: 100%;
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 1em;
  }
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form__main {
    width: 45%;
    margin: 0 5%;
  }
}
.configurator-content .guitar-config-form__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  margin: 1em;
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form__item {
    width: 70%;
    margin: 1em 0;
  }
}
.configurator-content .guitar-config-form__item-label {
  font: normal 18px/1.88 "Open sans";
  -ms-flex: 1 40%;
      flex: 1 40%;
}
.configurator-content .guitar-config-form__item-input {
  -ms-flex: 1 50%;
      flex: 1 50%;
  width: 100%;
  font: normal 18px/1.88 "Open sans";
}
.configurator-content .guitar-config-form__item-input select {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .configurator-content .guitar-config-form__item-input {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}
.configurator-content .guitar-config-form__item .other-input {
  margin-top: 1em;
  width: 100%;
}
.configurator-content .guitar-config-form__options {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1em;
  font-size: 14px;
  font: normal 18px/1.88 "Open sans";
}
@media only screen and (max-width: 768px) {
  .configurator-content .guitar-config-form__options {
    -ms-flex-pack: center;
        justify-content: center;
  }
}
.configurator-content .guitar-config-form__options input {
  border-radius: 5px;
  border-width: 1px;
  padding: 0 1.5em 0 0.5em;
}
.configurator-content .guitar-config-form__options input:-ms-input-placeholder {
  font-size: 16px;
}
.configurator-content .guitar-config-form__options input::placeholder {
  font-size: 16px;
}
.configurator-content .guitar-config-form__options-item {
  -ms-flex: 1 30%;
      flex: 1 30%;
  width: 100%;
  max-width: 30%;
  font-size: 16px;
}
@media only screen and (max-width: 768px) {
  .configurator-content .guitar-config-form__options-item {
    margin-right: 1.5em;
  }
}
.configurator-content .guitar-config-form__options-item .other-input {
  margin-top: 0.5em;
  width: 76%;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.configurator-content .guitar-config-form__options-item--checkbox {
  width: 100%;
  -ms-flex: 1 40%;
      flex: 1 40%;
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form__options-item--checkbox {
    -ms-flex: 1 30%;
        flex: 1 30%;
    max-width: 30%;
  }
}
.configurator-content .guitar-config-form__options-item textarea {
  border: 2px solid rgb(148, 148, 148);
  border-radius: 4px;
  padding: 0.5em;
  margin-top: 1em;
  color: #4f4f4f;
  width: 100%;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form__options-item textarea {
    width: 40%;
  }
}
.configurator-content .guitar-config-form__options-item textarea:focus {
  border-color: #777676;
  outline: none;
}
.configurator-content .guitar-config-form__submit {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 1em 0em;
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form__submit {
    -ms-flex-direction: row;
        flex-direction: row;
    width: 100%;
    -ms-flex-pack: end;
        justify-content: flex-end;
    gap: 2em;
  }
}
.configurator-content .guitar-config-form__submit-checkbox {
  margin-bottom: 1em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
  font: normal 18px/1.88 "Open sans";
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form__submit-checkbox {
    max-width: 25%;
  }
}
.configurator-content .guitar-config-form__submit-button {
  cursor: pointer;
  background: #777676;
  border: none;
  padding: 1em 2em;
  color: #ffffff;
  text-transform: uppercase;
  font-family: Cobassi;
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form__submit-button {
    -ms-flex-direction: row;
        flex-direction: row;
    width: -webkit-fit-content;
    width: fit-content;
    padding: 1em 5em;
  }
}
.configurator-content .guitar-config-form__submit-back {
  cursor: pointer;
  background: #777676;
  border: none;
  padding: 1em 2em;
  color: #ffffff;
  text-transform: uppercase;
  font-family: Cobassi;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  margin-right: auto;
  min-width: unset;
}
@media only screen and (max-width: 1280px) {
  .configurator-content .guitar-config-form__submit-back {
    margin-bottom: 1em;
  }
}
@media only screen and (max-width: 768px) {
  .configurator-content .guitar-config-form__submit-back {
    margin-right: unset;
    width: 15%;
  }
}
@media only screen and (max-width: 576px) {
  .configurator-content .guitar-config-form__submit-back {
    width: 8%;
  }
}
@media only screen and (min-width: 1280px) {
  .configurator-content .guitar-config-form__submit-back {
    -ms-flex-direction: row;
        flex-direction: row;
    width: -webkit-fit-content;
    width: fit-content;
    padding: 1em 5em;
  }
}
.configurator .guitar-service-form {
  padding: 0;
  padding-top: 1em;
}
.configurator .guitar-service-form__inputs {
  width: 100% !important;
  min-width: unset;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.5em;
  width: 40%;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: start;
      align-items: flex-start;
}
@media only screen and (max-width: 768px) {
  .configurator .guitar-service-form__inputs {
    -ms-flex-pack: center;
        justify-content: center;
  }
}
.configurator .guitar-service-form__inputs .js-select {
  width: unset;
}
.configurator .guitar-service-form__button-cont {
  margin-top: 2em;
  margin-left: 0;
  margin-right: 0;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
@media only screen and (max-width: 768px) {
  .configurator .guitar-service-form__button-cont {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
}
.configurator .guitar-service-form__button-cont .send-button {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  width: 25%;
  min-width: unset;
  cursor: pointer;
}
@media only screen and (max-width: 768px) {
  .configurator .guitar-service-form__button-cont .send-button {
    margin-bottom: 1em;
    width: -webkit-fit-content;
    width: fit-content;
    width: -moz-max-content;
  }
}

.section-carousel--fullscreen {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(148, 148, 148, 0.8);
  height: 200vh;
  overflow: hidden;
}
.section-carousel--fullscreen--show {
  display: block;
  z-index: 300;
  margin-top: -20vh !important;
  position: fixed;
}
.section-carousel--fullscreen .carousel-container {
  position: fixed;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  width: 100vw;
}
.section-carousel--fullscreen .carousel-container--conf {
  height: 85%;
}
.section-carousel--fullscreen .section-carousel__close {
  position: fixed;
  top: 15px;
  right: 35px;
  color: #f1f1f1;
  font-size: 50px;
  font-weight: bold;
  cursor: pointer;
}
.section-carousel--fullscreen .glide__bullets {
  z-index: 400;
}
.section-carousel--fullscreen .glide__bullets .glide__bullet {
  background-color: white !important;
}

.no-scroll {
  overflow: hidden;
}

.glide__arrow--next {
  position: absolute;
  top: 50%;
  right: 1em;
}
.glide__arrow--prev {
  position: absolute;
  top: 50%;
  left: 1em;
}

.conf-footer {
  position: absolute;
  bottom: -25%;
  width: 100%;
  left: 50%;
  -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
}

.conf-body {
  min-height: 91.5vh;
  background: url(../assets/img/wood-grain-pattern2-02.png);
}
@media only screen and (max-width: 768px) {
  .conf-body {
    min-height: 137vh;
  }
}
.conf-body .request-attendance-form__message {
  -ms-flex: unset;
      flex: unset;
}

.special-request {
  margin-top: 1em;
}

.hidden {
  display: none !important;
}

.js-select {
  width: 80%;
}
@media only screen and (max-width: 768px) {
  .js-select {
    width: 110%;
  }
}
.js-select--disabled {
  border-color: gray;
  color: gray;
  cursor: not-allowed;
}

.glide {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}

.glide * {
  box-sizing: inherit;
}

.glide__track {
  overflow: hidden;
}

.glide__slides {
  position: relative;
  width: 100%;
  list-style: none;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  -ms-touch-action: pan-Y;
      touch-action: pan-Y;
  overflow: hidden;
  padding: 0;
  white-space: nowrap;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  will-change: transform;
}

.glide__slides--dragging {
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.glide__slide {
  width: 100%;
  height: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  white-space: normal;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.glide__slide a {
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

.glide__arrows {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.glide__bullets {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.glide--rtl {
  direction: rtl;
}

.glide__arrow {
  position: absolute;
  display: block;
  top: 50%;
  z-index: 2;
  color: white;
  text-transform: uppercase;
  padding: 9px 12px;
  background-color: transparent;
  border: 2px solid rgba(255, 255, 255, 0.5);
  border-radius: 4px;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  text-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.1);
  opacity: 1;
  cursor: pointer;
  transition: opacity 150ms ease, border 300ms ease-in-out;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  line-height: 1;
}

.glide__arrow:focus {
  outline: none;
}

.glide__arrow:hover {
  border-color: white;
}

.glide__arrow--left {
  left: 2em;
}

.glide__arrow--right {
  right: 2em;
}

.glide__arrow--disabled {
  opacity: 0.33;
}

.glide__bullets {
  position: absolute;
  z-index: 2;
  bottom: 2em;
  left: 50%;
  display: -ms-inline-flexbox;
  display: inline-flex;
  list-style: none;
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
}

.glide__bullet {
  background-color: rgba(255, 255, 255, 0.5);
  width: 9px;
  height: 9px;
  padding: 0;
  border-radius: 50%;
  border: 2px solid transparent;
  transition: all 300ms ease-in-out;
  cursor: pointer;
  line-height: 0;
  box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
  margin: 0 0.25em;
}

.glide__bullet:focus {
  outline: none;
}

.glide__bullet:hover, .glide__bullet:focus {
  border: 2px solid white;
  background-color: rgba(255, 255, 255, 0.5);
}

.glide__bullet--active {
  background-color: white;
}

.glide--swipeable {
  cursor: grab;
  cursor: -webkit-grab;
}

.glide--dragging {
  cursor: grabbing;
  cursor: -webkit-grabbing;
}
