@keyframes jello {
  11.1% {
    transform: none;
  }
  22.2% {
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
  100% {
    transform: none;
  }
}
@keyframes spin {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
/* ******************** REVEALS ******************** */
@keyframes reveal-top {
  from {
    opacity: 0;
    transform: translateY(-100%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes reveal-right {
  from {
    opacity: 0;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes reveal-bottom {
  from {
    opacity: 0;
    transform: translateY(100%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes reveal-left {
  from {
    opacity: 0;
    transform: translateX(-100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes reveal-fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes reveal-zoomin {
  from {
    opacity: 0;
    transform: scale(0);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes reveal-paint-left {
  from {
    opacity: 1;
    -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
            clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  }
  to {
    opacity: 1;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes reveal-paint-top {
  from {
    opacity: 1;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
            clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  }
  to {
    opacity: 1;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes reveal-paint-right {
  from {
    opacity: 1;
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
            clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  }
  to {
    opacity: 1;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes reveal-paint-bottom {
  from {
    opacity: 1;
    -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
            clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  }
  to {
    opacity: 1;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes reveal-paint-center {
  from {
    opacity: 1;
    -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 50%, 0 50%);
            clip-path: polygon(0 50%, 100% 50%, 100% 50%, 0 50%);
  }
  to {
    opacity: 1;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
.animate-fade-n-hide {
  animation: fade-n-hide 1s forwards;
}

@keyframes fade-n-hide {
  0% {
    opacity: 1;
  }
  99% {
    opacity: 0;
  }
  100% {
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes buttonIconHover {
  0% {
    opacity: 1;
    transform: translate(0);
  }
  50% {
    opacity: 0;
    transform: translate(25px, -25px);
  }
  51% {
    opacity: 0;
    transform: translate(-25px, 25px);
  }
  to {
    opacity: 1;
    transform: translate(0);
  }
}
.link {
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 100% 2px;
  transition: background-size 0.3s;
}
.link:hover, .link:focus {
  background-position: bottom right;
  background-size: 0 2px;
}
.link--inv {
  background-position: bottom right;
  background-size: 0 2px;
}
.link--inv:hover, .link--inv:focus {
  background-position: bottom left;
  background-size: 100% 2px;
}

.link-mod__txt {
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 100% 2px;
  transition: background-size 0.3s;
}
.link-mod:hover .link-mod__txt, .link-mod:focus .link-mod__txt {
  background-position: bottom right;
  background-size: 0 2px;
}
.link-mod--inv .link-mod__txt {
  background-position: bottom right;
  background-size: 0 2px;
}
.link-mod--inv:hover .link-mod__txt, .link-mod--inv:focus .link-mod__txt {
  background-position: bottom left;
  background-size: 100% 2px;
}

.pagination {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 60px;
  min-height: 60px;
  outline: 2px solid transparent;
  outline-offset: 3px;
  border: 2px solid var(--quaternary);
  border-radius: 9999px;
  padding: 5px;
}
.page-numbers.current {
  background-color: var(--quaternary);
}
.page-numbers:not(.dots):not(.current) {
  transition: color 0.3s, background-color 0.3s;
}
.page-numbers:not(.dots):not(.current):focus {
  outline-color: var(--primary);
}
.page-numbers:not(.dots):not(.current):hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  background-color: var(--secondary);
}
.page-numbers.prev, .page-numbers.next {
  border-color: var(--secondary);
  font-size: 0;
}
.page-numbers.prev::before, .page-numbers.next::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background-color: var(--secondary);
  transition: background-color 0.3s;
  -webkit-mask-image: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M15.7004 10.0001C15.7004 10.3585 15.5635 10.7169 15.2904 10.9902L6.69072 19.5897C6.14368 20.1368 5.25674 20.1368 4.70992 19.5897C4.1631 19.0429 4.1631 18.1561 4.70992 17.609L12.3194 10.0001L4.71019 2.39102C4.16336 1.84398 4.16336 0.957304 4.71019 0.410524C5.25701 -0.136784 6.14395 -0.136784 6.69099 0.410524L15.2906 9.00994C15.5638 9.28335 15.7004 9.64175 15.7004 10.0001Z"/></svg>');
          mask-image: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M15.7004 10.0001C15.7004 10.3585 15.5635 10.7169 15.2904 10.9902L6.69072 19.5897C6.14368 20.1368 5.25674 20.1368 4.70992 19.5897C4.1631 19.0429 4.1631 18.1561 4.70992 17.609L12.3194 10.0001L4.71019 2.39102C4.16336 1.84398 4.16336 0.957304 4.71019 0.410524C5.25701 -0.136784 6.14395 -0.136784 6.69099 0.410524L15.2906 9.00994C15.5638 9.28335 15.7004 9.64175 15.7004 10.0001Z"/></svg>');
}
.page-numbers.prev:hover::before, .page-numbers.next:hover::before {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.page-numbers.prev {
  transform: rotate(180deg);
}

.wpcf7 .btn {
  margin-top: clamp(20px, calc(1.9vw + 7px), 40px);
}
.wpcf7 .wpcf7-form {
  position: relative;
}
.wpcf7 .wpcf7-form p {
  margin: 20px 0;
}
.wpcf7 .wpcf7-form a {
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 100% 2px;
  transition: background-size 0.3s;
}
.wpcf7 .wpcf7-form a:hover, .wpcf7 .wpcf7-form a:focus {
  background-position: bottom right;
  background-size: 0 2px;
}
.wpcf7 .wpcf7-form::before, .wpcf7 .wpcf7-form::after {
  content: "";
  position: absolute;
  display: block;
  z-index: 20;
  transition: opacity 0.2s;
}
.wpcf7 .wpcf7-form::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  opacity: 0.5;
}
.wpcf7 .wpcf7-form::after {
  pointer-events: none;
  top: calc(50% - 25px);
  left: calc(50% - 25px);
  width: 50px;
  height: 50px;
  border: 5px solid var(--primary);
  border-top-color: transparent;
  border-radius: 9999px;
  animation: spin 1s linear infinite;
}
.wpcf7 .wpcf7-form:not(.submitting)::before, .wpcf7 .wpcf7-form:not(.submitting)::after {
  pointer-events: none;
  opacity: 0;
}
.wpcf7 .wpcf7-custom-group {
  position: relative;
  display: inline-block;
  width: 100%;
  margin-bottom: 20px;
}
.wpcf7 .wpcf7-custom-label {
  display: inline-block;
  margin-bottom: 10px;
}
.wpcf7 .wpcf7-text,
.wpcf7 .wpcf7-textarea,
.wpcf7 .wpcf7-number,
.wpcf7 .wpcf7-select {
  display: inline-block;
  width: 100%;
  outline: 2px solid transparent;
  outline-offset: 2px;
  border: 1px solid var(--senary);
  padding: clamp(10px, calc(1.3vw + 2px), 20px);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.wpcf7 .wpcf7-text::-moz-placeholder, .wpcf7 .wpcf7-textarea::-moz-placeholder, .wpcf7 .wpcf7-number::-moz-placeholder, .wpcf7 .wpcf7-select::-moz-placeholder {
  color: #ABABAB;
}
.wpcf7 .wpcf7-text::placeholder,
.wpcf7 .wpcf7-textarea::placeholder,
.wpcf7 .wpcf7-number::placeholder,
.wpcf7 .wpcf7-select::placeholder {
  color: #ABABAB;
}
.wpcf7 .wpcf7-text:focus,
.wpcf7 .wpcf7-textarea:focus,
.wpcf7 .wpcf7-number:focus,
.wpcf7 .wpcf7-select:focus {
  outline-color: var(--primary);
}
.wpcf7 .wpcf7-text:hover,
.wpcf7 .wpcf7-textarea:hover,
.wpcf7 .wpcf7-number:hover,
.wpcf7 .wpcf7-select:hover {
  border-color: var(--primary);
}
.wpcf7 .wpcf7-textarea {
  margin: 0;
}
.wpcf7 .acceptance {
  font-size: 1.4rem;
  text-align: center;
}
.wpcf7 .wpcf7-custom-file-tooltip {
  pointer-events: none;
  position: absolute;
  bottom: 65px;
  left: 0;
  width: 100%;
  margin: 0;
  text-align: center;
  transform: translateY(100%);
}
.wpcf7 .screen-reader-response {
  height: 1px;
  overflow: hidden;
}
.wpcf7 .wpcf7-not-valid-tip,
.wpcf7 .wpcf7-response-output {
  display: block;
  margin-bottom: clamp(10px, calc(1.3vw + 2px), 20px);
  font-weight: 700;
  color: var(--primary);
}
.wpcf7 .wpcf7-not-valid-tip ul,
.wpcf7 .wpcf7-response-output ul {
  display: none;
}
.wpcf7 .wpcf7-not-valid-tip:last-child,
.wpcf7 .wpcf7-response-output:last-child {
  margin-top: 5px;
  margin-bottom: 0;
}

.tabs__body {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  animation: clip-right 0.6s forwards;
}
.tabs__body.is-active {
  animation: unclip-right 0.6s forwards;
}

@keyframes unclip-right {
  from {
    -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
            clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  }
  to {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes clip-right {
  from {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  to {
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
            clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  }
}
.loader {
  position: relative;
}
.loader::before, .loader::after {
  content: "";
  position: absolute;
  display: block;
  z-index: 20;
  transition: opacity 0.2s;
}
.loader::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  opacity: 0.5;
}
.loader::after {
  pointer-events: none;
  top: calc(50% - 25px);
  left: calc(50% - 25px);
  width: 50px;
  height: 50px;
  border: 5px solid var(--primary);
  border-top-color: transparent;
  border-radius: 9999px;
  animation: spin 1s linear infinite;
}
.loader:not(.loading)::before, .loader:not(.loading)::after {
  pointer-events: none;
  opacity: 0;
}

.rating {
  position: relative;
  width: 125px;
  height: 20px;
  -webkit-mask-image: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 33"><path d="M16.7989 0.927051C17.0983 0.00574017 18.4017 0.00574017 18.7011 0.927051L22.0158 11.1287C22.1496 11.5407 22.5336 11.8197 22.9668 11.8197H33.6934C34.6622 11.8197 35.0649 13.0593 34.2812 13.6287L25.6032 19.9336C25.2527 20.1883 25.1061 20.6396 25.2399 21.0517L28.5546 31.2533C28.854 32.1746 27.7995 32.9407 27.0158 32.3713L18.3378 26.0664C17.9873 25.8117 17.5127 25.8117 17.1622 26.0664L8.48419 32.3713C7.70048 32.9407 6.646 32.1746 6.94535 31.2533L10.2601 21.0517C10.3939 20.6396 10.2473 20.1883 9.89679 19.9336L1.21877 13.6287C0.435055 13.0593 0.83783 11.8197 1.80655 11.8197H12.5332C12.9664 11.8197 13.3504 11.5407 13.4842 11.1287L16.7989 0.927051Z"/></svg>');
          mask-image: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 33"><path d="M16.7989 0.927051C17.0983 0.00574017 18.4017 0.00574017 18.7011 0.927051L22.0158 11.1287C22.1496 11.5407 22.5336 11.8197 22.9668 11.8197H33.6934C34.6622 11.8197 35.0649 13.0593 34.2812 13.6287L25.6032 19.9336C25.2527 20.1883 25.1061 20.6396 25.2399 21.0517L28.5546 31.2533C28.854 32.1746 27.7995 32.9407 27.0158 32.3713L18.3378 26.0664C17.9873 25.8117 17.5127 25.8117 17.1622 26.0664L8.48419 32.3713C7.70048 32.9407 6.646 32.1746 6.94535 31.2533L10.2601 21.0517C10.3939 20.6396 10.2473 20.1883 9.89679 19.9336L1.21877 13.6287C0.435055 13.0593 0.83783 11.8197 1.80655 11.8197H12.5332C12.9664 11.8197 13.3504 11.5407 13.4842 11.1287L16.7989 0.927051Z"/></svg>');
  -webkit-mask-size: 25px 20px;
          mask-size: 25px 20px;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: repeat;
          mask-repeat: repeat;
  background-color: var(--quaternary);
}
.rating::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--rating);
  height: 100%;
  -webkit-mask: inherit;
          mask: inherit;
  --tw-bg-opacity: 1;
  background-color: rgb(233 187 70 / var(--tw-bg-opacity));
}
.rating--big {
  width: 190px;
  height: 30px;
  -webkit-mask-size: 40px 30px;
          mask-size: 40px 30px;
}

.tile-offer__collapsed {
  max-height: 0;
  transition: max-height 0.5s;
  transition-timing-function: ease-out;
}
.tile-offer:hover .tile-offer__collapsed {
  max-height: 500px;
  transition-timing-function: ease-in;
}

.tile-cert {
  position: relative;
  display: block;
  width: 100%;
  perspective: 1000px; /* Remove this if you don't want the 3D effect */
}
.tile-cert__placeholder {
  display: block;
  padding-top: 141%;
}
.tile-cert__inner {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}
.tile-cert__inner__front {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 20px;
  background-color: var(--quaternary);
  backface-visibility: hidden;
}
.tile-cert__inner__back {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--quaternary);
  backface-visibility: hidden;
  transform: rotateY(180deg);
}
.tile-cert__ico {
  width: 250px;
  max-width: 100%;
}
.tile-cert__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.tile-cert:hover .tile-cert__inner {
  transform: rotateY(180deg);
}

.visualisation {
  width: 100%;
}
.visualisation__modal {
  position: absolute;
  left: 0;
  display: flex;
  width: 100%;
  border: 1px solid var(--tertiary);
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1333333333);
  background-color: rgba(0, 0, 0, 0.1333333333);
  z-index: 100;
}
.visualisation__modal__container {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 20px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
@media screen and (min-width: 640px) {
  .visualisation__modal__container {
    padding: 30px;
  }
}
@media screen and (min-width: 1280px) {
  .visualisation__modal__container {
    padding: 40px;
  }
}
.visualisation__modal__close {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  border: none;
  background-color: var(--primary);
  z-index: 10;
  transition-property: background-color;
  transition-duration: 0.3s;
}
.visualisation__modal__close::before, .visualisation__modal__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 75%;
  height: 1px;
  display: block;
  background-color: #fff;
}
.visualisation__modal__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.visualisation__modal__close::after {
  transform: translate(-50%, -50%) rotate(135deg);
}
.visualisation__modal__close:focus, .visualisation__modal__close:hover {
  background-color: var(--quaternary);
}
@media screen and (min-width: 640px) {
  .visualisation__modal__close {
    width: 40px;
    height: 40px;
  }
  .visualisation__modal__close::before, .visualisation__modal__close::after {
    width: 50%;
  }
}
@media screen and (min-width: 1280px) {
  .visualisation__modal__close {
    width: 50px;
    height: 50px;
  }
}
.visualisation__legend {
  display: flex;
  flex-wrap: wrap;
  margin: var(--margin-res) 0;
}
.visualisation__legend__head {
  width: 100%;
  margin-bottom: var(--margin-res);
  text-align: center;
}
.visualisation__legend__item {
  display: flex;
  align-items: center;
  padding: 10px;
}
.visualisation__legend__color {
  width: 40px;
  height: 40px;
  margin-right: 20px;
}
.visualisation__legend__text {
  font-size: clamp(18px, 2vw, 23px);
}
@media screen and (min-width: 640px) {
  .visualisation__legend {
    justify-content: space-around;
  }
}
.visualisation__canvas {
  position: relative;
  width: 100%;
  margin: 0 auto;
  background-color: var(--quaternary);
  overflow: hidden;
}
.visualisation__canvas__img {
  width: 100%;
}
.visualisation__canvas__svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.visualisation__canvas__svg polygon {
  cursor: pointer;
}
.visualisation__canvas__svg svg {
  pointer-events: none;
}
.visualisation__canvas__tooltip {
  pointer-events: none;
  position: absolute;
  display: none;
  padding: 10px 20px;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.visualisation__canvas__tooltip.is-active {
  display: block;
}

.vis-table {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 1000px;
  margin: auto;
  border-collapse: collapse;
}
.vis-table__head {
  font-weight: 700;
  font-size: 18px;
  text-align: center;
  border: 1px solid var(--senary);
  color: var(--secondary);
}
.vis-table__body {
  display: block;
  padding-top: clamp(20px, calc(1.9vw + 7px), 40px);
}
.vis-table__row {
  display: flex;
}
.vis-table__row.is-active {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
  background-color: var(--octanery);
}
.vis-table__row:not(:last-child) {
  border-bottom: 1px solid var(--senary);
}
.vis-table__row:not(:first-child:last-child) {
  cursor: pointer;
  position: relative;
}
.vis-table__row:not(:first-child:last-child)::before {
  content: "";
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--septenary);
  opacity: 0;
  transition: opacity 0.3s;
}
.vis-table__row:not(:first-child:last-child):focus::before, .vis-table__row:not(:first-child:last-child):hover::before {
  opacity: 1;
}
.vis-table__cell {
  position: relative;
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 100px;
  min-height: 80px;
  padding: 10px;
  text-align: center;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.vis-form__item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

@media (max-width: 1023px) {
  .vis-form__item {
    width: 100%;
  }
}
.vis-form__item select, .vis-form__item .vis-form__select {
  max-width: 100%;
  outline: 2px solid transparent;
  outline-offset: 2px;
  padding: 10px;
  filter: drop-shadow(4px 4px 5px rgba(0, 0, 0, 0.05)) drop-shadow(4px 4px 5px rgba(0, 0, 0, 0.05));
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 18px;
  padding-bottom: 18px;
  line-height: 1;
}
@media (min-width: 1024px) {
  .vis-form__item select, .vis-form__item .vis-form__select {
    width: 250px;
  }
}
.vis-form__item select, .vis-form__item .vis-form__select {
  float: none;
  height: auto;
  border-radius: 0px;
  border-style: none;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  font-family: var(--font-secondary);
  font-size: 16px;
  font-weight: 500;
  color: var(--senary);
  transition-duration: 150ms;
}
.vis-form__item select:hover, .vis-form__item .vis-form__select:hover {
  outline-width: 1px;
  outline-color: var(--primary);
}
.vis-form__item select:focus, .vis-form__item .vis-form__select:focus {
  outline-width: 1px;
  outline-color: var(--primary);
}
.vis-form__item select, .vis-form__item .vis-form__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='12' viewBox='0 0 15 12' fill='none'%3E%3Cpath d='M7.5 9.30322L15 3.32278L14.2203 2.69697L7.5 8.0557L0.779682 2.69697L1.12586e-06 3.32278L7.5 9.30322Z' fill='%23705D45'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px top 50%;
  background-size: 19px;
}
.vis-form__item select::-moz-placeholder, .vis-form__item .vis-form__select::-moz-placeholder {
  color: #ABABAB;
}
.vis-form__item select::placeholder, .vis-form__item .vis-form__select::placeholder {
  color: #ABABAB;
}
.vis-form__item select:focus, .vis-form__item .vis-form__select:focus {
  outline-color: var(--primary);
}
.vis-form__item select:hover, .vis-form__item .vis-form__select:hover {
  border-color: var(--primary);
}

.marker {
  position: relative;
  display: block;
  border: none;
  cursor: pointer;
  padding: 0;
}

.mapboxgl-marker {
  position: absolute;
  top: 0;
  left: 0;
  will-change: transform;
  opacity: 1;
  transition: opacity 0.2s;
}

.mapboxgl-popup {
  max-width: 200px;
}

.mapboxgl-popup-content {
  padding: 16px 24px;
  border: 1px solid #705d45;
  max-width: 200px;
  min-width: 150px;
}

.mapboxgl-popup-close-button {
  top: 4px;
  right: 4px;
}

.price-history-popup {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999;
}
.price-history-popup__content {
  min-width: 10rem;
}
@media (min-width: 1280px) {
  .price-history-popup__content {
    min-width: 600px;
  }
}
.price-history-popup__content {
  background: white;
  padding: 20px;
  position: relative;
  max-width: 90%;
  max-height: 90vh;
  overflow-y: auto;
}
.price-history-popup__close {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  height: 20px;
  border: none;
  background-color: var(--primary);
  z-index: 10;
  transition-property: background-color;
  transition-duration: 0.3s;
}
.price-history-popup__close::before, .price-history-popup__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 75%;
  height: 1px;
  display: block;
  background-color: #fff;
}
.price-history-popup__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.price-history-popup__close::after {
  transform: translate(-50%, -50%) rotate(135deg);
}
.price-history-popup__close:focus, .price-history-popup__close:hover {
  background-color: var(--quaternary);
}
@media screen and (min-width: 640px) {
  .price-history-popup__close {
    width: 40px;
    height: 40px;
  }
  .price-history-popup__close::before, .price-history-popup__close::after {
    width: 50%;
  }
}
@media screen and (min-width: 1280px) {
  .price-history-popup__close {
    width: 50px;
    height: 50px;
  }
}
.price-history-popup .price-history-table {
  width: 100%;
  margin: 20px 0;
  border-collapse: collapse;
}
.price-history-popup .price-history-table th,
.price-history-popup .price-history-table td {
  padding: 8px;
  border: 1px solid #ddd;
  text-align: left;
}
.price-history-popup .price-history-table th:last-child,
.price-history-popup .price-history-table td:last-child {
  text-align: right;
}
