html { scroll-behavior: smooth; }

/* Base Typography */
p, li {
    font-family: 'Inter', Arial, Sans-serif;
    font-weight: 400;
}
h1, h2, h3, h4 {
    font-family: 'Inter', Arial, Sans-serif;
    font-weight: 900;
    text-transform: uppercase;
}
h1 {
	color: #333;
}
h1.page-title {
	padding-top: 20px;
	color: #333;
}
a, p a {
   color: #007A7A;
}
p a:hover {
   color: #00B8B8;
}
p strong {
	font-weight: 600;
}
/* Buttons */
a.button,
input.button {
	color: #333;
	background-color: #fff;
	border: 1px solid #333;
	border-radius: 2px;
	font-weight: 600;
}
a.button:hover,
a.button:focus,
a.button:active,
input.button:hover,
input.button:focus,
input.button:active {
	color: #fff;
	background-color: #333;
	border: 1px solid #333;
	border-radius: 2px;
}

/* Utility classes */
.no-padding-top { padding-top: 0!important; }
.no-padding-bottom { padding-bottom: 0!important; }
.no-margin-top { margin-top: 0!important; }
.no-margin-bottom { margin-bottom: 0!important; }

#map-wrapper {
	position: relative;		
	border-top: 1px solid #ccc;	
	border-bottom: 1px solid #ccc;	
}
#map {
	position: relative;
	transition: all 0.3s ease;
}
.template-location #map {
	margin-bottom: 20px;
}
#marker {
	background-image: url("../images/map-marker-alt-solid.e72af68ccd8c.png");
	background-size: cover;
	background-color: rgba(0,0,0,0);
	width: 14px;
	height: 18px;
	cursor: pointer;
}
.popup-content-wrapper {
    padding: 10px;	
}
.popup-content-wrapper h3 {
	font-size: 20px;
    line-height: 22px;
}
.popup-content-wrapper p {
	margin-bottom: 8px;
}
.popup-content-wrapper p:last-child {
	margin-bottom: 0;
}
.popup-content-wrapper a.button {
	margin-bottom: 0;
	padding: 8px 12px 9px;
}
button.mapboxgl-popup-close-button {
    font-size: 30px;
    padding-right: 5px;
}
button.mapboxgl-popup-close-button:focus {
	outline: -webkit-focus-ring-color auto 0;
}
.mapboxgl-popup {
	max-width: 200px;
	z-index:10;
}
.mapboxgl-popup-content {
	padding: 0 !important;
}
.sidebar {
    position: absolute; 
    background-color: #fff;
    transition: 0.5s ease all;
    z-index: 100;
}
.sidebar-inner {
	position: relative;
}
.sidebar-content {
	padding: 20px;
}
.sidebar-content h2 {
	font-size: 1.5rem;
}
.sidebar-content a.button {
	display: nonex;
}
.sidebar-content:active a.button {
	display: inline-block;
}
.sidebar .close {
	font-size: 3em;
	position: absolute;
	right: 0;
	padding: 10px 20px;
	display: none;
}
.sidebar.active .close {
	display: block;
}
.sidebar p a.button {
	display: none;
}
.sidebar.active p a.button {
	display: inline-block;
}
.close a {
	text-decoration: none;
	color: #666;
}
.squeeze {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1em;
}
@media screen and (max-width: 1024px){
    .squeeze-mobile-only {
        padding: 0;
    }
}
.content {
	padding-top: 40px;
}
.explore {
    display: inline-block;
    position: absolute;
    bottom: -2px;
    width: 170px;
    background-color: #fff;
    left: 50%;
    margin-left: -85px;
}
.explore p {
    text-align: center;
    padding-bottom: 0;
    margin-bottom: 0;
    padding: 5px 0px 0px;
}
.explore p a {
    color: #333;
    font-size: 1.2rem;
    line-height: 2rem;
    text-transform: uppercase;
}
.explore .fa-chevron-up {
	display: none;
}
.explore.active .fa-chevron-up {
	display: inline-block;
}
.explore.active .fa-chevron-down {
	display: none;
}
@keyframes mymove {
  0% {top: -3px;}
  80% {top: 4px;}
  100% {top: -3px;}
}
.explore p a i.fa-chevron-down  {
	position: relative;
}
.explore p a:hover i.fa-chevron-down {
	animation: mymove 0.6s infinite;
}

/* LOCATION PAGE */
.location-content {
	padding-right: 2em;
}
.location-content p {
	font-size: 1.5rem;
	color: #333;
}
.location-content h1 {
    line-height: 1em;
    margin-bottom: 5px;
}
.location-content p.publication-date {
    font-size: 0.9em;
    font-weight: 700;
    color: #666;
    text-transform: uppercase;
}
.location-content p.publication-date span {
	font-weight: 400;
	padding-left: 5px;
}
.location-content .richtext li,
.location-content .block-paragraph li {
    font-size: 1.5rem;
    margin-left: 20px;
    padding-bottom: 10px;
}
.location-sidebar {
	background-color: #e4e4e4;
	padding-bottom: 10px;
}
.location-sidebar p {
	margin: 0px 20px 10px 20px;
}
.location-sidebar p a {
	color: #007A7A;
	text-decoration: underline;
	font-weight: 600;
}
@media screen and (max-width: 639px) {
	.location-content {
		padding-right: 0;
	}
	.location-content p {
		font-size: 1.0rem;
	}
    .location-content .richtext li,
    .location-content .block-paragraph li {
        font-size: 1.0rem;
    }  
    .location-content p.publication-date {
    	font-size: 0.7em;
    }
}

