/*
Theme Name: Twenty Twenty-Four CHILD for the Ogdensburg site
Theme URI: https://wordpress.org/themes/twentytwentyfour/
Author: Capital Region BOCES Communications Service Web Team 
Author URI: https://wordpress.org
Description: CHILD THEME of the Twenty Twenty-Four Wordpress Theme.
Requires at least: 6.4
Tested up to: 6.4
Requires PHP: 7.0
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfour
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
	1.0 Links and buttons
		1.1 Links - Visited, hover and focus styles
		1.2 Links - Link color inside blocks with a background color
		1.3 Links - External and pdf link indicators
		1.4 Links - Lists of links
		1.5 Button styles
	2.0 Navigation
		2.1 Navigation - MAIN
		2.2 Navigation - SECONDARY
		2.3 Navigation - SCHOOLS
		2.4 Navigation - SEARCH and TRANSLATE
		2.5 Navigation - CONNECT
	3.0 Header
	4.0 Footer
	5.0 Pages
		5.1 Page - Search Results
		5.2 Page - Staff Directory Results
	6.0 Features
		6.1 Features - Special Alert Bar
		6.2 Features - ICS Calendar
		6.3 Features - ICS Calendar - Grid View
		6.4 Features - Yoast Breadcrumbs
	7.0 Media Queries

/*--------------------------------------------------------------
 * 1.0 Links and buttons
 --------------------------------------------------------------*/

/* Fix spacing under galleries */

:root :where(.wp-block-gallery) {
    margin-bottom: var(--wp--preset--spacing--20);
}





/* 1.1 Links - Visited, hover and focus styles  */

:focus-visible {
	outline: 3px solid;
}

.focus-visible-white a:focus,
.focus-visible-white img:hover {
	color: #fff !important;
	opacity: 0.7;
	outline: 1px dotted !important;
}

a:hover,
a:focus,
a:where(:not(.wp-element-button)):hover,
a:where(:not(.wp-element-button)):focus {
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-thickness: 2px;
}

a:where(:not(.wp-element-button)):visited {
    color: #800080;
}

/* 1.2 Links - Link color inside blocks with a background color */

.has-background a:where(:not(.wp-element-button)),
.has-background a:where(:not(.wp-element-button)):visited { 
    color: inherit;
}

/* Set visited link colors based on what color is used for the background.*/
.has-background-color.has-contrast-background-color a:visited { 
    color: inherit;
}

/* 1.3 Links - External and pdf link indicators */

a[rel=" nofollow"]:after, /* Note: Do not remove the space before nofollow on this line. This is a fix for an extraneous space coming in on buttons in the WP editor */
a[rel="nofollow"]:after,
a[rel="noreferrer"]:after,
a[rel="noopener"]:after,
a[rel="nofollow noreferrer"]:after,
a[rel="nofollow noopener"]:after,
a[rel="noreferrer nofollow"]:after,
a[rel="noreferrer noopener"]:after,
a[rel="noopener nofollow"]:after,
a[rel="noopener noreferrer"]:after,
a[rel="nofollow noreferrer noopener"]:after,
a[rel="nofollow noopener noreferrer"]:after,
a[rel="noreferrer nofollow noopener"]:after,
a[rel="noreferrer noopener nofollow"]:after,
a[rel="noopener nofollow noreferrer"]:after,
a[rel="noopener noreferrer nofollow"]:after {
    font-family: FontAwesome;
	font-size: small;
    content:' \f08e';
    margin: 0;
}

a[href$=".pdf"]:after {
    font-family: FontAwesome;
    font-size: small;
    font-size: 0.8125rem;
    content:' \f1c1';
    margin: 0;
}

/* 1.4 Links - Lists of links */

ul.listoflinks,
.listoflinks ul {
	list-style: none;
	padding-left: 0;
	margin-top: .5em;
	color: #074390;
}

ul.listoflinks li,
.listoflinks ul li {
	padding: 6px 0 10px 0;
	font-size: 1rem;
	border-bottom: 1px solid #074390;
	margin-bottom: .25em;
	color: #074390;
} 

ul.listoflinks li:before,
.listoflinks ul li:before {
    display: none;
}

.listoflinks ul li a,
ul.listoflinks li a {
	text-decoration: none;
	color: #074390;
}

.listoflinks ul li a:hover,
.listoflinks ul li a:focus,
ul.listoflinks li a:hover,
ul.listoflinks li a:focus {
	text-decoration: underline !important;
	text-decoration-style: solid;
	text-decoration-thickness: 2px;
}

.listoflinks ul li a:visited,
ul.listoflinks li a:visited {
	color:inherit;
}

/* 1.5 Button styles */

