.ph7-market-selector {
  z-index: 20;
  margin-left: .75rem;
  position: relative;
}

.ph7-market-trigger {
  grid-column-gap: .45rem;
  color: #323537;
  background-color: #fff;
  border: 1px solid #dfe5e2;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  min-height: 2.5rem;
  padding: .55rem .8rem;
  font-family: Manrope, sans-serif;
  font-size: .8125rem;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  box-shadow: 0 10px 24px #0a22180d;
  cursor: pointer;
}

.ph7-market-trigger:hover {
  border-color: #b9d9cd;
}

.ph7-market-trigger:focus-visible,
.ph7-market-option:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}

.ph7-market-divider {
  color: #a5afab;
  padding-left: .1rem;
  padding-right: .1rem;
}

.ph7-market-chevron {
  color: #7c8581;
  font-size: .75rem;
  line-height: 1;
}

.ph7-market-panel {
  z-index: 50;
  background-color: #fff;
  border: 1px solid #dfe5e2;
  border-radius: .75rem;
  width: min(20rem, calc(100vw - 2rem));
  padding: .9rem;
  position: absolute;
  top: calc(100% + .65rem);
  right: 0;
  box-shadow: 0 24px 60px #0a221826;
}

.ph7-market-panel[hidden] {
  display: none;
}

.ph7-market-group + .ph7-market-group {
  border-top: 1px solid #eef2f0;
  margin-top: .85rem;
  padding-top: .85rem;
}

.ph7-market-label {
  color: #74807b;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: .55rem;
  font-size: .6875rem;
  font-weight: 700;
}

.ph7-market-options {
  grid-column-gap: .35rem;
  grid-row-gap: .35rem;
  flex-flow: column;
  display: flex;
}

.ph7-market-option {
  color: #323537;
  text-align: left;
  background-color: #fff;
  border: 1px solid #0000;
  border-radius: .55rem;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 2.5rem;
  padding: .55rem .65rem;
  font-family: Manrope, sans-serif;
  font-size: .875rem;
  font-weight: 600;
  display: flex;
  cursor: pointer;
}

.ph7-market-option:hover,
.ph7-market-option.is-selected {
  background-color: #f3f8f6;
  border-color: #d9ebe4;
}

.ph7-market-option-main {
  grid-column-gap: .55rem;
  align-items: center;
  display: flex;
}

.ph7-market-option-meta {
  color: #7c8581;
  font-size: .75rem;
  font-weight: 700;
}

.ph7-market-check {
  color: var(--color-primary-active);
  opacity: 0;
  font-size: .8rem;
  font-weight: 800;
}

.ph7-market-option.is-selected .ph7-market-check {
  opacity: 1;
}

.ph7-locale-suggestion {
  z-index: 60;
  grid-column-gap: .85rem;
  grid-row-gap: .75rem;
  color: #22332d;
  background-color: #fffffff2;
  border: 1px solid #dfe5e2;
  border-radius: .875rem;
  justify-content: space-between;
  align-items: center;
  width: min(34rem, calc(100vw - 2rem));
  padding: .8rem .9rem;
  font-family: Manrope, sans-serif;
  display: flex;
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  box-shadow: 0 20px 50px #0a22181f;
}

.ph7-locale-suggestion-text {
  margin: 0;
  font-size: .875rem;
  line-height: 1.45;
}

.ph7-locale-suggestion-actions {
  grid-column-gap: .45rem;
  flex: none;
  align-items: center;
  display: flex;
}

.ph7-locale-suggestion-primary,
.ph7-locale-suggestion-secondary {
  border-radius: 999px;
  min-height: 2.25rem;
  padding: .45rem .8rem;
  font-family: Manrope, sans-serif;
  font-size: .8125rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

.ph7-locale-suggestion-primary {
  color: #fff;
  background-color: #22332d;
  border: 1px solid #22332d;
}

.ph7-locale-suggestion-secondary {
  color: #54615c;
  background-color: #fff;
  border: 1px solid #dfe5e2;
}

.ph7-locale-suggestion-primary:focus-visible,
.ph7-locale-suggestion-secondary:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}

@media screen and (max-width: 767px) {
  .ph7-market-selector {
    width: min(100%, 20rem);
    margin-left: 0;
  }

  .ph7-market-trigger {
    width: 100%;
  }

  .ph7-market-panel {
    width: 100%;
    position: static;
    margin-top: .65rem;
  }

  .ph7-locale-suggestion {
    align-items: stretch;
    flex-direction: column;
    right: .75rem;
    bottom: .75rem;
    width: calc(100vw - 1.5rem);
  }

  .ph7-locale-suggestion-actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}
