/*
Theme Name: Twenty Twenty-Five CHILD Poland
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: CHILD THEME of the Twenty Twenty-Five Wordpress Theme.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
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
	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
 --------------------------------------------------------------*/

/* add spacing around post date for accessibility */
:root :where(.wp-block-post-date) {
    margin: 7px 0;
}

/* 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 {
	text-decoration-thickness: 1px; 
}

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 {
	list-style: none;
	padding-left: 0;
}

ul.listoflinks li {
	border-bottom: 1px solid var(--wp--preset--color--accent);
	padding-bottom: .5em;
  	margin-bottom: .5em;
}

div.has-contrast-2-background-color ul.listoflinks li {
	border-bottom: 1px solid var(--wp--preset--color--base);
}

div.has-contrast-3-background-color ul.listoflinks li {
	border-bottom: 1px solid var(--wp--preset--color--contrast-2);
}

/* 1.5 Button styles */

.wp-block-search__button,
.wp-block-file .wp-block-file__button {
	background-color: var(--wp--preset--color--primary);
	border-radius: 0;
	border: none;
	color: #000;
	font-size: var(--wp--preset--font-size--medium);
	padding: .15em;
	margin-left: 0px;
  	-webkit-appearance: none !important;
}

/* Featured Buttons */

.featured-btn-2 a {
  display: inline-block;
  position: relative;
  margin-bottom: 10px;
}

.featured-btn-2 a:hover {
  text-decoration: none;
}

.featured-btn-2 .wp-block-button__link.has-base-color.wp-element-button:hover {
  background-color: transparent !important;
}

/* Next two styles add the animated underline on hover. These are set to the before pseudo-class so they don't conflict with the nofollow style that uses the after pseudo-class.*/
.featured-btn-2 a::before {
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: var(--wp--preset--color--accent);
  transform-origin: bottom center;
  transition: transform 0.25s ease-out;
}

.featured-btn-2 a:hover::before {
  transform: scaleX(.5);
  transform-origin: bottom center;
}

/* 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-contrast-2-color.wp-element-button:hover,
.wp-block-button__link.has-contrast-3-color.wp-element-button:hover {
	background-color: var(--wp--preset--color--base-2) !important;
}

.wp-block-button__link.has-base-color.wp-element-button:hover,
.wp-block-button__link.has-base-2-color.wp-element-button:hover {
	background-color: var(--wp--preset--color--contrast) !important;
}

/*--------------------------------------------------------------
 * 2.0 Navigation
 --------------------------------------------------------------*/

/* 2.1 Navigation - MAIN - Add class of mainnav to the nav block in WP */

.mainnav a {
  text-decoration: none;
  position: relative;
  transition: 0.4s;
}

/* Next two styles add the animated underline on hover. These are set to the before pseudo-class so they don't conflict with the nofollow style that uses the after pseudo-class.*/
.mainnav a::before {
  content: "";
  position: absolute;
  width: 0;
  height: 2px;
  bottom: -5px;
  left: 50%;
  background-color: var(--wp--preset--color--accent);
  transition: all 0.4s;
}

.mainnav a:hover::before {
  width: 100%;
  left: 0;
}

.wp-block-navigation.mainnav .wp-block-navigation-item a[aria-current="page"] {
	background-color: var(--wp--preset--color--contrast-3) !important;
 	color: var(--wp--preset--color--base) !important;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	padding: .3em .75em;
	border-radius: 5px;
}

.wp-block-navigation.mainnav .wp-block-navigation-item a {
	padding: .3em .75em;
}

/* 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 */

/* 2.4 Navigation - SEARCH and TRANSLATE */

/* 2.5 Mobile Nav */

.wp-block-navigation.mobilenav button.wp-block-navigation__responsive-container-open:after {
    content: "Menu";
    text-transform: uppercase;
}

.mobilenav button.wp-block-navigation__responsive-container-open {
	margin: 0 auto;
}

.wp-block-navigation.mobilenav button.wp-block-navigation__responsive-container-close:after {
    content: "Close";
    padding: 0.5em 0;
    text-transform: uppercase;
}

.mobilenav div.wp-block-spacer {
	background-color: var(--wp--preset--color--accent);
	width: 100% !important;
	height: 2px !important;
}

/* mobile nav style */

.wp-block-navigation__responsive-close {
	padding-left: 1em;
	padding-right: 1em;
}

/*--------------------------------------------------------------
 * 3.0 Header
 --------------------------------------------------------------*/

/*--------------------------------------------------------------
 * 4.0 Footer
 --------------------------------------------------------------*/

/*--------------------------------------------------------------
 * 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: #F9A138; /* Updated to orange */
	color: #000000;
}

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 */

/* Grid View - ICS Calendar */

.wp-site-blocks table.ics-calendar-month-grid th {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--base);
	background-color: var(--wp--preset--color--contrast-2);
	border-color: var(--wp--preset--color--base-2);
}

