/**
 * Table of Contents:
 *
 * 1.0 - Reset and Normalize
 *   1.1 - Plugins Reset/Override
 * 2.0 - Repeatable Patterns
 * 3.0 - Basic Structure
 * 4.0 - Header
 * 5.0 - Navigation
 * 6.0 - Content
 *   6.1 - Post Thumbnail
 *   6.2 - Entry Header
 *   6.3 - Entry Meta
 *   6.4 - Entry Content
 *   6.5 - Galleries
 *   6.6 - Post Formats
 *   6.7 - Post/Image/Paging Navigation
 *   6.8 - Attachments
 *   6.9 - Archives
 *   6.10 - Author Page
 *   6.11 - 404 Page
 *   6.12 - Full-width
 *   6.13 - Singular
 *   6.14 - Comments
 * 7.0 - Sidebars
 *   7.1 - Sidebar Blocks
 * 8.0 - Footer
 * 9.0 - Multisite
 * 10.0 - Media Queries
 * 11.0 - Print
 * -----------------------------------------------------------------------------
 */

/**
 * 1.0 Reset and Normalize
 * -----------------------------------------------------------------------------
 */
label {margin:0;}

/* Allow full width columns to collapse so there aren't 1px columns with background colors showing up */
.col-xs-12,
.col-sm-12,
.col-md-12,
.col-lg-12 {
	min-height:auto;
}



/**
 * 1.1 Plugin Reset/Override
 * -----------------------------------------------------------------------------
 */

/* Button */
button,
.button,
input[type="submit"],
.fl-builder-content a.fl-button,
.fl-builder-content a.fl-button:visited {
	display:inline-block;
}

/* Events Manager */
.events-table {
	width:100%;
}
.events-table td {
	padding:0 1.5rem 1.5rem 0;
}

.em-calendar {
	display:block;
	width:100%;
}
.em-calendar td {
	vertical-align:top;
}
.em-calendar thead td,
.em-calendar tbody .days-names td {
	border:none;
	height:auto;
	vertical-align:middle;
}
.em-calendar thead a,
.em-calendar thead .genericon {
	vertical-align:middle;
}
.em-calendar thead td {display:inline-block;}
.em-calendar tbody td {
	border:none;
	display:block;
	padding:0;
	width:100%;
}
.em-calendar tbody .days-names td {display:none;}
.em-calendar tbody .eventful-pre,
.em-calendar tbody .eventless-pre,
.em-calendar tbody .eventful-post,
.em-calendar tbody .eventless-post,
.em-calendar tbody .eventless,
.em-calendar tbody .eventless-today {
	display:none;
}
.em-calendar .month-day {display:block;}
.em-calendar tbody ul {
	padding:2px;
}
.em-calendar tbody li {
	margin-bottom:2px;
	padding:2px;
	padding:0 0 0 2rem;
	display:block;
	display:list-item;
	list-style-position:inside;
}


/**
 * 2.0 Repeatable Patterns
 * -----------------------------------------------------------------------------
 */
blockquote.alignleft,
.wp-caption.alignleft,
img.alignleft {
	margin:0 1.5rem 1.5rem 0;
}
blockquote.alignright,
.wp-caption.alignright,
img.alignright {
	margin:0 0 1.5rem 1.5rem;
}
blockquote.aligncenter,
img.aligncenter,
.wp-caption.aligncenter {
	margin-top:1.5rem;
	margin-bottom:1.5rem;
}
.main-content blockquote.alignleft,
.main-content blockquote.alignright {
	border-top-style:solid;
	border-top-width:1px;
	border-bottom-style:solid;
	border-bottom-width:1px;
	padding-top:1.5rem;
	width:50%;
}
.main-content blockquote.alignleft p,
.main-content blockquote.alignright p {
	margin-bottom:1.5rem;
}

.wp-caption {
	margin-bottom:1.5rem;
}
.wp-caption img[class*="wp-image-"] {
	display:block;
	margin:0;
}

