/* Typography
--------------------------------------------------------------------------- */
.medium-weight {
	font-family: var(--medium);
}

p.giant-text {
	font-size: 2.25rem;
}

p.no-bottom-margin {
	margin-bottom: 0;
}

/* Drop Caps
---------------------------------------------------------------------------- */

.site-container p.has-drop-cap:not(:focus)::first-letter {
	margin: 0.02em 0.08em 0 -0.08em;
}

.site-container p.has-larger-font-size.has-drop-cap:not(:focus)::first-letter,
.site-container p.has-small-font-size.has-drop-cap:not(:focus)::first-letter {
	margin-right: 0.01em;
}

/* Paragraphs
---------------------------------------------------------------------------- */

/* .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
	padding-left: 1.875rem;
	padding-right: 1.875rem;
} */

/* Headings
---------------------------------------------------------------------------- */

h1.light,
h2.light,
h3.light,
h4.light,
h5.light,
h6.light {
	color: var(--lighter-gray);
}

/* Background Color
---------------------------------------------------------------------------- */

.site-container p.has-background {
	padding: 1.25rem;
}

.site-container p.has-background.box-shadow {
	box-shadow: 0 0 1.25rem rgba(0, 0, 0, 0.1);
}

.site-container p.has-text-color a,
.site-container p.has-background a {
	color: inherit;
	text-decoration: underline;
}

.site-container p.has-background a:focus,
.site-container p.has-background a:hover,
.site-container p.has-text-color a:focus,
.site-container p.has-text-color a:hover {
	color: inherit;
	text-decoration: none;
}

.site-container p.has-background.light-text a,
.site-container p.has-background.light-text a:visited
.has-white-color a,
.has-white-color a:visited {
	color: var(--link-alt);
	text-decoration: underline;
}

.site-container p.has-background.light-text a:focus,
.site-container p.has-background.light-text a:hover {
	text-decoration: none;
}

.has-box-shadow {
	box-shadow: 2px 2px 5px rgba(53, 53, 47, 0.2);
}

/* Legacy styles */

.has-orange-background-color {
	background-color: var(--a11y-orange);
}

.has-purple-background-color {
	background-color: var(--purple);
}

.has-blueish-background-color {
	background-color: var(--blue);
}

.has-green-background-color {
	background-color: var(--green);
}

.has-black-background-color {
	background-color: var(--thunder);
}

.has-p-99-background-color {
	background-color: var(--p99);
}

.has-regular-font-size {
	font-size: 20px;
	font-size: 1.25rem;
}

.has-lgbtq-background-color {
	background-image: var(--lgbtq);
}

.has-lgbtq-color {
	font-family: var(--heavy);
	background-image: var(--lgbtq);
	  -webkit-background-clip: text;
	  -webkit-text-fill-color: transparent;
}

/* Alignment
---------------------------------------------------------------------------- */

.has-text-align-center {
	text-align: center;
}

.has-text-align-left {
	text-align: left;
}

.has-text-align-right {
	text-align: right;
}

.wp-block-button.alignleft,
.wp-block-cover.alignleft,
.wp-block-image .alignleft {
	margin-right: 2em;
}

.wp-block-button.alignright,
.wp-block-cover.alignright,
.wp-block-image .alignright {
	margin-left: 2em;
}

.wp-block-image.alignwide,
.wp-block-image.alignfull,
.wp-block-embed.alignwide,
.wp-block-embed.alignfull {
	margin-bottom: 1.875rem;
}

.full-width-content .entry-content > .alignfull {
	margin-left: calc(-100vw / 2 + 100% / 2);
	margin-right: calc(-100vw / 2 + 100% / 2);
	max-width: 100vw;
}

.content-sidebar .site-container .alignfull,
.sidebar-content .site-container .alignfull {
	margin: 0 0 2em;
	width: 100%;
}