/* Breadcrumb */
.breadcrumb ul {
    margin-left: 0;
    margin-bottom: 30px;
}
.breadcrumb ul li {
    display: inline;
}
.breadcrumb ul li:after {
    content: " "; 
  	white-space: pre;
    width: 18px;
    display: inline-block;
    padding: 0 3px 0 7px;
    background-image: url("../images/chevron-right-solid.0dc0ea4a6b39.png");
    background-size: 8px;
    background-repeat: no-repeat;
    background-position: 7px 6px;
}
.breadcrumb ul li:last-child:after {
    content: "";    
}
.breadcrumb ul li a { 
	color: #333;
}
.breadcrumb ul li a:hover {
	text-decoration: underline;
}
@media screen and (max-width:639px){
	.breadcrumb ul li a {
		font-size: 0.8em;
	}
	.breadcrumb ul {
		margin-bottom: 20px;
	}
	.breadcrumb ul li:after {
		background-position: 7px 7px;
	}
}

/* Feature items */
.feature-item h3 {
    font-size: 1.53em;
    font-weight: bold;
    line-height: 1.2em
}
.feature-item h3 a {
	color: #333;
}
.feature-item p.category {
    margin-bottom: 5px;
    text-transform: uppercase;
    font-size: 0.8rem;
    color: #007A7A;
    font-weight: bold;
}
.feature-item p.category a {
    color: #007A7A;
}
.feature-item p.category a:hover {
    color: #025a5a;
}
.feature-item .feature-item-wrapper {
	padding-right: 30px;
}
.feature-item img {
	width: 100%;
	padding-bottom: 20px;
	transition: 0.3s ease all;
}
.feature-item:hover img {
	filter: contrast(130%);
}
.feature-item p.publication-date,
.locations-list p.publication-date {
	font-size: 0.8em;
    color: #666;
    text-transform: uppercase;
    margin-bottom: 5px;
}
.feature-item .fas.fa-map-marker-alt {
	color: #007A7A;
    margin-right: 10px;
}
@media screen and (max-width: 639px){
	.feature-item .feature-item-wrapper {
		padding-right: 0px;
	}
}

/* Heading link line */
.heading-link-line h2 {
	color: #333;
}
.heading-link-line p {
	text-align: right;
	margin-right: 30px;
	line-height: 60px;
}
.heading-link-line p a {
	color: #333;
	font-weight: 600;
	text-decoration: underline;
}
@media screen and (max-width: 639px){
	.heading-link-line p {
		margin-right: 0px;
		line-height: 20px;
	}
	.heading-link-line h2 {
		font-size: 1.5rem;
	}
}

/* HERO IMAGE */
.hero-image {
	margin-bottom: 40px;
    position: relative;
}
.hero-image img {	
	width: 100%;
}
.hero-image .image-info {
    position: absolute;
    bottom: 0;
    right:0;
}
.hero-image .image-info .image-content-wrapper {
    background-color: rgba(0,0,0,0.8);
    color: #fff;
    height: 0;
    padding: 0;
    transition: all 0.3s ease;
    opacity: 0;
}
.hero-image .image-info.active .image-content-wrapper {
    padding: 10px 15px;	
    height: auto;
    opacity: 1;
}
.hero-image .image-info .image-content-wrapper p:last-child {
	margin-bottom: 0;
}
.hero-image .image-info .image-toggle {
	text-align: right;
	padding: 5px 10px;
	color: #fff;
	font-size: 2em;
}
.hero-image .image-toggle:hover {
	cursor:pointer;
} 
.hero-image .image-info .image-toggle .fa-times-circle {
	display: none;
}
.hero-image .image-info.active .image-toggle .fa-times-circle {
	display: inline-block;
}
.hero-image .image-info.active .image-toggle .fa-info-circle {
	display: none;
}
.hero-image .image-info p.image-caption {
	margin-bottom: 0;
}
.hero-image .image-info p.image-credit,
.hero-image .image-info .image-credit-wrapper p {
    margin-bottom: 5px;
    font-size: 0.8em;
    color: #ccc;
}
.hero-image .image-info .image-credit-wrapper p a {
    color: #ccc;
    text-decoration:  underline;
    -webkit-text-decoration-skip: ink;
    text-decoration-skip: ink;
}
.hero-image .image-info .image-credit-wrapper p a:hover {
    color: #fff;
}
@media screen and (min-width: 640px){
	.hero-image.hide-desktop {
		display: none;
	}
	.no-header-image {
		margin-top: 40px;
	}
}
@media screen and (max-width: 639px){
	.hero-image {
		margin-bottom: 20px;
	}
	.sidebar-header-image.hide-mobile {
		display: none;
	}
}
@media screen and (max-width: 440px){
	.hero-image .image-info p.image-caption,
	.hero-image .image-info p.image-credit,
	.hero-image .image-info .image-credit-wrapper p {
		font-size: 0.7em;
	}
}

/* SOURCES */
.location-source-block {
    padding: 20px 0;
    margin-top: 40px;
    margin-bottom: 40px;
}
.location-source-block h2 {
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: bold;
    color: #333;
}
.location-source-block p {
	margin-bottom: 5px;
    font-size: 1.0rem;
}

.location-source-block p a {
	font-weight: 600;
}

@media screen and (max-width: 639px){
	.location-source-block {
    	margin-top: 0px;
    	margin-bottom: 0px;
	}
}

