/*
Theme Name: Spaceworks
Theme URI: http://underscores.me/
Author: KnownFor Solutions
Author URI: https://knownfor.solutions/
Description: Refined, handcrafted theme based on original designs from BrandCap.
Version: 1.5.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: spaceworks
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

TESTING UNDER HERE

Spaceworks is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Elements
# Typography
# Forms
# Links
# Accessibility
# Alignments
# Clearings
# Utility Classes
# Navigation
	## Menus
	## Featured Buttons
	## Page Logos
# Widgets
# Content
	## Front Page / Home adjustments
	## Posts and pages
	## Grid Layout for Articles
	## Pagebanners
	## Subscribe Form template + Popup
	## Projects shortcode display
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
	
# @media Desktop & Below
# @media Tablet & Below
	## MobileCSS Hamburger
	## Menu Elements
	## Homepage Nav Menu changes (combine with above)
	## Homepage Bevel Box [ NO SLIDESHOW VERSION ]
	## HomeSlides [ NO SLIDESHOW VERSION ]
	## Site Content
# @media Mobile

# Old Homepage (deprecated)
	## Homepage Bevel Box
	## Homeslides
--------------------------------------------------------------*/

:root {
	--accent_color: #3FE0FF; /* rgb(63,224,255) */
	--accent_color_2: #FFF83F;
	--accent_color_3: #ffab12;
	--accent_color_4: #3DFF3D;
	--accent_color_5: #ff35ff;
	--white: #fefefe;
	--dark_gray: #393C41;
	--light_gray: #919499;
	--site_side_space: 8vw;
}


