@charset "UTF-8";
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
@import url(../fonts/csp/csp.css);
@import url(../fonts/messer/messer.css);
html {
	line-height: 1.15;
	/* 1 */
	-webkit-text-size-adjust: 100%;
	/* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	/* 1 */
	height: 0;
	/* 1 */
	overflow: visible;
	/* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	/* 1 */
	font-size: 1em;
	/* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	/* 1 */
	text-decoration: underline;
	/* 2 */
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
	/* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	/* 1 */
	font-size: 1em;
	/* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	/* 1 */
	font-size: 100%;
	/* 1 */
	line-height: 1.15;
	/* 1 */
	margin: 0;
	/* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	/* 1 */
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	/* 1 */
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	/* 1 */
	color: inherit;
	/* 2 */
	display: table;
	/* 1 */
	max-width: 100%;
	/* 1 */
	padding: 0;
	/* 3 */
	white-space: normal;
	/* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	/* 1 */
	padding: 0;
	/* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	/* 1 */
	outline-offset: -2px;
	/* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	/* 1 */
	font: inherit;
	/* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/**
 * Generated by Wakamai Fondue - https://wakamaifondue.com
 * by Roel Nieskens/PixelAmbacht - https://pixelambacht.nl
 */
/* Set custom properties for each layout feature */
:root {
	--opentype-aalt: "aalt" off;
	--opentype-c2sc: "c2sc" off;
	--opentype-case: "case" off;
	--opentype-dlig: "dlig" off;
	--opentype-dnom: "dnom" off;
	--opentype-frac: "frac" off;
	--opentype-lnum: "lnum" off;
	--opentype-numr: "numr" off;
	--opentype-ordn: "ordn" off;
	--opentype-pnum: "pnum" off;
	--opentype-sinf: "sinf" off;
	--opentype-smcp: "smcp" off;
	--opentype-subs: "subs" off;
	--opentype-sups: "sups" off;
	--opentype-tnum: "tnum" off;
}

/* If class is applied, update custom property and
   apply modern font-variant-* when supported */
.opentype-aalt {
	--opentype-aalt: "aalt" on;
}

.opentype-c2sc,
.prev-next__item span,
.header-tag {
	--opentype-c2sc: "c2sc" on;
}

.opentype-case {
	--opentype-case: "case" on;
}

.opentype-dlig {
	--opentype-dlig: "dlig" on;
}

@supports (
	(-webkit-font-variant-ligatures: discretionary-ligatures) or
		(font-variant-ligatures: discretionary-ligatures)
) {
	.opentype-dlig {
		--opentype-dlig: "____";
		-webkit-font-variant-ligatures: discretionary-ligatures;
		font-variant-ligatures: discretionary-ligatures;
	}
}

.opentype-dnom {
	--opentype-dnom: "dnom" on;
}

.opentype-frac {
	--opentype-frac: "frac" on;
}

@supports (font-variant-numeric: diagonal-fractions) {
	.opentype-frac {
		--opentype-frac: "____";
		font-variant-numeric: diagonal-fractions;
	}
}

.opentype-lnum,
.sitemap-item--primary > a,
h2,
h3,
.ais-header,
.sermon__title,
h4,
h1 {
	--opentype-lnum: "lnum" on;
}

@supports (font-variant-numeric: lining-nums) {
	.opentype-lnum,
	.sitemap-item--primary > a,
	h2,
	h3,
	.ais-header,
	.sermon__title,
	h4,
	h1 {
		--opentype-lnum: "____";
		font-variant-numeric: lining-nums;
	}
}

.opentype-numr {
	--opentype-numr: "numr" on;
}

.opentype-ordn {
	--opentype-ordn: "ordn" on;
}

@supports (font-variant-numeric: ordinal) {
	.opentype-ordn {
		--opentype-ordn: "____";
		font-variant-numeric: ordinal;
	}
}

.opentype-pnum {
	--opentype-pnum: "pnum" on;
}

@supports (font-variant-numeric: proportional-nums) {
	.opentype-pnum {
		--opentype-pnum: "____";
		font-variant-numeric: proportional-nums;
	}
}

.opentype-sinf {
	--opentype-sinf: "sinf" on;
}

.opentype-smcp,
.smcp {
	--opentype-smcp: "smcp" on;
}

@supports (font-variant-caps: small-caps) {
	.opentype-smcp,
	.smcp {
		--opentype-smcp: "____";
		font-variant-caps: small-caps;
	}
}

.opentype-subs {
	--opentype-subs: "subs" on;
}

@supports (font-variant-position: sub) {
	.opentype-subs {
		--opentype-subs: "____";
		font-variant-position: sub;
	}
}

.opentype-sups {
	--opentype-sups: "sups" on;
}

@supports (font-variant-position: super) {
	.opentype-sups {
		--opentype-sups: "____";
		font-variant-position: super;
	}
}

.opentype-tnum {
	--opentype-tnum: "tnum" on;
}

@supports (font-variant-numeric: tabular-nums) {
	.opentype-tnum {
		--opentype-tnum: "____";
		font-variant-numeric: tabular-nums;
	}
}

/* Apply current state of all custom properties
   whenever a class is being applied */
.opentype-aalt,
.opentype-c2sc,
.prev-next__item span,
.header-tag,
.opentype-case,
.opentype-dlig,
.opentype-dnom,
.opentype-frac,
.opentype-lnum,
.sitemap-item--primary > a,
h2,
h3,
.ais-header,
.sermon__title,
h4,
h1,
.opentype-numr,
.opentype-ordn,
.opentype-pnum,
.opentype-sinf,
.opentype-smcp,
.smcp,
.opentype-subs,
.opentype-sups,
.opentype-tnum {
	-webkit-font-feature-settings: var(--opentype-aalt), var(--opentype-c2sc),
		var(--opentype-case), var(--opentype-dlig), var(--opentype-dnom),
		var(--opentype-frac), var(--opentype-lnum), var(--opentype-numr),
		var(--opentype-ordn), var(--opentype-pnum), var(--opentype-sinf),
		var(--opentype-smcp), var(--opentype-subs), var(--opentype-sups),
		var(--opentype-tnum);
	font-feature-settings: var(--opentype-aalt), var(--opentype-c2sc),
		var(--opentype-case), var(--opentype-dlig), var(--opentype-dnom),
		var(--opentype-frac), var(--opentype-lnum), var(--opentype-numr),
		var(--opentype-ordn), var(--opentype-pnum), var(--opentype-sinf),
		var(--opentype-smcp), var(--opentype-subs), var(--opentype-sups),
		var(--opentype-tnum);
}

:root {
	--f-size: 1.8rem;
	--f-leading: 1.6;
	--f-serif: "MesserWeb", Georgia, serif;
	--f-sans: "CSP", Verdana, sans-serif;
	--a-dur: 0.08s;
	--page-margin: calc(1rem + 5vw);
	--c-black_: 6, 11, 7;
	--c-black: rgb(var(--c-black_));
	--c-purewhite_: 255, 255, 255;
	--c-purewhite: rgb(var(--c-purewhite_));
	--c-white_: 249, 250, 243;
	--c-white: rgb(var(--c-white_));
	--c-dkgreen_: 30, 47, 37;
	--c-dkgreen: rgb(var(--c-dkgreen_));
	--c-green_: 81, 120, 95;
	--c-green: rgb(var(--c-green_));
	--c-ltgreen_: 165, 193, 136;
	--c-ltgreen: rgb(var(--c-ltgreen_));
	--c-grey_: 128, 131, 125;
	--c-grey: rgb(var(--c-grey_));
	--c-dkgrey_: 67, 71, 66;
	--c-dkgrey: rgb(var(--c-dkgrey_));
	--c-ltgrey_: 188, 190, 184;
	--c-ltgrey: rgb(var(--c-ltgrey_));
	--c-brown_: 80, 57, 46;
	--c-brown: rgb(var(--c-brown_));
	--c-cream_: 237, 223, 201;
	--c-cream: rgb(var(--c-cream_));
	--c-ltyellow_: 248, 253, 182;
	--c-ltyellow: rgb(var(--c-ltyellow_));
	--c-yellow_: 247, 255, 120;
	--c-yellow: rgb(var(--c-yellow_));
	--c-orange_: 225, 166, 85;
	--c-orange: rgb(var(--c-orange_));
}
@media (min-width: 2000px) {
	:root {
		--f-size: 2.25rem;
		--f-leading: 1.6;
	}
}
/* helper mixins */
html {
	scroll-behavior: smooth;
	font-size: 62.5%;
	min-height: 100vh;
}

*,
*:before,
*:after {
	box-sizing: border-box;
}

body {
	font: var(--f-size) / var(--f-leading) var(--f-sans);
	color: var(--c-black);
	background-image: linear-gradient(
			rgba(var(--c-black_), 0) 0%,
			rgba(var(--c-black_), 0.008) 8.2%,
			rgba(var(--c-black_), 0.075) 19%,
			rgba(var(--c-black_), 0.278) 56.5%,
			rgba(var(--c-black_), 0.738) 95.2%
		),
		url("../images/scroll-leaves.png");
}

.preload * {
	transition: none !important;
}

.transition-fade {
	transition: 0.4s;
	opacity: 1;
}

html.is-animating .transition-fade {
	opacity: 0;
}

body.navigation-is-open {
	overflow: hidden;
}

.hide {
	display: none;
}

abbr[title] {
	text-decoration: none;
}

::-moz-selection {
	color: var(--c-black);
	background: var(--c-yellow);
	text-shadow: none;
}

::selection {
	color: var(--c-black);
	background: var(--c-yellow);
	text-shadow: none;
}

hr {
	height: 2px;
	border: 0;
	background: var(--c-green);
	margin: 6vh auto;
	max-width: 30rem;
	position: relative;
}
hr:before,
hr:after {
	content: "";
	display: block;
	width: 100%;
	height: inherit;
	background: inherit;
	position: absolute;
}
hr:before {
	top: -4px;
	left: -0.5rem;
}
hr:after {
	bottom: -4px;
	left: 0.5rem;
}
hr.two {
	margin-bottom: calc(12vh - 4px);
}
hr.two:after {
	display: none;
}
.secondary hr {
	max-width: 50%;
	margin: 4vh auto;
	background: var(--c-cream);
}
.secondary hr:after {
	display: none;
}

figure:not(.plain) {
	width: 100%;
	margin: calc(var(--f-leading) * 2 * 1rem) auto;
	max-width: 80rem;
}
@media (min-width: 500px) {
	figure:not(.plain) {
		box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-green),
			inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-green);
		padding: calc(var(--f-leading) * 2 * 1rem);
		margin: calc(var(--f-leading) * 4 * 1rem) auto;
		width: 90%;
	}
}
figure:not(.plain) img {
	max-width: 100%;
	height: auto;
}
@media (min-width: 600px) {
	figure:not(.plain).float-left,
	figure:not(.plain).float-right {
		width: 45%;
		min-width: 20rem;
	}
}
figure:not(.plain).float-left--noborder,
figure:not(.plain).float-right--noborder {
	box-shadow: none;
	padding: 0;
}
@media (min-width: 600px) {
	figure:not(.plain).float-left {
		float: left;
		margin: calc(var(--f-leading) * 1 * 1rem) calc(var(--f-leading) * 3 * 1rem)
			calc(var(--f-leading) * 2 * 1rem) 0;
	}
	figure:not(.plain).float-right {
		float: right;
		margin: calc(var(--f-leading) * 1 * 1rem) 0
			calc(var(--f-leading) * 2 * 1rem) calc(var(--f-leading) * 3 * 1rem);
	}
}
figcaption {
	color: var(--c-green);
	margin-top: calc(var(--f-leading) * 0.5 * 1rem);
	font-style: italic;
	font-size: 0.9em;
	line-height: calc(var(--f-leading) * var(--f-leading) * 1rem);
}