/* Location list (explore page) */
.location-list-item {
	padding-bottom: 40px;
}
.location-list-item .location-list-content {
	padding: 0 40px;
}
.location-list-item .location-list-content p {
	margin-bottom: 10px;
}
.location-list-item .location-list-content h2 a {
	color: #333;
}
.location-list-item .location-list-content h2 a:hover {
	color: #000;
}
.location-list-item .location-list-content .fa-map-marker-alt {
	color: #007A7A;
	margin-right: 10px;
}
.location-list-item .tags {
	margin-bottom: 25px;
}
@media screen and (max-width: 639px) {
	.location-list-item .location-list-content {
		padding: 0;
	}
	.location-list-item .location-list-image {
		padding-bottom: 20px;
	}
}

/* Pagination */
.pagination ul {
	text-align: center;
}
.pagination ul li {
    background-color: #eee;
    margin: 0;
}
.pagination ul li.current {
    background-color: #ccc;
    padding: 0
}
.pagination ul li.current a {
	font-weight: bold;
}

/* Nearby locations */
.nearby-heading {
	font-size: 1.6rem;
	color: #333;
	margin-bottom: 20px;
}
.nearby-location {
    background-color: #f4f4f4;
    padding: 0;
    transition: 0.3s ease all;
    margin-bottom: 20px;
}
.nearby-location div {
	padding: 0.9rem 1rem;
}
.nearby-location img {
	width: 100%;
}
.nearby-location h3 {
    line-height: 1.6rem;    
}
.nearby-location a h3 {
    color: #666;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 1.5rem;
    transition: 0.3s ease all;
}
.nearby-location a p {
    color: #333;
    transition: 0.3s ease all;
    margin-bottom: 0;
}
.nearby-location a p:last-child {
	font-size: 0.9em;
    font-weight: bold;
    margin-top: 5px;
    color: #666;
}
.nearby-location:hover {
    background-color: #333;
}
.nearby-location:hover a h3 {
    color: #eee;
}
.nearby-location:hover a p {
    color: #eee;
}
@media screen and (max-width: 639px) {
	.nearby-heading {
		text-align:center;
	}
}

/* HEADER */
header {
	box-shadow: #f4f4f4 1px 4px 8px;
}
header.squeeze {
	height: 100px;
	padding-top: 15px;
}
header,
header .top-bar, 
header .top-bar ul {
	background-color: #ffffff;
}
header .top-bar {
	padding: 0;
}
header h1 {
	margin-bottom: 0;
}
header h1 a {
	color: #333;
	padding-left: 0 !important;
}
header .menu .menu-text {
	padding-left: 0;
}
header h1 a:focus,
header h1 a:active,
header h1 a:hover { 
	color: #333;
}
header h1 span {
	font-weight: 400;
}
header .title-bar {
	background-color: #fff;
}
header .title-bar .title-bar-left {
	color: #333;
}
header .title-bar .title-bar-right {
	color: #333;
}
header .menu li:first-child button {
	margin-left: 10px;
}
header .menu li:last-child button {
	padding-top: 5px;
	color:  #333;
}
header .menu li:last-child button:hover i {
	color: #ccc;
	cursor: pointer;
} 
header .menu a {
	padding-left:  0rem !important;
}
header button.menu-icon:after {
	background: #000;
	-webkit-box-shadow: 0 7px 0 #000, 0 14px 0 #000;
    box-shadow: 0 7px 0 #000, 0 14px 0 #000;
}
header .top-bar-right ul li a {
	font-size: 1.4em;
	color: #333;
	text-transform: uppercase;
}
header .top-bar-right ul li a:hover {
	cursor: pointer;
	color: #ccc;
} 
header .top-bar-right ul li a:hover::after {
	cursor: pointer;
	color: #ccc;
}

.menu-toggle svg {
    position: relative;
    top: 6px;
    margin-left:  10px;
}
.menu-toggle:hover {
    fill: #ccc;
}
@media screen and (max-width: 839px) {
	header h1 {
		font-size: 2em;
	}
}
@media screen and (max-width: 700px) {
	header h1 {
		font-size: 1.5em;
	}
}
@media screen and (max-width: 639px) {
	header .top-bar-right {
		text-align: right;
	}
	header .title-bar-left h1 a,
	header .title-bar-right a {
		color: #333;
	}
	header .title-bar {
		padding-left:0;
		padding-right:0;
	}
	header, header .title-bar {
		background-color: #f1f1f1;
	}
	header {
		margin-bottom: 0px;
	}
	header .menu button {
		display: none;
	}
	header h1 {
		font-size: 1em;
	}
}

/* FOOTER */
footer {
    background-color: #333;
    color: #fff;
    padding: 40px 0 0 0;
    margin-top: 60px;
}
footer h2 {
    font-size: 1.5em;
    margin-bottom: 0;
}
footer p {
	max-width: 90%;
}
footer .fab,
footer .far,
footer .fas.fa-rss {
    color :#00bcbd;
    font-size: 2em;
    transition: color 0.3s ease;
    margin-right: 10px;
}
footer .far {
	margin-right: 15px;
}
footer .fab:hover,
footer .far:hover {
    color :#fff;
}
ul.footer-menu {
    list-style-type: none;
    margin: 0;
}
ul.footer-menu li {
    margin-bottom: 4px;
}
ul.footer-menu li a {
    color: #ddd;
}
ul.footer-menu li a:hover {
    color: #fff;
}
.copyright {
	background-color: #222;
    padding: 20px 0;
    margin-top: 40px;
}
.copyright p {
	font-size: 0.8em;
	color: #e5e5e5;
	margin-bottom: 0;
}
@media screen and (min-width: 1000px) {
	#map {
		height: 550px;
		left: 0;
		right: 0;				
	}
	#map.offset {
		left: 300px;
	}
	.sidebar {				
	    top: 0;
	    left: 0;
	    bottom: 0;
	    width: 0;
	}
	.sidebar.active {
	    width: 300px;
	}			
}