.wp-caption-text {
	box-sizing:border-box;
	margin:1rem;
}
div.wp-caption .wp-caption-text {
	padding-right:1.5rem;
}
div.wp-caption.alignright img[class*="wp-image-"],
div.wp-caption.alignright .wp-caption-text {
	padding-left:1.5rem;
	padding-right:0;
}

/* Buttons */
button,
.button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	padding:1.5rem;
	vertical-align:bottom;
}

/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object,
video {
	max-width:100%;
}
p > embed,
p > iframe,
p > object,
span > embed,
span > iframe,
span > object {
	margin-bottom:0;
}

/* Input fields */
input,
select,
textarea {
	border-style:solid;
	border-width:2px;
	border-radius:2px;
	padding:1.5rem;
}
textarea {
	width:100%;
}
input:focus,
textarea:focus {
	border-style:solid;
	border-width:2px;
	outline:0;
}

ul {list-style-type: square;}

.entry-meta > span {
	margin-right:1.5rem;
}

/* Alignment */
.alignleft {float:left;}
.alignright {float:right;}
.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.alignleft.has-size-thumbnail,
.alignleft.size-thumbnail,
.alignright.has-size-thumbnail,
.alignright.size-thumbnail {
	max-width:50%;
}

/* Assistive text */
.screen-reader-text {
	clip:rect(1px, 1px, 1px, 1px);
	position:absolute;
}
.screen-reader-text:focus {
	border-radius:3px;
	clip:auto;
	display:block;
	height:auto;
	padding:1.5rem;
	position:absolute;
	left:5px;
	top:5px;
	width:auto;
	z-index:100000;
}

/* Clearing floats */
.footer-sidebar:before,
.footer-sidebar:after,
.hentry:before,
.hentry:after,
.gallery:before,
.gallery:after,
.slider-direction-nav:before,
.slider-direction-nav:after,
.contributor-info:before,
.contributor-info:after,
.search-box:before,
.search-box:after,
[class*="content"]:before,
[class*="content"]:after,
[class*="site"]:before,
[class*="site"]:after {
	content:"";
	display:table;
}
.footer-sidebar:after,
.hentry:after,
.gallery:after,
.slider-direction-nav:after,
.contributor-info:after,
.search-box:after,
[class*="content"]:after,
[class*="site"]:after {
	clear:both;
}

/* Genericons */
.bypostauthor > article .fn:before,
.comment-edit-link:before,
.comment-reply-link:before,
.comment-reply-login:before,
.comment-reply-title small a:before,
.contributor-posts-link:before,
.menu-toggle:before,
.search-toggle:before,
.slider-direction-nav a:before {
	display:inline-block;
	vertical-align:text-bottom;
}
.genericon-image {padding-right:2px;}

/* Responsive images. Fluid images for posts, comments, and widgets */
.comment-content img,
.entry-content img,
.entry-summary img,
.sidebar img,
.widget img,
.wp-caption {
	max-width:100%;
}

/**
 * Make sure images with WordPress-added height and width attributes are
 * scaled correctly.
 */
.comment-content img[height],
.entry-content img,
.entry-summary img,
img[class*="align"],
img[class*="wp-image-"],
img[class*="attachment-"],
#site-header img {
	height:auto;
}
img.size-full,
img.size-large,
.wp-post-image,
.post-thumbnail img {
	height:auto;
	width:100%;
	max-width:100%;
}

.hide {
	display:none;
}

.search-field {
	width:100%;
}
.search-submit .genericon {
	width:32px;
	height:32px;
}

.social-list {
	margin:0;
	padding:0;
}
.social-container {
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	align-items:center;
	gap:1rem;
	height:100%;
	min-height:inherit;
}
.social-list-item {
	display:block;
	width:30px;
	height:30px;
	list-style:none;
}
.social-list-item:last-child {
	margin-right:0;
}
.social-link {
	display:block;
	width:30px;
	height:30px;
}
.social-icon-svg,
.social-icon.genericon {
	display:block;
	width:30px;
	height:30px;
}
.social-icon-svg {
	position:relative;
}
.social-icon-svg svg {
	position:absolute;
	top:3px;
	left:50%;
	width:auto;
	height:24px;
	transform:translateX(-50%);
}