a {
	color: var(--c-green);
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
}

.violator {
	background: var(--c-white);
	padding: 3rem;
	padding-right: 8rem;
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-dkgreen),
		inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-dkgreen);
}
@media (max-width: 600px) {
	.violator {
		-webkit-transform: translateY(6rem);
		transform: translateY(6rem);
	}
}
.violator--red {
	color: tomato;
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px tomato,
		inset 0 0 0 6px var(--c-white), inset 0 0 0 8px tomato;
}

.alert {
	background: var(--c-cream);
	color: var(--c-brown);
	padding: 2.5rem 2rem;
	margin: 0 -1rem;
	display: flex;
}
.alert::before {
	content: "*";
	font-size: 4rem;
	margin-top: -1rem;
	padding-right: 1rem;
	font-family: var(--f-sans);
}

p {
	margin: 0;
}

p + p {
	margin: calc(var(--f-leading) * 1 * 1rem) 0 0;
}

.primary p + p {
	margin: 0;
	text-indent: calc(var(--f-leading) * 2 * 1rem);
}

.no-indent {
	text-indent: 0;
}

.indent {
	margin-left: calc(var(--f-leading) * 3 * 1rem);
}

.poetry p + p {
	margin-top: calc(1em * var(--f-leading));
	text-indent: 0;
}

.intro,
.body-ministry .primary > p:first-child {
	color: var(--c-green);
	margin-bottom: calc(var(--f-leading) * 2 * 1rem);
	font-weight: 600;
}
@media (min-width: 600px) {
	.intro,
	.body-ministry .primary > p:first-child {
		font-size: calc(var(--f-size) * 1.4);
		line-height: calc(var(--f-leading) * 2.25 * 1rem);
	}
}
@media (min-width: 600px) {
	.primary .float-right + p {
		text-indent: calc(var(--f-leading) * 2 * 1rem);
	}
}

.primary h1:first-child {
	padding-top: 0;
}

h1,
h2,
h3,
.ais-header,
.sermon__title,
h4 {
	padding: calc(var(--f-leading) * 1.5 * 1rem) 0
		calc(var(--f-leading) * 0.5 * 1rem);
	margin: 0;
	line-height: calc(var(--f-leading) * 2.5 * 1rem);
	color: var(--c-dkgreen);
}
hr + h1,
hr + h2,
hr + h3,
hr + .ais-header,
hr + .sermon__title,
hr + h4 {
	padding-top: 0;
}

h1 {
	font-size: 3rem;
	font-weight: 600;
}
@media (min-width: 600px) {
	h1 {
		font-size: 4rem;
	}
}
h2,
h3,
.ais-header,
.sermon__title,
h4 {
	font-family: var(--f-sans);
	font-weight: 600;
}

h2 {
	font-size: 3rem;
	line-height: calc(var(--f-leading) * 2 * 1rem);
}

h3,
.ais-header,
.sermon__title {
	font-size: 2.25rem;
	line-height: calc(var(--f-leading) * 2 * 1rem);
}

h4 {
	font-size: inherit;
	line-height: calc(var(--f-leading) * 1 * 1rem);
}

/*
ul{
	list-style-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 3 4"><path d="M1.5.4c.3.2.5.4.7.7.2.2.5.5.6.8-.1.2-.3.5-.6.7-.2.2-.4.5-.7.6-.3-.1-.5-.4-.8-.6-.2-.2-.4-.5-.6-.7.2-.3.4-.5.6-.7.3-.3.5-.6.8-.8z"/></svg>');
}
*/
.main {
	font-family: var(--f-serif);
	background: var(--c-white);
	box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.2);
	margin-top: 6rem;
	padding-bottom: 3rem;
}

.primary ul {
	list-style: none;
	text-indent: 0;
	padding: calc(var(--f-leading) * 1 * 1rem) 0 calc(var(--f-leading) * 1 * 1rem)
		calc(var(--f-leading) * 2 * 1rem);
	margin: 0 0 calc(var(--f-leading) * 1 * 1rem);
}
.primary ul li::before {
	content: "•";
	display: inline-block;
	width: 1em;
	margin-left: -1em;
}

.secondary ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.primary {
	padding-left: var(--page-margin);
	padding-right: var(--page-margin);
	padding-top: 2rem;
	padding-bottom: 6rem;
}
@media (min-width: 600px) {
	.primary {
		padding-top: 4rem;
	}
}
@media (min-width: 900px) {
	.primary {
		padding-top: 5rem;
		padding-bottom: 6vw;
	}
}
.secondary {
	padding-left: var(--page-margin);
	padding-right: var(--page-margin);
	position: -webkit-sticky;
	position: sticky;
	top: calc(var(--f-leading) * 2 * 1rem);
}

.logo {
	line-height: 0;
	display: block;
	transition: opacity 0.3s;
}
.logo svg {
	width: auto;
}
.no-touchevents .logo:hover {
	opacity: 0.8;
}

.box {
	line-height: 0;
	padding: 1rem;
	background: var(--c-white);
	position: relative;
	margin: 5rem;
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-green),
		inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-green),
		inset 0 0 0 10px var(--c-white), inset 0 0 0 12px var(--c-green);
}
.box--two {
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-green),
		inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-green);
}
.box img {
	width: 100%;
	margin: 0;
}

.hero {
	min-height: 25rem;
	height: 65vh;
	background: center center;
	background-size: cover;
	display: flex;
	padding: calc(var(--f-leading) * 5 * 1rem) var(--page-margin);
	align-items: flex-end;
	transition: height var(--a-dur), margin var(--a-dur);
	color: var(--c-white);
	text-shadow: rgba(0, 0, 0, 0.5) 1px 2px 30px, black 1px 3px 8px,
		black 1px 1px 4px;
	text-decoration: none;
}
.hero--has-card {
	align-items: flex-start;
}
.hero--dark,
.hero--has-card {
	color: var(--c-black);
	text-shadow: unset;
}
.hero h1 {
	color: inherit;
}

.hero__card {
	background: var(--c-white);
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-dkgreen),
		inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-dkgreen),
		inset 0 0 0 10px var(--c-white), inset 0 0 0 12px var(--c-dkgreen);
	padding: 3rem;
	max-width: 50rem;
	transition: var(--a-dur) transform;
}
.hero:hover .hero__card {
	-webkit-transform: translateY(-0.5rem);
	transform: translateY(-0.5rem);
}
.hero__card h1 {
	line-height: 1;
}

.block {
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-ltgreen),
		inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-ltgreen);
	padding: calc(var(--f-leading) * 1.8 * 1rem) calc(var(--f-leading) * 2 * 1rem)
		calc(var(--f-leading) * 2 * 1rem);
	margin-bottom: calc(var(--f-leading) * 2 * 1rem);
	transition: background var(--a-dur);
}
.block a {
	text-decoration: none;
	display: flex;
	flex-direction: column;
}
@media (min-width: 600px) {
	.block a {
		flex-direction: row;
	}
}
.block:hover {
	background: var(--c-ltyellow);
}

.block__title {
	padding-top: 0;
}

.block__img {
	line-height: 0;
	margin: calc(var(--f-leading) * -1.2 * 1rem)
		calc(var(--f-leading) * -2 * 1rem) calc(var(--f-leading) * 1.5 * 1rem);
}
@media (min-width: 600px) {
	.block__img {
		flex: 1 0 20rem;
		margin: 0 calc(var(--f-leading) * 1.5 * 1rem) 0 0;
	}
}
.block__img img {
	width: 100%;
	height: auto;
}