/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {font-family: sans-serif; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body {margin: 0; }
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {display: block; }
audio, canvas, progress, video {display: inline-block; vertical-align: baseline; }
audio:not([controls]) {display: none; height: 0; }
[hidden], template {display: none; }
a {background-color: transparent; }
	a:active, a:hover {outline: 0; }
abbr[title] {border-bottom: 1px dotted; }
b, strong {font-weight: bold; }
dfn {font-style: italic; }
mark {background: #ff0; color: #000; }
small {font-size: 80%; }
sub, sup {font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
	sup {top: -0.5em; }
	sub {bottom: -0.25em; }
img {border: 0; }
svg:not(:root) {overflow: hidden; }
figure {margin: 1em 40px; }
hr {box-sizing: content-box; height: 0; }
pre {overflow: auto; }
code, kbd, pre, samp {font-family: monospace, monospace; font-size: 1em; }
button, input, optgroup, select, textarea {color: inherit; font: inherit; margin: 0; }
button {overflow: visible; }
	button, select {text-transform: none; }
	button, html input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance: button; cursor: pointer; }
	button[disabled], html input[disabled] {cursor: default; }
	button::-moz-focus-inner, input::-moz-focus-inner {border: 0; padding: 0; }
input {line-height: normal; }
	input[type="checkbox"], input[type="radio"] {box-sizing: border-box; padding: 0; }
	input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {height: auto; }
	input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {-webkit-appearance: none; }
fieldset {border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
legend {border: 0; padding: 0; }
textarea {overflow: auto; }
optgroup {font-weight: bold; }
table {border-collapse: collapse; border-spacing: 0; }
	td, th {padding: 0; }


/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {box-sizing: border-box; }

#mobile-check {display: none; }

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */ box-sizing: inherit; }

body {background: var(--white, white); /* Fallback for when there is no custom background color defined. */ }

blockquote:before,
blockquote:after,
q:before,
q:after {content: ""; }

blockquote,
q {quotes: "" ""; }

blockquote {margin: 1.5em 0; padding: 1em; background-color: #e0e0e0; border-left: 3px solid black; }

hr {background-color: #ccc; border: 0; height: 1px; margin-bottom: 1.5em; }

ul,
ol {margin: 0 0 1.5em 1.5em; }

ul {list-style: disc; }

ol {list-style: decimal; }

li {margin-bottom: 0.2em; }

li > ul,
li > ol {margin-bottom: 0; margin-left: 1.5em; }

dt {font-weight: bold; }

dd {margin: 0 1.5em 1.5em; }

img {height: auto; /* Make sure images are scaled correctly. */ max-width: 100%; /* Adhere to container width. */ }

figure {margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */ }

.arve-wrapper {max-width: 100% !important; } /* video adjustment */

table {margin: 0 0 1.5em; width: 100%; table-layout: fixed; }
	table th {text-align: left; }

button,
input[type="button"],
button:focus,
input[type="button"]:focus,
button:active,
input[type="button"]:active,
a.button:link,
a.button:visited,
a.button:active {display: inline-block; background: black; color: var(--white, white); border: 0 none; font-weight: 200; min-height: 2rem; max-width: 13rem; border-radius: 6px; line-height: 1.1em; padding: 0.7em 0.9em; text-transform: uppercase; text-align: center; margin-bottom: 0.7em; color: var(--white, white); text-decoration: none; }
	
	button:hover,
	input[type="button"]:hover,
	a.button:hover {opacity: 0.8; }
	
a.wp-block-button__link.has-cyan-background-color {background-color: var(--accent_color, cyan); }

img.alignnone,
img.alignleft,
img.alignright,
.master-slider-parent {margin-bottom: 1em; }


.entry-content {position: relative; }

/*--------------------------------------------------------------
# Typography
# — NOTE: Rubik is available in all font weights (300-900), with italic for each.
--------------------------------------------------------------*/
html {font-family: 'Arial', sans-serif; color: #1d1d1d; font-weight: 400; font-size: 22px; } /* base font size */

body,
input,
select,
optgroup,
textarea {font-family: 'Arial', sans-serif; line-height: 1.6; }

h1,
h2,
h3,
h4,
h5,
h6 {font-family: 'Rubik', sans-serif; clear: both; line-height: 1.15em; font-weight: 600; }

h1 {font-size: 2.8em; margin: 0.67em 0; font-weight: 900; }
h2 {font-size: 2.3em; }
h3 {font-size: 1.9em; margin-top: 0; }
h4 {font-size: 1.6em; }
h5 {font-size: 1.3em; font-weight: 400; }
h6 {font-size: 1em; font-weight: 300; }

span.title-contrast {font-weight: 300; }

p {margin-bottom: 1.5em; }

dfn,
cite,
em,
i {font-style: italic; }

address {margin: 0 0 1.5em; }

pre {background: #eee; font-family: "Courier 10 Pitch", Courier, monospace; font-size: 15px; font-size: 0.9375rem; line-height: 1.6; margin-bottom: 1.6em; max-width: 100%; overflow: auto; padding: 1.6em; }

code,
kbd,
tt,
var {font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; font-size: 15px; font-size: 0.9375rem; }

abbr,
acronym {border-bottom: 1px dotted #666; cursor: help; }

mark,
ins {background: #fff9c0; text-decoration: none; }

big {font-size: 125%; }



/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
input[type="reset"],
input[type="submit"] {border: 1px solid; border-color: #ccc #ccc #bbb; border-radius: 3px; background: #e6e6e6; color: rgba(0, 0, 0, .8); font-size: 12px; font-size: 0.75rem; line-height: 1; padding: .6em 1em .4em; }

input[type="reset"]:hover,
input[type="submit"]:hover {border-color: #ccc #bbb #aaa; }

input[type="reset"]:focus,
input[type="submit"]:focus,
input[type="reset"]:active,
input[type="submit"]:active {border-color: #aaa #bbb #bbb; }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {color: #666; border: 1px solid #ccc; border-radius: 3px; padding: 3px; }

select {border: 1px solid #ccc; }

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {color: #111; }

textarea {width: 100%; }

.gform_confirmation_wrapper {background-color: var(--accent_color, #3FE0FF); padding: 0.5em 1em; }

/*--------------------------------------------------------------
# Links
--------------------------------------------------------------*/
a {color: #000000; }
a:visited {color: #000000; }

a:hover,
a:focus,
a:active {color: var(--dark_gray, black); }

a:focus {outline: thin dotted; }

a:hover,
a:active {outline: 0; }

.has-white-color.has-text-color a,
.has-white-color.has-text-color a:visited {color: var(--white, white); }

.has-white-color.has-text-color a:hover,
.has-white-color.has-text-color a:focus,
.has-white-color.has-text-color a:active {color: var(--light_gray, gray); }

p a:after,
.menu-item-has-children > a:after {content: "\00a0»"; }
	/* fix a couple that shouldn't have the extra » */
	p a:has(img):after,
	.widget .partners a:after {content: ""; }

#menuToggle a,
#menuToggle a:visited {color: var(--light_gray, gray); }

/* Color of current page's ancestor links */
#menuToggle li.current-menu-ancestor > a,
#menuToggle .current-menu-parent > a,
#menuToggle .current-menu-item > a {color: var(--white, white); }

#menuToggle a:hover {color: var(--dark_gray, black); }

#menuToggle a:focus,
#menuToggle a:active,
#menuToggle .current-menu-item a,
#menuToggle .current-menu-item a:visited {color: var(--white, white); }


#menuDonate a,
	#menuDonate a:visited,
	#menuDonate a:hover,
	#menuDonate a:active,
.homeslide-content-inner a,
	.homeslide-content-inner a:visited,
	.homeslide-content-inner a:hover,
	.homeslide-content-inner a:active {color: var(--white, white); }

.link-attach a,
.link-attach a:link,
.link-attach a:visited,
.link-attach a:hover,
.link-attach a:active {font-weight: bold; }

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {clip: rect(1px, 1px, 1px, 1px); position: absolute !important; height: 1px; width: 1px; overflow: hidden; word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {background-color: #f1f1f1; border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: bold; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {outline: 0; }

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft,
.alignright,
.aligncenter {margin-top: 1em; margin-bottom: 1em }

.alignleft {display: inline; float: left; margin-right: 1.5em; }

.alignright {display: inline; float: right; margin-left: 1.5em; }

.aligncenter {clear: both; display: block; margin-left: auto; margin-right: auto; }

#page {position: relative; }

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {content: ""; display: table; table-layout: fixed; }

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after,
table {clear: both; }

/*--------------------------------------------------------------
## Utility Classes
--------------------------------------------------------------*/
.fullscreen-right {padding-right: 0 !important; }
.add-border-top {border-top: 2px solid var(--accent_color); }

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
#menuToggle > input {display: none; }

#menuHolder > div {background-color: black; }
.main-navigation ul {display: inline-flex; }
	.main-navigation ul .excerpt {display: none; }
	.main-navigation ul li {margin-bottom: 0; }
	.main-navigation ul li a {padding: 0.8em 1em; display: block; }
		.main-navigation ul li a:hover {background-color: var(--accent_color, cyan); color: var(--white, white); }
		.main-navigation ul li a#nav-logo {padding: 0 0 2px 0; }
	
	.main-navigation ul li.has-open-sub-menu {background-color: var(--dark_gray, black); }
	
	/* 	Search Bar */
/* 	.main-navigation ul#primary-menu > li.menu-item:last-child {position: absolute; right: 1em; top: 10px; } */
	.main-navigation i.fa-search {color: var(--white, white); font-size: 1.6em; vertical-align: middle; margin-top: -5px; }	
	li.search-wrapper {width: 100%; }
	form.search-form {text-align: center; }
	input.search-field {width: 55vw; margin: 4px auto; text-align: center; line-height: 1.2; }

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

.main-navigation {clear: both; display: block; /* float: left; */ width: 100%; position: fixed; z-index: 99999; }

.main-navigation ul {/* display: none; */ list-style: none; margin: 0; padding-left: 0; }

.main-navigation li { }

.main-navigation a {text-decoration: none; }

.main-navigation ul ul {position: absolute; left: -999em; z-index: 99999; background-color: var(--dark_gray, black); width: 100%; font-size: 0.8em; }

.main-navigation ul ul ul {left: -999em; top: 0; }

.main-navigation li:hover > a,
.main-navigation li.focus > a { }

.main-navigation ul ul :hover > a,
.main-navigation ul ul .focus > a { }

.main-navigation ul ul a:hover,
.main-navigation ul ul a.focus { }

.main-navigation ul.sub-menu li a {padding: 5px 1.4em; }

.main-navigation ul li > ul.sub-menu-open,
.main-navigation ul li.focus > ul.sub-menu-open {left: 0; padding-left: 12.5em; }

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a { }

/*
@media screen and (min-width: 37.5em) {
	.menu-toggle {display: none; }
	.main-navigation ul {	display: block; }
}
*/

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {margin: 0 0 1.5em; overflow: hidden; clear: both; }

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {float: left; width: 50%; }

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {float: right; text-align: right; width: 50%; }


/*--------------------------------------------------------------
## Featured Buttons
--------------------------------------------------------------*/

/* .featured-buttons {position: absolute; top: 0; right: 0; } */
.featured-buttons {position: relative; float: right; margin-left: 2rem; margin-bottom: 0.5rem; }
	.featured-buttons a.button {width: 13rem; font-weight: bold; }

.featured-buttons a.button:link,
.featured-buttons a.button:visited,
.featured-buttons a.button:active {display: block; }


.featured-buttons-bottom {position: relative; margin-top: 1.5em; }
	.featured-buttons-bottom a.button {width: auto; display: inline-block; margin-right: 10px; vertical-align: middle; font-weight: bold; }


/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {margin: 0 1em 1.5em; }

/* Make sure select elements fit in widgets. */
.widget select {max-width: 100%; }

.widget p.partners,
#mc_embed_signup p {text-transform: uppercase; font-size: 0.8em; margin-bottom: 3px; }

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/

div.site-content {padding: 5em 5vw 0; max-width: 1920px; margin: 0 auto; }


/* Donate iframe load */
.embed-container { position: relative; padding-bottom: 56.25%; overflow: auto; -webkit-overflow-scrolling:touch; max-width: 100%; height: auto; }
	.embed-container iframe, 
	.embed-container object, 
	.embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0 none; }

.donate-form-holder {position: relative; }

p#popin-load {background: #dfdfdf; padding: 1em; position: absolute; top: 0; width: 100%; text-align: center; }

.site-footer {background-color: black; color: var(--white, white); }
	.site-footer a:link, .site-footer a:visited, .site-footer a:active {color: var(--accent_color, cyan); }
	.site-footer a:hover {color: var(--light_gray, gray); }
div#footerbar {margin: 65px 88px 0 108px; display: flex; flex-direction: row; justify-content: center; font-size: 0.9rem; border-top: 1px solid #ccc; padding-top: 1em; padding-bottom: 3em; }
	div#footerbar .widget {flex-basis: auto; }
div#footerbar figure {margin: 3px 0; }

.accent-color {color: var(--accent_color); }
	.color-light {color: var(--light_gray); }
	.color-dark {color: var(--dark_gray); }

/*--------------------------------------------------------------
## Front Page / Homepage adjustments
--------------------------------------------------------------*/

body.home div.site-content {padding: 57px 0 0; }
	body.home .page-content, 
	body.home .entry-content, 
	body.home .entry-summary {margin-top: 0; }

body.home .entry-header,
body.home .entry-footer {display: none; }

body.home .entry-content > .wp-block-columns,
body.home .wp-block-group__inner-container {padding: 3em var(--site_side_space); }
	body.home .entry-content > .wp-block-columns {padding-top: 0; padding-bottom: 0; margin-bottom: 0; }

/*--------------------------------------------------------------
## WP Gutenberg Tabs - homepage tabs display
--------------------------------------------------------------*/
.is-style-kfs-tabs-big-half ul.wp-block-getwid-tabs__nav-links {margin-left: 0 !important; margin-right: 0; }
.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-links li {margin-bottom: 1em; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; justify-content: center; }
	.is-style-kfs-tabs-big-half li.ui-tabs-active:after {content: ''; position: absolute; height: 1em; bottom: -1em; border-right: 5px solid var(--accent_color, cyan); left: 49%; display: block; }


.is-style-kfs-tabs-big-half li.ui-tabs-active:first-of-type:before {display:none; }

.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link {width: 49.2%; margin-right: 1.3%; text-align: center; background-color: #000; font-size: 1.4em; }
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link:last-child {margin-right: 0; }
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link a span {color: var(--light_gray, gray) !important; }
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link:hover {border: transparent; background-color: var(--accent_color, cyan); }
		.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link:hover a span,
		.is-style-kfs-tabs-big-half li.ui-tabs-active a span {color: var(--dark_gray, black) !important; }

.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link.ui-tabs-active {background: var(--accent_color, cyan); }
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link.ui-tabs-tab a span {color: var(--light_gray, gray); }
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link.ui-tabs-active a span {color: var(--dark_gray, black); }

.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__tab-content {padding: 0; }

.is-style-kfs-tabs-big-half span.wp-block-getwid-tabs__title-wrapper {width: 100%; }

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {display: block; }

.updated:not(.published) {display: none; }

.page-content,
.entry-content,
.entry-summary {margin: 1.5em 0 0; }

.page-links {clear: both; margin: 0 0 1.5em; }

h3.entry-title {margin-top: 0.4em; margin-bottom: 0.4em; }

.entry-content h5,
.entry-content h6,
.entry-content p,
.entry-content blockquote,
.entry-content ol,
.entry-content ul {max-width: 100%; }

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4 {max-width: 100%; }


.entry-content table { }

/* fix three column Block layout */
.wp-block-image:last-child figure {margin-right: 0; }


/*--------------------------------------------------------------
## Grid Layout for Articles
--------------------------------------------------------------*/

.post-meta {text-transform: uppercase; }
	.post-meta a {text-decoration: none; }

/* First two articles layout */
#first-layout article {display: inline-block; vertical-align: top; }
	#first-layout article:first-child {width: 47%; }
	#first-layout article:last-child {width: 47%; margin-left: 4%; }

/* Stacked columns of remaining articles */
#masonry-layout[data-columns]::before {
	content: '2 .column.size-1of2';
}

/* Auto-applied classes from Salvattore grid system */
.column { float: left; }
.size-1of2:first-child { width: 47%; }
.size-1of2:last-child {width: 47%; margin-left: 4%; }

/* Further styling */
.masonry-item {margin-bottom: 45px; }

article header h3 a {text-decoration: none; }

.excerpt {font-size: 0.9em; }

.media-sidebar {position: absolute; width: 15.5vw; left: 8.5vw; top: 1.1em; }
	form#media-filters {font-size: 1.1em; font-weight: 900; }
		form#media-filters select {width: 100%; }
	div#gallerybar.gallerybar.widget-area {font-size: 0.7em; }



/*--------------------------------------------------------------
## Subscribe Form template + Popup
--------------------------------------------------------------*/

.newsletter-signup-cta {width: 100%; background-color: #51D8C4; margin: 2em 0; text-align: center; padding: 2em 9em; }
	.newsletter-signup-cta h4 {color: var(--white, white); margin: 0 0 1em 0; }

.newsletter-signup-cta.popup {width: 80%; max-width: 600px; color: #1d1d1d; z-index: 999999; position: relative; padding: 4em 2em 2em 2em; }
	.newsletter-signup-cta.popup h4 {color: #1d1d1d; }
	.popup .popup-close {margin-top: 2em; color: #c3c3c3; font-size: 0.8em; cursor: pointer; }
	
	.popup,
	.popup-close {display: none; }
	
	.popup .popup-x {position: absolute; top: 0.8em; right: 1em; font-size: 1.5em; margin-top: 0; }
	
	.newsletter-signup-cta.popup:before {position: absolute; content: ""; top: 0; left: 0; bottom: 0; right: 0; background: var(--white, white); z-index: -1; }
	.newsletter-signup-cta.popup:after {position: fixed; content: ""; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0,0,0,0.5); z-index: -2; }




/*--------------------------------------------------------------
## Projects shortcode display
--------------------------------------------------------------*/

.project {position: relative; display: inline-block; width: 32%; margin-bottom: 1em; margin-right: 1.5%; background-color: #E7E7E7; vertical-align: top; font-size: 0.9rem; }
	.project:nth-of-type( 3n ) {margin-right: 0; }
	
	.project-image {display: block; width: 100%; height: 200px; background-size: cover; background-position: center center; background-repeat: no-repeat; }
	
	.project-content {padding: 1em; }

.collapsed {position: relative; }
.collapsed span.expander {display: block; position: absolute; bottom: 0; left: 0; width: 100%; padding: 1.2em 0 0.5em 0; cursor: pointer; color: #E7E7E7; /* background-color: #1d1d1d; */ text-align: center; background: linear-gradient(0deg, rgba(29,29,29,1) 75%, rgba(231,231,231,0) 100%); }
	

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {word-wrap: break-word; }

.bypostauthor {display: block; }

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none; }

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {display: block; }

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {border: none; margin-bottom: 0; margin-top: 0; padding: 0; }

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {max-width: 100%; }

/* Make sure logo link wraps around logo image. */
.custom-logo-link {display: inline-block; }

.wp-block-gallery.has-nested-images figure.wp-block-image {
	flex-grow: 0;
}
.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
	width: calc(32% - var(--wp--style--unstable-gallery-gap, 16px)/2);
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {margin-bottom: 1.5em; max-width: 100%; }

.wp-caption img[class*="wp-image-"] {display: block; margin-left: auto; margin-right: auto; }

.wp-caption .wp-caption-text {margin: 0.8075em 0; }

.wp-caption-text {text-align: center; }

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {margin-bottom: 1.5em; }

.gallery-item {display: inline-block; text-align: center; vertical-align: middle; width: 100%; padding: 0 1em; }
	.gallery-columns-2 .gallery-item {max-width: 50%; }
	.gallery-columns-3 .gallery-item {max-width: 33.33333%; }
	.gallery-columns-4 .gallery-item {max-width: 25%; }
	.gallery-columns-5 .gallery-item {max-width: 20%; }
	.gallery-columns-6 .gallery-item {max-width: 16.66667%; }
	.gallery-columns-7 .gallery-item {max-width: 14.28571%; }
	.gallery-columns-8 .gallery-item {max-width: 12.5%; }	
	.gallery-columns-9 .gallery-item {max-width: 11.11111%; }
	.gallery-caption {display: block; }



/*--------------------------------------------------------------
# @media Desktop & Below
--------------------------------------------------------------*/

@media (max-width: 1599px) { /* DESKTOP */

	html {font-size: 18px; }
	#page #page-logo {width: 20vw; height: 7vw; }

}
	
@media (max-width: 1299px) { /* DESKTOP */

	.featured-buttons {/* position: relative; */ float: none; margin-left: 0; }
	.featured-buttons a.button,
	.featured-buttons-bottom a.button {width: auto; display: inline-block !important; margin-right: 10px; vertical-align: middle; }

}

@media (max-width: 1199px) { /* DESKTOP */

	html {font-size: 17px; }
	
	.media-sidebar {left: 10.5vw; }
	
	.project {width: 48%; }
		.project:nth-of-type( 3n ) {margin-right: 1.5%; }
		.project:nth-of-type( 2n ) {margin-right: 0; }

}

@media (max-width: 1112px) { /* DESKTOP */

/* 	html {font-size: 15px; } */

}

@media (max-width: 979px) { /* DESKTOP */

/* 	html {font-size: 13px; } */

}


/*--------------------------------------------------------------
# @media Tablet & Below
--------------------------------------------------------------*/


@media (max-width: 769px) { /* TABLET */

	html {font-size: 16px; }
	
	#mobile-check {display: block; }
	
	/*--------------------------------------------------------------
	## CSS Hamburger — Made by Erik Terwan // 24th of November 2015

	## NOTE: This only applies from 769px (tablet) down to phones.
	--------------------------------------------------------------*/
	#menuToggle {
		display: block;
		position: fixed;
		top: 20px;
		left: 20px;
		
		z-index: 99998;
		
		-webkit-user-select: none;
		user-select: none;
	}
	
	#menuToggle > input {
		display: block;
		width: 65px;
		height: 65px;
		position: absolute;
		top: -7px;
		left: -5px;
		
		cursor: pointer;
		
		opacity: 0; /* hide this */
		z-index: 99999; /* and place it over the hamburger */
		
		-webkit-touch-callout: none;
	}
	
	/* Just a quick hamburger */
	#menuToggle > span {
		display: block;
		width: 39px;
		height: 4px;
		margin-bottom: 5px;
		position: relative;
		
		background: var(--white, white);
		border-radius: 3px;
		
		z-index: 99998;
		
		transform-origin: 4px 0px;
		-ms-transform-origin: 4px 0px;
		
		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
		          background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
		          opacity 0.55s ease;
	}
	
	#menuToggle > span:nth-of-type(1) {
		transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
	}
	
	#menuToggle > span:nth-of-type(2) {
		transform-origin: 0% 100%;
		-ms-transform-origin: 0% 100%;
	}
	
	/* Transform all the slices of hamburger into a crossmark. */
	#menuToggle > input:checked ~ span {
		opacity: 1;
		transform: rotate(45deg) translate(1px, -2px);
		-ms-transform: rotate(45deg) translate(1px, -2px);
		background: var(--white, white);
	}
	
	/* But let's hide the middle one. */
	#menuToggle > input:checked ~ span:nth-of-type(3) {
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);
		-ms-transform: rotate(0deg) scale(0.2, 0.2);
	}
	
	/* Oh yeah and the last one should go the other direction */
	#menuToggle > input:checked ~ span:nth-of-type(2) {
		opacity: 1;
		transform: rotate(-45deg) translate(-10px, 13px);
		-ms-transform: rotate(-45deg) translate(-10px, 13px);
	}
	
	/* Make this absolute positioned at the top left of the screen */
	#menuHolder {
		height: 100vh;
		position: absolute;
		top: 0;
		margin-top: -10px;
		margin-left: -20px;
		padding: 35px 0 0 128px;
		width: 500px;
		z-index: 99996;
		
		background: #ededed;
		list-style-type: none;
		-webkit-font-smoothing: antialiased;
		/* to stop flickering of text in safari */
		
		transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		transform: translate(-100%, 0);
		-ms-transform: translate(-100%, 0);
		
		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
	}
	
		#primary-menu > li {margin-bottom: 0.3em; }
		#primary-menu > li > div {display: none; }
		
	/* And let's fade it in from the left */
	#menuToggle > input:checked ~ #menuHolder {
		transform: scale(1.0, 1.0);
		-ms-transform: scale(1.0, 1.0);
		opacity: 1;
		z-index: 99996;
	}
	
	
	/*--------------------------------------------------------------
	## Menu Elements
	--------------------------------------------------------------*/
	
	/* Width and background */
	#menuBacker {width: 78px; height: 100vh; position: fixed; top: 0; left: 0; background-color: black; z-index: 99997;  }
		#menuBacker:after {content: ""; position: absolute; height: 1px; background-color: var(--white, white); width: 100%; top: 69px; }
	
	/* Menu typography */
	#menuToggle {font-size: 1rem; }
		#menuToggle ul#primary-menu li a {font-family: 'Rubik', sans-serif; font-weight: 900; font-size: 2.2em; line-height: 1em; }
	
	/* In-Toggle sub menu layout and spacing */
	#menuToggle ul#primary-menu ul.sub-menu {margin-left: 19rem; background-color: var(--white, white); width: 19rem; height: 100vh; position: fixed; top: 0; font-size: 0.7em; line-height: 1.5em; padding: 45px 3em 0 3em; overflow-y: scroll; }
		#menuToggle ul#primary-menu ul.sub-menu li {border-bottom: 1px solid #979797; padding-bottom: 2em; margin-bottom: 2em; }
		#menuToggle ul#primary-menu ul.sub-menu div.excerpt {margin-top: 1em; font-size: 1.1em; }
	
	/* In-toggle search bar */
	#menuHolder form .search-submit {visibility: hidden; }
		#menuHolder form input[type="text"] {padding: 0.3em; margin-top: 0.5em; width: calc(100% - 3em); border: none; background-color: transparent; font-size: 0.9em; }
		#menuHolder form label {border-bottom: 1px solid #aaa; padding-bottom: 4px; font-size: 1.3em; }
		input.search-field {width: 75vw; }
		
	/* Small menu. */
	.main-navigation ul {display: block; }
		.main-navigation ul li a {padding-top: 0.3em; padding-bottom: 0.3em; }
	.menu-toggle,
	.main-navigation.toggled ul {display: block; }
		
	#menuHolder {width: 100vw; padding: 90px 20px 0 20px; overflow-y: scroll; background-color: black; }
	#menuDonate {position: fixed; top: 20px; right: 20px; left: initial; -webkit-transform: none; -ms-transform: none; transform: none; }
	#menuBacker {height: 65px; width: 100vw; }
		#menuBacker:after {height: 0; display: none; }
	
	.main-navigation ul li:hover > ul, 
	.main-navigation ul li.focus > ul,
	#menuToggle ul#primary-menu ul.sub-menu {display: none; }
	
		/* reset sub-menu attributes to defaults */
		#menuToggle ul#primary-menu ul.sub-menu {background-color: inherit; width: auto; height: auto; position: relative; top: auto; font-size: inherit; padding: inherit; overflow: auto; margin: auto; line-height: normal; float: none; left: inherit; z-index: inherit; box-shadow: none; }
			#menuToggle ul#primary-menu ul.sub-menu li {border: 0 none; padding: 0; margin: 0; }
		
		/* Sub-menu display changes */
		#menuToggle ul#primary-menu ul.sub-menu {line-height: 1.2em; margin: 0.8em 0 0.8em 1em; }
			#menuToggle ul#primary-menu ul.sub-menu li a {font-size: 1.4em; font-weight: 500; line-height: 1.4em; }
			#menuToggle ul#primary-menu ul.sub-menu li .excerpt {display: none; }
		
		#menuToggle ul#primary-menu .sub-menu-opener {font-size: 1em; margin-left: 8px; position: relative; top: -3px; color: #828282; cursor: pointer; }
	
	
	#primary-menu > li {margin-bottom: 6px; }


	/*--------------------------------------------------------------
	## Site content
	--------------------------------------------------------------*/
	.newsletter-signup-cta.popup {position: fixed; width: 70vw; left: 15vw; bottom: 25vh; }
					
	div.site-content {padding: 90px 2rem 0; }
		.media-sidebar + div.site-content {margin-top: 1rem; }
	
	.media-sidebar {position: relative; width: auto; left: auto; margin: 4rem 2rem 2rem; }
		form#media-filters {font-size: 1em; }
		div#gallerybar.gallerybar.widget-area {font-size: 1em; }
		
	#page #page-logo {display: none; }
		#page #page-logo-mobile {display: block; width: 70vw; height: 46px; background-size: contain; background-position: right top; background-repeat: no-repeat; position: fixed; top: 10px; right: 20px; z-index: 99999; }
	
	h1 {font-size: 2.5em; }
		
	.entry-header h1,
	.entry-content h1,
	.entry-content h2,
	.entry-content h3,
	.entry-content h4,
	.entry-content h5,
	.entry-content h6,
	.entry-content p,
	.entry-content blockquote,
	.entry-content ol,
	.entry-content ul {max-width: 90vw; margin: 1rem 2rem; }
	
		.entry-content .wp-block-column > h1,
		.entry-content .wp-block-group__inner-container > h1,
		.entry-content .wp-block-column > h2,
		.entry-content .wp-block-group__inner-container > h2,
		.entry-content .wp-block-column > h3,
		.entry-content .wp-block-group__inner-container > h3,
		.entry-content .wp-block-column > h4,
		.entry-content .wp-block-group__inner-container > h4,
		.entry-content .wp-block-column > h5,
		.entry-content .wp-block-group__inner-container > h5,
		.entry-content .wp-block-column > h6,
		.entry-content .wp-block-group__inner-container > h6,
		.entry-content .wp-block-column > p,
		.entry-content .wp-block-group__inner-container > p,
		.entry-content .wp-block-column > blockquote,
		.entry-content .wp-block-group__inner-container > blockquote,
		.entry-content .wp-block-column > ol,
		.entry-content .wp-block-group__inner-container > ol,
		.entry-content .wp-block-column > ul,
		.entry-content .wp-block-group__inner-container > ul {margin-left: 0; margin-right: 0; }

	.featured-buttons {margin: 1rem 0 2rem; }
	
	.wp-block-column {padding-top: 2em; }
	
	/* fix tabs display */
	.is-style-kfs-tabs-big-half ul.wp-block-getwid-tabs__nav-links {margin-bottom: 0; }
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-links {-webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }
	
	/* 	WP Block: Tabs - Opportunities on homepage */
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link {font-size: 0.8em; }
	
	
	
	/***** NEWSROOM ******/
	#first-layout article {display: block; width: 100% !important; margin-left: 0 !important; margin-bottom: 1em; }
	
	/* Stacked columns of remaining articles */
	#masonry-layout[data-columns]::before {
		content: '1 .column.size-1of1';
	}
	
	/* Auto-applied classes from Salvattore grid system */
	.column { }
	.size-1of1:first-child { width: 100%; font-size: 1rem; }
	
	.newsletter-signup-cta {padding: 0; outline: 25px solid #51D8C4; margin: 40px 0;  }
	
	div#footerbar {display: block; margin: 65px 20px 0 20px; }
	
}

@media (max-width: 767px) { /* TABLET */

	html {font-size: 16px; }

}

/*--------------------------------------------------------------
# @media Mobile
--------------------------------------------------------------*/

@media (max-width: 480px) { /* PHONE */

	.entry-header h1,
	.entry-content h1,
	.entry-content h2,
	.entry-content h3,
	.entry-content h4,
	.entry-content h5,
	.entry-content h6,
	.entry-content p,
	.entry-content blockquote,
	.entry-content ol,
	.entry-content ul {max-width: 100vw; margin: 1rem 0; }
	
	h1 {font-size: 2.3em; }
	h2 {font-size: 1.9em; }
	h3 {font-size: 1.45em; }
	h4 {font-size: 1.2em; }
	h5 {font-size: 1.1em; }
	h6 {font-size: 1.1em; }
	
	.homeslide-image-attribution {top: 0; right: 3px; font-size: 0.8rem; }
		.homeslide-image-attribution h6 {margin: 0; }
	.homeslide-content-inner h2 {font-size: 2.2em; }
	
	#menuToggle ul#primary-menu li a {font-size: 2.3em; }
	#menuHolder form input[type="text"] {font-size: 1.1em; }
	
	#nav-logo {display: none; }
	
	.featured-buttons a.button,
	.featured-buttons-bottom a.button {width: 100%; max-width: 100%; min-height: auto; }
	
	.project {width: auto; max-width: 100vw; margin: 0 0 1rem !important; }
	/* 
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link:nth-child(1) {width: 28%; }
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link:nth-child(3) {width: 17%; }
	.is-style-kfs-tabs-big-half .wp-block-getwid-tabs__nav-link:nth-child(4) {width: 27%; }
	 */
	/* Donate Form edits */
	.embed-container,
	.embed-container iframe.popin-iframe {min-height: 2200px; }
	
	/* Columns with Cover Block */
	.wp-block-columns .wp-block-cover {min-height: intrinsic !important; height: 40vh !important; }
	
	/* Utility Fix */
	.fullscreen-right {padding-right: var(--site_side_space) !important; }
	
	div#footerbar div.mini-newsletter {max-width: 85vw; }
	#footerbar .mini-newsletter p.pitch {text-align: left; }
	.gform-theme--foundation .gform_fields {grid-row-gap: 0.5em !important; row-gap: 0.5em !important; }
	

}

@media (max-width: 375px) { /* MID PHONE */
	
	h1 {font-size: 2.5em; }
	.homeslide-content-inner h2 {font-size: 2em; }

}

@media (max-width: 320px) { /* SMALL PHONE */
	
	h1 {font-size: 2.3em; }
	.homeslide-content-inner h2 {font-size: 1.6em; } 

}

@media screen and ( max-height: 615px ){

}