@media screen and (max-width: 999px) {			
	#map {
		/* top: 0;
		bottom: 0; */
		height: 400px;
		left: 0;
		right: 0;				
	}
	#map.offset {
		top: -100px;
		bottom: 100px;
	}
	.sidebar {	
	    left: 0;
	    right: 0;
	    bottom: 0;
	    height: 0;
	}
	.sidebar.active {
	    height: 300px;
	}	
}


/* Locations index page */
ul.category {
    listy-style-type: none;
    margin: 0;
    margin-bottom: 20px;
}
ul.category li {
    display: inline-block; 
    margin-right: 10px;
    margin-bottom: 10px;
}

ul.category li a {
    display: block;
    padding: 6px 12px;
    background-color: #007A7A;
    color: #fff;
    transition: 0.3s ease all;
}
ul.category li a:hover {
    background-color: #333;
}
.locations-list h2 {
	font-size: 2em;
	line-height: 1.2em;
}
.locations-list .tags ul li a {
	font-size: 0.8em;
}
.not-found-message {
    display: none;
}
.not-found-message.true {
    display: block;    
}
@media screen and (max-width) {
	ul.category li a {
    	padding: 5px 7px;
    	font-size: 0.8rem;
	}
}

/* Region listing page */
.region-list-content {
	padding-right:  20px;
}
.region-list-content img {
	margin-bottom:  20px;
}
.region-list-content h2 {
	font-size:  1.6em;
}
@media screen and (max-width: 639px) {
	.region-list-content {
		padding-right:  0;
	}
}

/* Location page tags */
.tags {
	margin-top: 20px;
}
.tags ul {
    list-style-type: none;
    margin: 0;
}
.tags ul li {
    display: inline-block;
    padding-right: 10px;
    padding-bottom: 7px;
}
.tags ul li a {
    display: block;
    background-color: #007A7A;
    padding: 2px 7px;
    color: #ffffff;
    transition: all 0.3s ease;
}
.tags ul li a:hover {
    background-color: #666;
    color: #fff;
}
.tags h3 {
	font-weight: bold;
	font-size: 1em;
	display: inline-block;
	float: left;
    padding: 2px 7px 2px 0;
    color: #333;
}

/* Location page social share icons */
ul.social-share {
    list-style-type: none;
    margin: 20px 0 0 0;
    text-align: center;
    margin-bottom: 20px;
}
ul.social-share li {
    display: inline-block;
    margin-right: 20px;
    font-size: 40px;
}
ul.social-share li a {
    color: #007A7A !important;
    transition: 0.3s ease all;
}
ul.social-share li a:hover {
    color: #333 !important;
}
ul.social-share li.share-prompt {
    font-size: 1.4rem;
    position: relative;
    top: -7px;
    color: #666;
}

/* Search results page */
i.fas.fa-search {
	color: #333;
}
body.template-searchresults form input[type="text"] {
    width: 80%;
    display: inline-block;
}
body.template-searchresults form input:last-child {
    width: 18%;
    display: inline-block;
    position: relative;
    top: 7px;
    padding: 12px auto 11px auto;
}
body.template-searchresults form {
	margin-bottom: 20px;
}
body.template-searchresults .grid-x h1 {
	 margin-top: 40px;
}
.search-results-list {
	list-style-type: none;
	margin-left: 0;
}
.search-results-list li {
	background-color: #f4f4f4;
	margin-bottom: 20px;
	clear :both;
}
.search-results-list a li h4,
.search-results-list a li p {
	color: #333;
} 
.search-results-list a:hover li {
	background-color: #e4e4e4;
}
.search-results-list a:hover li img {
	filter: contrast(120%);
}
.search-results-list li p:last-child {
	margin-bottom: 0;
}
ul.search-results-list li {
	clear: both;
	margin-bottom: 20px;
	background-color: #f4f4f4;
}
ul.search-results-list li:after {
  content: "";
  display: table;
  clear: both;
}
ul.search-results-list li .list-image {
	width: 30%;
	float: left;
}
ul.search-results-list li .list-image img {
	width: 100%;
}
ul.search-results-list li .list-content {
	width: 70%;
	float: left;
	padding: 10px 15px;
}
.search-navigation a {
    color: #333;
    border: 1px solid #333;
    padding: 10px 20px;
    transition: all 0.3s ease;
}
.search-navigation a:hover {
    color: #fff;
    background-color: #333;
}
.search-navigation a.next {
    float: right;
}
.search-navigation a.prev {
    float: left;
}
@media screen and (max-width: 850px) {
	ul.search-results-list li .list-image {
		width: 30%;
	}
	ul.search-results-list li .list-content {
		width: 70%;
	}
	ul.search-results-list li .list-content h4 {
		font-size: 1em;
	}
	ul.search-results-list li .list-content p {
		font-size: 0.8em;
	}
}
@media screen and (max-width: 600px) {
	body.template-searchresults form input[type="text"] {
    	width: 100%;
    	margin-bottom: 0;
	}
	body.template-searchresults form input:last-child {
    	width: 100%;
	}
}
@media screen and (max-width: 480px) {
	ul.search-results-list li .list-image {
		display: none;
	}
	ul.search-results-list li .list-content {
		width: 100%;
	}
}