.external-link-icon {
	width: 1em;
	height: 1em;
	fill: currentColor;
	position: relative;
	top: 0.25em;
	left: 0.25em;
}

/* header */
.nav-trigger {
	position: fixed;
	z-index: 1020;
	right: 0;
	top: 0;
	width: 6rem;
	height: 6rem;
	background: var(--c-dkgreen) url("../images/dkgreen400.png");
}

.nav-trigger-label {
	display: none;
}

.nav-trigger-inner {
	display: block;
	top: 50%;
	left: 50%;
	margin-left: -1rem;
	width: 2rem;
	height: 2px;
	background-color: var(--c-white);
	position: absolute;
	transition: -webkit-transform var(--a-dur);
	transition: transform var(--a-dur);
	transition: transform var(--a-dur), -webkit-transform var(--a-dur);
}

.nav-trigger-inner:before {
	top: -8px;
	transition: top var(--a-dur) 0.16s, opacity var(--a-dur);
}

.nav-trigger-inner:after,
.nav-trigger-inner:before {
	content: "";
	display: block;
	width: 2rem;
	height: 2px;
	background-color: var(--c-white);
	position: absolute;
}

.nav-trigger-inner:after {
	bottom: -8px;
	transition: bottom var(--a-dur) 0.16s, -webkit-transform var(--a-dur);
	transition: bottom var(--a-dur) 0.16s, transform var(--a-dur);
	transition: bottom var(--a-dur) 0.16s, transform var(--a-dur),
		-webkit-transform var(--a-dur);
}

.no-touch .nav-trigger:hover .nav-trigger-inner:before {
	top: -10px;
}

.no-touch .nav-trigger:hover .nav-trigger-inner:after {
	bottom: -10px;
}

.nav-trigger.is-active .nav-trigger-inner {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: -webkit-transform var(--a-dur) 0.16s;
	transition: transform var(--a-dur) 0.16s;
	transition: transform var(--a-dur) 0.16s, -webkit-transform var(--a-dur) 0.16s;
}

.nav-trigger.is-active .nav-trigger-inner:before {
	top: 0 !important;
	opacity: 0;
	transition: top var(--a-dur), opacity var(--a-dur) 0.16s;
}

.nav-trigger.is-active .nav-trigger-inner:after {
	bottom: 0 !important;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	transition: bottom var(--a-dur), -webkit-transform var(--a-dur) 0.16s;
	transition: bottom var(--a-dur), transform var(--a-dur) 0.16s;
	transition: bottom var(--a-dur), transform var(--a-dur) 0.16s,
		-webkit-transform var(--a-dur) 0.16s;
}

.no-touch .nav-trigger.is-active:hover .nav-trigger-inner {
	-webkit-transform: rotate(30deg);
	transform: rotate(30deg);
}
.no-touch .nav-trigger.is-active:hover .nav-trigger-inner:after {
	-webkit-transform: rotate(-55deg);
	transform: rotate(-55deg);
}

.header {
	--header-height: 12rem;
	position: fixed;
	height: 6rem;
	background: var(--c-green) url("../images/green600.png");
	z-index: 1010;
	top: 0;
	left: 0;
	right: 0;
	box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.2);
}

.header-content {
	height: inherit;
	display: flex;
	align-items: center;
	margin: 0 8rem 0 var(--page-margin);
}

.svg-logo-g1 {
	display: none;
}

.svg-logo-horiz {
	fill: var(--c-white);
	max-height: 3rem;
	transition: max-height 0.3s, fill 0.3s;
}
@media (min-width: 500px) {
	.svg-logo-horiz {
		max-height: 4rem;
	}
}
@media (min-width: 600px) {
	.svg-logo-horiz {
		max-height: 5rem;
	}
}
@-webkit-keyframes drop-in {
	from {
		top: -40px;
	}
	to {
		top: 0;
	}
}
@keyframes drop-in {
	from {
		top: -40px;
	}
	to {
		top: 0;
	}
}

/*
@media (min-width: 600px) {
  .body-home .svg-logo-horiz {
    display: none; }
  .body-home .logo--header {
    -webkit-animation: drop-in 0.4s cubic-bezier(0.17, 0.67, 0.36, 1);
            animation: drop-in 0.4s cubic-bezier(0.17, 0.67, 0.36, 1);
    top: 0;
    align-self: flex-start;
    display: block;
    height: auto;
    width: 28rem;
    padding: 3rem 3rem 5rem;
    position: relative;
    z-index: 1059;
    -webkit-filter: drop-shadow(1px 2px 10px rgba(0, 0, 0, 0.2));
            filter: drop-shadow(1px 2px 10px rgba(0, 0, 0, 0.2));
    transition: padding-top var(--a-dur); }
    .body-home .logo--header::before {
      position: absolute;
      z-index: -1;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: var(--c-white);
      --p: polygon(100% 0, 100% 100%, 50% 90%, 0 100%, 0 0);
      -webkit-clip-path: var(--p);
      clip-path: var(--p);
      content: ""; }
    .body-home .logo--header:hover {
      opacity: 1; }
    .body-home .logo--header:active {
      padding-top: 4.25rem; }
  .body-home .svg-logo-g1 {
    display: block;
    width: 100%;
    height: 100%;
    fill: var(--c-dkgreen); } } 

@media (min-width: 900px) {
	.body-home .logo--header {
		width: 36rem;
		padding: 4rem 4rem 6rem;
	}
}

@media (min-width: 1400px) {
	.body-home .logo--header {
		width: 38rem;
		padding: 4rem 5rem 6rem;
	}
} */

.nav {
	background: var(--c-dkgreen) url("../images/dkgreen400.png");
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	z-index: 1015;
	display: block;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	color: var(--c-white);
	font-family: var(--f-sans);
}

.logo--nav {
	margin: 0 0 4rem;
}
.logo--nav svg {
	fill: var(--c-yellow);
	max-width: 16rem;
	height: auto;
}

.nav-content {
	padding: 5rem;
	-webkit-transform: translateY(1rem);
	transform: translateY(1rem);
	background: var(--c-dkgreen) url("../images/dkgreen400.png");
	position: absolute;
	min-height: 100vh;
	width: 100%;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
}

.navigation-is-open .nav {
	visibility: visible;
	opacity: 1;
}
.navigation-is-open .nav .nav-content {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.nav-primary {
	margin: 0;
	padding: 0;
	list-style: none;
	line-height: 1.6em;
}
.nav-primary a {
	color: inherit;
	text-decoration: none;
}
.nav-primary a span {
	border-bottom: 2px solid;
	border-bottom-color: rgba(var(--c-yellow_), 0);
	transition: border-bottom-color 0.3s;
}
.nav-primary a:hover span {
	border-bottom-color: rgba(var(--c-yellow_), 1);
}

.nav-item--primary {
	margin-bottom: 2rem;
}
.nav-item--primary > a {
	font-weight: 600;
	font-size: 2rem;
}

.nav-secondary {
	list-style: none;
	padding: 0;
	margin-left: 2rem;
}

@media (min-width: 600px) {
	.main-wrapper {
		display: flex;
		flex-direction: column-reverse;
	}
	.paper {
		height: 3rem;
		width: 100%;
		background: var(--c-ltgreen) url("../images/ltgreen800.png");
	}
	.main {
		margin: 0;
	}
	.header {
		position: static;
		height: auto;
		background: var(--c-green) url("../images/green600.png");
	}
	.body-home .header {
		max-height: 10rem;
	}
	.header-content {
		margin: 0;
		padding: 3.5rem;
		padding-left: var(--page-margin);
		padding-right: var(--page-margin);
	}
	.body-home .header-content {
		padding-top: 0;
		padding-bottom: 0;
	}
	.nav {
		width: 50vw;
		left: auto;
		box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.2);
	}
	.logo--nav {
		display: none;
	}
}

@media (min-width: 900px) {
	.main {
		display: flex;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	.hero {
		position: relative;
		z-index: 1010;
		box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.2);
		flex-basis: 100vw;
		height: 55vh;
	}
	.primary {
		flex: 60%;
		padding-right: 0;
	}
	.primary--single {
		width: 80%;
		max-width: 120rem;
		margin: 0 auto;
		padding-left: var(--page-margin);
		padding-right: var(--page-margin);
	}
	.primary--single-wide {
		width: auto;
		max-width: 100%;
	}
	.secondary {
		flex: 10%;
		margin-top: 5rem;
		margin-bottom: 5rem;
		margin-right: var(--page-margin);
		padding: 0 0 0 3vw;
		margin-left: 3vw;
	}
	.secondary.secondary--stroke {
		border-left: solid var(--c-cream) 2px;
	}
	.header {
		height: var(--header-height);
	}
	.body-home .header {
		max-height: unset;
	}
	.header-content {
		padding-top: 0;
		padding-bottom: 0;
	}
	.logo--header svg {
		width: 25rem;
	}
	.nav-trigger {
		display: none;
	}
	.nav {
		background: none;
		height: 100%;
		box-shadow: none;
		position: static;
		bottom: auto;
		width: calc(100% - 30rem);
		margin-left: 2.5vw;
		opacity: 1;
		visibility: visible;
		transition: opacity 0;
		overflow: visible;
	}
	.nav-content {
		background: none;
		padding: 0;
		-webkit-transform: none;
		transform: none;
		min-height: auto;
		position: static;
		width: auto;
		transition: -webkit-transform 0;
		transition: transform 0;
		transition: transform 0, -webkit-transform 0;
		height: 100%;
	}
	.nav-primary {
		height: 100%;
		list-style: none;
		display: flex;
	}
	.nav-item--primary {
		flex: auto;
		position: relative;
		margin: 0;
	}
	.nav-item--primary:hover {
		background: var(--c-dkgreen) url("../images/dkgreen400.png");
	}
	.nav-item--primary > a {
		display: block;
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		padding: 0 1rem;
		white-space: nowrap;
	}
	.nav-secondary {
		visibility: hidden;
		opacity: 0;
		background: var(--c-dkgreen) url("../images/dkgreen400.png");
		position: absolute;
		left: 0;
		top: var(--header-height);
		margin: 0;
		min-width: 20rem;
	}
	.nav-item--church-life .nav-secondary {
		min-width: 30rem;
	}
	.nav-secondary li {
		list-style: none;
	}
	.nav-secondary li:first-child a {
		padding-top: 1rem;
	}
	.nav-item--primary:hover > a span {
		color: var(--c-yellow);
		transition: color 0.3s;
	}
	.nav-item--primary:hover .nav-secondary {
		visibility: visible;
		opacity: 1;
		-webkit-transform-origin: top center;
		transform-origin: top center;
		width: inherit;
		overflow: hidden;
		padding-bottom: 2rem;
	}
	.nav-item--secondary a {
		display: block;
		width: 100%;
		text-indent: -1.5rem;
		padding: 0.25rem 2rem 0.25rem 3.5rem;
	}
}