.aligncenter {
	max-width: 80%;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (max-width: 600px) {

	.wp-block-button.home-contact {
		float: left;
		margin-left: 0;
	}

}

/* Columns
---------------------------------------------------------------------------- */
.site-container .wp-block-columns {
	margin-bottom: 1.875rem;
}

.site-container .wp-block-columns.alignfull {
	padding: 0 1.875rem;
}

/* Cover Image
---------------------------------------------------------------------------- */

.full-width-content .entry-content > .wp-block-cover.alignfull {
	width: 100vw;
}

.site-container .wp-block-cover .wp-block-cover-text {
	font-size: 3rem;
}

/* Buttons
---------------------------------------------------------------------------- */
.site-container .wp-block-button .wp-block-button__link {
	border-width: 0;
	border-radius: 2px;
	cursor: pointer;
	font-size: 1.1875rem;
	font-family: var(--medium);
	font-weight: normal;
	margin-bottom: 1em;
	padding: 0.9375rem 1.875rem;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	white-space: normal;
	width: auto;
}

.site-container .wp-block-button .wp-block-button__link:visited,
.site-container .wp-block-button .wp-block-button__link:hover {
	color: inherit;
}

.site-container .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	text-shadow: .25px .25px .25px var(--dark-gray);
}

.site-container .wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent;
	border-width: 2px;
	border-color: currentColor;
	font-family: var(--heavy);
	font-weight: normal;
	letter-spacing: .5px;
	padding: 0.8125rem 1.75rem;
}

.site-container .wp-block-button.is-style-outline .wp-block-button__link .has-text-color {
	color: currentcolor;
}

.site-container .wp-block-button .wp-block-button__link:focus,
.site-container .wp-block-button .wp-block-button__link:hover,
.site-container .wp-block-button.is-style-outline .wp-block-button__link:focus,
.site-container .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: var(--a11y-orange);
	color: #fff;
}

/* Galleries & Images
------------------------------- */
.blocks-gallery-caption, 
.wp-block-embed figcaption, 
.wp-block-image figcaption {
	color: var(--dark-gray);
	font-size: 1rem;
	font-family: var(--medium-italic);
	font-style: normal;
	font-weight:normal;
	margin-top: 0.5rem;
	margin-bottom: 1rem;
	padding-left: 0.625rem;
	padding-right: 0.625rem;
	text-align: center;
}

.site-container .blocks-gallery-grid,
.site-container .wp-block-gallery {
	padding-left: 0;
}

.wp-block-gallery.columns-4.gallery-no-margins {
	margin: 0;
	box-shadow: 1px 1px 1.25rem rgba(0,0,0,0.5)
}

.wp-block-gallery.columns-4.gallery-no-margins .blocks-gallery-item {
	margin:0;
}

.blocks-gallery-caption {
	width: 100%;
}

.blocks-gallery-item figcaption {
	margin-bottom: 0;
}

.floor-plan-gallery {
	background-color: #eee;
	padding:10px;
	margin:1.875rem 0;
}

/* Embeds
---------------------------------- */
.wp-block-embed {
  position: relative;
  overflow: hidden;
  width: 100%;
}

.wp-block-embed.alignleft {
	margin-right: 1em;
}

.wp-block-embed.alignright {
	margin-left: 1em;
}

.wp-block-embed embed,
.wp-block-embed iframe,
.wp-block-embed object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Tables
----------------------------------- */

.full-width-content .site-container .wp-block-table.alignfull {
	margin: 0;
	width: 100%;
}

/* Menu Table */

.menu-table {
	width:100%;
}

.menu-table td:nth-child(even),
.wp-block-coblocks-food-item__price {
	color: var(--purple);
	font-family: var(--medium-italic);
	font-weight: normal;
}

.menu-table td:nth-child(odd) {
	font-family: var(--heavy);
	font-weight: normal;
}

.menu-table tr {
	border-bottom: 1px dashed var(--warm-gray);
}

/* Table with Shaded Columns */

table.shaded-columns {
	border: 2px solid var(--warm-gray);
}