/* Social Share Links */
.social-share-container {
	margin:3rem 0;
	display:flex;
	flex-direction:row;
	justify-content:center;
	align-items:center;
}
.social-share-link {
	position:relative;
	z-index:0;
	margin-right:0.5rem;
	border-radius:10rem;
	padding:1rem;
	display:inline-block;
	text-decoration:none;
	transition:opacity 300ms;
}
.social-share-link:focus,
.social-share-link:hover {
	text-decoration:none;
}
.social-share-container .social-share-link:hover ~ .social-share-link,
.social-share-container .social-share-link:focus ~ .social-share-link {
	opacity:0.15;
}
.social-share-container:hover .social-share-link:hover,
.social-share-container .social-share-link:focus {
	z-index:1;
	opacity:1;
}
.social-share-link .social-icon {
	position:relative;
	z-index:2;
}
.social-share-link .social-icon::after {
	content:"";
	position:absolute;
	top:-1rem;
	right:-1rem;
	bottom:-1rem;
	left:-1rem;
	border-radius:10rem;
	display:block;
	background-color:inherit;
}
.social-share-link-text,
.social-share-link:hover .social-share-link-text:hover {
	position:absolute;
	z-index:1;
	top:0;
	bottom:0;
	left:0;
	border-radius:10rem;
	padding-right:0;
	padding-left:100%;
	display:block;
	width:auto;
	max-width:0;
	background-color:inherit;
	overflow:hidden;
	transition:padding-right 300ms, max-width 300ms, visibility 300ms;
}
.social-share-link:hover .social-share-link-text,
.social-share-link:focus .social-share-link-text {
	padding-right:1rem;
	max-width:15rem;
	visibility:visible;
}

.wp-smiley {
	border:0;
	margin-bottom:0;
	margin-top:0;
	padding:0;
}



/**
 * 3.0 Basic Structure
 * -----------------------------------------------------------------------------
 */
.site {
	overflow:hidden;
}
.site-header {
    position:relative;
    z-index:1000;
}
.site-header .site-row {position:relative;}
#site-header-row-meta {z-index:2;}
#site-header-row-main {z-index:3;}
#site-header-row-sub {z-index:1;}



/**
 * 4.0 Header
 * -----------------------------------------------------------------------------
 */



/**
 * 5.0 Navigation
 * -----------------------------------------------------------------------------
 */



/**
 * 6.0 Post Content
 * -----------------------------------------------------------------------------
 */
.blog .post {
	margin-bottom:1.5rem;
	border-bottom-style:dotted;
	border-bottom-width:1px;
	padding-bottom:1.5rem;
}

.site-main-row .site-content-container {
	padding-top:30px;
}
.fl-builder:not(.no-fl-builder) .site-main-row .site-content-container {
	padding-top:0;
}

body.has-blocks .entry-content > * {
    margin-left:auto;
    margin-right:auto;
    width:100%;
    max-width:1170px;
}
body.has-blocks .entry-content > .alignwide {
    max-width:75%;
}
body.has-blocks .entry-content > .alignfull {
    margin-left:-15px;
    margin-right:-15px;
    width:auto;
    max-width:none;
}

body.has-blocks p.has-background {
	padding:15px;
}



/**
 * 6.1 Post Thumbnail
 * -----------------------------------------------------------------------------
 */
.featured-image {
	min-height:300px;
	background-size:cover;
	background-position:center;
}
.attachment-thumbnail {
	float:left;
	margin-right:1.5rem;
	margin-bottom:1.5rem;
}



/**
 * 6.2 Entry Header
 * -----------------------------------------------------------------------------
 */
.entry-header-container.fl-row .entry-title {display:block;}
.entry-header-container .entry-title,
.entry-header-container .fl-module-heading .fl-module-content,
.entry-header-container h1 .fl-heading-text {
	margin:0;
	margin-top:1.5rem;
}
.entry-header p,
.entry-header .entry-meta,
.entry-header + .entry-meta {
	margin:1.5rem 0;
}