@media (min-width: 1400px) {
	.main-wrapper {
		flex-direction: row;
		height: 100%;
		align-items: stretch;
		position: relative;
	}
	.main {
		width: 85vw;
		margin: 0 auto;
		position: relative;
		z-index: 1005;
		margin-top: 3rem;
	}
	.paper {
		position: absolute;
		width: 90vw;
		left: 50%;
		margin-left: -46vw;
		height: calc(100% - 15rem);
		box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.2);
	}
	.hero {
		margin-left: -2vw;
		margin-right: 4rem;
		margin-top: -2vh;
	}
	.header {
		width: 85vw;
		min-width: 80rem;
		margin: 0 auto;
		position: relative;
		left: -1.5vw;
		box-shadow: none;
	}
	.header-content {
		height: var(--header-height);
		justify-content: space-between;
	}
	.logo--header svg {
		width: auto;
	}
	.nav {
		flex: 0 75rem;
	}
}

.no-js .main {
	height: auto;
	overflow: visible;
}

.no-js .nav {
	position: static;
	visibility: visible;
}
.no-js .nav .nav-content {
	height: auto;
	overflow: visible;
	padding: 100px 5%;
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

/* footer */
.footer {
	padding: 3rem 0 5rem;
	padding-left: var(--page-margin);
	padding-right: var(--page-margin);
	background: var(--c-dkgreen) url("../images/dkgreen400.png");
	color: var(--c-cream);
	position: relative;
	font-size: 1.5rem;
}
@media (min-width: 900px) {
	.footer {
		display: flex;
	}
}
@media (min-width: 1400px) {
	.footer {
		max-width: 85vw;
		left: -5vw;
		padding-top: 25rem;
		margin: -20rem auto 8vh;
		box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.2);
	}
}
.footer a {
	color: inherit;
}

.logo--footer {
	margin-bottom: calc(var(--f-leading) * 1 * 1rem);
}

.logo--footer svg {
	fill: var(--c-yellow);
	width: 15rem;
	height: auto;
}

@media (min-width: 900px) {
	.footer__info {
		color: var(--c-yellow);
		padding-right: 5vw;
		margin-right: 5vw;
	}
}

.footer__sitemap {
	max-width: 65rem;
	flex: 1;
	display: none;
}
@media (min-width: 600px) {
	.footer__sitemap {
		display: block;
		display: flex;
	}
}
.sitemap-item--primary {
	margin: 0 0 2rem;
}

.sitemap-item--primary > a {
	font-weight: 600;
	font-size: 2rem;
	font-family: var(--f-sans);
}

.sitemap-col.sitemap-col {
	flex: 1 auto;
	margin-right: calc(var(--f-leading) * 1 * 1rem);
}