/* Set a global button hover style. This is needed because when a button color is set manually in the editor, it overrides the hover color set via the json. */
.wp-block-button__link.wp-element-button:hover {
	background-color: var(--wp--preset--color--contrast) !important;
}

/* Set button hover styles based on what color is used for the button text.*/
.wp-block-button__link.has-contrast-color.wp-element-button:hover,
.wp-block-button__link.has-accent-color.wp-element-button:hover,
.wp-block-button__link.has-accent-2-color.wp-element-button:hover {
	background-color: var(--wp--preset--color--accent-5) !important;
}

.breadcrumbs-white.yoast-breadcrumbs,
.breadcrumbs-white.yoast-breadcrumbs a,
.breadcrumbs-white.yoast-breadcrumbs a:hover,
.breadcrumbs-white.yoast-breadcrumbs a:visited {
  color: var(--wp--preset--color--base);
}

/*--------------------------------------------------------------
 * 2.0 Navigation
 --------------------------------------------------------------*/

/* 2.1 Navigation - MAIN - Add class of mainnav to the nav block in WP */
.mainnav {
	font-size: 1.1rem;
	text-align: center;
	font-weight: 600;
	justify-content: center;
}

.wp-block-navigation .mainnav .wp-block-navigation-item{
	justify-content: center;
}

.wp-block-navigation .mainnav .wp-block-navigation-item a,
.wp-block-navigation .mainnav .wp-block-navigation-item a.wp-block-navigation-item__content {
	padding: .5em 1em;
	border-bottom: 4px solid transparent;

}

.wp-block-navigation .mainnav .wp-block-navigation-item a:hover, 
.wp-block-navigation .mainnav .wp-block-navigation-item a:focus,
.wp-block-navigation .mainnav .wp-block-navigation-item a[aria-current="page"] {
	color: var(--wp--preset--color--base);
	text-decoration: none;
	text-underline-position: ;
	border-bottom: 4px solid #ffffff; 
	padding: .5em 1em;
}

.mainnav ul li.current-menu-item a {
    color: var(--wp--preset--color--base);
	text-decoration: none;
	text-underline-position: ;
	border-bottom: 4px solid #ffffff; 
	padding: .5em 1em;
}

/* 2.2 Navigation - SECONDARY - Add class of secondarynav to the nav block in WP */

/* 2.3 Navigation - SCHOOL - Add class of schoolnav to the nav block in WP */
.schoolnav {
	font-size: 1.1rem;
	text-align: center;
	font-weight: 600;
	justify-content: center;

}

.wp-block-navigation.schoolnav .wp-block-navigation-item{
	justify-content: center;
}

.wp-block-navigation.schoolnav .wp-block-navigation-item a,
.wp-block-navigation.schoolnav .wp-block-navigation-item a.wp-block-navigation-item__content {
	padding: .5em 1em;
	justify-content: center;
	border-bottom: 4px solid transparent;
}

.wp-block-navigation.schoolnav .wp-block-navigation-item a:hover, 
.wp-block-navigation.schoolnav .wp-block-navigation-item a:focus,
.wp-block-navigation.schoolnav .wp-block-navigation-item a[aria-current="page"] {
	color: var(--wp--preset--color--base);
	text-decoration: none;
	text-underline-position: ;
	border-bottom: 4px solid #ffffff; 
	padding: .5em 1em;
}

.schoolnav ul li.current-menu-item a {
    color: var(--wp--preset--color--base);
	text-decoration: none;
	text-underline-position: ;
	border-bottom: 4px solid #ffffff; 
	padding: .5em 1em;
}

/* 2.4 Navigation - SEARCH and TRANSLATE */

/* 2.5 Navigation - CONNECT */

.connectlinks img {
	max-width: 30px;
	vertical-align: middle;
	margin-right: 5px;
	margin-top: -2px;
}

/* 2.6 Mobile Navigation - Add class of mobilenav to the nav block in WP */

.wp-block-navigation.mobilenav .wp-block-navigation-item {
	width: 100%;
}

.wp-block-navigation.mobilenav .wp-block-navigation-item a,
.wp-block-navigation.mobilenav .wp-block-navigation-item a.wp-block-navigation-item__content {
	padding: .5em 1.5em;
	width: 100%;
}

.wp-block-navigation.mobilenav .wp-block-navigation-item a:hover, 
.wp-block-navigation.mobilenav .wp-block-navigation-item a:focus,
.wp-block-navigation.mobilenav .wp-block-navigation-item a[aria-current="page"] {
	background-color: var(--wp--preset--color--accent-2);
	color: var(--wp--preset--color--accent);
	text-decoration: underline;
	text-underline-offset: 3px;
	padding: .5em 1.5em;
}

.mobilenav ul li.current-menu-item a {
    color: var(--wp--preset--color--accent);
    background-color: var(--wp--preset--color--accent-2);
}