.search .entry-header .search-result-title {
	margin-bottom:0.5rem;
	display:block;
}



/**
 * 6.3 Entry Meta
 * -----------------------------------------------------------------------------
 */
.entry-meta-tag-links a {
	position:relative;
	margin-right:1rem;
	padding:0.5rem;
	display:inline-block;
	border:1px solid rgba(0, 0, 0, 0.05);
	border-left-style:solid;
	border-left-width:4px;
	background-color:rgba(0, 0, 0, 0.05);
}

.tag-links a {
	margin-right:2px;
	padding:0.75rem;
	display:inline-block;
}

.edit-link {
	margin:1rem 0;
	display:block;
}



/**
 * 6.4 Entry Content
 * -----------------------------------------------------------------------------
 */
.search-result-summary {
	margin-bottom:3rem;
}
.entry-read-more {
    margin:1rem 0;
}



/**
 * 6.7 Post/Image/Paging Navigation
 * -----------------------------------------------------------------------------
 */
.paging-navigation {
	margin-bottom:1.5rem;
}



/**
 * 6.14 Comments
 * -----------------------------------------------------------------------------
 */
.comments-area {
	margin-top:5rem;
	margin-bottom:1.5rem;
}
.comment-list {
	padding-left:0;
}
.comment-body {
	margin-bottom:1rem;
	padding-bottom:1rem;
	border-bottom-style:dashed;
	border-bottom-width:1px;
}
.comment-body:after {
	content:"";
	display:block;
	clear:both;
}
.comment-author {float:left;}
.comment-author .says {display:none;}
.comment-metadata {
	float:right;
}
.comment-metadata .edit-link {
	margin:0;
	display:inline-block;
}
.comment-metadata .comment-edit-link {
	border-style:solid;
	border-width:1px;
	padding:0.5rem;
}
.comment-content {clear:both;}

.comments-area .reply {
	float:right;
}
.comments-area .reply .genericon {
	vertical-align:baseline;
}
.comment-form-author label,
.comment-form-email label,
.comment-form-url label {
	display:block;
}
.comment-form-author input,
.comment-form-email input,
.comment-form-url input {
	width:100%
}
.comment-form-comment {
	clear:both;
	display:block;
}
.comment-form .form-allowed-tags,
.comment-form .form-submit {
	clear:both;
}
.comment {
	list-style:none;
}



/**
 * 7.0 Sidebars
 * -----------------------------------------------------------------------------
 */



/**
 * 7.1 Sidebar Blocks
 * -----------------------------------------------------------------------------
 */



/**
 * 8.0 Footer
 * -----------------------------------------------------------------------------
 */



/* Small devices (tablets, 768px and up) */
@media (min-width:768px) {
	/**
	 * 1.1 Plugin Reset/Override
	 * -----------------------------------------------------------------------------
	 */
	.em-calendar {display:table;}
	.em-calendar td {height:8rem;}
	.em-calendar thead td {display:table-cell;}
	.em-calendar tbody td {
		border-style:solid;
		border-width:2px;
		display:table-cell;
		width:14.2857%;
	}
	.em-calendar tbody .days-names td {display:table-cell;}
	.em-calendar tbody .eventful-pre,
	.em-calendar tbody .eventless-pre,
	.em-calendar tbody .eventful-post,
	.em-calendar tbody .eventless-post,
	.em-calendar tbody .eventless,
	.em-calendar tbody .eventless-today {
		display:table-cell;
	}
	.em-calendar tbody li {
		padding:2px;
		display:block;
		list-style:none;
	}



	/**
	 * 2.0 Repeatable Patterns
	 * -----------------------------------------------------------------------------
	 */
	img.size-full,
	img.size-large,
	.wp-post-image,
	.post-thumbnail img {
		width:auto;
	}
}