/* pagination */
.pagination,
.pagination li a,
.pagination li span {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.pagination {
	padding: 0;
	margin: calc(var(--f-leading) * 4 * 1rem) 0;
	list-style: none;
	display: inline-flex;
	font-family: var(--f-sans);
}

.pagination.pagination li::before {
	display: none;
}

.pagination a,
.pagination span {
	color: var(--c-black);
	font-weight: 600;
	text-decoration: none;
	min-width: 2.5em;
	min-height: 2.5em;
	border: transparent 2px solid;
	transition: margin-top var(--a-dur);
}

.pagination .disabled,
.pagination .disabled a {
	color: var(--c-grey);
}

.pagination .page:not(.current) a:hover {
	margin-top: -0.5rem;
}

.pagination .page a:active {
	color: var(--c-white);
	background: var(--c-green);
	border-color: var(--c-green);
}

.pagination li:first-child a::before,
.pagination li:last-child a::after,
.pagination li:nth-of-type(2) a::before,
.pagination li:nth-last-of-type(2) a::after {
	display: inline-block;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}

.pagination .current a,
.pagination .active a {
	color: var(--c-green);
	border-color: var(--c-green);
	cursor: default;
}

@media (max-width: 600px) {
	.pagination li {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	.pagination li.current,
	.pagination li:first-of-type,
	.pagination li:last-of-type,
	.pagination li:nth-of-type(2),
	.pagination li:nth-last-of-type(2) {
		position: initial;
		top: initial;
		left: initial;
	}
}

label {
	display: block;
	position: relative;
	/*
      small, span {
      	position: absolute;
      	right: 0;
      	font-size: 90%;
      	text-transform: none;
      	text-align: right;
      	margin-left: 40%;
      }
*/
}

label.form-row + label.form-row {
	margin-top: 1rem;
}

select {
	height: 1.75em;
}

.label {
	font-style: italic;
	color: var(--c-dkgreen);
}

.form {
	margin: 2rem 0 0;
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
}

.form__field {
	flex: 100%;
}
@media (min-width: 900px) {
	.form__field {
		flex: 40%;
	}
	.form__field--fill {
		flex: 100%;
	}
}
.form__submit {
	flex: 100%;
}

input[type="text"],
input[type="num"],
input[type="tel"],
input[type="password"],
input[type="search"],
input[type="email"],
input[type="number"],
textarea,
select {
	--padding-top: 0.5rem;
	--padding-right: 1rem;
	--padding-bottom: 0.5rem;
	--padding-left: 1rem;
	--in-border: var(--c-ltgreen);
	--out-border: transparent;
	box-shadow: var(--in-border) 0 0 0 0.1rem inset,
		var(--out-border) 0 0 0 0.2rem;
	font-family: var(--f-sans);
	display: block;
	width: 100%;
	border: 0;
	outline: 0;
	color: var(--c-black);
	padding: var(--padding-top) var(--padding-right) var(--padding-bottom)
		var(--padding-left);
	background: linear-gradient(var(--c-ltgrey) -1rem, var(--c-purewhite) 1rem);
	line-height: inherit;
	font-size: inherit;
	transition: box-shadow 100ms;
}
input[type="text"]:hover,
input[type="num"]:hover,
input[type="tel"]:hover,
input[type="password"]:hover,
input[type="search"]:hover,
input[type="email"]:hover,
input[type="number"]:hover,
textarea:hover,
select:hover {
	--in-border: var(--c-green);
}
input[type="text"]:focus,
input[type="num"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
	--in-border: var(--c-dkgreen);
	--out-border: var(--c-green);
}
input[type="text"].error,
input[type="num"].error,
input[type="tel"].error,
input[type="password"].error,
input[type="search"].error,
input[type="email"].error,
input[type="number"].error,
textarea.error,
select.error {
	border-color: var(--c-orange);
}

textarea {
	resize: none;
}

input[type="password"] {
	letter-spacing: 0.25em;
}

input[type="radio"],
input[type="checkbox"] {
	margin-right: 0.5em;
}

button {
	font-size: inherit;
	font-family: inherit;
	transition: 150ms ease-out;
	padding: 0.75em 1em;
	background-image: url(../images/transparent200.png);
	background-position: center center;
	background-color: var(--c-dkgreen);
	border: 0;
	color: var(--c-white);
	font-family: var(--f-sans);
	font-weight: 600;
	cursor: pointer;
}
button:hover {
	background-color: var(--c-green);
}

/*
  p.success {
  	color: #2c421b;
  	background-color: #8acd55;
  	padding: .25em .2em;
  	margin: 1px !important;
  }
  
  .error {
  	color: #5f311b;
  	background-color: #fb834b;
  	padding: .25em .2em;
  	margin: 1px !important;
  }
  
  label.error{
  	color: #b12123;
  	font-weight: bold;
  }
*/
.yellow-flash {
	-webkit-animation: yellowFade 8s forwards;
	animation: yellowFade 8s forwards;
}

@-webkit-keyframes yellowFade {
	from {
		background: lightYellow;
	}
	to {
		background: transparent;
	}
}

@keyframes yellowFade {
	from {
		background: lightYellow;
	}
	to {
		background: transparent;
	}
}

.form--sliding-placeholder {
	--padding-top: 1.5rem;
	--padding-bottom: 1rem;
	margin: 1rem 0;
	display: flex;
}
.form--sliding-placeholder .form-row {
	position: relative;
	flex: 1;
}
.form--sliding-placeholder .input-field {
	border-radius: 1rem 0 0 1rem;
	border-right: 0;
}
.form--sliding-placeholder .input-label {
	pointer-events: none;
	display: block;
	position: absolute;
	top: 50%;
	padding: 0 0.25rem;
	left: calc(var(--padding-left) - 0.25rem);
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	transition: -webkit-transform 80ms ease;
	transition: transform 80ms ease;
	transition: transform 80ms ease, -webkit-transform 80ms ease;
	color: var(--c-grey);
	background-color: rgba(255, 255, 255, 0);
}
.form--sliding-placeholder .input-field:focus + .input-label,
.form--sliding-placeholder .input-field:valid + .input-label,
.form--sliding-placeholder .input-field:not([value=""]) + .input-label {
	-webkit-transform: translate(-10%, -110%) scale(0.8, 0.8);
	transform: translate(-10%, -110%) scale(0.8, 0.8);
	font-weight: 700;
	color: var(--c-black);
}
.form--sliding-placeholder .input-field:not([value=""]):invalid {
	border-color: var(--c-orange);
}
.form--sliding-placeholder .button {
	border-radius: 0 1rem 1rem 0;
}

@media (max-width: 900px) {
	.sitemap-primary {
		display: none;
	}
}

.sitemap-primary,
.sitemap-secondary {
	padding: 0;
	margin: 0;
	list-style: none;
}

.sitemap-primary a {
	text-decoration: none;
}
.sitemap-primary a:hover {
	text-decoration: underline;
}

.sitemap-item--primary > a {
	font-size: 2.5rem;
}

.secondary .is-open,
.secondary .is-active {
	margin-left: 2.5rem;
	text-indent: -2.5rem;
}
.secondary .is-open a,
.secondary .is-active a {
	color: var(--c-dkgreen);
	pointer-events: none;
	text-decoration: none;
}
.secondary .is-open a::before,
.secondary .is-active a::before {
	content: "→\00A0\00A0";
}

.map {
	width: 100%;
	height: 20rem;
	min-height: 60vh;
}

.leaflet-container.leaflet-container {
	font-family: var(--f-sans);
	font-size: inherit;
}
.leaflet-container.leaflet-container h3,
.leaflet-container.leaflet-container .ais-header,
.leaflet-container.leaflet-container .sermon__title {
	padding: 0;
	line-height: 1.2em;
	margin-bottom: calc(var(--f-leading) * 1 * 1rem);
}
.leaflet-container.leaflet-container a {
	color: var(--c-green);
}
.leaflet-container.leaflet-container p {
	text-indent: 0;
}

.leaflet-control.leaflet-control {
	font-family: var(--f-sans);
}

.leaflet-popup-content-wrapper.leaflet-popup-content-wrapper {
	border-radius: 0;
	padding: calc(var(--f-leading) * 1 * 1rem) calc(var(--f-leading) * 2 * 1rem);
	box-shadow: rgba(0, 0, 0, 0.5) 1px 3px 5px;
}

.leaflet-popup-content.leaflet-popup-content {
	margin: 0;
}

.icon-block {
	display: flex;
	align-items: baseline;
	margin-bottom: calc(var(--f-leading) * 1 * 1rem);
	text-decoration: none;
	transition: margin-left 150ms;
}
.icon-block .icon {
	width: 1.5rem;
	fill: var(--c-green);
	margin-right: 1rem;
	-webkit-transform: translateY(0.25rem);
	transform: translateY(0.25rem);
}

a.icon-block {
	color: var(--c-green);
}
a.icon-block:hover {
	text-decoration: underline;
}

.body-ministry .primary > p:first-child {
	margin-bottom: calc(var(--f-leading) * 1 * 1rem);
}

.body-ministry .primary > p:nth-child(2n) {
	text-indent: 0;
}

.ministry-connect {
	color: var(--c-green);
	border-top: 2px dotted;
	margin: calc(var(--f-leading) * 2 * 1rem) 0 0;
	padding: calc(var(--f-leading) * 1 * 1rem) 0 0;
}
.ministry-connect p,
.ministry-connect li {
	font-style: italic;
}

.sermon {
	margin: 0 calc(var(--f-leading) * -1 * 1rem) calc(var(--f-leading) * 1 * 1rem);
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-ltgreen);
	padding: calc(var(--f-leading) * 1 * 1rem);
}
@media (min-width: 600px) {
	.sermon {
		margin: 0;
		padding: calc(var(--f-leading) * 2 * 1rem);
	}
	.sermon:not(.sermon--card) {
		display: flex;
		margin: 0 0 calc(var(--f-leading) * 1 * 1rem);
	}
}
.sermon a {
	text-decoration: none;
}

.sermon__title {
	padding-top: 0;
}
@media (min-width: 600px) {
	.sermon__title {
		font-size: 120%;
	}
}
.sermon__title:hover {
	text-decoration: underline;
}

.sermon-primary {
	flex: 1;
}

.sermon:not(.sermon--card) .sermon-secondary {
	flex: 1;
}
@media (min-width: 600px) {
	.sermon:not(.sermon--card) .sermon-secondary {
		margin: 0 0 0 calc(var(--f-leading) * 1 * 1rem);
	}
}
@media (max-width: 600px) {
	.sermon__speaker,
	.sermon__bible {
		display: inline;
	}
	.sermon__bible {
		margin-left: 1rem;
	}
}

.sermon__date {
	font-family: var(--f-sans);
	font-weight: 600;
	color: var(--c-ltgreen);
}

@media (min-width: 900px) {
	.sermon-cards {
		display: flex;
		min-height: 30rem;
		margin-left: -0.5rem;
		margin-right: -0.5rem;
	}
	.sermon-cards .sermon {
		flex: 1;
		margin: 0.5rem;
	}
}

@media (min-width: 900px) and (max-width: 1400px) {
	.sermon-cards .sermon:last-child {
		display: none;
	}
}

.sermon-modal {
	background: var(--c-white);
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-ltgreen),
		inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-ltgreen),
		inset 0 0 0 10px var(--c-white), inset 0 0 0 12px var(--c-ltgreen);
	padding: 2rem 4rem 4rem;
	margin-top: -20rem;
	margin-bottom: calc(var(--f-leading) * 4 * 1rem);
	position: relative;
	z-index: 1020;
}
@media (max-width: 600px) {
	.sermon-modal {
		width: 94vw;
		left: -47vw;
		margin-left: 50%;
	}
}
@media (min-width: 1400px) {
	.sermon-modal {
		padding: 2vw 4vw 4vw;
	}
}
.sermonaudio-embed {
	margin: calc(var(--f-leading) * 1 * 1rem) auto;
	position: relative;
	overflow: hidden;
	height: 149px;
	background: #333;
	border-top: 20px solid #333;
}
.sermonaudio-embed iframe {
	position: absolute;
	top: -21px;
}
@media (max-width: 600px) {
	.sermonaudio-embed {
		width: 96vw;
		left: -48vw;
		margin-left: 50%;
	}
}
.ais-current-refined-values--count {
	display: none;
}

.ais-current-refined-values--clear-all {
	display: inline;
}

.ais-current-refined-values--item {
	display: inline;
	background: red;
}

.sermons-refinement-block {
	margin-bottom: calc(var(--f-leading) * 1 * 1rem);
}

.ais-search-box {
	position: relative;
}

.ais-search-box--magnifier-wrapper {
	position: absolute;
	top: 0.8rem;
	left: 0.9rem;
	width: 2rem;
	height: 2rem;
}
.ais-search-box--magnifier-wrapper svg {
	fill: var(--c-dkgreen);
}

.ais-search-box--input.ais-search-box--input.ais-search-box--input {
	--padding-right: 0.5rem;
	--padding-left: 3.5rem;
}

.ais-menu-select--select {
	width: 100%;
	background: var(--c-white);
	font-family: var(--f-sans);
}

.ais-refinement-list--item__active .ais-refinement-list--label::before {
	content: "✓\00A0\00A0";
	display: inline-block;
	font-family: var(--f-sans);
	font-weight: 600;
	color: var(--c-green);
}

.ais-refinement-list--label {
	cursor: pointer;
}
.ais-refinement-list--label:hover {
	text-decoration: underline;
}

.ais-refinement-list--checkbox {
	display: none;
}

.ais-refinement-list--count {
	font-family: var(--f-sans);
	font-size: 80%;
	background: var(--c-ltgreen);
	font-weight: 600;
	border-radius: 100em;
	padding: 2px 0.8rem;
	margin-left: 1rem;
	display: inline-block;
	text-align: center;
	min-width: 3rem;
}

.algolia-logo {
	-webkit-filter: grayscale(0.8);
	filter: grayscale(0.8);
	display: block;
	margin-top: 2rem;
	margin-left: auto;
}

.person {
	margin-bottom: calc(var(--f-leading) * 4 * 1rem);
}
@media (min-width: 1400px) {
	.person {
		display: flex;
		align-items: flex-start;
	}
}
.person:last-child {
	margin-bottom: 0;
}

.person__role {
	color: var(--c-green);
	font-family: var(--f-sans);
	font-weight: 600;
	/*
	@include smallcaps();
	font-size:80%;
*/
}

@media (min-width: 900px) {
	.person__name {
		display: inline-block;
	}
	.person__role {
		display: inline-block;
		color: var(--c-green);
		margin-left: 1rem;
	}
}

.portrait {
	box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-dkgreen),
		inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-dkgreen);
	line-height: 0;
	display: inline-block;
	width: 65%;
	height: 60vw;
	margin: 0;
	overflow: hidden;
	transition: width var(--a-dur), height var(--a-dur);
}
@media (min-width: 600px) {
	.portrait {
		margin: 2rem calc(var(--f-leading) * 3 * 1rem) 1rem 8px;
		width: 20rem;
		min-width: 20rem;
		height: auto;
		float: left;
	}
}
.portrait img {
	width: 100%;
	height: auto;
}