.wp-block-navigation.mobilenav .wp-block-navigation__responsive-container-open:after {
    content: "Menu";
    text-transform: uppercase;
}

.wp-block-navigation.mobilenav .wp-block-navigation__responsive-container-close:after {
    content: "Close";
    padding: 0.5em 0;
    text-transform: uppercase;
}

.wp-block-navigation.mobilenav.items-justified-center{
	width: 100%;
}

.mobilenav div.wp-block-spacer {
	background-color: var(--wp--preset--color--accent-2);
	width: 100% !important;
	height: 2px !important;
}

/*--------------------------------------------------------------
 * 3.0 Header
 --------------------------------------------------------------*/

.siteheader {
	background: url(/wp-content/themes/twentytwentyfour-child-TEMPLATE/assets/images/Ogdensburg-Logo-Devil-White.svg) no-repeat;
    background-position: right 100px top -75px;
    background-size: 350px;
}

/*--------------------------------------------------------------
 * 4.0 Footer
 --------------------------------------------------------------*/
.waveblock {
	position: relative;
}

/*--------------------------------------------------------------
 * 5.0 Pages
 --------------------------------------------------------------*/

/* 5.1 Page - Search Results */

/* Add icons before results of different types — page, post, pdf */

body.search.search-results .wp-block-query li.type-page h2.wp-block-post-title::before {
    content: "\f108";
    font-family: 'FontAwesome';
    color: var(--wp--preset--color--contrast-2);
    padding-right: 0.25em;
    text-transform: uppercase;
}
    
body.search.search-results .wp-block-query li.type-post h2.wp-block-post-title::before {
    content: "\f1ea";
    font-family: 'FontAwesome';
    color: var(--wp--preset--color--contrast-2);
    padding-right: 0.25em;
    text-transform: uppercase;
}

body.search.search-results .wp-block-query li.type-pdf h2.wp-block-post-title::before {
    content: "\f1c1";
    font-family: 'FontAwesome';
    color: var(--wp--preset--color--contrast-2);
    padding-right: 0.25em;
    text-transform: uppercase;
}

/* 5.2 Page - Staff Directory Results */
/* Staff Directory Results styles */

.noblanks {
	margin-left: 2em;
	font-weight: bold;
}

.noresults {
	margin-left: 2em;
	font-weight: bold;
}

table#datatable.tablesorter.staff {
	width: 90%;
}

table#datatable.tablesorter.staff thead tr {
	text-align: left;
	background-color: #074390; /* Updated to blue */
	color: #ffffff;
}

table#datatable.tablesorter.staff tr:nth-child(even) {
	background-color: #f2f2f2;
}

thead tr th.header {
	cursor: pointer;
}

/*--------------------------------------------------------------
 * 6.0 Features
 --------------------------------------------------------------*/

/* 6.1 Features - Special Alert Bar */

.special-alert h1:after {
    content:"\f06a";
    color: var(--wp--preset--color--base);
    margin-left:0.5em;
    font-family:'FontAwesome';
    font-weight:normal;
}

/* 6.2 Features - ICS Calendar */
.homecalendar .ics-calendar-basic-wrapper ul.events li div.event-info {
    font-weight: 400;
	font-family: 'Open Sans', Arial, sans-serif;
	color: #002349;
	text-transform: none;
}

.homecalendar .ics-calendar-basic-wrapper ul.events {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-left: none;
}

.homecalendar .ics-calendar-basic-wrapper ul.events li {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	background-color: var(--wp--preset--color--accent-6);
	padding: .5em 1em;
	color: #002349;
    font-family: 'Open Sans', Arial, sans-serif;
    font-size: var(--wp--preset--font-size--small);
    font-size: 1rem;
    font-weight: 400;
    margin: 0.25em;
    text-transform: uppercase;
	width: 32%;
	border-radius: 0px;
}
.homecalendar .ics-calendar-basic-wrapper ul.events .event h4.date {
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 600;
    margin: 0.5em 0;
	font-family: 'Open Sans', Arial, sans-serif;
	color: #002349;
	text-transform: none;
}

.homecalendar .ics-calendar-basic-wrapper ul.events .event .title {
	font-weight: 400;
	font-size: var(--wp--preset--font-size--small);
	font-size: 1.25rem;
	font-family: 'Open Sans', Arial, sans-serif;
	color: #002349;
	text-transform: none;
}

.homecalendar .ics-calendar-basic-wrapper ul.events .event .time {
	font-size: var(--wp--preset--font-size--tiny);
	font-weight: 400;
    margin: 0.5em 0;
	font-family: 'Open Sans', Arial, sans-serif;
	color: #002349;
	text-transform: none;
}

.homecalendar .ics-calendar-basic-wrapper ul.events .event .time br{
	display: none;
}