.shaded-columns td {
	padding:10px;
}

.shaded-columns td:first-of-type {
	font-family: var(--medium);
	font-weight: normal;
}
.shaded-columns td:nth-child(even),
.shaded-columns th:nth-child(even) {
	background-color: var(--light-gray);
}

.shaded-columns tr {
	border-bottom: 1px dashed var(--warm-gray);
}

/* Stripes Style Table */

.wp-block-table.is-style-stripes {
	border-bottom-width: 0;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(2n+1) {
	background-color: var(--lighter-gray);
}


/* Membership Matrix Table */
.membership-matrix td:nth-child(2n),
.membership-matrix th:nth-child(2n) {
    background-color: var(--pale-orange);
}

.membership-matrix tr td:nth-child(3n),
.membership-matrix th:nth-child(3n) {
    background-color: var(--orange);
}

.membership-matrix tr td:last-child,
.membership-matrix tr th:last-child {
    background-color: var(--a11y-orange);
}

@media only screen and (min-width: 960px) {

	.full-width-content .site-container > .wp-block-table.alignwide {
		width: calc(100% + 360px);
	}

	.full-width-content .site-container > .wp-block-table.alignfull {
		margin-left: calc(-100vw / 2 + 100% / 2);
		margin-right: calc(-100vw / 2 + 100% / 2);
		width: 100vw;
	}
}

/* Blockquotes and Pullquotes
---------------------------------------------------------------------------- */

.site-container .wp-block-pullquote,
.site-container .wp-block-quote {
	border: none;
	margin: 1.5rem 1.5rem 2.25rem;
}

.site-container .wp-block-quote p,
.site-container .wp-block-pullquote p {
	font-family: var(--medium-italic);
	font-style: normal;
	font-weight: normal;
	font-size: 1.3125rem;
	line-height: 1.8;
	margin-bottom: 42px;
}

.site-container .wp-block-quote {
	border-top: 8px solid;
	border-bottom: 8px solid;
	background-color: #fff;
	box-shadow: 1px 3px 10px rgba(53,53,47,0.2);
	max-width: 90%;
	margin: 1.875rem auto;
	padding: 2.5rem;
}

.has-gradient-border,
.contact-area.has-gradient-border,
.site-container .wp-block-quote.has-gradient-border {
	border-image-source: var(--lgbtq);
	border-image-slice: 1;
}

.site-container .wp-block-quote p {
	color: var(--dark-gray);
}

.site-container .wp-block-quote cite {
	color: var(--dark-gray);
	font-family: var(--light);
	font-style: normal;
	font-size: 0.9375rem;
	margin-top: -1.5625rem;
	text-transform: uppercase;
}

.wp-block-pullquote.alignleft {
	margin: 0 2em 1.5em 0;
}

.wp-block-pullquote.alignright {
	margin: 0 0 1.5em 2em;
}

.site-container .wp-block-pullquote {
	background-color: var(--lighter-gray);
	padding: 2.5rem;
}

.site-container .wp-block-pullquote blockquote,
.site-container .wp-block-pullquote.is-style-solid-color blockquote {
	max-width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.site-container .wp-block-pullquote p,
.site-container .wp-block-quote.is-style-large p {
	font-size: 1.75rem;
	line-height: 1.5;
}

.site-container .wp-block-pullquote p::before {
	content: "\f122";
	font-family: dashicons;
	font-size: 60px;
	color: var(--link-alt);
	margin-top: -60px;
	margin-left: -60px;
}
.site-container .wp-block-pullquote.is-style-solid-color p {
	color: #fff;
	margin-bottom: 42px;
	text-align: center;
}

.site-container .wp-block-pullquote.is-style-solid-color {
	background-color: var(--dark-gray);
}

.site-container .wp-block-pullquote:not(.is-style-solid-color)[style*="border-color"] {
	border: 2px solid;
	border-left: none;
	border-right: none;
}

.site-container .wp-block-pullquote cite {
	color: var(--thunder);
	display: block;
	font-family: var(--heavy);
	font-size: 1.0625rem;
	font-style: normal;
	font-weight: normal;
	margin-top: -1.5625rem;
	text-align: inherit;
	text-transform: none;
}

.site-container .wp-block-pullquote cite {
	text-align: center;
}

.site-container .wp-block-pullquote.is-style-solid-color cite {
	color: #fff;
}

.site-container .wp-block-pullquote .has-text-color cite,
.site-container .wp-block-pullquote .has-text-color p {
	color: currentColor;
}

/* Category Block
---------------------------------------------------------------------------- */

.site-container .wp-block-categories {
	margin-left: 0;
	padding-left: 0;
}

.site-container .wp-block-categories li {
	list-style-type: none;
}

.site-container .wp-block-categories.aligncenter {
	text-align: center;
}

.site-container .wp-block-categories.alignfull {
	padding: 0 1.875rem;
}

.site-container .wp-block-categories .children {
	padding-left: 1.875rem;
}

/* Latest Posts Block
---------------------------------------------------------------------------- */

.site-container .wp-block-latest-posts {
	margin-left: 0;
	padding-left: 0;
}

.site-container .wp-block-latest-posts li {
	list-style-type: none;
}

.site-container .wp-block-latest-posts.aligncenter {
	text-align: center;
}

.site-container .wp-block-latest-posts.alignfull {
	padding: 0 1.875rem;
}

/* Lists
---------------------------------------------------------------------------- */
.is-style-checkbox li::before {
	background-color: transparent;
	font-family: dashicons;
	content: "\f147";
	mask-image: none;
	top: 0;
}

/* Separator Block
---------------------------------------------------------------------------- */
.wp-block-separator {
	height: 1px;
	background-color: currentColor;
	color: var(--orange);
	margin: 2em auto;
}

.wp-block-separator.has-background:not(.is-style-dots) {
	height: 1px;
}

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
	max-width: 42%;
}

.wp-block-separator.is-style-wide {
	border-bottom-width: 0;
	max-width: 90%;
}



/* Genesis Blocks
---------------------------------------------------------------------------- */
.site-container .gb-block-cta {
	position: relative;
	color: var(--thunder);
}

.site-container .gb-block-cta.aligncenter {
	margin-left: auto;
	margin-right: auto;
}

.site-container .gb-block-cta:not(.alignfull) {
	background: #fff;
	border-bottom: 8px solid var(--purple);
	box-shadow: 1px 3px 10px rgba(117, 60, 190, 0.2);
	border-radius: 2px;
	margin-bottom: 3.125rem;
}

.site-container .gb-block-cta.alignfull {
	background-color: var(--p99);
	border-radius: 0;
	font-size: 1.5rem;
	padding: 4em 2em;
	margin-top: 3.125rem;
	margin-bottom: 3.125rem;
}

.site-container .gb-block-cta h2.gb-cta-title {
	font-family: var(--heavy);
	margin-bottom: 1em;
}


.site-container .gb-block-cta .gb-button,
.site-container .gb-block-button {
	border-radius: 2px;
	font-family: var(--medium);
	font-weight: normal;
	font-size: 1.1875rem;
	letter-spacing: .5px;
	text-shadow: .5px .5px .5px var(--dark-gray);
	text-transform: uppercase;
}

.site-container .gb-block-accordion .gb-accordion-title {
	background: var(--lighter-gray);
	font-family: var(--medium);
}

.site-container .gb-block-profile .gb-profile-name {
	font-weight: normal;
}

.gb-block-post-grid h2 a {
	text-decoration: none;
}

@media only screen and (max-width: 510px) {

	.gb-block-container.alignfull::before {
		content: " ";
		display: table;
	}

	.gb-block-container.alignfull::after {
		clear: both;
		content: " ";
		display: table;
	}

}

/* CoBlocks
------------------------------------------------------------------------- */
.wp-block-coblocks-gallery-collage {
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.entry-content .wp-block-coblocks-gallery-collage ul > li {
	list-style-type: none;
}

.wp-blocks-coblocks-services.is-style-svg-image {
	margin-top: 2.5rem;
	margin-bottom: 2.5rem;
}

.is-style-svg-image .wp-block-coblocks-service {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.is-style-svg-image .wp-block-coblocks-service > .wp-block-button {
	margin-top: auto;
}

.is-style-svg-image .wp-block-coblocks-service__figure {
    display: block;
    margin: 0 0 1rem;
    padding: 1rem;
    position: relative;
    width: 100%
}

.is-style-svg-image .wp-block-coblocks-service__figure>img {
    max-height: 80px;
    object-fit: contain;
    position: relative;
    left: 0;
    top: 0;
    width: auto;
}

.wp-block-coblocks-gallery-carousel .coblocks-gallery--figure {
	
}

.wp-block-coblocks-gallery-carousel .coblocks-gallery--figure img {
	object-fit: fill;
	height: 100%;
}

/* Kadence Blocks
------------------------------------------------------------------------- */

/* Kadence color overrides for LGBTQ gradient */

[style="background-color: linear-gradient( 90deg, #e1261c 12%, #fea30b 24%, #fec526 36%, #66a300 48%, #18a0c7 60%, #0071ce 72%, #753cbe 100% );"] {
	background-image: var(--lgbtq);
}


.kt-block-spacer .kt-divider {
	color: #fff;
}
.wp-block-kadence-advancedbtn {
	margin-top: 1rem;
}

.kt-inside-inner-col > figure {
	width: 100%;
}

.kt-inside-inner-col .wp-block-embed__wrapper {
	width: 100%;
	height: auto;
}

.wp-block-kadence-icon.aligncenter {
	display: grid;
	grid-template-columns: repeat(4, 3.125rem);
	column-gap: 1.25rem;
	justify-content: center;
}



/* Forms
------------------------------------------------------------------------- */
.gform_wrapper.gf_simple_horizontal_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) {
	margin-top:0;
}

.horizontal-signup input[type="email"],
.horizontal-signup input[type="text"] {
  border: 1px solid #E3D8F2;
  border-radius: 3px;
}

/* Other Blocks
---------------------------------------------------------------------------- */

.block-area.block-area-sitewide-banner {
	margin-left: calc(-100vw / 2 + 100% / 2);
	margin-right: calc(-100vw / 2 + 100% / 2);
	max-width: 100vw;
}

.wp-block-pb-accordion-item.c-accordion__item {
	margin-top: 1rem;
}

.wp-block-preformatted,
.wp-block-verse {
	font-size: 16px;
}

.wp-block-preformatted {
	white-space: pre-wrap;
}

.wp-block-audio audio {
	display: inline-block;
	width: 100%;
}

.wp-block-file {
    margin-bottom: 1.5em;
    margin-top: 1.5em;
}

.wp-block-file .wp-block-file__button {
	background-color: var(--purple);
	border: 2px solid var(--purple);
	border-radius: 1px;
	color: #fff;
	cursor: pointer;
	font-size: 1.25rem;
	font-family: var(--medium);
	padding: 0.9375rem 1.875rem;
	text-align: center;
	text-decoration: none;
	white-space: normal;
	width: auto;
}

.wp-block-file a.wp-block-file__button:active, 
.wp-block-file a.wp-block-file__button:focus, 
.wp-block-file a.wp-block-file__button:hover {
	background-color: #fff;
	color: var(--purple);
}

.wp-block-file a.wp-block-file__button:visited {
	background-color: var(--visited);
	border-color: var(--visited);
	color: #fff;
}


@media only screen and (max-width: 600px) {

	.wp-block-media-text.is-stacked-on-mobile figure {
		margin-bottom: 1.25rem;
	}

}

/* Tribe Events Blocks
------------------------------------- */

#tribe-events-content a.wp-block-button__link, 
.tribe-events-event-meta a.wp-block-button__link {
/*     color: #fff; */
    text-decoration: none;
}

/* #tribe-events-content a.wp-block-button__link:hover,
#tribe-events-content a.wp-block-button__link:active {
	background-color: var(--a11y-orange);
	color: inherit;
} */

/* #tribe-events-content .wp-block-kadence-advancedbtn a {
	color: #fff;
} */

/* .site-container #tribe-events-content .wp-block-kadence-advancedbtn a:hover {
	color: unset;
} */

#tribe-events-content ul {
	margin-left: 1rem;
	margin-bottom: 1.25rem;
}

#tribe-events-content ul > li {
	list-style-type: disc;
	margin-left: 1rem;
}

