
/* kategoria-navi */
/*
#sub-page-ajax-filter nav#site-navigation {
  display: grid;
}

#site-navigation-2 {
  grid-row: 1;
  grid-column: 3;
  justify-content: flex-end;
}
*/

#sub-page-ajax-filter .header-navigation {
  display: block;
}

#sub-page-ajax-filter .menu-kategoriavalikko-container {
  width: 100%;
  position: relative;
}

#sub-page-ajax-filter ul#menu-kategoriavalikko {
  width: 100%;
  text-align: center;
}

#sub-page-ajax-filter li.menu-item {
  display: inline-block;
  min-width: auto;
  text-align: center;
  cursor: pointer;
  margin: 0 10px 10px 10px;
}

#sub-page-ajax-filter .sub-menu li.menu-item {
  min-width: auto;
  margin: 0 10px;
}

#sub-page-ajax-filter .sub-menu li.menu-item button {
  width: auto;
}

#sub-page-ajax-filter .nav--toggle-sub li.menu-item-has-children {
  position: unset;
}

#sub-page-ajax-filter .nav--toggle-sub li:hover>ul,
#sub-page-ajax-filter .nav--toggle-sub li.menu-item--toggled-on>ul,
#sub-page-ajax-filter .nav--toggle-sub li:not(.menu-item--has-toggle):focus>ul,
#sub-page-ajax-filter .nav--toggle-sub li:focus-within>ul {
  display: none;
}

li.active {
  /*border-bottom: 1px solid black !important;*/
}

.sub-menu li.active {
  background-color: rgb(0 0 0 / 5%);
}

li.active>button {
  /*border-bottom: 1px solid black !important;*/
  /*font-weight: 900 !important;*/
}

#sub-page-ajax-filter .nav--toggle-sub li.active>ul {
  display: flex;
  flex-direction: row;
  left: 0;
  width: 100%;
  justify-content: center;
  background: #f9f9f9;
  box-shadow: none;
  z-index: 99;
}

#sub-page-ajax-filter li.menu-item>button {
  font-weight: 700;
  color: #737373;
  display: flex;
  align-content: center;
  justify-content: center;
  background:initial;
  box-shadow:none;
  font-size: 15px;
}

#sub-page-ajax-filter li.menu-item.active>button {
  color:black;
}

#sub-page-ajax-filter .menu-item ._svg {
  width: 1.5em;
}

/*  */

.sorting-container {
  display: grid;
  /* row-gap: 1em; */
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom:1em;
}

#toggle-filter-container {
  display: flex;
  position: relative;
  align-items: center;
  grid-row: 1;
  grid-column: 1/4;
  padding: 0.5em 1.1em;
  width: max-content;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 700;
  background-color: white;
  border: 1px solid #3d3d3d;
  color: #3d3d3d;
  width: 100%;
  text-align: center;
  justify-content: center;
  margin-bottom:1em;
}

.shop-filter-container {
  grid-row: 2;
  grid-column: 1 / 4;
  max-height: 0;
  overflow: hidden;
  background: #f9f9f9;
  margin-left: calc(-1 * var(--global-content-edge-padding));
  margin-right: calc(-1 * var(--global-content-edge-padding));
  transition: max-height 0.5s;
  display:none;
}

.shop-filter-container div {
  margin: 1em;
}

.shop-filter-container button {
  display: flex;
  align-items: center;
  padding: 0.7em 1.2em;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 700;
  background-color: #5b715b;
}

.input-container {
  display: flex;
  gap: 0.8em;
  align-items: center;
  justify-content: space-between;
  border: 1px solid rgba(0, 0, 0, 0.2);
  padding: 4px;
  border-radius: 50px;
}

#filter-location-input {
  border-radius: 50px;
  flex-grow: 1;
  font-size: 16px;
}

.bottom-container {
  display: flex;
  justify-content: space-between;
}

#filter-location-button {
  padding-left: 0.8em;
  text-align: center;
  justify-content: center;
  width: 100%;
}

.icon-current-location {
  display: inline-block;
  height: 18px;
  max-width: 100%;
  margin-right: 5px;
  margin-top: 1px;
}

#address-notice-wrapper {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
}

.notice-wrapper {
  margin-bottom: 20px;
  justify-content: space-between;
}

.addresss-notice {
  display: flex;
  align-items: center;
}

#filter-location-restore-defaults {
  border-radius: 50px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 6px 4px 0 0;
  padding: 0;
  line-height: 1;
  background: none;
  color: var(--global-gray-500);
  border: 1px solid;
}

.map-button-container {
  display: flex;
  gap: 0.8em;
  align-items: center;
  justify-content: space-between;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}

form.isotope-search-form {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  width: 100%;
}

input.quicksearch {
  border-radius: 50px;
  font-size: 16px;
  width: 100%;
  padding-left: 1em;
}

input#reset-search {
  /*position: relative;
  right: 36px;*/
  margin-left: -36px;
  border-radius: 50px;
  width: 32px;
  height: 32px;
  /*display: flex;*/
  padding: 0;
  justify-content: center;
  background-color: white;
  color: var(--global-gray-500);
  border: 1px solid var(--global-gray-500);
  display: none;
}

button#filter-map-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: none;
  color: var(--global-palette3);
  box-shadow: none;
  /*border: 1px solid var(--global-palette3);*/
  padding: 0.4em 1em;
  border-radius: 50px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

img.icon-map {
  width: 27px;
}

#map-container {
  margin-bottom: 20px;
}

#map {
  height: 600px;
  transition: all 0.2s;
  background: var(--global-gray-500);
}