.recordings {
	display: flex;
	flex-wrap: wrap;
	margin: 1rem -1rem;
}

.recording {
	flex: 30rem;
	margin: 1rem;
	padding: 2rem;
	min-height: 18rem;
	position: relative;
	overflow: hidden;
	background: var(--c-dkgreen);
	display: flex;
	align-items: flex-end;
	text-decoration: none;
}
.recording__img {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background-size: cover;
	background-position: center center;
	opacity: 0.7;
	transition: 0.2s opacity ease;
}
.recording__text {
	position: relative;
	z-index: 2;
	color: var(--c-white);
	text-shadow: rgba(0, 0, 0, 0.5) 1px 2px 30px, black 1px 3px 8px,
		black 1px 1px 4px;
}
.recording h3,
.recording .sermon__title,
.recording .ais-header {
	color: var(--c-ltgreen);
	line-height: 0.8;
	transition: 0.2s color ease;
}
.recording:hover .recording__img {
	opacity: 0.9;
}
.recording:hover h3,
.recording:hover .sermon__title,
.recording:hover .ais-header {
	color: var(--c-white);
}
.recording--empty {
	padding: unset;
	min-height: unset;
	margin-top: unset;
	margin-bottom: unset;
	background: unset;
}

.hero--home {
	height: auto;
	min-height: auto;
	padding: 0;
	display: block;
}

.hero-tile {
	width: 100%;
	min-height: 70vh;
	background: center center;
	background-size: cover;
}

.body-home .primary {
	margin-top: -8rem;
	z-index: 1011;
	max-width: 150rem;
}
@media (min-width: 900px) {
	.body-home .primary {
		margin-top: 0;
	}
}
.body-home figure {
	box-shadow: none;
	padding: 0;
	width: 100%;
	margin: calc(var(--f-leading) * 2 * 1rem) auto;
}

.home-cols {
	display: flex;
	flex-direction: column-reverse;
}

@media (min-width: 900px) {
	.home-cols {
		flex-direction: row;
		z-index: 1010;
		justify-content: center;
	}
	.home-col {
		flex: 1;
	}
	.home-col--2 {
		margin-left: calc(var(--f-leading) * 4 * 1rem);
		margin-top: calc(-10rem - 10vh);
	}
}
@media (min-width: 900px) and (min-width: 1400px) {
	.home-col--2 {
		margin-left: 5vmax;
	}
}
.home-col--3 {
	flex-basis: 100%;
}

.home-block--join-us {
	box-shadow: inset 0 0 0 2px var(--c-cream), inset 0 0 0 4px var(--c-brown),
		inset 0 0 0 6px var(--c-cream), inset 0 0 0 8px var(--c-brown);
	display: block;
	background: var(--c-cream);
	padding: calc(var(--f-leading) * 2 * 1rem);
	text-align: center;
	max-width: 60rem;
	margin: 0 auto calc(var(--f-leading) * 3 * 1rem);
	position: relative;
	transition: -webkit-transform 0.2s ease;
	transition: transform 0.2s ease;
	transition: transform 0.2s ease, -webkit-transform 0.2s ease;
	top: 0;
}
.home-block--join-us:hover {
	-webkit-transform: translateY(-0.75rem);
	transform: translateY(-0.75rem);
}
.home-block--join-us svg {
	fill: var(--c-brown);
	max-width: 50rem;
}
@media (min-width: 900px) {
	.home-block--join-us {
		padding: calc(var(--f-leading) * 3 * 1rem);
	}
}
.home-block--what-to-expect {
	margin: 0 0 calc(var(--f-leading) * 3 * 1rem);
	/*
	@include breakpoint($med){
		display:flex;
		
		.home-block-img{
			margin-right:rvr(1);
			flex:1 0 16rem;
		}
		
		img{
			width:100%;
			height: auto;
		}
	}
*/
}
@media (min-width: 600px) {
	.home-block--what-to-expect {
		box-shadow: inset 0 0 0 2px var(--c-white), inset 0 0 0 4px var(--c-green),
			inset 0 0 0 6px var(--c-white), inset 0 0 0 8px var(--c-green);
		padding: calc(var(--f-leading) * 2 * 1rem)
			calc(var(--f-leading) * 2.5 * 1rem);
	}
}
.home-block--what-to-expect p {
	margin: 0;
}

.home-span {
	margin-bottom: calc(var(--f-leading) * 2 * 1rem);
}

@media (min-width: 900px) {
	.home-sermons h2 {
		background: url(/assets/images/jon-sermons-header.jpg);
		background-size: cover;
		padding: calc(var(--f-leading) * 2 * 1rem);
		border: 2px solid var(--c-white);
		margin: 0.5rem;
	}
	.home-sermons h2 a {
		text-decoration: none;
		color: var(--c-white);
		text-shadow: rgba(0, 0, 0, 0.5) 1px 2px 30px, black 1px 3px 8px,
			black 1px 1px 4px;
	}
}

.body-home .fc-header-toolbar {
	display: none;
}

.fc-day-grid-container.fc-day-grid-container.fc-day-grid-container.fc-day-grid-container {
	max-height: 400px;
	overflow: hidden;
}

.read-more {
	display: block;
	text-align: right;
	font-style: italic;
	margin-top: calc(var(--f-leading) * 1 * 1rem);
}

.body-annual-report .violator,
.body-annual-report-report .violator,
.body-locked-pages-login .violator {
	display: none;
}

.body-annual-report-report .secondary {
	flex: unset;
}

.docket-container ol {
	padding-left: calc(var(--f-leading) * 1 * 1rem);
}
.docket-container ol > li > ul {
	margin: 0;
	padding: 0 0 0 calc(var(--f-leading) * 1 * 1rem);
}

.credit.credit {
	text-align: right;
	font-style: italic;
	text-indent: 0;
	margin-top: calc(var(--f-leading) * 1 * 1rem);
	font-size: 0.9em;
}

@media (min-width: 600px) {
	.mobile-only {
		display: none;
	}
}

.sharingbuttons {
	font: 1.4rem/1em var(--f-sans);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}
@media (min-width: 600px) {
	.sharingbuttons {
		margin: 1rem -0.25rem;
	}
}
.sharingbuttons a {
	border: none;
	color: var(--c-white);
	text-decoration: none;
}

/* =============== */
.resp-sharing-button__link,
.resp-sharing-button__icon {
	display: inline-block;
}

.resp-sharing-button__link {
	text-decoration: none;
	color: #fff;
	margin: 0.25em;
}

.resp-sharing-button {
	transition: 150ms ease-out;
	padding: 0.75em 1em;
	background-image: url(../images/transparent200.png);
	background-position: center center;
	display: flex;
	align-items: center;
}

.resp-sharing-button__icon svg {
	width: 1.5em;
	height: 1.5em;
	margin-right: 1em;
	vertical-align: top;
}

.resp-sharing-button--small svg {
	margin: 0;
	vertical-align: middle;
}

/* Non solid icons get a stroke */
.resp-sharing-button__icon {
	stroke: #fff;
	fill: none;
}

/* Solid icons get a fill */
.resp-sharing-button__icon--solid,
.resp-sharing-button__icon--solidcircle {
	fill: #fff;
	stroke: none;
}

.resp-sharing-button--twitter {
	background-color: #549cc3;
}

.resp-sharing-button--twitter:hover {
	background-color: #348cc0;
}

.resp-sharing-button--pinterest {
	background-color: #9d2a30;
}

.resp-sharing-button--pinterest:hover {
	background-color: #7a282b;
}

.resp-sharing-button--facebook {
	background-color: #426287;
}

.resp-sharing-button--facebook:hover {
	background-color: #38536d;
}

.resp-sharing-button--tumblr {
	background-color: #3d555d;
}

.resp-sharing-button--tumblr:hover {
	background-color: #304447;
}

.resp-sharing-button--reddit {
	background-color: #5b8fad;
}

.resp-sharing-button--reddit:hover {
	background-color: #417ea4;
}

.resp-sharing-button--google {
	background-color: #b35944;
}

.resp-sharing-button--google:hover {
	background-color: #a04834;
}

.resp-sharing-button--linkedin {
	background-color: #18779b;
}

.resp-sharing-button--linkedin:hover {
	background-color: #1b6983;
}

.resp-sharing-button--email {
	background-color: #6c7770;
}

.resp-sharing-button--email:hover {
	background-color: #5a665e;
}

.resp-sharing-button--xing {
	background-color: #2b766f;
}

.resp-sharing-button--xing:hover {
	background-color: #245952;
}

.resp-sharing-button--whatsapp {
	background-color: #32b864;
}

.resp-sharing-button--whatsapp:hover {
	background-color: #2d9a55;
}

.resp-sharing-button--hackernews {
	background-color: #cb6b1d;
}

.resp-sharing-button--hackernews:hover,
.resp-sharing-button--hackernews:focus {
	border-color: #c8691d;
}

.resp-sharing-button--vk {
	border-color: #507488;
}

.resp-sharing-button--vk:hover {
	border-color: #476a7f;
}

.resp-sharing-button--facebook {
	border-color: #426287;
	border-color: #426287;
}

.resp-sharing-button--facebook:hover,
.resp-sharing-button--facebook:active {
	background-color: #38536d;
	border-color: #38536d;
}

.resp-sharing-button--twitter {
	background-color: #549cc3;
	border-color: #549cc3;
}

.resp-sharing-button--twitter:hover,
.resp-sharing-button--twitter:active {
	background-color: #348cc0;
	border-color: #348cc0;
}

.resp-sharing-button--google {
	background-color: #b35944;
	border-color: #b35944;
}

.resp-sharing-button--google:hover,
.resp-sharing-button--google:active {
	background-color: #a04834;
	border-color: #a04834;
}

