/* Minification failed. Returning unminified contents.
(142,46): run-time error CSS1030: Expected identifier, found 'p'
(142,47): run-time error CSS1031: Expected selector, found ')'
(142,47): run-time error CSS1025: Expected comma or open brace, found ')'
 */
/* Variables
**********************************/
/* all vars, no need for @if critical */
/* breakpoints */
/* Animation - see header.scss for usage examples */
/* Form placeholders */
/* Usage:

	.foo {
	  @include placeholder {
		color: green;
	  }
	}

	@include placeholder {
	  color: red;
	}
*/
/* Flexbox 
***************************************/
/* Card */
/* Filter */
/* Gridder */
/*
	TABLE OF CONTENTS:
		- OVERALL MAP SECTION
		- OVERRIDING DEFAULT GOOGLE MAPS STYLES
			- TRIANGLE INDICATOR
			- ZOOM CONTROL
		- CUSTOM CONTENT
			- INFOWINDOW CONTENT CONTAINER
			- TEXT CONTENT SECTION OF INFOWINDOW
			- MISCELLANEOUS INDIVIDUAL FIELDS
		- MAP NAVIGATION
			- DECORATIVE ELEMENT
			- DROPDOWN FOR CATEGORIES
				- TOGGLE BUTTON
				- LIST OF DROPDOWN ITEMS

*/
.site-map {
  position: relative;
  z-index: 3;
  margin: 0 auto;
  overflow: hidden;
}

.site-map .gmap-wrap {
  box-sizing: border-box;
  position: relative;
}

.site-map .gmap {
  margin-bottom: 0;
  height: 800px;
  max-height: 100vh;
}

.gm-style .gm-style-iw-c {
  padding: 0;
  box-shadow: none;
  transform: translate3d(-50%, 25px, 0);
  border-radius: 10px;
}

.gm-style .gm-style-iw-c .gm-ui-hover-effect {
  width: 17px !important;
  height: 16px !important;
  margin: 10px !important;
  top: 10px !important;
  right: 0 !important;
}

.gm-style .gm-style-iw-c .gm-ui-hover-effect > span {
  mask-image: url("/components/interactive_map/images/decorative-elements/infowindow-close-btn-half.png") !important;
  -webkit-mask-image: url("/components/interactive_map/images/decorative-elements/infowindow-close-btn-half.png") !important;
  width: 17px !important;
  height: 16px !important;
  margin: 0 !important;
}

.gm-style .gm-style-iw-d {
  overflow: auto !important;
}

.gm-style .gm-style-iw-t {
  bottom: 15px !important;
}

.gm-style .gm-style-iw-tc {
  top: 15.5px;
  -webkit-filter: none;
  filter: none;
}

.gm-style .gm-style-iw-tc::after {
  clip-path: polygon(50% 0%, 100% 100%, 0 100%);
  top: -2px;
  background-color: #9c7529;
}

.gm-bundled-control .gm-control-active > img {
  filter: brightness(0) invert(40%) sepia(86%) saturate(357%) hue-rotate(1deg) brightness(97%) contrast(91%);
}

.gmap-tooltip {
  box-sizing: border-box;
  line-height: 1.4em;
  font-family: "Mulish", sans-serif;
  display: flex;
  align-items: center;
  overflow: hidden;
  max-height: 275px;
  width: 100%;
  max-width: 525px;
  border-top: 10px solid #9c7529;
}

@media screen and (max-width: 767px) {
  .gmap-tooltip {
    width: auto;
  }
}

.gmap-content {
  position: relative;
  padding: 2em;
  max-height: 330px;
  box-sizing: border-box;
  overflow-y: auto;
  max-width: 60%;
  color: #000;
}

@media screen and (max-width: 767px) {
  .gmap-content {
    padding: 2em 1.5em 1.5em 1.5em;
    max-width: 100%;
  }
}

.gmap-content address p:not(#modal-container p) {
  margin-bottom: .25em;
}

.gmap-content h3 {
  font-family: "CaliforniaPalmsSerifRegular", serif;
  font-size: 1.25rem;
  text-transform: capitalize !important;
  margin-bottom: .75em;
  line-height: 1.2em;
}

@media screen and (max-width: 767px) {
  .gmap-content h3 {
    font-size: 1.15rem;
  }
}

.gmap-content a {
  color: #000;
  display: block;
  padding: 0 0 .5em;
}

.gmap-content a:focus-visible {
  outline: none;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}

.gmap-content p, .gmap-content a {
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .gmap-content p, .gmap-content a {
    font-size: .6rem;
  }
}

.gmap-content .distance, .gmap-content .drive-time, .gmap-content .gmap-distance, .gmap-content .gmap-duration {
  padding: 0;
  margin: 0;
}

.gmap-content .gmap-distance, .gmap-content .gmap-duration {
  font-weight: bold;
}

.gmap-content .gmap-directions {
  color: #9c7529;
}

.gmap-addr {
  line-height: 1.4em;
}

.gmap-img {
  overflow: hidden;
  max-width: 40%;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .gmap-img {
    display: none;
  }
}

.gmap-tel {
  margin-bottom: .5em;
  text-decoration: none;
}

.gmap-desc {
  max-height: 7em;
  overflow: auto;
}

.gmap-desc p:last-of-type {
  margin-bottom: 0;
}

.map-categories {
  position: absolute;
  top: -5px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  background-color: #fff;
  padding: 2em 3em;
  filter: drop-shadow(0 0 0.15em rgba(0, 0, 0, 0.25));
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-content: center;
  gap: 4vw;
  transition: transform 350ms ease;
}

@media screen and (max-width: 1023px) {
  .map-categories {
    flex-wrap: wrap;
  }
}

@media screen and (max-width: 767px) {
  .map-categories {
    box-sizing: border-box;
    width: 90%;
    padding: 1em 1.5em;
  }
}

.map-categories.hidden {
  transform: translateX(-50%) translateY(calc(-100% + 5px));
}

.map-categories .categories-group {
  display: flex;
  align-items: center;
  gap: .5em;
}

.map-categories .categories-group.active .decorative-img {
  filter: grayscale(0);
}

.map-categories .decorative-img {
  max-width: 50px;
}

.map-categories .decorative-img:not(.active) {
  filter: grayscale(1);
}

.map-categories .decorative-img.otter {
  max-height: 40px;
}

.map-categories .decorative-img.hummingbird {
  transform: scaleX(-1);
  max-width: 60px;
}

.map-categories .decorative-img.grapes {
  max-width: 40px;
}

.map-categories .js-category-btn {
  color: rgba(0, 0, 0, 0.25);
  font-size: 1rem;
  margin: 0;
  white-space: nowrap;
  transition: color .35s;
}

@media screen and (max-width: 767px) {
  .map-categories .js-category-btn {
    max-width: 100px;
    white-space: normal;
  }
}

.map-categories .js-category-btn.active {
  color: #9c7529;
}

.map-categories .hide-btn {
  position: absolute;
  bottom: -32px;
  right: 2em;
  background: #9c7529;
  color: #fff;
  border-bottom-left-radius: 2em;
  border-bottom-right-radius: 2em;
  filter: drop-shadow(0 0 0.15em rgba(0, 0, 0, 0.25));
  padding: 0.5em;
}

.map-categories .hide-btn .icon-up-open-big {
  display: block;
  transition: transform 350ms ease;
}

.map-categories .hide-btn .icon-up-open-big.hidden {
  transform: rotate(-180deg);
}