.wp-site-blocks .ics-calendar-month-grid .event {
	font-size: var(--wp--preset--font-size--small);
}

.wp-site-blocks .ics-calendar-month-grid span.title.has_desc.confirmed {
	text-decoration: underline;
}

.wp-site-blocks .ics-calendar-month-grid .events .time {
    font-size: 90%;
    font-weight: 400;
}

.wp-site-blocks .ics-calendar-month-grid .day {
	font-size: var(--wp--preset--font-size--small);
}

.wp-site-blocks .ics-calendar-month-wrapper h3 {
	font-size: var(--wp--preset--font-size--large);
}

.wp-site-blocks .ics-calendar-month-grid .today div.day {
	background: var(--wp--preset--color--accent)!important;
}

.wp-site-blocks .ics-calendar-arrow-nav>.today {
	display: none;
}

/* ICS Calendar Homepage View */

/* removes underline of calendar events that have more details on the list view page */

.wp-site-blocks .ics-calendar-list-wrapper span.title.has_desc.confirmed {
	text-decoration: none;
}
.wp-site-blocks .ics-calendar-list-wrapper .ics-calendar-date-wrapper {
	background-color: var(--wp--preset--color--base);
}

.wp-site-blocks .ics-calendar-list-wrapper .ics-calendar-date {
	border-top: none;
	background-color: var(--wp--preset--color--base-2);
	text-transform: none;
	font-family: 'Open Sans', sans-serif;
	font-size: var(--wp--preset--font-size--medium);
	padding: .5em 1em .5em 1em;
	color: var(--wp--preset--color--contrast-2)!important;
	border-radius: 10px;
	margin-top: 1em;
}

.wp-site-blocks .ics-calendar-list-wrapper dl.events {
	padding: .3em .5em .3em .5em;
	margin-bottom: .5rem;
	font-size: 1.25rem;
}

.wp-site-blocks .ics-calendar .ics-calendar-list-wrapper dl.events dt.time {
	font-weight: 400;
	padding-top: .75rem;
	font-size: var(--wp--preset--font-size--small);
}

.wp-site-blocks .ics-calendar .ics-calendar-list-wrapper dl.events dt.all-day-indicator {
	font-size: 75%;
	text-transform: uppercase;
}

.wp-site-blocks .ics-calendar .events .time .end_time {
	display: inline-block;
  	font-size: 100%;
  	font-weight: 700;
}

/* Featured button group 2 (auto) */
	
	.featured-btn-2 .wp-block-button__link img {
	margin-bottom:1em;
	height: 70px;
	width: 100%
}

/* 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 (min-width: 1024px) and (max-width: 1320px) {


}

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

}

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

	div.mobilenav {
		display: none !important;
	}
	
	div.desktopnav {
		display: block !important;
	}
} 

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

	div.desktopnav {
		display: none !important;
	}
	
} 

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

	.wp-block-columns {
		flex-wrap: wrap !important;
	}
	
	.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column[style*=flex-basis]{
		flex-grow: 1}
	}
} 


@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. */ 

	
}

@media screen and (max-width: 782px) {
	
	/* Featured button group 1 (manual) */
	
	.header-left {
	display: flex;
	flex-basis: 50%;
 	justify-content: center;
	}
	
	.header-right {
	display: flex;
	flex-basis: 50%;
 	justify-content: center;
	}
	
	.button-grid-1 {
		display: flex;
  		justify-content: center;
  		align-items: center;
	}
	
	.button-grid-1 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

}


@media screen and (max-width: 780px) {
	
	.button-grid-1 {
	grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	
	.featured-btn-2 a {
	text-align: center;
	}
	
	.featured-btn-2 .wp-block-button__link img {
	margin-bottom:0;
	width: auto;
	vertical-align:middle;
	margin-right: 0;
	}
	
	
}

/*  --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;
	}
	
	*/
	
	
		/* Force table to not be like tables anymore */
	table, thead, tbody, th, td, tr { 
		display: block; 
		margin-bottom: 0px;
	}
	
	table th {
	background:#eeeeee;
	border: 1px solid #dddddd;
	padding: 20px 5px; 
	}

	
	
	/* Hide table headers (but not display: none;, for accessibility) */
	thead tr { 
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	
	tr { border: 1px solid #ccc; }
	
	td { 
		/* Behave  like a "row" */
		border: none;
		border-bottom: 1px solid #eee; 
		position: relative;
		padding: 7% 2%;
		height: auto;
	}
	
	td:before { 
		/* Now like a table header */
		position: absolute;
		/* Top/left values mimic padding */
		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: "Email:"; font-weight: bold; }
	.staff td:nth-of-type(4):before { content: "Title:"; font-weight: bold; }
	.staff td:nth-of-type(5):before { content: "Contact:"; font-weight: bold; }
}