.resp-sharing-button--tumblr {
	background-color: #3d555d;
	border-color: #3d555d;
}

.resp-sharing-button--tumblr:hover,
.resp-sharing-button--tumblr:active {
	background-color: #304447;
	border-color: #304447;
}

.resp-sharing-button--email {
	background-color: #6c7770;
	border-color: #6c7770;
}

.resp-sharing-button--email:hover,
.resp-sharing-button--email:active {
	background-color: #5a665e;
	border-color: #5a665e;
}

.resp-sharing-button--pinterest {
	background-color: #9d2a30;
	border-color: #9d2a30;
}

.resp-sharing-button--pinterest:hover,
.resp-sharing-button--pinterest:active {
	background-color: #7a282b;
	border-color: #7a282b;
}

.resp-sharing-button--linkedin {
	background-color: #18779b;
	border-color: #18779b;
}

.resp-sharing-button--linkedin:hover,
.resp-sharing-button--linkedin:active {
	background-color: #1b6983;
	border-color: #1b6983;
}

.resp-sharing-button--reddit {
	background-color: #5b8fad;
	border-color: #5b8fad;
}

.resp-sharing-button--reddit:hover,
.resp-sharing-button--reddit:active {
	background-color: #417ea4;
	border-color: #417ea4;
}

.resp-sharing-button--xing {
	background-color: #2b766f;
	border-color: #2b766f;
}

.resp-sharing-button--xing:hover .resp-sharing-button--xing:active {
	background-color: #245952;
	border-color: #245952;
}

.resp-sharing-button--whatsapp {
	background-color: #32b864;
	border-color: #32b864;
}

.resp-sharing-button--whatsapp:hover,
.resp-sharing-button--whatsapp:active {
	background-color: #2d9a55;
	border-color: #2d9a55;
}

.resp-sharing-button--hackernews {
	background-color: #cb6b1d;
	border-color: #cb6b1d;
}

.resp-sharing-button--hackernews:hover .resp-sharing-button--hackernews:active {
	background-color: #c8691d;
	border-color: #c8691d;
}

.resp-sharing-button--vk {
	background-color: #507488;
	border-color: #507488;
}

.resp-sharing-button--vk:hover .resp-sharing-button--vk:active {
	background-color: #476a7f;
	border-color: #476a7f;
}

.resp-sharing-button--telegram {
	background-color: #539ac1;
}

.resp-sharing-button--telegram:hover {
	background-color: #4d8eaf;
}

.calendar-event {
	--c: var(--c-ltgreen);
	--day-block: 10rem;
	--border-width: 5px;
	border: var(--border-width) solid var(--c);
	margin: 0 0 calc(var(--f-leading) * 2 * 1rem);
	position: relative;
}
.calendar-event--no-image {
	min-height: calc(calc(var(--border-width) * 2) + calc(var(--day-block)));
}
@media (min-width: 600px) {
	.calendar-event--no-image {
		display: flex;
		flex-direction: row;
		padding-left: var(--day-block);
	}
}
.calendar-event--has-image {
	display: flex;
	flex-direction: column;
}

.calendar-event--tbd {
	--c: var(--c-cream);
}

.calendar-event--cancelled {
	overflow: clip;
}
.calendar-event--cancelled:before {
	content: "Cancelled";
	position: absolute;
	display: block;
	text-align: center;
	left: -6.5rem;
	top: -1.5rem;
	background: var(--c-yellow);
	color: var(--c-dkgreen);
	z-index: 5;
	-webkit-transform: rotate(-25deg);
	transform: rotate(-25deg);
	padding: 1rem 10rem;
}

.calendar-event--has-image {
	padding-left: 0;
}
@media (min-width: 900px) {
	.calendar-event--has-image {
		flex-direction: row;
	}
}
.event-day {
	width: var(--day-block);
	height: var(--day-block);
	font-size: 5rem;
	background: var(--c);
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
}
.calendar-event--no-image .event-day {
	float: left;
	margin: 0 2rem 1rem 0;
}
.calendar-event--has-image .event-day {
	position: absolute;
	left: 0;
	top: 0;
}
@media (min-width: 600px) {
	.event-day {
		position: absolute;
		left: 0;
		top: 0;
		float: unset;
		margin: unset;
	}
}
.calendar-event--tbd .event-day {
	font-size: 3rem;
	letter-spacing: 0.04em;
	font-family: var(--f-sans);
	font-weight: 600;
}

.event-info {
	margin: calc(var(--f-leading) * 1 * 1rem) calc(var(--f-leading) * 1 * 1rem)
		calc(var(--f-leading) * 1.5 * 1rem) calc(var(--f-leading) * 2 * 1rem);
}
.calendar-event--has-image .event-info {
	flex: 40%;
}

.event-meta {
	font-family: var(--f-sans);
	font-weight: 600;
}

.event-title {
	padding: 0;
	position: relative;
}
.event-title .event-permalink {
	position: absolute;
	text-align: right;
	width: 2rem;
	left: -2.25rem;
	opacity: 0;
	transition: opacity var(--a-dur) ease;
}
.calendar-event:hover .event-title .event-permalink {
	opacity: 1;
}

.event-image {
	flex: 20rem;
	margin: 0;
	width: 100%;
	min-height: 25vh;
	background-size: cover;
}
@media (min-width: 900px) {
	.event-image {
		height: unset;
	}
}
.event-text {
	clear: both;
	margin-top: calc(var(--f-leading) * 0.5 * 1rem);
}

.event-button {
	--button-bg: var(--c-grey);
	--button-hoverbg: var(--c-ltgreen);
	margin: calc(var(--f-leading) * 1 * 1rem) auto 0;
}
.event-button:first-of-type {
	--button-bg: unset;
	--button-hoverbg: unset;
}

/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
	position: absolute;
	left: 0;
	top: 0;
}

.leaflet-container {
	overflow: hidden;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	-webkit-user-drag: none;
}

/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
	image-rendering: -webkit-optimize-contrast;
}

/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
	width: 1600px;
	height: 1600px;
	-webkit-transform-origin: 0 0;
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
	display: block;
}

/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg,
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer {
	max-width: none !important;
	max-height: none !important;
}

.leaflet-container.leaflet-touch-zoom {
	touch-action: pan-x pan-y;
}

.leaflet-container.leaflet-touch-drag {
	/* Fallback for FF which doesn't support pinch-zoom */
	touch-action: none;
	touch-action: pinch-zoom;
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
	touch-action: none;
}

.leaflet-container {
	-webkit-tap-highlight-color: transparent;
}

.leaflet-container a {
	-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}

.leaflet-tile {
	-webkit-filter: inherit;
	filter: inherit;
	visibility: hidden;
}

.leaflet-tile-loaded {
	visibility: inherit;
}

.leaflet-zoom-box {
	width: 0;
	height: 0;
	box-sizing: border-box;
	z-index: 800;
}

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
	-moz-user-select: none;
}

.leaflet-pane {
	z-index: 400;
}

.leaflet-tile-pane {
	z-index: 200;
}

.leaflet-overlay-pane {
	z-index: 400;
}

.leaflet-shadow-pane {
	z-index: 500;
}

.leaflet-marker-pane {
	z-index: 600;
}

.leaflet-tooltip-pane {
	z-index: 650;
}

.leaflet-popup-pane {
	z-index: 700;
}

.leaflet-map-pane canvas {
	z-index: 100;
}

.leaflet-map-pane svg {
	z-index: 200;
}

.leaflet-vml-shape {
	width: 1px;
	height: 1px;
}

.lvml {
	behavior: url(#default#VML);
	display: inline-block;
	position: absolute;
}

/* control positioning */
.leaflet-control {
	position: relative;
	z-index: 800;
	pointer-events: visiblePainted;
	/* IE 9-10 doesn't have auto */
	pointer-events: auto;
}

.leaflet-top,
.leaflet-bottom {
	position: absolute;
	z-index: 1000;
	pointer-events: none;
}

.leaflet-top {
	top: 0;
}

.leaflet-right {
	right: 0;
}

.leaflet-bottom {
	bottom: 0;
}

.leaflet-left {
	left: 0;
}

.leaflet-control {
	float: left;
	clear: both;
}

.leaflet-right .leaflet-control {
	float: right;
}

.leaflet-top .leaflet-control {
	margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
	margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
	margin-left: 10px;
}

.leaflet-right .leaflet-control {
	margin-right: 10px;
}

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-tile {
	will-change: opacity;
}

.leaflet-fade-anim .leaflet-popup {
	opacity: 0;
	transition: opacity 0.2s linear;
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
	opacity: 1;
}

.leaflet-zoom-animated {
	-webkit-transform-origin: 0 0;
	transform-origin: 0 0;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
	will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
	transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
	transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
	transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1),
		-webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
	transition: none;
}

.leaflet-zoom-anim .leaflet-zoom-hide {
	visibility: hidden;
}

/* cursors */
.leaflet-interactive {
	cursor: pointer;
}

.leaflet-grab {
	cursor: -moz-grab;
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
	cursor: crosshair;
}

.leaflet-popup-pane,
.leaflet-control {
	cursor: auto;
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
	cursor: move;
	cursor: -moz-grabbing;
}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
	pointer-events: none;
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive {
	pointer-events: visiblePainted;
	/* IE 9-10 doesn't have auto */
	pointer-events: auto;
}

/* visual tweaks */
.leaflet-container {
	background: #ddd;
	outline: 0;
}

.leaflet-container a {
	color: #0078a8;
}

.leaflet-container a.leaflet-active {
	outline: 2px solid orange;
}

.leaflet-zoom-box {
	border: 2px dotted #38f;
	background: rgba(255, 255, 255, 0.5);
}

