/* ==========================================================================
   Base - Resets, typography, headings, buttons, accordions, tables, utilities
   ========================================================================== */

td {
	padding: 10px;
}
html {
	font-size: 2vw;
}
body {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	/*font-size: .8em;*/
	line-height: 170%;
	color: #333;
}
body p {
    font-size: 1.2em;
}
p a {
	color: #007a37;
	text-decoration: underline;
}
p a:hover {
	text-decoration: none;
	color: #007a37;
}
a {
	color: #007a37;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
	color: #007a37;
}
ul {
	list-style-image: url('../images/bullet-arrow.png');
	list-style-position: outside;
}

/* --- Global Headings --- */
h1 {
	font-family: 'PacificNorthwestRoughLetters-Regular';

	color: #002c7d;
}
h2 {
	font-family: 'PacificNorthwestRoughLetters-Regular';
	color: #007a37;
	margin-top: 1em;
    margin-bottom:1em;
    font-size:2.5em;
}
h2 a, .panel-title > a {
	font-family: 'PacificNorthwestRoughLetters-Regular';
	font-size: 3.5vw;
	color: #007a37;
	text-align: left;
	padding-top: .5em;
}
.page-node-type-blog h1 {
	padding-top: 1em;
}
.page-node-type-blog img {
	padding-bottom: 1em;
}
.page-node-type-blog p {
	width: 80%;
}
.contextual-region.node.node--type-blog.node--view-mode-full {
	width: 60%;
}
h4 {
	font-family: 'PacificNorthwestRoughLetters-Regular';
	color: #00398f;
}
h3, #block-contactblock-3 h2 {
	font-family: 'Montserrat', sans-serif;
	font-size: 1.3vw;
	color: #007a37;
	text-transform: uppercase;
	font-weight: 700;
}

/* --- Buttons --- */
a.button {
	padding: 1em;
	margin-bottom: 1em;
	border-radius: 12px;
	-webkit-transition-duration: 0.4s;
	transition-duration: 0.4s;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.3vw;
	text-transform: uppercase;
	font-weight: 700;
	background-color: #FFFFFF;
	border: 2px solid #007a37;
	display: inline-flex;
	color: #007a37;
	text-decoration: none;
}
a.button:hover {
	background-color: #007a37;
	color: #FFFFFF;
}

/* --- Body text --- */
p, .region-content li {
	font-family: 'Montserrat', sans-serif;
	color: #002c7d;
	text-align: left;
	line-height: 1.6;
	font-weight: 400;
}

p {
        margin-bottom:  0 0 2em 0;
}

/* --- Utilities --- */
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
.field-content {
	margin-top: 0;
	padding-top: 0;
}
.views-field .views-field-field-hero-image .field-content {
	margin-top: 4em;
}
.vimeovideowrap {
	width: 90%;
	max-width: 800px;
}
blockquote {
	margin: 0 5em 0 5em;
	font-style: italic;
	color: #16405B;
	border-left: none;
	text-align: justify;
}
.testimonial {
	margin: .5em 0;
	font-style: italic;
	color: #16405B;
}
.bios img {
	float: right;
	padding-left: 1.5em;
	margin-top: 1em;
}
.list-group-item {
	min-height: 50px;
}
.path-news img {
	float: left;
	padding-right: 1em;
}
.activities {
	padding-bottom: 1em;
}
.flexslider .slides img {
	width: initial;
	display: block;
	margin: auto;
}
.block {
	margin-bottom: 0;
}
.path-skylake-storie .views-row {
    padding-bottom: 1em;
}
/* --- Accordion (details/summary) --- */
details {
	border-bottom: 1px solid #c8ddd0;
	margin-bottom: 0.25em;
}
details summary {
	font-family: 'Montserrat', sans-serif;
    color: #007a37;
	text-transform: uppercase;
	font-weight: 700;
	cursor: pointer;
	padding: 0.6em 0;
	display: flex;
	align-items: center;
	gap: 0.6em;
	list-style: none;
	user-select: none;
}
details summary::-webkit-details-marker {
	display: none;
}
details summary::before {
	content: '+';
	flex-shrink: 0;
	width: 1.4em;
	text-align: center;
	font-size: 1.4em;
	line-height: 1;
	color: #007a37;
	font-weight: 300;
}
details[open] summary::before {
	content: '\2212';
}
details[open] summary {
	background-color: #eef5f1;
}
details p,
details ul {
	padding-left: 2em;
}
details ul {
	list-style-position: inside;
}