.homecalendar .ics-calendar-basic-wrapper ul.events .event .time .end_time {
	font-size: 100%;
}

.homecalendar .fullcal {
	display: flex;
	justify-content: center;
	font-weight: 600;
	font-size: 16px;
	font-size: 1rem;
}

.homecalendar .ics-calendar-paginate.next {
    color: var(--wp--preset--color--accent-2);
    background-color: #002349;
    border-radius: 25px;
    padding: 0.5em 1em;
	text-decoration: none;
}


.homecalendar .ics-calendar-paginate.prev {
    color: var(--wp--preset--color--accent-2);
    background-color: #002349;
    border-radius: 25px;
    padding: 0.5em 1em;
	text-decoration: none;
}

.homecalendar .ics-calendar-paginate-wrapper a:hover {
	color: var(--wp--preset--color--accent-2);
	text-decoration: underline;
}

.homecalendar .ics-calendar-paginate-wrapper a:focus {
	color: var(--wp--preset--color--accent-2);
	text-decoration: underline;
}

/* 6.3 Features - ICS Calendar - Grid View */

/* 6.4 Features - Yoast Breadcrumbs */

.yoast-breadcrumbs {
	color: var(--wp--preset--color--contrast);
	font-size: 1rem;
	font-family: 'Open Sans', sans-serif;
}

.yoast-breadcrumbs a {
	color: var(--wp--preset--color--contrast);
}


/*--------------------------------------------------------------
 * 7.0 Media Queries
 --------------------------------------------------------------*/

@media screen and (max-width: 1320px) {
	

}

@media screen and (max-width: 1092px) {
	.homecalendar .ics-calendar-basic-wrapper ul.events li {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		width: 48%;
	}

}

@media screen and (min-width: 1024px) and (max-width: 1320px) {


}

@media screen and (max-width: 1024px) {
	div .wp-block-cover.missionblock {
		padding-bottom: 4.75rem !important;
	}
	
	footer .wp-block-columns {
		flex-wrap: wrap !important;
	}
	footer .wp-block-column {
		flex-basis: 28% !important;
	}
	footer .wp-block-column:last-child {
		flex-basis: 100% !important;
	}

	.wp-block-group.schoolnews {
		flex-wrap: wrap;
	}
}

@media screen and (max-width: 900px) {
	
	
} 

@media screen and (max-width: 783px) {
	
	/* The 783px query is for the ICS calendar only because 783px is the point where it switches from list to grid view. */ 
	.homecalendar .ics-calendar-basic-wrapper ul.events {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		column-gap: 1rem;
		border-left: none;
		width: 100%;
	}
	.homecalendar .ics-calendar-basic-wrapper ul.events li {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		width: 100%;
	}
}

@media screen and (max-width: 782px) {
	
	div.desktopnav {
		display: none;
	}
	
	div .wp-block-cover.missionblock {
		padding-bottom: 5.5rem!important;
	}
	
	.siteheader {
		background-position: center top -25px;
		background-size: 275px;
	}
	

}

@media screen and (min-width: 782px) {
	
	div.mobilenav {
		display: none;
	}
	div.desktopnav {
		display: block;
	}
}


@media screen and (max-width: 600px) {
	
	
}
/*  --Responsive TABLES--
Max width before this PARTICULAR table gets nasty
This query will take effect for any screen smaller than 760px
and also iPads specifically.
*/
@media only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-width: 1024px) {

	/* Only apply these mobile styles to tables with class 'responsive' */
	table.responsive, 
	table.responsive thead, 
	table.responsive tbody, 
	table.responsive th, 
	table.responsive td, 
	table.responsive tr { 
		display: block; 
		margin-bottom: 0px;
	}

	table.responsive th {
		background: #eeeeee;
		border: 1px solid #dddddd;
		padding: 20px 5px; 
	}

	table.responsive thead tr { 
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	
	table.responsive tr { border: 1px solid #ccc; }
	
	table.responsive td { 
		border: none;
		border-bottom: 1px solid #eee; 
		position: relative;
		padding: 7% 2%;
		height: auto;
	}
	
	table.responsive td:before { 
		position: absolute;
		top: 2px;
		left: 6px;
		width: 45%; 
		padding-right: 10px; 
		white-space: nowrap;
	}

	/* Label the data only for responsive staff tables */
	.staff td:nth-of-type(1):before { content: "Last Name:"; font-weight: bold; }
	.staff td:nth-of-type(2):before { content: "First Name:"; font-weight: bold; }
	.staff td:nth-of-type(3):before { content: "Building:"; font-weight: bold; }
	.staff td:nth-of-type(4):before { content: "Title:"; font-weight: bold; }
	.staff td:nth-of-type(5):before { content: "Email:"; font-weight: bold; }
}


 