/* Homepage */
p.homepage-intro {
	font-family: 'Beth Ellen', serif;
	text-align: center;
	font-size: 2.4em;
	color:  #333;
}
.chunky-button {
    text-align: center !important;
    display:  block;
    width: 100%;
}
.chunky-button a {
    color: #333;
    border: 2px #333 solid;
    padding: 20px;
    display:  block;
    margin:  0 auto;
    max-width: 600px;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    transition: 0.3s ease all;
}
.chunky-button a:hover {
	background-color: #333;
	color: #fff;
}
@media screen and (max-width: 767px){
	p.homepage-intro {
		font-size: 1.6em;
	}
}
@media screen and (max-width: 420px){
	p.homepage-intro {
		font-size: 1.3em;
	}
    .chunky-button a {
        font-size: 16px
    }
}

.category-block .cell a {
    background-color: #333;
    display: block;
    text-align: center;
    padding: 40px 0;
    color: #fff;
    font-family: 'Inter', Arial, Sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    font-size: 1.4em;
    transition: 0.3s ease background-color;
}
.category-block .cell a:hover {
    background-color: #111;
}
.category-block .cell a span {
    display: block;
    font-weight: 400;
    font-size: 0.6em;
}

@media screen and (max-width: 639px) {
   .category-block .cell:first-child {
	margin-bottom: 40px;
   }
}

/* Standard page template */
.intro p {
    font-size: 1.4em; 
}
.template-standard-page h1.page-title,
.template-contactform h1.page-title  {
	margin-top: 40px;
}

/* FAQs Block */
.block-faq h2 {
	font-size:  2rem;
}
.accordion .accordion-item {
    padding: 10px 0;
}
.accordion .accordion-item div {
	display:  none;
}
.accordion .accordion-item.active div {
	display:  block;
}
.accordion .accordion-item .fa-angle-down {
	display: none;
	float: right;
	color: #007a7a;
}
.accordion .accordion-item .fa-angle-right {
	display: inline-block;
	float: right;
	color: #007a7a;
}
.accordion .accordion-item.active .fa-angle-right {
	display: none;
}
.accordion .accordion-item.active .fa-angle-down {
	display: inline-block;
}
.accordion .accordion-item h3 {
    text-transform: initial;
    font-weight: 600;
    font-size: 1.6em;
}
.accordion .accordion-item h3 a {
    color: #007a7a;
}
.accordion .accordion-item {
    border-bottom: 2px solid #eee;
    margin-bottom: 8px;
}
.accordion .accordion-item:last-child {
    border-bottom: 0;
}
.accordion .accordion-item p {
	margin-bottom: 6px;
}
.accordion .accordion-item p:last-child {
	margin-bottom: 20px;
}

/* FORMS */
form.contact-form {
    max-width: 600px;
    margin: 40px auto 0;
}
form.contact-form ul {
    list-style-type: none;
    margin: 0;
}
form.contact-form ul li {
    margin-bottom: 20px;
}
form.contact-form ul li span.helptext {
    font-size: 0.8em;
    color: #666;
}
form.contact-form ul label {
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 600;
    font-family: 'Inter', Arial, Sans-serif;
}
form.contact-form ul input,
form.contact-form ul textarea {
    margin-bottom: 3px;
}
form.contact-form ul input[type="submit"] {
	padding: 12px 40px 10px;
	border: 1px solid #000;
	background-color: #fff;
	transition: all 0.3s ease;
	font-weight: bold;
	margin: 0 auto;
}
form.contact-form ul input[type="submit"]:hover {
	cursor: pointer;
	background-color: #333;
	color: #fff;
}
.pre-form {
	text-align: center;
	max-width: 600px;
	margin: 0 auto;
}


/* Skip to content link */
.skip-to-content-link {
  background: #000;
  height: 30px;
  left: 50%;
  padding: 8px 20px 30px;
  position: absolute;
  transform: translateY(-100%);
  transition: transform 0.3s;
  color: #fff;
}
.skip-to-content-link:focus {
  transform: translateY(0%);
  z-index:100;
  color: #fff;
}


/* Streamfield blocks */
div[class^='block-'] {
    margin-bottom: 40px;
}
.block-imagecaption img {
	width: 100%;
	margin-bottom:  10px;
}
.block-imagecaption p {
	font-size: 1em;
	color: #007a7a;
}
@media screen and (max-width: 767px){
	.block-imagecaption p {
		font-size: 0.8em;
	}
}


div.block-heading {
    margin-bottom: 20px;
}
.block-heading h2 {
	font-size: 2rem;
	margin-bottom: 0;
}
.richtext + .block-heading {
    margin-top: 40px;
}

@media screen and (max-width: 639px){
	.block-heading h2 {
		font-size: 1.6rem;
	}
}