#tribe-events-content .tribe-block__event-price {
	padding: 0;
	margin: 1em 0;
}

.tribe-theme-genesis .tribe-block__event-price__cost {
	font-family: var(--heavy);
	font-size: 1.5rem;
	line-height: 1.2;
	color: var(--purple);
}
#tribe-events-content .tribe-events-schedule {
	padding-right: 1rem;
}

#tribe-events-content .tribe-events-schedule p,
#tribe-events-content .tribe-events-schedule h3,
#tribe-events-content .tribe-events-schedule__date,
#tribe-events-content .tribe-events-schedule__time {
	font-family: var(--medium);
	font-size: 1.5rem;
}

.tribe-events-schedule__all-day, 
.tribe-events-schedule__separator, 
.tribe-events-schedule__timezone {
	color: var(--dark-gray);
	font-size: 1.5rem;
}

/* Gutenslider
------------------------------------- */
.fa-angle-left::before,
.fa-angle-right::before {
	display:none;
}

.wp-block-eedee-block-gutenslider .slick-slider, 
.wp-block-eedee-block-gutenslider .slick-list, 
.wp-block-eedee-block-gutenslider .slick-track {
	height:auto;
}

/* Custom Layouts
---------------------------------------- */

.shadow-boxes  .cl-template--post {
	box-shadow: 2px 2px 5px rgba(53, 53, 47, 0.2);
}