/* --- Cover image visibility --- */
.field--name-field-cover-image,
form .field--name-field-cover-image {
	display: none !important;
}
.page-node-24 .field--name-field-cover-image,
body.path-node.node-24-edit form .field--name-field-cover-image,
body.page-node-type-landing-page[class*="node-24"] form .field--name-field-cover-image {
	display: block !important;
}

/* --- Application/File field visibility --- */
.field--name-field-application,
form .field--name-field-application {
	display: none !important;
}
.page-node-24 .field--name-field-application,
.page-node-28 .field--name-field-application,
.page-node-11 .field--name-field-application,
body.path-node.node-24-edit form .field--name-field-application,
body.path-node.node-28-edit form .field--name-field-application,
body.path-node.node-11-edit form .field--name-field-application,
body.page-node-type-landing-page[class*="node-24"] form .field--name-field-application,
body.page-node-type-landing-page[class*="node-28"] form .field--name-field-application,
body.page-node-type-landing-page[class*="node-11"] form .field--name-field-application {
	display: block !important;
}

/* --- Daily Schedule Table --- */
table.daily-schedule {
	width: 100%;
	border-collapse: collapse;
	margin: 2em 0;
	font-family: 'Montserrat', sans-serif;
}
table.daily-schedule thead {
	background-color: #007a37;
	color: #FFFFFF;
}
table.daily-schedule thead th {
	padding: 1em;
	text-align: left;
	font-weight: 700;
	font-size: 1.3vw;
	text-transform: uppercase;
}
table.daily-schedule tbody tr {
	border-bottom: 1px solid #c8ddd0;
}
table.daily-schedule tbody tr:nth-child(even) {
	background-color: #f8fbf9;
}
table.daily-schedule tbody tr:hover {
	background-color: #eef5f1;
}
table.daily-schedule tbody td {
	padding: 1em;
	vertical-align: top;
}
table.daily-schedule tbody td:first-child {
	font-weight: 700;
	color: #007a37;
	white-space: nowrap;
	width: 15%;
}
table.daily-schedule tbody td:last-child {
	color: #002c7d;
	line-height: 1.6;
}
table.daily-schedule tbody tr td:nth-child(2),
table.daily-schedule tbody tr td:nth-child(3) {
	text-align: center;
	font-weight: 600;
	color: #002c7d;
}
table.daily-schedule thead th:nth-child(2),
table.daily-schedule thead th:nth-child(3) {
	text-align: center;
}

/* ==========================================================================
   Base - Mobile (max-width: 1023px)
   ========================================================================== */
@media (max-width: 1023px) {

	span.bios img {
		float: none;
		padding-left: 0;
		margin-top: 0;
	}

	h3.field-content {
		font-size: 2em;
	}

	div#block-skylake-theme-content td {
		font-size: max(12px, 2emvw);
	}

	h2, .h2, h2 a {
		padding-top: 0;
		margin-top: 1em;
		text-align: left;
        font-size: 2.5em;
	}

	p, .region-content li {
		font-size: 2em; 
	}

	a.button {
		/* font-size: 3.5vw; */
	}

	#block-skylake-theme-content h2 {
		padding: 1em 0 .5em 0;
	}

	/* Daily Schedule Table - Mobile */
	table.daily-schedule thead th {
		padding: 0.75em;
	}
	table.daily-schedule tbody td {
		padding: 0.75em;
	}
	table.daily-schedule tbody td:first-child {
		font-size: 3.5vw;
		width: 25%;
	}
	table.daily-schedule tbody tr td:nth-child(2),
	table.daily-schedule tbody tr td:nth-child(3) {
		font-size: 3.5vw;
	}
}

/* ==========================================================================
   Base - Tablet (768px - 1023px)
   ========================================================================== */
@media (min-width: 768px) and (max-width: 1023px) {

	h3, .h3 {
		padding-top: 0;
		font-size: 1em;
	}
	details summary {
		font-size: 3em;
	}
    details {
        font-size: 4em;
    }

	h2, .h2, h2 a {
		padding-top: 0;
		font-size: 3em;;
	}

	div#block-skylake-theme-content td {
		font-size: 1.5vw;
	}

	/* Daily Schedule Table - Tablet */
	table.daily-schedule thead th {
		font-size: 1.5vw;
	}
	table.daily-schedule tbody td:first-child {
		font-size: 1.5vw;
	}
	table.daily-schedule tbody td:last-child {
		font-size: 1.5vw;
	}
}