/* Quote block */
blockquote.quote {
    margin-top: 50px;
    width: 80%;
    border-left: 0;
    color: #333;
}
body.dark-mode blockquote.quote {
    color: #f4f4f4;
}
blockquote.quote p.quote_text,
blockquote.quote div.quote_cite p {
    margin-left: 40px;
    color: #333;
}
body.dark-mode blockquote.quote p.quote_text,
body.dark-mode blockquote.quote div.quote_cite p {
    color: #ddd;
}
blockquote.quote p.quote_text {
	font-family: 'Roboto Slab', serif;
    font-size: 40px !important;
    line-height: 46px !important;
    position: relative;
}
blockquote.quote div.quote_cite p {
    font-family: 'Arial', arial,  sans-serif !important;
    font-size: 16px !important;
    line-height: 20px !important;
}
blockquote.quote div.quote_cite p strong {
    font-weight: 900;
}
blockquote.quote p.quote_text:before {
    content: "“";
    position: absolute;
    top: 7px;
    left: -30px;
    font-size: 54px;
}
@media screen and (max-width: 639px) {
	blockquote.quote p.quote_text {
	    font-size: 30px !important;
	    line-height: 35px !important;
	}
    blockquote.quote {
    	padding: 0;
        margin-top: 50px;
        width: 100%;
    }
}
@media screen and (max-width: 400px) {
    blockquote.quote p.quote_text {
        font-size: 24px !important;
        line-height: 30px !important;
        position: relative;
    }
}


/* Sidenote block */
.sidenote {
    border: 2px solid #333;
    padding: 20px 20px 0 20px;
    position: relative;
}
.sidenote_heading {
    position: absolute;
    top: -17px;
    left: 10px;
    background-color: #fff;
    padding: 0 10px;
    font-size: 24px;
}
.sidenote .sidenote_content p {
	font-size: 1.3rem;
}
.sidenote .sidenote_content li {
	font-size: 1.2rem;
}
body.dark-mode .sidenote {
    border: 2px solid #ccc;	
}
body.dark-mode .sidenote_heading {
    background-color: #333;	
}
@media screen and (max-width: 639px) {
	.sidenote_heading {
		font-size: 16px;
		top: -12px;
		left: 9px;
	}
	.sidenote .sidenote_content p {
		font-size: 1.0rem;
	}
	.sidenote .sidenote_content li {
		font-size: 1.0rem;
	}
}


/* DROPDOWN MENU */
.menu-dropdown {
  font-family: arial, sans-serif;
  display: none;
  padding-bottom: 20px;
}
.menu-dropdown.active {
  display: block;
}
.menu-dropdown ul {
  margin: 0;
  padding: 0;
}
.menu-dropdown ul li {
  list-style-type: none;
  flex-grow: 1;
}
.menu-dropdown ul li h2 {
  color: #333;
}
.menu-dropdown ul li a {
  color: #333;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.2em;
}
.menu-dropdown ul li a:hover {
 text-decoration: underline; 
}
.menu-dropdown ul.sub li {
  margin-bottom: 10px;
} 
.menu-dropdown ul.main {
  display: flex;
  gap: 20px;
  align: stretch;
}

.menu-dropdown h2 {
  margin: 0;
  font-size: 1.3em;
  position: relative;
  top: -15px;
  background-color: #fff;
  display: inline-block;
  padding: 0 5px;
}

.menu-dropdown .sub {
  border-top: 2px solid #000;
  padding: 0 20px 10px 20px;
  margin-top: 20px;
}
.menu-dropdown li.section:last-child {
  background-color: #f4f4f4;
  border-top: 0;
}
.menu-dropdown li.section:last-child ul.sub {
  padding-top: 0px;
}
.sub.three {
  border-top: 0;
}
.menu-dropdown p {
	margin-bottom:  0;
    margin-top: 20px;
}
form.menu-search {
  display: flex;
  margin-bottom: 15px;
}
.menu-search input {
  padding: 10px 15px;
  margin-bottom: 0;
}
.menu-search button {
  padding: 10px 15px 9px 15px;
  background-color: #007A7A;
  color: #fff;
  border: 2px solid #007A7A;
}
.menu-search button:hover {
  background-color: #025656;
  border: 2px solid #025656;
  cursor: pointer;
}
form.menu-search i.fas.fa-search {
  color: #fff;
  font-size: 1em;
  margin-right: 0;
}
.menu-dropdown .fab,
.menu-dropdown .far,
.menu-dropdown .fas {
    color:  #333;
    font-size: 2em;
    transition: color 0.3s ease;
    margin-right: 10px;
}
.menu-dropdown .far {
	margin-right: 15px;
}
@media screen and (max-width: 639px) {  
  .menu-dropdown h2 {
  	background-color: #f1f1f1;
  }
}
@media screen and (max-width: 767px) {  
  .menu-dropdown ul.main {
    display: initial;
  }
  .menu-dropdown div {
    text-align: center;
  }
  .menu-dropdown li.section:last-child {
  	background-color: #f1f1f1;
  }
  .menu-dropdown li.section:last-child .sub {
  	margin-top: 0;
  }
  ul.sub.three {
    border-top: 2px solid #000;
    padding-top: 30px !important;
  }
  form.menu-search {
    margin-top: 20px;
    padding-bottom: 20px !important;
  }
}

/* Homepage ghost tours feature */

a.homepage_ghost-tours-button {
    display: block;
    color: #fff;
    background-color: #333;
    display: flex;
}
a.homepage_ghost-tours-button:hover {
    background-color: #000;
}
a.homepage_ghost-tours-button button {
    background-color: #fff;
    padding: 10px 20px;
    font-weight: bold;
    color: #333;
}
a.homepage_ghost-tours-button button:hover {
	cursor:  pointer;
}
.homepage_ghost-tours-image {
    background-image:url('https://wagtail-mapbox.s3.amazonaws.com/images/109600789_144ab00950_k-skyline2-png.original.png');
    background-size: cover;
    background-position:  center;
    width:  33%;
    min-height: 200px;
    position:  relative;
}
.homepage_ghost-tours-tag {
	position:  absolute;
	top: 10px;
	left:  15px;
}
.homepage_ghost-tours-tag i {
	margin-right:  5px;
}
.homepage_ghost-tours-content {
	padding:  20px;
}
.homepage_ghost-tours-content h2 {
	font-size: 1.6em;
}
@media screen and (max-width: 560px){
    a.homepage_ghost-tours-button {
        display: block;
    }
	.homepage_ghost-tours-image {
		width: 100%;
	}
}