/* general typography */
.leaflet-container {
	font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
}

/* general toolbar styles */
.leaflet-bar {
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
	border-radius: 4px;
}

.leaflet-bar a,
.leaflet-bar a:hover {
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	width: 26px;
	height: 26px;
	line-height: 26px;
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: block;
}

.leaflet-bar a:hover {
	background-color: #f4f4f4;
}

.leaflet-bar a:first-child {
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}

.leaflet-bar a:last-child {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom: none;
}

.leaflet-bar a.leaflet-disabled {
	cursor: default;
	background-color: #f4f4f4;
	color: #bbb;
}

.leaflet-touch .leaflet-bar a {
	width: 30px;
	height: 30px;
	line-height: 30px;
}

.leaflet-touch .leaflet-bar a:first-child {
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
}

.leaflet-touch .leaflet-bar a:last-child {
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
}

/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
	font: bold 18px "Lucida Console", Monaco, monospace;
	text-indent: 1px;
}

.leaflet-touch .leaflet-control-zoom-in,
.leaflet-touch .leaflet-control-zoom-out {
	font-size: 22px;
}

/* layers control */
.leaflet-control-layers {
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
	background: #fff;
	border-radius: 5px;
}

.leaflet-control-layers-toggle {
	background-image: url(images/layers.png);
	width: 36px;
	height: 36px;
}

.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(images/layers-2x.png);
	background-size: 26px 26px;
}

.leaflet-touch .leaflet-control-layers-toggle {
	width: 44px;
	height: 44px;
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
	display: none;
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
	display: block;
	position: relative;
}

.leaflet-control-layers-expanded {
	padding: 6px 10px 6px 6px;
	color: #333;
	background: #fff;
}

.leaflet-control-layers-scrollbar {
	overflow-y: scroll;
	overflow-x: hidden;
	padding-right: 5px;
}

.leaflet-control-layers-selector {
	margin-top: 2px;
	position: relative;
	top: 1px;
}

.leaflet-control-layers label {
	display: block;
}

.leaflet-control-layers-separator {
	height: 0;
	border-top: 1px solid #ddd;
	margin: 5px -10px 5px -6px;
}

/* Default icon URLs */
.leaflet-default-icon-path {
	background-image: url(images/marker-icon.png);
}

/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
	background: #fff;
	background: rgba(255, 255, 255, 0.7);
	margin: 0;
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
	padding: 0 5px;
	color: #333;
}

.leaflet-control-attribution a {
	text-decoration: none;
}

.leaflet-control-attribution a:hover {
	text-decoration: underline;
}

.leaflet-container .leaflet-control-attribution,
.leaflet-container .leaflet-control-scale {
	font-size: 11px;
}

.leaflet-left .leaflet-control-scale {
	margin-left: 5px;
}

.leaflet-bottom .leaflet-control-scale {
	margin-bottom: 5px;
}

.leaflet-control-scale-line {
	border: 2px solid #777;
	border-top: none;
	line-height: 1.1;
	padding: 2px 5px 1px;
	font-size: 11px;
	white-space: nowrap;
	overflow: hidden;
	box-sizing: border-box;
	background: #fff;
	background: rgba(255, 255, 255, 0.5);
}

.leaflet-control-scale-line:not(:first-child) {
	border-top: 2px solid #777;
	border-bottom: none;
	margin-top: -2px;
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
	border-bottom: 2px solid #777;
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	box-shadow: none;
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	border: 2px solid rgba(0, 0, 0, 0.2);
	background-clip: padding-box;
}

/* popup */
.leaflet-popup {
	position: absolute;
	text-align: center;
	margin-bottom: 20px;
}

.leaflet-popup-content-wrapper {
	padding: 1px;
	text-align: left;
	border-radius: 12px;
}

.leaflet-popup-content {
	margin: 13px 19px;
	line-height: 1.4;
}

.leaflet-popup-content p {
	margin: 18px 0;
}

.leaflet-popup-tip-container {
	width: 40px;
	height: 20px;
	position: absolute;
	left: 50%;
	margin-left: -20px;
	overflow: hidden;
	pointer-events: none;
}

.leaflet-popup-tip {
	width: 17px;
	height: 17px;
	padding: 1px;
	margin: -10px auto 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
	background: white;
	color: #333;
	box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-container a.leaflet-popup-close-button {
	position: absolute;
	top: 0;
	right: 0;
	padding: 4px 4px 0 0;
	border: none;
	text-align: center;
	width: 18px;
	height: 14px;
	font: 16px/14px Tahoma, Verdana, sans-serif;
	color: #c3c3c3;
	text-decoration: none;
	font-weight: bold;
	background: transparent;
}

.leaflet-container a.leaflet-popup-close-button:hover {
	color: #999;
}

.leaflet-popup-scrolled {
	overflow: auto;
	border-bottom: 1px solid #ddd;
	border-top: 1px solid #ddd;
}

.leaflet-oldie .leaflet-popup-content-wrapper {
	zoom: 1;
}

.leaflet-oldie .leaflet-popup-tip {
	width: 24px;
	margin: 0 auto;
	-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
	filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}

.leaflet-oldie .leaflet-popup-tip-container {
	margin-top: -1px;
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
	border: 1px solid #999;
}

/* div icon */
.leaflet-div-icon {
	background: #fff;
	border: 1px solid #666;
}

/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
	position: absolute;
	padding: 6px;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 3px;
	color: #222;
	white-space: nowrap;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	pointer-events: none;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.leaflet-tooltip.leaflet-clickable {
	cursor: pointer;
	pointer-events: auto;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	position: absolute;
	pointer-events: none;
	border: 6px solid transparent;
	background: transparent;
	content: "";
}

/* Directions */
.leaflet-tooltip-bottom {
	margin-top: 6px;
}

.leaflet-tooltip-top {
	margin-top: -6px;
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
	left: 50%;
	margin-left: -6px;
}

.leaflet-tooltip-top:before {
	bottom: 0;
	margin-bottom: -12px;
	border-top-color: #fff;
}

.leaflet-tooltip-bottom:before {
	top: 0;
	margin-top: -12px;
	margin-left: -6px;
	border-bottom-color: #fff;
}

.leaflet-tooltip-left {
	margin-left: -6px;
}

.leaflet-tooltip-right {
	margin-left: 6px;
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	top: 50%;
	margin-top: -6px;
}

.leaflet-tooltip-left:before {
	right: 0;
	margin-right: -12px;
	border-left-color: #fff;
}

.leaflet-tooltip-right:before {
	left: 0;
	margin-left: -12px;
	border-right-color: #fff;
}

.flex {
	display: flex;
}

.catalog .ais-search-box {
	margin: 2rem 0;
}

.catalog__table {
	border-collapse: collapse;
	font-size: 0.9em;
	font-family: var(--f-sans);
	width: 100%;
	border: 2px solid var(--c-green);
}
.catalog__table td,
.catalog__table th {
	border: 1px solid var(--c-green);
	padding: 0.5rem 1rem;
	vertical-align: top;
}

.catalog__header th {
	font-family: var(--f-sans);
	text-align: left;
	border-bottom-width: 2px;
	color: var(--c-green);
}

.catalog__loc {
	display: block;
	font-size: 0.8em;
	font-family: var(--f-sans);
	color: var(--c-ltgreen);
	font-weight: 600;
}

.catalog__table th:first-child {
	width: 75%;
}

.catalog__table th:last-child {
	width: 25%;
}

th.sort {
	cursor: pointer;
}

th.sort.asc::after {
	content: "\00a0↓";
}

th.sort.desc::after {
	content: "\00a0↑";
}

.ft {
	border-collapse: collapse;
	font-family: var(--f-sans);
	border: 2px solid var(--c-green);
}
.ft td,
.ft th {
	border: 1px solid var(--c-green);
	padding: 0.5rem 1rem;
	vertical-align: top;
}
.ft .ft__dollar {
	border-right: 0;
}
.ft .ft__amount {
	border-left: 0;
	text-align: right;
}

/*
.input[type="password"] {
  padding: .5rem;
  font-size:inherit;
  font-family:inherit;
  border:mix(var(--c-green), var(--c-white)) 1px solid;
  
  &:hover{
  	border-color:var(--c-dkgreen);
  }
  
  &:focus{
    outline:2px solid var(--c-dkgreen);
  }
}

*/
blockquote {
	color: var(--c-green);
	font-style: italic;
}
blockquote footer {
	font-style: normal;
}

.header-tag {
	font-family: var(--f-sans);
	color: var(--c-green);
	text-transform: uppercase;
}

.prev-next {
	margin: calc(var(--f-leading) * 2 * 1rem) 0 0;
	display: flex;
}

.prev-next__item {
	flex: 50%;
}
.prev-next__item span {
	display: block;
	text-transform: uppercase;
	font-size: 0.9em;
}
.prev-next__item:nth-child(2) {
	text-align: right;
}

.admin-edit-link {
	display: none;
}
@media (min-width: 900px) {
	.admin-edit-link {
		display: block;
		position: fixed;
		z-index: 9999;
		top: -4rem;
		right: -8rem;
		padding: 1rem 6rem 0.5rem;
		font-size: 1em;
		background: var(--c-dkgreen);
		color: var(--c-white);
		-webkit-transform: rotate(35deg);
		transform: rotate(35deg);
		-webkit-transform-origin: top left;
		transform-origin: top left;
		text-decoration: none;
		opacity: 0.4;
		transition: opacity 0.2s, margin-top 0.2s;
	}
	.admin-edit-link:hover {
		opacity: 1;
	}
	.admin-edit-link:active {
		margin-top: 0.5rem;
	}
}