/* Medium devices (desktops, 992px and up) */
@media (min-width:992px) {
	/**
	 * 2.0 Repeatable Patterns
	 * -----------------------------------------------------------------------------
	 */
	.fixed {position:fixed;}
	.fixed-top {top:0;}
	body.admin-bar:not(.fl-builder-ui-iframe) .fixed-top {top:32px;}
    body.fl-builder-edit:not(.fl-builder-ui-iframe) .fixed-top {top:43px;}
	.fixed-right {right:0;}
	.fixed-bottom {bottom:0;}
    .fixed-left {left:0;}



	/**
	 * 3.0 Basic Structure
	 * -----------------------------------------------------------------------------
	 */
	body.usable-modal-active {
		max-height:100vh;
		overflow:hidden;
	}

	.site-header.fixed {position:fixed;}
	.site-header.fixed-top,
	.site-header.fixed-bottom {width:100%;}
	.site-header.fixed-right,
	.site-header.fixed-left {
		top:0;
		bottom:0;
		width:20rem;
	}
	.site-header.fixed-right .site-row-group,
	.site-header.fixed-left .site-row-group {height:100%;}
	.admin-bar .site-header.fixed-right,
	.admin-bar .site-header.fixed-left {top:32px;}
    .fl-builder-edit .site-header.fixed-right,
	.fl-builder-edit .site-header.fixed-left {top:43px;}

	.usable-modal-active .site-main {visibility:hidden;}
	.has-header-fixed-top .site-main {margin-top:10rem;}
	.has-header-fixed-top.has-header-meta .site-main {margin-top:16rem;}
	.has-header-fixed-top.has-header-sub .site-main {margin-top:14.8rem;}
	.has-header-fixed-top.has-header-meta.has-header-sub .site-main {margin-top:20.8rem;}
	.has-header-fixed-right .site-main,
	.has-header-fixed-right .site-footer {margin-right:20rem;}
	.has-header-fixed-bottom .site-footer {margin-bottom:10rem;}
	.has-header-fixed-left .site-main,
	.has-header-fixed-left .site-footer {margin-left:20rem;}



	/**
     * 4.0 Header
     * -----------------------------------------------------------------------------
     */+



	/**
	 * 5.0 Navigation
	 * -----------------------------------------------------------------------------
	 */



	/**
	 * 6.0 Post Content
	 * -----------------------------------------------------------------------------
	 */
	.blog .post {
		padding-right:1.5rem;
	}



	/**
	 * 6.1 Post Thumbnail
	 * -----------------------------------------------------------------------------
	 */
	.featured-image {
		border-bottom-style:solid;
		border-bottom-width:2px;
	}



	/**
	 * 6.2 Entry Header
	 * -----------------------------------------------------------------------------
	 */
	.has-featured-image .entry-header-container {
		margin-top:-8rem;
	}
	.entry-header-container .entry-title,
	.entry-header-container .fl-module-heading .fl-module-content,
	.entry-header-container h1 .fl-heading-text {
		margin:0;
	}
    .supports-featured-image .fl-row.entry-header-container:nth-child(2),
	.supports-default-featured-image .fl-row.entry-header-container:nth-child(2) {
		position:relative;
		z-index:0;
        margin-top:-8rem;
	}



	/**
	 * 6.7 Post/Image/Paging Navigation
	 * -----------------------------------------------------------------------------
	 */



	/**
	 * 6.14 Comments
	 * -----------------------------------------------------------------------------
	 */
	.comment-form-author,
	.comment-form-email,
	.comment-form-url {
		float:left;
		padding-right:1.5rem;
		width:33.3333%;
	}
	.comment-form-url {padding-right:0;}
}



/* Large devices (large desktops, 1200px and up) */
@media (min-width:1200px) {
	/**
	 * 3.0 Basic Structure
	 * -----------------------------------------------------------------------------
	 */
	.site-header.fixed-right,
	.site-header.fixed-left {width:30rem;}

	.has-header-fixed-right .site-main,
	.has-header-fixed-right .site-footer {margin-right:30rem;}
	.has-header-fixed-left .site-main,
	.has-header-fixed-left .site-footer {margin-left:30rem;}



	/**
	 * 6.1 Post Thumbnail
	 * -----------------------------------------------------------------------------
	 */
	.featured-image {min-height:400px;}
}