/* POPUP */
.popup.popup_bottom {
    display: none;
    position: fixed;
    bottom: 0;
    background-color: #111;
    width: 100%;
}

@media screen and (max-width: 639px) {
	.popup.popup_bottom.active {
	    display: flex;
	    z-index: 19;
	}
}

.popup_bottom-image-wrapper {
    min-width: 30%;
    min-height: 60px;
    background-size: cover;
    background-position: center;
}

.popup_bottom-content {
    padding: 20px;
}

.popup_bottom-content h2 {
    color: #fff;
    padding-right: 30px;
}

.popup_bottom-content h2 a {
	color: #fff;
}

.popup.popup_bottom a.button {
    color: #111;
    margin-bottom: 0;
}

.popup.popup_bottom a.button:hover {
    color: #fff;
}

a.popup_bottom-close {
	position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    font-size: 2em;
    background-color: #111;
    padding: 5px;
    line-height: 0.8em;
    color: #fff;
}

@media screen and (min-width: 640px) {
	.popup.popup_bottom {
		display:  none;
	}
}

@media screen and (max-width: 440px) {
	.popup.popup_bottom a.button {
		padding:  10px 15px;
	}
}

/***********************/
/* Ghost tours feature */
/***********************/
.location-page_ghost-tours-image {
    background-image: url('https://wagtail-mapbox.s3.amazonaws.com/images/109600789_144ab00950_k-skyline2-png.original.png');
    background-size: cover;
    background-position: center;
    min-height: 200px;
}
.location-page_ghost-tours-tag {
	color: #fff;
	padding: 5px 7px;
}
.location-page_ghost-tours-feature {
	background-color: #111;
	margin-bottom: 20px;
}
.location-page_ghost-tours-content {
    padding: 20px;
}
.location-page_ghost-tours-content h2,
.location-page_ghost-tours-content p {
	color: #fff;
}
.location-page_ghost-tours-content h2 {
	font-size: 1.5em;
}
.location-page_ghost-tours-content button {
	color: #111;
	background-color: #fff;
    padding: 12px 20px;
    font-weight: bold;
}
.location-page_ghost-tours-content button:hover {
	cursor: pointer;
}


/* Most popular posts sidebar */
.most-popular-posts_heading {
	font-size: 1.5em;
}
.most-popular-posts_list {
    list-style-type: none;
    margin-left: 0;
}
.most-popular-posts_item {
	margin-bottom: 10px;
}
.most-popular-posts_item a {
    display: flex;
}
.most-popular-posts_item img {
    width: 60px;
    height: 40px;
    margin-right: 10px;
}
.most-popular-posts_item h3 {
	font-size: 1em;
    line-height: 1.2em;
}


/* DARK MODE TOGGLE */
body {
  margin: 0;
  font-family: 'Roboto', Arial, sans-serif;
}
.darkmode_wrapper  {
  display: flex;
}
.darkmode_toggle-wrapper {
  position: relative;
  width: 56px;
  height: 32px;
  border: 3px solid #666;
  display: block;
  padding: 3px 3px 3px 3px;
  border-radius: 40px;
  background-color: #fff;
}
.darkmode_toggle {
  position: absolute;
  width: 20px;
  height: 20px;
  display: inline-block;
  opacity: 0;
}
.darkmode_darkmode-box { 
  width: 20px;
  height: 20px;
  position: absolute;
  right: 27px;
  transition: all 0.3s ease;
  border-radius: 40px;
  background-color: #ccc;
}
.darkmode_toggle:checked + .darkmode_darkmode-box {
  right: 3px;
  background-color: #007A7A;
}
.toggle-label {
  color: #f4f4f4;
  margin-right: 10px;
  position: relative;
  top: 4px;
  font-size: 0.9em;
}
body.dark-mode .toggle-label {
  color: #e4e4e4;
}
.darkmode_toggle-text {
  font-size: 10px;
  font-weight: 900;
  position: absolute;
  color: #666;
  transition: all 0.3s ease;
}
.darkmode_toggle-text.on {
  top: 4px; 
  opacity: 0;
  left: 7px;
}
body.dark-mode .darkmode_toggle-text.on {
  opacity: 1;
}
.darkmode_toggle-text.off {
  top: 4px; 
  right: 4px;
  opacity: 1;
}
body.dark-mode .darkmode_toggle-text.off {
  opacity: 0;
}


/* LINKS PAGE */
a.linktree__button {
    display: flex;
    width: 100%;
    font-weight: 600;
	align-items: center;	
	margin-bottom: 20px;
	overflow: hidden;
	color: #fff;
	background-color: #333;
	transition: all 0.3s ease;
}
a.linktree__button:hover {
	color: #fff;
	background-color: #111;
}
body.dark-mode a.linktree__button {
	color: #333;
	background-color: #eee;
}
body.dark-mode a.linktree__button:hover {
	background-color: #fff;
}
.linktree__instagram-image {
	margin: 0 auto;
	border-radius: 100%;
	display: block;
	margin-bottom: 20px;
	margin-top: 40px;
}
.linktree__instagram-name {
	text-align: center;
	margin-bottom: 20px;
}
.linktree__button-image {
	max-width: 100px;
}
.linktree__button-title {
	padding: 0 20px;
	text-align: center;
	width: 100%;
}
.template__links-page .popup {
	display: none;
}
@media screen and (max-width: 479px) {
	.linktree__button-image {
		width: 60px;
		height: 60px;
		min-width: 60px;
	}
}
@media screen and (min-width: 480px) {
	.linktree__button-image {
		width: 100px;
		height: 100px;
		min-width: 100px;
	}
}