#map button.gm-ui-hover-effect {
    width: 40px !important;
    height: 40px !important;
}

.info-window-content .links a {
  display: inline-block;
  margin-right: 10px;
}

.info-window-content h3 {
  font-size: 18px;
}

.info-window-content h3,
.info-window-content p {
  margin-bottom: 5px;
}

.map-info-button {
  display: inline-block;
  background-color: #6c10b9;
  padding: 0.5em 1.1em;
  color: white;
  border-radius: 50px;
  text-decoration: none;
}

.map-info-button:hover {
  color: white;
}

@media (max-width: 768px) {

#sub-page-ajax-filter li.menu-item>button {
  font-weight: 400;
  font-size: 13px;
}


  #map {
    max-height: 400px;
  }
}

@media (min-width: 1100px) {
  .shop-filter-container {
    display: none;
    grid-template-columns: 4fr 2fr;
    column-gap: 2em;
  }

  .shop-filter-container>div:first-child {
    grid-column: 1 / -1;
  }

  .bottom-container {
    align-items: center;
    justify-content: flex-end;
  }

  /* UI on desktop */
/*
  #sub-page-ajax-filter ul#menu-kategoriavalikko {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
  }
*/
  #sub-page-ajax-filter #menu-kategoriavalikko li.menu-item {
    width: auto;
    min-width: auto;
  }
}

/* Loading spinner */

.loader {
  border: 5px solid #f3f3f3;
  border-radius: 50%;
  border-top: 5px solid #3498db;
  width: 38px;
  height: 38px;
  -webkit-animation: spin 2s linear infinite;
  /* Safari */
  animation: spin 2s linear infinite;
  margin-top: 1em;
  margin-bottom: 1.1em;
  margin-left: auto;
  margin-right: auto;
}

/* Safari */
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* listaus ja kortit ---- */

.element-item {
  width: 33.3%;
  padding: 0 10px;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}

@media only screen and (max-width: 1025px) {
  .element-item {
    width: 50%;
  }
}

@media only screen and (max-width: 575px) {
  .element-item {
    width: 100%;
    padding: 0;
  }
}

.subsite-img {
  border-radius: 5px;
  overflow: hidden;
}

.filter-column-wrap {
  background-color: lightgray;
  margin-bottom: 50px;
  padding: 10px;
}

.home #archive-container {
  margin-top: 0;
  min-height: 50vh;
}

@media (max-width: 768px) {
  #archive-container {
    margin-top: 20px;
  }
}

#archive-container.empty::after {
  content: 'Ei näytettäviä toimipisteitä.';
  position: relative;
  height: fit-content;
  padding: 30px;
  color: black;
  text-align: center;
  background-color: lightgray;
}

article.entry.loop-entry {
  box-shadow: none;
}

a.subsite-link {
  color: var(--global-palette4);
}

.subsite-img img {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  height: 267px;
  object-fit: cover;
}

.loop-entry .entry-content-wrap {
  margin-bottom: 30px;
  box-shadow: 0px 15px 25px -10px rgb(0 0 0 / 5%);
  z-index: 999;
  background-color: rgb(239, 239, 239);
  border-radius: 5px;
  overflow: hidden;
  display: inline-block;
  width: 96%;
  padding: 1rem;

  font-size: 15px;
}

.loop-entry .subsite-link:hover .subsite-img {
  box-shadow: 0px 15px 25px 10px rgb(0 0 0 / 3%);
}

.loop-entry .subsite-link:hover .entry-content-wrap {
  box-shadow: 0px 15px 25px -10px rgb(0 0 0 / 7%);
}

.subsite-link h2 {
  font-size: 1.5em;
  margin: 0.5em 0 0.2em;
}

.subsite-link small {
  font-size: 85%;
  display: block;
  margin-bottom: 11px;
}

.subsite-link .locations {
  position: relative;
  display: flex;
}

.subsite-link .locations p {
  font-size: 0.8em;
  text-transform: uppercase;
  font-weight: 800;
}

.subsite-link .locations:before {
  content: url(/wp-content/plugins/auvo-map/inc/svg/place.svg);
  position: relative;
  left: 0;
  top: -2px;
  margin-left: -4px;
  margin-right: 3px;
}

.other-cities-count {
  font-weight: 500;
  font-size: 0.8em;
}

@media (max-width: 460px) {
  .subsite-img img {
    height: 210px;
  }

  #sub-page-ajax-filter .entry-content-wrap h2 {
    font-size: 1.3em;
  }

  #sub-page-ajax-filter .entry-content-wrap small {
    font-size: 0.8em;
  }

  #sub-page-ajax-filter .entry-content-wrap p {
    font-size: 0.7em;
  }
}

/* ---- */

#loading-spinner {
  display: inline-block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 999;
}

#loading-spinner:after {
  content: ' ';
  display: block;
  position: relative;
  top: 50%;
  left: calc(50vw - 32px);
  width: 64px;
  height: 64px;
  border-radius: 50%;
  border: 6px solid var(--global-palette-btn-bg);
  border-color: transparent white transparent white;
  animation: loading-spinner 1.2s linear infinite;
  z-index: 9999;
}

@keyframes loading-spinner {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.post.type-hoitaja h3 {
  margin-bottom: 0px;
}

.loop-entry .social-links a {
  display: inline-block;
  margin-right: 10px;
}
.loop-entry .social-links {
  margin-top: 5px;
}
.loop-entry .website a {
  display: inline-block;
  margin-right: 15px;
}
.loop-entry .topmargin {
  margin-top: 10px;
}