.cl-pagination {
	width: max-content;
	margin: 1rem auto;
	padding: 1rem;
	background-color: #fff;
}

a.page-numbers {
	background-color: var(--p99);
	color: var(--purple);
	font-size: 1rem;
	font-family: var(--heavy);
	font-weight: normal;
	margin-bottom: 4px;
	padding: 0.5rem 0.75rem;
	text-decoration: none;
}
.page-numbers.current,
a.page-numbers:active,
a.page-numbers:focus,
a.page-numbers:hover {
	background-color: var(--purple);
	color: #fff;
	font-size: 1rem;
	font-family: var(--heavy);
	font-weight: normal;
	margin-bottom: 4px;
	padding: 0.5rem 0.75rem;
	text-decoration: none;
}

/* Media Queries
---------------------------------------------------------------------------- */
@media only screen and (max-width: 781px) {

	.site-container .wp-block-column {
		flex-basis: 100%;
		margin-left: 0;
		margin-right: 0;
	}
}

@media only screen and (min-width: 960px) {

	.full-width-content .entry-content > .alignwide {
		margin-left: -5.5%;
		margin-right: -5.5%;
		max-width: calc(100% + 11%); /* 360 equals sum of left and right margin */
		width: auto;
	}

	.content-sidebar .site-container .alignwide {
		margin-left: -5.5%;
	}

	.sidebar-content .site-container .alignwide {

		margin-right: -5.5%;
	}

	.alignfull .alignwide,
	.alignwide .alignwide {
		max-width: 1062px;
		margin: 0 auto;
	}

	p.giant-text {
		font-size:2.5rem;
	}

}

@media only screen and (min-width:1110px) {
	p.giant-text {
		font-size: 3rem;
	}
}