/* DARK MODE THEME */
body.dark-mode,
body.dark-mode header,
body.dark-mode header .top-bar, 
body.dark-mode header .top-bar ul,
body.dark-mode .title-bar,
body.dark-mode #mainNavigation,
body.dark-mode .explore,
body.dark-mode .menu-dropdown ul li h2,
body.dark-mode .menu-dropdown li.section:last-child {
    background-color: #333333;
}

body.dark-mode .category-block .cell a,
body.dark-mode .chunky-button a, 
body.dark-mode a.homepage_ghost-tours-button, 
body.dark-mode .location-sidebar,
body.dark-mode .nearby-location,
body.dark-mode ul.search-results-list li,
body.dark-mode .accordion,
body.dark-mode .location-list-item .location-list-content,
body.dark-mode .tour-location,
body.dark-mode .tour-location_tab,
body.dark-mode .popup-content-wrapper {
    background-color: #222222;
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode p,
body.dark-mode li,
body.dark-mode header .title-bar-left h1 a, 
body.dark-mode header .title-bar-right,
body.dark-mode header h1 a,
body.dark-mode .breadcrumb ul li a,
body.dark-mode .chunky-button a,
body.dark-mode .explore p a,
body.dark-mode .heading-link-line h2,
body.dark-mode .feature-item h3 a,
body.dark-mode .title-bar-title,
body.dark-mode p.homepage-intro,
body.dark-mode .menu-dropdown ul li h2,
body.dark-mode .menu-dropdown ul li a,
body.dark-mode .menu-dropdown .fab, 
body.dark-mode .menu-dropdown .far, 
body.dark-mode .menu-dropdown .fas,
body.dark-mode .location-source-block,
body.dark-mode ul.social-share li.share-prompt,
body.dark-mode .search-results-list a li h4, 
body.dark-mode .search-results-list a li p,
body.dark-mode .location-list-item .location-list-content h2 a {
    color: #f4f4f4
}

body.dark-mode p a.button {
    background-color: #333;
    border: 1px solid #f4f4f4;
}

body.dark-mode .explore p a {
	border-bottom: 0;
}

body.dark-mode a.button:hover {
    background-color: #222;
}

body.dark-mode .menu-dropdown .sub {
    border-top: 2px solid #f4f4f4;
}

body.dark-mode .menu-dropdown .sub.three {
    border-top: 0 solid #f4f4f4;
}

body.dark-mode .explore {
    border-top: #f4f4f4 solid 1px;
    border-left: #f4f4f4 solid 1px;
    border-right: #f4f4f4 solid 1px;
    bottom: -1px;
}

body.dark-mode .feature-item p.category a,
body.dark-mode .feature-item .fas.fa-map-marker-alt,
body.dark-mode .location-source-block a,
body.dark-mode .location-sidebar p a,
body.dark-mode ul.social-share li a,
body.dark-mode p a,
body.dark-mode .accordion .accordion-item h3 a,
body.dark-mode i.fas.fa-angle-right,
body.dark-mode i.fas.fa-angle-down {
    color: #00c5c5 !important;
}

body.dark-mode .title-bar .menu-icon::after {
    background: #f4f4f4;
    -webkit-box-shadow: 0 7px 0 #f4f4f4, 0 14px 0 #f4f4f4;
    box-shadow: 0 7px 0 #f4f4f4, 0 14px 0 #f4f4f4;
}

body.template-location.dark-mode #map {
    border-top: #222 solid 1px;
    border-left: #222 solid 1px;
    border-right: #222 solid 1px;
}

body.template-searchresults.dark-mode form input:last-child {
    background-color: #007A7A;
    color: #f4f4f4;
}

body.dark-mode header {
    box-shadow: #444 1px 4px 8px;
}

body.dark-mode a.menu-toggle {
    fill: #f4f4f4;
}

body.dark-mode .pagination a, 
body.dark-mode .pagination button {
    background-color: #666;
    color: #f4f4f4;
}

body.dark-mode .accordion .accordion-item {
    border-bottom: 5px solid #333;
    padding: 15px 20px 15px 20px;
    margin: 0;
}
body.dark-mode .accordion .accordion-item h3 {
    margin: 0;
}

body.dark-mode .accordion i.fas.fa-angle-right {
    position: relative;
    top: 5px;
}

body.dark-mode .accordion .accordion-item.active div.answer {
    padding-top: 20px
}

body.dark-mode .location-list-item .location-list-content {
    padding: 20px
}

@media screen and (max-width: 639px) {
    body.dark-mode .breadcrumb ul {
        margin-bottom: 0;
    }
    body.dark-mode.template-explore #map {
        border: #222 solid 1px;        
    }
    body.dark-mode.template-explore .breadcrumb {
        margin-bottom: 20px;
    }
    body.dark-mode .menu-dropdown .sub.three {
        border-top: 2px solid #f4f4f4;
    }
    body.dark-mode .location-list-item .location-list-content {
        background-color: #222222;
    }
}