html {
  font-size: 25px;
}
@media only screen and (max-width: 2300px) {
  html {
    font-size: 23px;
  }
}
@media only screen and (max-width: 2200px) {
  html {
    font-size: 22px;
  }
}
@media only screen and (max-width: 2100px) {
  html {
    font-size: 21px;
  }
}
@media only screen and (max-width: 2000px) {
  html {
    font-size: 20px;
  }
}
@media only screen and (max-width: 1900px) {
  html {
    font-size: 19px;
  }
}
@media only screen and (max-width: 1800px) {
  html {
    font-size: 18px;
  }
}
@media only screen and (max-width: 1700px) {
  html {
    font-size: 17px;
  }
}
@media only screen and (max-width: 1540px) {
  html {
    font-size: 16px;
  }
}
@media only screen and (max-width: 991px) {
  html {
    font-size: 15px;
  }
}
@media only screen and (max-width: 767px) {
  html {
    font-size: 14px;
  }
}
@media only screen and (max-width: 575px) {
  html {
    font-size: 14px;
  }
}

.single-configurator header.header {
  display: none !important;
}
.single-configurator:has(.configurator-menu-part2.menu-part2-show) header {
  display: none;
}
.single-configurator:has(.configurator-menu-part2.menu-part2-show) .configurator .configurator-menu {
  top: 0;
}
.single-configurator:has(.configurator-menu-part2.menu-part2-show) .configurator .configurator-menu.up {
  top: 0 !important;
}
.single-configurator:has(.configurator-menu-part3.menu-part3-show) header.sticky.up .col-modelviewer {
  top: unset !important;
}
.single-configurator:has(.configurator-menu-part3.menu-part3-show) .configurator .configurator-menu {
  top: 0;
}
.single-configurator:has(.configurator-menu-part3.menu-part3-show) .configurator .configurator-menu.up {
  top: 0 !important;
}
@media only screen and (max-width: 991px) {
  .single-configurator:has(.configurator-menu-part3.menu-part3-show) .col-modelviewer {
    position: relative !important;
    top: unset !important;
  }
}
@media only screen and (max-width: 991px) {
  .single-configurator:has(header.sticky.up) .col-modelviewer {
    top: 0;
  }
}
.single-configurator header .back {
  padding-top: 1.875rem;
  padding-bottom: 0;
}
.single-configurator header .back .read-more {
  color: #000;
}
.single-configurator header.sticky {
  top: -89.79px;
}
.single-configurator header.sticky.up {
  top: 0;
}
.single-configurator header.sticky .back {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
}
.single-configurator header.sticky .back .read-more {
  color: #fff;
}
.single-configurator header.sticky .model-menu.up {
  top: 0 !important;
}
.single-configurator .configurator-menu {
  margin-bottom: unset !important;
}
@media only screen and (max-width: 767px) {
  .single-configurator .configurator-menu {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) {
  .single-configurator .configurator-menu .model-number {
    display: flex !important;
  }
}
.single-configurator .configurator-menu.up {
  top: 0 !important;
}
.single-configurator .configurator-menu.configurator-menu-part1 {
  display: none;
}
.single-configurator .configurator-menu.configurator-menu-part1.menu-part1-show {
  display: block;
}
.single-configurator .configurator-menu.configurator-menu-part2 {
  display: none;
}
.single-configurator .configurator-menu.configurator-menu-part2.menu-part2-show {
  display: block;
}
.single-configurator .configurator-menu.configurator-menu-part3 {
  display: none;
}
.single-configurator .configurator-menu.configurator-menu-part3.menu-part3-show {
  display: block;
}
.single-configurator main {
  padding-bottom: 0;
}
.single-configurator .configurator {
  margin-bottom: 0;
}
.single-configurator .configurator .configurator-colors {
  display: none;
}
.single-configurator .configurator .configurator-colors.configurator-page1-show {
  display: block;
}
.single-configurator .configurator .configurator-colors.configurator-page1-show .form-inner {
  display: none;
}
.single-configurator .configurator .configurator-colors.configurator-page3-show {
  display: block;
}
@media only screen and (max-width: 991px) {
  .single-configurator .configurator .configurator-colors.configurator-page3-show .col-options {
    padding-bottom: 50px;
  }
}
.single-configurator .configurator .configurator-colors.configurator-page3-show .options-inner {
  display: none;
}
.single-configurator .configurator .configurator-options {
  display: none;
}
.single-configurator .configurator .configurator-options.configurator-page2-show {
  display: block;
}
.single-configurator .configurator .configurator-summary {
  display: none;
}
.single-configurator .configurator .configurator-summary.configurator-page3-show {
  display: block;
}
.single-configurator .configurator-section .row, .single-configurator .configurator-section .container, .single-configurator .configurator-section .container-fluid, .single-configurator .configurator-section .container-lg, .single-configurator .configurator-section .container-md, .single-configurator .configurator-section .container-sm, .single-configurator .configurator-section .container-xl, .single-configurator .configurator-section .container-xxl {
  --bs-gutter-x: 2rem;
}
@media only screen and (max-width: 767px) {
  .single-configurator .configurator-section .row, .single-configurator .configurator-section .container, .single-configurator .configurator-section .container-fluid, .single-configurator .configurator-section .container-lg, .single-configurator .configurator-section .container-md, .single-configurator .configurator-section .container-sm, .single-configurator .configurator-section .container-xl, .single-configurator .configurator-section .container-xxl {
    --bs-gutter-x: 20px;
  }
}
@media only screen and (min-width: 992px) {
  .single-configurator .configurator-section .container {
    max-width: calc(100vw - 10rem + 32px);
  }
}
@media only screen and (min-width: 992px) {
  .single-configurator .configurator-colors .form-inner {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.single-configurator .configurator-colors .form-inner .edit-config {
  border: unset;
  color: #132D4F !important;
  background-color: unset;
  text-decoration: underline;
  padding: unset;
}
.single-configurator .configurator-colors .form-inner .subtitle p {
  font-family: "Sofia Sans", sans-serif;
  margin-bottom: unset;
}
.single-configurator .configurator-colors .form-inner .form-wrapper {
  background-color: #F8F8F8;
  padding: 40px;
}
@media only screen and (max-width: 991px) {
  .single-configurator .configurator-colors .form-inner .form-wrapper {
    padding: 20px;
  }
}
.single-configurator .configurator-colors .form-inner .form-wrapper .subtitle p {
  font-family: "Sofia Sans", sans-serif;
  margin-bottom: unset;
}
.single-configurator .configurator-options {
  margin-top: 3.3rem;
}
.single-configurator .configurator-options .configure-intro {
  margin-bottom: 3.75rem;
}
.single-configurator .configurator-options .configure-intro .title {
  margin-bottom: 0.5rem;
}
.single-configurator .configurator-options .configure-intro p {
  font-family: "Sofia Sans", sans-serif;
  margin-bottom: unset;
}
.single-configurator .configurator-options .configure-intro .edit-config {
  border: unset;
  color: #132D4F !important;
  background-color: unset;
  text-decoration: underline;
  padding: unset;
}
.single-configurator .configurator-options .options-cat {
  margin-bottom: 3.5rem;
  border-bottom: 1px solid #E0E0E0;
}
@media only screen and (min-width: 576px) and (max-width: 1199px) {
  .single-configurator .configurator-options .options-cat {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (max-width: 575px) {
  .single-configurator .configurator-options .options-cat {
    margin-bottom: 2rem;
  }
}
.single-configurator .configurator-options .options-cat .content-holder {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 3.5rem;
}
@media only screen and (min-width: 576px) and (max-width: 1199px) {
  .single-configurator .configurator-options .options-cat .content-holder {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (max-width: 575px) {
  .single-configurator .configurator-options .options-cat .content-holder {
    margin-bottom: 2rem;
  }
}
@media only screen and (max-width: 767px) {
  .single-configurator .configurator-options .options-cat .content-holder {
    gap: 1rem;
  }
}
.single-configurator .configurator-options .options-cat .content-holder .title {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0 !important;
}
@media only screen and (min-width: 576px) and (max-width: 1199px) {
  .single-configurator .configurator-options .options-cat .content-holder .title {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 575px) {
  .single-configurator .configurator-options .options-cat .content-holder .title {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .single-configurator .configurator-options .options-cat .content-holder .title {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }
}
.single-configurator .configurator-options .options-cat .content-holder .title h2 {
  margin-bottom: unset;
}
.single-configurator .configurator-options .options-cat .content-holder .title .title-option-count {
  color: #747474;
  font-size: 1rem;
  font-family: "Sofia Sans", sans-serif;
  font-weight: 500;
  line-height: 1;
}
.single-configurator .configurator-options .options-cat .options-holder {
  height: auto;
  max-height: 0;
  overflow: hidden;
  transition: all 0.35s cubic-bezier(0, 0.5, 0.5, 1);
}
.single-configurator .configurator-options .options-cat .options-holder.open {
  max-height: 3000px;
}
.single-configurator .configurator-options .options-cat .options-holder .option-group {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 4rem 1rem;
  padding-bottom: 3.5rem;
}
@media only screen and (min-width: 576px) and (max-width: 991px) {
  .single-configurator .configurator-options .options-cat .options-holder .option-group {
    gap: 3rem 20px;
  }
}
@media only screen and (max-width: 575px) {
  .single-configurator .configurator-options .options-cat .options-holder .option-group {
    gap: 2rem 20px;
  }
}
.single-configurator .configurator-options .options-cat .options-holder .option-group:not(:last-of-type) {
  margin-bottom: 4rem;
}
.single-configurator .configurator-options .options-cat .options-holder .option-group .option {
  width: calc(25% - 0.75rem);
  flex: 0 0 calc(25% - 0.75rem);
}
@media only screen and (min-width: 576px) and (max-width: 991px) {
  .single-configurator .configurator-options .options-cat .options-holder .option-group .option {
    width: calc(50% - 10px);
    flex: 0 0 calc(50% - 10px);
  }
}
@media only screen and (max-width: 575px) {
  .single-configurator .configurator-options .options-cat .options-holder .option-group .option {
    width: 100%;
    flex: 0 0 100%;
  }
}
.single-configurator .configurator-options .options-cat .options-holder .option-group .option:not(.option-added) a.button svg {
  display: none;
}
.single-configurator .configurator-options .options-cat .options-holder .option-group .option.option-added a.button {
  padding-left: 0;
  padding-right: 0;
  background-color: unset;
  color: #003A7E;
}
.single-configurator .configurator-options .options-cat .options-holder .option-group .option .title {
  margin-bottom: unset;
}
.single-configurator .configurator-options .options-cat .options-holder .option-group .option .title h3 {
  margin-bottom: 0.25rem;
}
.single-configurator .configurator-options .options-cat .options-holder .option-group .option .subtitle {
  color: #747474;
  font-family: "Sofia Sans", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.714;
  margin-bottom: 0.75rem;
}
.single-configurator .configurator-options .options-cat .options-holder .option-group .option .description {
  margin-bottom: 0.75rem;
}
.single-configurator .configurator-options .options-cat .options-holder .option-group .option .description p {
  font-family: "Sofia Sans", sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.5rem;
}
@media only screen and (max-width: 991px) {
  .single-configurator .container.container-config {
    max-width: unset !important;
  }
}
@media only screen and (min-width: 992px) {
  .single-configurator .container.container-config {
    padding-left: 0 !important;
    max-width: calc(100vw - 6rem + 32px) !important;
    margin-left: unset !important;
  }
}
.single-configurator .container.container-config .col-modelviewer {
  z-index: 9;
  transition: all 0.3s ease-in-out;
}
@media only screen and (max-width: 991px) {
  .single-configurator .container.container-config .col-modelviewer {
    padding: unset !important;
    position: sticky;
    top: 0;
  }
}
@media only screen and (min-width: 992px) {
  .single-configurator .container.container-config .col-modelviewer {
    padding-right: 0;
    width: calc(66.66666667% + 10px);
  }
}
@media only screen and (max-width: 991px) {
  .single-configurator .container.container-config .col-modelviewer .modelviewer-inner {
    width: 100%;
  }
}
@media only screen and (min-width: 992px) {
  .single-configurator .container.container-config .col-modelviewer .modelviewer-inner {
    position: sticky;
    top: 74px;
  }
}
.single-configurator .container.container-config .col-modelviewer .modelviewer-inner img, .single-configurator .container.container-config .col-modelviewer .modelviewer-inner model-viewer {
  width: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 992px) {
  .single-configurator .container.container-config .col-modelviewer .modelviewer-inner model-viewer {
    height: calc(100dvh - 1.2rem - (2px + 2rem)) !important;
    width: 100%;
  }
}
@media only screen and (min-width: 450px) and (max-width: 767px) {
  .single-configurator .container.container-config .col-modelviewer .modelviewer-inner model-viewer {
    max-height: 400px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .single-configurator .container.container-config .col-modelviewer .modelviewer-inner model-viewer {
    max-height: 550px;
  }
}
@media only screen and (max-width: 991px) {
  .single-configurator .container.container-config .col-options {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 50px;
  }
}
@media only screen and (min-width: 992px) {
  .single-configurator .container.container-config .col-options {
    padding-left: 32px;
    width: calc(33.333333333% - 10px);
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
}
@media only screen and (min-width: 992px) {
  .single-configurator .container.container-config .col-options .options-inner {
    width: 88%;
    padding-top: 50px;
  }
}
.single-configurator .container.container-config .col-options .options-inner .configure-intro {
  margin-bottom: 32px;
}
.single-configurator .container.container-config .col-options .options-inner .configure-intro .title {
  margin-bottom: 8px;
}
.single-configurator .container.container-config .col-options .options-inner .configure-intro .subtitle p {
  margin-bottom: unset;
  font-family: "Sofia Sans", sans-serif;
}
.single-configurator .left {
  grid-column: 1/9;
}
.single-configurator .left .image-holder {
  width: 100%;
  background-color: #f6f6f6;
  height: 43.75rem;
  margin-bottom: 3rem;
  position: sticky;
  top: 100px;
}
.single-configurator .right {
  grid-column: 9/13;
  padding-top: 3rem;
  padding-left: 2rem;
}
.single-configurator .widget-title {
  margin-bottom: 3rem;
}
.single-configurator .main-desc {
  margin-top: -1.75rem;
  font-size: 0.875rem;
}
.single-configurator .items {
  padding-bottom: 120px;
}
@media only screen and (max-width: 991px) {
  .single-configurator .items {
    padding-bottom: 50px;
  }
}
.single-configurator .onpage-buttons {
  padding-bottom: 120px;
  column-gap: 0.5rem;
}
@media only screen and (max-width: 991px) {
  .single-configurator .onpage-buttons {
    padding-bottom: 50px;
  }
}
.single-configurator .item {
  padding-bottom: 3rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  margin-bottom: 3rem !important;
}
.single-configurator .item .title {
  margin-bottom: 0.75rem;
}
.single-configurator .item .label {
  font-family: "Sofia Sans";
  color: #000;
  margin-bottom: 0.5rem;
}
.single-configurator .item .desc {
  font-family: "Sofia Sans";
  font-size: 0.875rem;
  color: #747474;
  margin-bottom: unset;
}
.single-configurator .items-v2 .config-section {
  max-width: 100%;
}
.single-configurator .items-v2 .config-section:not(:last-of-type) {
  margin-bottom: 3rem;
}
.single-configurator .items-v2 .config-section .config-section__header {
  margin-bottom: 0.75rem;
}
.single-configurator .items-v2 .config-section .config-section__title {
  font-size: 2rem;
  font-weight: 700;
  color: #000;
}
.single-configurator .items-v2 .config-section .config-section__options {
  border-top: 1px solid #0069B4;
}
.single-configurator .items-v2 .config-section .config-section__options .config-section__options {
  border-top: unset;
}
.single-configurator .items-v2 .config-section .config-option {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid #0069B4;
}
.single-configurator .items-v2 .config-section .config-option .config-option__label {
  font-family: "Sofia Sans", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  color: #000;
  line-height: 1.4;
}
.single-configurator .items-v2 .config-section .config-option .config-option__control {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  align-items: flex-start;
}
.single-configurator .items-v2 .config-section .config-option .config-option__edit {
  margin-left: 0.5rem;
  font-size: 0.875rem;
  color: #003A7E;
  text-decoration: underline;
}
.single-configurator .items-v2 .config-section .config-option .config-option__edit:hover {
  text-decoration: none;
}
@media only screen and (max-width: 575px) {
  .single-configurator .placeholder {
    height: 0 !important;
  }
}

.post-type-archive-configurator .section.intro {
  padding-top: 2.5rem;
}

.section-configurator-model-selector {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media only screen and (max-width: 991px) {
  .section-configurator-model-selector {
    gap: 1rem;
  }
  .section-configurator-model-selector .range-header .logo {
    height: 16px;
    width: auto;
  }
  .section-configurator-model-selector .range-header .logo svg {
    max-height: 16px;
    width: auto;
  }
}
.section-configurator-model-selector .range {
  background-color: #F8F8F8;
  padding: 22px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media only screen and (max-width: 767px) {
  .section-configurator-model-selector .range {
    gap: 1rem;
  }
}
.section-configurator-model-selector .range.range-classic {
  border-top: 10px solid #192d4d;
}
.section-configurator-model-selector .range.range-elegance {
  border-top: 10px solid #E3E5E9;
}
.section-configurator-model-selector .range.range-luxury {
  border-top: 10px solid #AC9777;
}
.section-configurator-model-selector .range .range-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.section-configurator-model-selector .range .range-header .actions {
  display: flex;
  flex-direction: row;
  gap: 0.75rem;
}
.section-configurator-model-selector .range .range-header .actions .action a {
  display: flex;
  flex-direction: row;
  gap: 0.25rem;
  align-items: center;
}
.section-configurator-model-selector .range .range-header .actions .action a:hover {
  box-shadow: unset !important;
}
.section-configurator-model-selector .range .range-header .actions .action .action-label {
  font-weight: 500;
}
.section-configurator-model-selector .range .range-body .range-body-inner {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 2rem 3rem;
}
@media only screen and (max-width: 767px) {
  .section-configurator-model-selector .range .range-body .range-body-inner {
    flex-direction: column;
    gap: 1.5rem;
  }
  .section-configurator-model-selector .range .range-body .range-body-inner .model {
    flex: 0 0 100%;
  }
  .section-configurator-model-selector .range .range-body .range-body-inner .model .model-see {
    display: none;
  }
}
.section-configurator-model-selector .range .range-body .range-body-inner .model {
  flex: 0 0 calc(50% - 3rem);
}
.section-configurator-model-selector .range .range-body .range-body-inner .model:hover .model-see {
  opacity: 1;
  max-height: 20px;
}
.section-configurator-model-selector .range .range-body .range-model {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  align-items: center;
}
.section-configurator-model-selector .range .range-body .model-image {
  min-width: 5rem;
  aspect-ratio: 1;
  background-color: #fff;
  position: relative;
  transition: all 0.3s ease-in-out;
}
.section-configurator-model-selector .range .range-body .model-image .bg-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(255, 255, 255);
  background: radial-gradient(circle, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 40%, rgb(246, 246, 246) 73%, rgba(209, 209, 209, 0.527) 100%);
  opacity: 0;
  visibility: hidden;
  transition: all 0.8s ease-out;
}
.section-configurator-model-selector .range .range-body .model-image .model-holder img {
  position: absolute;
  width: 100%;
  left: 0;
  transition: bottom 0.8s ease-out;
  bottom: 0;
}
.section-configurator-model-selector .range .range-body .model-body .model-tag {
  background-color: #BD5104;
  border-radius: 3px;
  display: inline-flex;
  color: white;
  font-size: 14px;
  line-height: 1.2;
  margin-bottom: 8px;
  padding: 2px 8px;
}
.section-configurator-model-selector .range .range-body .model-body .model-title {
  color: #000;
  font-family: "Grandis Extended", sans-serif;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
}
.section-configurator-model-selector .range .range-body .model-body .model-length {
  color: #000;
  font-family: "Sofia Sans";
  font-size: 14px;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
}
.section-configurator-model-selector .range .range-body .model-body .model-length span {
  font-weight: 500;
  padding-left: 0.25rem;
}
.section-configurator-model-selector .range .range-body .model-body .model-see {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.25s ease-in-out, opacity 0.5s ease-in-out;
}
.section-configurator-model-selector .range .range-body .model-body .model-see.coming-soon {
  opacity: 1 !important;
  max-height: fit-content !important;
  overflow: visible !important;
  background-color: #2c67af;
  display: inline-block !important;
  color: white;
  padding: 3px 10px;
  border-radius: 3px;
  margin-top: 6px;
}

.configurator .widget .item {
  color: unset;
  text-decoration: unset;
}
.configurator .widget .item .color-picker {
  margin-bottom: 1rem;
  padding-top: 3px;
  padding-left: 3px;
}
.configurator .widget .item .color-picker a {
  width: 2rem;
  height: 2rem;
  box-shadow: 0 0 0 2px white, 0 0 0 3px #d3d3d3;
  /* The animation code */
}
.configurator .widget .item .color-picker a:hover, .configurator .widget .item .color-picker a.active {
  box-shadow: 0 0 0 2px white, 0 0 0 4px #003a7e;
}
.configurator .widget .item .color-picker a.active {
  animation-name: pupUp;
  animation-duration: 0.5s;
}
@keyframes pupUp {
  from {
    box-shadow: 0 0 0 -2px white, 0 0 0 6px #003a7e;
  }
  to {
    box-shadow: 0 0 0 2px white, 0 0 0 4px #003a7e;
  }
}
.configurator .widget.widget-options p.title {
  margin-bottom: 0.5rem;
}
.configurator .widget.widget-options .option-group:not(.color-picker) {
  margin-bottom: 3rem;
}
.configurator .widget.widget-options .option-group .item {
  margin-bottom: 0.5rem !important;
}

.configurator .config-option.item {
  gap: 1rem;
  border-radius: 0.5rem;
  padding: 1rem;
  border: 2px solid #e0e0e0;
  transition: all 0.3s ease-in-out;
  margin-bottom: 1rem;
}
.configurator .config-option.item .inner .main-desc {
  margin-top: -0.5rem;
  margin-bottom: 0.75rem;
}
.configurator .config-option.item .inner .desc {
  color: #000;
  font-size: 1rem;
}
.configurator .config-option.item .inner:hover, .configurator .config-option.item .inner.active {
  border-color: #003a7e;
}
.configurator .config-option.item .check .checkbox {
  width: 1.5rem;
  height: 1.5rem;
  border: 2px solid #c5c5c5;
  background-color: #f6f6f6;
  border-radius: 100%;
  flex-shrink: 0;
  transition: all 0.3s ease-in-out;
  position: relative;
  z-index: -1;
}
.configurator .config-option.item:hover, .configurator .config-option.item.active {
  cursor: pointer;
  border-color: #003a7e;
}
.configurator .config-option.item:hover .check .checkbox, .configurator .config-option.item.active .check .checkbox {
  border-color: #003a7e;
  background-color: #003a7e;
}
.configurator .config-option.item:hover .check .checkbox::after, .configurator .config-option.item.active .check .checkbox::after {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: calc(50% - 0.75rem);
  left: calc(50% - 0.75rem);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M17.0303 9.53033C17.3232 9.23744 17.3232 8.76256 17.0303 8.46967C16.7374 8.17678 16.2626 8.17678 15.9697 8.46967L10 14.4393L7.53033 11.9697C7.23744 11.6768 6.76256 11.6768 6.46967 11.9697C6.17678 12.2626 6.17678 12.7374 6.46967 13.0303L9.46967 16.0303C9.76256 16.3232 10.2374 16.3232 10.5303 16.0303L17.0303 9.53033Z' fill='white'/%3E%3C/svg%3E");
}

.configurator .items-v2 .toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  cursor: pointer;
}
.configurator .items-v2 .toggle input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.configurator .items-v2 .toggle .toggle__ui {
  width: 1.5rem;
  height: 1.5rem;
  border: 2px solid #c5c5c5;
  background-color: #f6f6f6;
  border-radius: 6px;
  flex-shrink: 0;
  transition: all 0.3s ease-in-out;
  position: relative;
}
.configurator .items-v2 .toggle:hover .toggle__ui {
  border-color: #003a7e;
}
.configurator .items-v2 .toggle input:checked + .toggle__ui {
  border-color: #003a7e;
  background-color: #003a7e;
}
.configurator .items-v2 .toggle input:checked + .toggle__ui::after {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M17.0303 9.53033C17.3232 9.23744 17.3232 8.76256 17.0303 8.46967C16.7374 8.17678 16.2626 8.17678 15.9697 8.46967L10 14.4393L7.53033 11.9697C7.23744 11.6768 6.76256 11.6768 6.46967 11.9697C6.17678 12.2626 6.17678 12.7374 6.46967 13.0303L9.46967 16.0303C9.76256 16.3232 10.2374 16.3232 10.5303 16.0303L17.0303 9.53033Z' fill='white'/%3E%3C/svg%3E");
}
.configurator .items-v2 .toggle:has(input[type=checkbox]:checked) .toggle__text {
  display: block;
}
.configurator .items-v2 .toggle .toggle__text {
  font-family: "Sofia Sans", sans-serif;
  display: none;
}
.configurator .items-v2 .toggle .toggle__text.always-visible {
  display: block !important;
}
.configurator .items-v2 .radio {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  cursor: pointer;
}
.configurator .items-v2 .radio input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.configurator .items-v2 .radio .radio__ui {
  width: 1.5rem;
  height: 1.5rem;
  border: 2px solid #c5c5c5;
  border-radius: 50%;
  background-color: #f6f6f6;
  position: relative;
  transition: all 0.3s ease-in-out;
  flex-shrink: 0;
}
.configurator .items-v2 .radio:hover .radio__ui {
  border-color: #003a7e;
}
.configurator .items-v2 .radio input:checked + .radio__ui {
  border-color: #003a7e;
}
.configurator .items-v2 .radio input:checked + .radio__ui::after {
  content: "";
  width: 0.75rem;
  height: 0.75rem;
  background-color: #003a7e;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.configurator .items-v2 .radio .radio__text {
  font-family: "Sofia Sans", sans-serif;
}

.configurator .additional-options {
  grid-column: 1/13;
}
.configurator .additional-options .option-holder {
  column-gap: 1rem;
}
.configurator .additional-options .option-holder .main-desc {
  margin-top: -0.5rem;
  margin-bottom: 0.75rem;
}
.configurator .additional-options .option-holder .item .desc {
  font-size: 1rem;
  color: #000;
}
.configurator .additional-options .option-holder .item .image-holder {
  margin-bottom: 0.75rem;
  width: 100%;
}
.configurator .additional-options .option-holder .item .image-holder img {
  width: 100%;
}
.configurator .additional-options .option-holder .item .button {
  padding: 1rem 1.5rem;
  width: -moz-fit-content;
  width: fit-content;
}

.color-picker,
.color-picker .picker-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.color-picker .picker-option[data-title=Off],
.color-picker .picker-row .picker-option[data-title=Off] {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjYiIGhlaWdodD0iMjYiIHZpZXdCb3g9IjAgMCAyNiAyNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CjxyZWN0IHg9IjAuMjAwMTk1IiB5PSIwLjE5OTk1MSIgd2lkdGg9IjI1LjYiIGhlaWdodD0iMjUuNiIgcng9IjgiIGZpbGw9InVybCgjcGF0dGVybjBfNDIwMV82NjU4KSIvPgo8cmVjdCB4PSIwLjcwMDE5NSIgeT0iMC42OTk5NTEiIHdpZHRoPSIyNC42IiBoZWlnaHQ9IjI0LjYiIHJ4PSI3LjUiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS1vcGFjaXR5PSIwLjM1Ii8+CjxkZWZzPgo8cGF0dGVybiBpZD0icGF0dGVybjBfNDIwMV82NjU4IiBwYXR0ZXJuQ29udGVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgd2lkdGg9IjEiIGhlaWdodD0iMSI+Cjx1c2UgeGxpbms6aHJlZj0iI2ltYWdlMF80MjAxXzY2NTgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAuMTg3NSAwLjE4NzUpIHNjYWxlKDAuMDAzNTExMjQpIi8+CjwvcGF0dGVybj4KPGltYWdlIGlkPSJpbWFnZTBfNDIwMV82NjU4IiB3aWR0aD0iMTc4IiBoZWlnaHQ9IjE3OCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFMSUFBQUN5Q0FZQUFBRG1pcFZvQUFBQUNYQklXWE1BQUJZbEFBQVdKUUZKVWlUd0FBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQVo2U1VSQlZIZ0I3ZDFQY2xOSEVJRHhrZjlVc2RRUk9BSWN3WlZLMWlJbjRBamhCQ0UzQ0NmSURSS3ZvU2psQnVRR2NBUTJxYUlLNDRjYmU4b2dTM3BQZWpNOTNkUGZ0NElWNFA3SnlOSm9PaVVpSWlJaUlpSWlJaUlpSWlJaUlpSWlJaUlpSWlJaUlpSWlvbSt0VjQ4ZXAwYWRKS0lDclg4OS9ldDZjZlh1OWVyOFNXclFJalZzdlZvdXZ5eisvK2Q2U0M5K3VmejhYeUtYZlVNOExKN2YvZmJqbDJGeG9UM1BacER2RUs4WGFaQkhjSk4vUE0xdkEzRk9mWjVOSUc4Z3pvSFpXVHNRNTFUbnFRNTVCK0ljbUowMGdqaW5OazlWeUNPSWMyQTIza1RFT1pWNXFrR2VpRGdIWnFNZGlEaFhmWjRxa0E5RW5BT3pzWTVFbktzNnorcVFqMFNjQTdPUlppTE9WWnRuVmNnekVlZkEzTGhDaUhOVjVsa05jaUhFT1RBM3FqRGlYUEY1Vm9GY0dIRU96TXBWUXB3ck9zL2lrQ3Noem9GWnFjcUljOFhtV1JSeVpjUTVNRmRPQ1hIdTQ4bHc5dlRpOHRPSE5LTmlwOStVRUV2TDA4V3diblhLcXZlVUVhZnJJYjJhaTFncWVJenowL0xtMi9zeTZRVG1DalZBL01mUGwxY3ZVNEVLUDdWNDlQaDY4V1dkMHZBNDZjVFRqRUo1Uml4VitHRVB6Tjd5amxpcTlQSWJtTDNVQTJLcDRoc2lZTFplTDRpbHltOVJnOWxxUFNHV0ZBNE5nZGxhdlNHV2xJNXhndGxLUFNLV0ZBL1dnN2wxdlNLV2xEL3FCT1pXOVl4WWF2RGhVekJyMXp0aXFkRjFBR0RXS2dKaXFlRUZMV0N1WFJURVV1TXJzOEJjcTBpSXBhYVFKVENYTHhwaXFUbGtDY3psaW9oWU1nRlpBdlA4b2lLV3pFQ1d3SHg4a1JGTHBpQkxZRDY4NklnbGM1QWxNRThQeExlWmhDeUJlVHdRMzJjV3NnVG0zWUg0eDB4RGxzRDhNQkEvekR4a0NjejNnWGg3TGlCTFlBYnh2dHhBbGlKakJ2SCtYRUdXSW1JRzhYanVJRXVSTUlONFdpNGhTeEV3ZzNoNmJpRkxQV01HOFdHNWhpejFpQm5FaCtjZXN0UVRaaEFmVnhlUXBSNHdnL2o0dW9Fc2VjWU00bmwxQlZueWlCbkU4K3NPc3VRSk00akwxQ1ZreVFObUVKZXJXOGlTWmN3Z0xsdlhrQ1dMbUVGY3Z1NGhTNVl3ZzdoT0lTQkxGakNEdUY1aElFc3RNWU80YnFFZ1N5MHczM3lWLzAxRFdpV2xvaUdXd2tHV0dtQldLeUppS1NSa3FVZk1VUkZMWVNGTFBXR09qRmdLRFZucUFYTjB4Rko0eUpKbnpDQytEY2gzZWNRTTR2dUEvRjJlTUlQNHg0QzhrUWZNSUg0WWtMZGtHVE9JdHdma0hWbkVET0xkQVhsUGxqQ0RlSDlBSHNrQ1poQ1BCK1FKdGNRTTRta0JlV0szbUsvZUo4MFdpejkvK3Z2emkwU2puU1NhMXNubjM1TjJ3L0Q4OWVyOFNhTFIrSTQ4SWUxRDhSdUZXUVEvSnlDUDFCaHhEc3dqQVhsUFJoRG53THduSU8vSUdPSWNtSGNFNUMwWlJad0Q4NWFBdkpGeHhEa3did1RrNzNLQ09BZm03d0x5WGM0UTU4QjhGNUNUVzhRNU1DY2dlMGVjQzQ4NTluVUFmU0RPaGNZYzk0S1d2aERud21JT2VXaW9BZUtQU2FmbDZXSllSenhvRkE1eWkxc3hUNGF6cHpmLytYMUlPb1hFSE90YTJZWlh1MFphQk4raU9CZDlHN2lmR016MWlyRjZ3ZEFsMjJDdVUvL0xjQXplRkEvbTh2Vzluc3p3dWdNd2w2M2ZoWkVPZG5hQXVWeDlydkIxdEhnR3pHWHFiNm02dysxSllKNWZWNUE5cndBRDg3eTZnZHpESGpzd0gxOFhrSHRheGdqbTQzSVB1Y2VOb21BK1BOZVFlMTZMQytiRGNnczV3bTVuTUUvUEplUklDOHJCUEMxM2tDTWh6b0Y1UEZlUUl5TE9nWGwvYmlCSFJwd0Q4KzVjUUFieGZXRGVubm5JSUg0WW1COW1HaktJZHdmbUh6TUxHY1RqZ2ZrK2s1QkJQRDB3MzJZT01vZ1BEOHpHSUlQNCtLSmpOZ01aeFBPTGpOa0VaQkNYS3lybTVwQkJYTDZJbUp0Q0JuRzlvbUZ1QmhuRTlZdUV1UWxrRU9zVkJiTTZaQkRyRndHekttUVF0NnQzekdxUVFkeStuakdyUUFheG5YckZYQjB5aU8zVkkrYXFrRUZzdDk0d1Y0TU1ZdnYxaExrS1pCRDdxUmZNeFNHRDJGODlZQzRLR2NSKzg0NjVHT1RiTDhUVnU1dGZMcE5DSUM2Zlo4ekZWdmhlWEg3NklIK3BwTEIzR2NSMWtobWVES2NYMnV1RzVRR1VabFlNc2lTUHJOcVlRVnczYmN3Mzgzd2xmMmFhV1pWWExXU2h0enpTVXVHbkdTRFdTK05wUnNsNVZuc2R1VFJtRU90WEUzUHBlVlo5WjY4VVpoQzNxd2JtR3ZPc2Z0WmlMbVlRdDY4azVscnpWRG45ZGl4bUVOdXBCT2FhODFRN2ozd29aaERiYXc3bTJ2TlUvWVRJVk13Z3R0c3htRFhtcWY2WnZUSE1JTGJmSVppMTV0bmtVOVM3TUlQWVQxTXdhODZ6MmIwV201aEI3Szk5bUxYbjJmU21vWXhaM3FZRXNjKzJZUTc1VFdtOVdxcWNscU42Q2VhM3o4N2Z2MzEyTnJ4Wm5iMU1SRjRUekc5VzU3OGxJaUlpSWlJaUlpSWlJaUlpSWlJaUlpSWlJaUtLMUZjSTZkQllJSUxsL2dBQUFBQkpSVTVFcmtKZ2dnPT0iLz4KPC9kZWZzPgo8L3N2Zz4K) !important;
  background-size: cover;
  background-repeat: no-repeat;
}
.color-picker a,
.color-picker .picker-row a {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 11.2px;
  border: 1px solid rgba(0, 0, 0, 0.15);
}
.color-picker a:hover,
.color-picker .picker-row a:hover {
  transform: translate(0, -0.2rem) scale(1.1);
}
.color-picker a.white,
.color-picker .picker-row a.white {
  background: #fff;
}
.color-picker a.grey,
.color-picker .picker-row a.grey {
  background: #aea0a0;
}
.color-picker a.black,
.color-picker .picker-row a.black {
  background: #202020;
}
.color-picker a.blue,
.color-picker .picker-row a.blue {
  background: #003a7e;
}
.color-picker a.red,
.color-picker .picker-row a.red {
  background: #780303;
}
.color-picker a.orange,
.color-picker .picker-row a.orange {
  background: #d6610b;
}
.color-picker a.light-blue,
.color-picker .picker-row a.light-blue {
  background: #005cc7;
}
.color-picker a.purple,
.color-picker .picker-row a.purple {
  background: #9747ff;
}
.color-picker a.green,
.color-picker .picker-row a.green {
  background: #00ff19;
}

.model-menu {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  position: sticky;
  top: 0;
  z-index: 10;
  background-color: #fff;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .model-menu {
    padding-top: 1.25rem;
    padding-bottom: 1rem;
    margin-bottom: 3rem;
  }
}
@media only screen and (max-width: 767px) {
  .model-menu {
    padding-top: 1.25rem;
    padding-bottom: 1rem;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 480px) {
  .model-menu .nav-holder {
    overflow-x: scroll;
    -ms-overflow-style: none; /* Internet Explorer 10+ */
    scrollbar-width: none; /* Firefox, Safari 18.2+, Chromium 121+ */
  }
  .model-menu .nav-holder::-webkit-scrollbar {
    display: none; /* Older Safari and Chromium */
  }
}
@media only screen and (max-width: 991px) {
  .model-menu .nav-holder .cta-buttons {
    display: none;
  }
}
.model-menu .model-dropdown {
  position: relative;
  display: inline-block;
}
@media only screen and (max-width: 991px) {
  .model-menu .model-dropdown {
    display: none;
  }
}
.model-menu .model-dropdown .model-dropdown-btn {
  background: none;
  border: unset;
  padding: unset;
  cursor: pointer;
  text-transform: unset;
}
.model-menu .model-dropdown .model-dropdown-btn span.model {
  text-transform: uppercase;
}
.model-menu .model-dropdown .model-dropdown-btn .line-38 {
  display: none !important;
}
.model-menu .model-dropdown .model-dropdown-list {
  display: none;
  position: absolute;
  top: calc(100% + 0.75rem + 0.75rem);
  left: 0;
  background: white;
  border: unset;
  list-style: none;
  margin: 0;
  padding: 1.25rem 2rem;
  min-width: 225px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  margin-left: 0 !important;
  z-index: 99999 !important;
}
.model-menu .model-dropdown .model-dropdown-list li {
  list-style: none;
  margin-bottom: 0;
  width: 100%;
}
.model-menu .model-dropdown .model-dropdown-list li:not(:last-of-type) {
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.model-menu .model-dropdown .model-dropdown-list li:not(:first-of-type) {
  padding-top: 10px;
}
.model-menu .model-dropdown .model-dropdown-list li a {
  color: #000;
  display: block;
  font-size: 1rem;
  font-family: "Grandis Extended", sans-serif;
  font-weight: 500;
  width: max-content;
}
.model-menu .model-dropdown .model-dropdown-list li a span.model {
  text-transform: uppercase;
}
.model-menu .model-dropdown .model-dropdown-list li a span:nth-of-type(2) {
  text-transform: capitalize !important;
}
.model-menu .model-dropdown .model-dropdown-list li a .line-38 {
  display: none !important;
}
.model-menu .model-number {
  position: relative;
  cursor: pointer;
}
.model-menu a:not(.button) {
  color: #000;
  text-decoration: unset;
}
.model-menu a:not(.button):hover {
  color: #003a7e;
}
.model-menu a:not(.button).active {
  font-weight: 500;
}
.model-menu.sticky .button {
  line-height: 1rem;
}
.model-menu.configurator-menu .model-number {
  column-gap: 0.7rem;
}
.model-menu.configurator-menu .icon-logo {
  width: 1.62506rem;
  height: 1.5rem;
}
.model-menu.configurator-menu .cta-buttons {
  column-gap: 0.5rem;
}
.model-menu.model-page-menu .model-number::after {
  content: "";
  width: 0.625rem;
  height: 0.375rem;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: -0.9rem;
  top: calc(50% - 0.1875rem);
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.8.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Laag_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 9.5 5.5' style='enable-background:new 0 0 9.5 5.5;' xml:space='preserve'%3E%3Cpath d='M1.3,0.2C1-0.1,0.5-0.1,0.2,0.2c-0.3,0.3-0.3,0.8,0,1.1l4,4c0.1,0.1,0.3,0.2,0.5,0.2s0.4-0.1,0.5-0.2l4-4 c0.3-0.3,0.3-0.8,0-1.1C9-0.1,8.5-0.1,8.2,0.2L4.7,3.7L1.3,0.2z'/%3E%3C/svg%3E%0A");
  transition: all 0.3s ease-in-out;
}
.model-menu.model-page-menu .model-number:hover::after {
  transform: rotate(-180deg);
}
@media only screen and (max-width: 1220px) {
  .model-menu .menu,
  .model-menu .cta-buttons {
    column-gap: 3rem;
  }
}
@media only screen and (max-width: 991px) {
  .model-menu .model-number {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .model-menu .cta-buttons {
    display: none;
  }
}

.single-configurator #progress-bar-container {
  bottom: 0;
  top: unset;
}

#progress-bar-container {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.125rem;
  z-index: 9999;
}

#progress-bar {
  height: 100%;
  width: 0;
  background-color: #000;
}

/*# sourceMappingURL=configurator.css.map */
