/*
Theme Name: Twenty Twenty-Five CHILD for the Liberty CSD site
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
		2.5 Navigation - CONNECT menu
	3.0 Header
		3.1 Header - Special Alert Bar
	4.0 Footer
	5.0 Pages
		5.1 Page - Search Results
		5.2 Page - Staff Directory Results
		5.3 - Recent Headlines Block
	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
 --------------------------------------------------------------*/

/* 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;
	margin-left: -.5em !important;
}

ul.listoflinks li,
.listoflinks ul li {
	padding-left: -.5em;
	text-indent: -1.5em !important;
	border-bottom: 1px solid #97999B;
}

ul.listoflinks li:before,
.listoflinks ul li:before {
    color: #97999B;
    content: "\f101";
	font-family: FontAwesome;
	font-weight: 900;
	font-size: 1.5em;
	margin-right: 0.5em;
    vertical-align: middle;
}

ul.listoflinks_white,
.listoflinks_white ul {
	list-style: none;
	margin-left: -0.5em;
	padding-left: 1.8em !important;	
	text-indent: -1.6em !important;
}

ul.listoflinks_white li:before,
.listoflinks_white ul li:before {
    color: #FFFFFF;
    content: "\f101";
	font-family: FontAwesome;
	font-weight: 900;
	font-size: 1.5em;
	margin-right: 0.5em;
    vertical-align: middle;
}

.nomargintop {
	margin-top: 0 !important;
}


/* 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--steel-gray);
}

/* Set button hover styles based on what color is used for the button text.*/
.wp-block-button__link.has-brand-red-color.wp-element-button:hover,
.wp-block-button__link.has-black-color.wp-element-button:hover,
.wp-block-button__link.has-athletic-gray-2-color.wp-element-button:hover {
	background-color: var(--wp--preset--color--steel-gray);
}

.altbutton a:hover {
  background-color: #EFF0F0 !important; 
  color: #000000 !important;
}

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

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

/* Ensure the menu item link is a relative container */
.mainnav a {
  position: relative;
  text-decoration: none;
  color: #ffffff; /* Change to your menu text color */
  padding-bottom: 4px; /* Space between the text and the line */
}

/* Create the 2px line using a pseudo-element */
.mainnav a::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 4px;
  bottom: 0;
  left: 0;
  background-color: #ffffff; /* Change to your desired line color */
  
  /* Start scaled down to 0 width */
  transform: scaleX(0);
  
  /* Set the animation speed and timing function */
  transition: transform 0.3s ease-in-out;
  
  /* Determines the starting point of the expansion (center by default) */
  transform-origin: center; 
}

/* Expand the line to full width on hover */
.mainnav a:hover::after {
  transform: scaleX(1);
}

.mainnav a {
  	border-bottom: 6px solid transparent;
}

.mainnav .current-menu-item > a, .navigation-top .current_page_item > a {
  	border-bottom: 6px solid #000000;
	width: 100%;
}

.mainnav {
	padding-bottom: 3px !important;
}

.wp-block-navigation.mainnav-mobile .wp-block-navigation__responsive-container-open:after {
    content: "Main Menu" !important;
	color: white;
    text-transform: uppercase;
	padding-left: .5em;
}

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

.wp-block-navigation .wp-block-navigation__submenu-icon svg {
	margin-top: -0.6em !important;
	height: 16px;
	Width: 16px;
	padding: 4px;
}

.wp-block-navigation .wp-block-navigation__submenu-icon {
	margin-left: 0 !important;

}



/* 2.2 Navigation - SECONDARY - Add class of secondarynav to the nav block in WP */

.calendar-icon a::before {
    content: "\f133"; /* Font Awesome unicode for a calendar */
    font-family: FontAwesome; 
    font-weight: 900; /* Required for solid icons */
	color: #E4002B;
    margin-right: 8px; /* Adds space between the icon and the text */
    display: inline-block;
}

.contact-icon a::before {
    content: "\f095"; /* Font Awesome unicode for a calendar */
    font-family: FontAwesome; 
    font-weight: 900; /* Required for solid icons */
	color: #E4002B;
    margin-right: 8px; /* Adds space between the icon and the text */
    display: inline-block;
}

.news-icon a::before {
    content: "\f1ea"; /* Font Awesome unicode for a calendar */
    font-family: FontAwesome; 
    font-weight: 900; /* Required for solid icons */
	color: #E4002B;
    margin-right: 8px; /* Adds space between the icon and the text */
    display: inline-block;
}

.strategic-icon a::before {
    content: "\f19d"; /* Font Awesome unicode for a calendar */
    font-family: FontAwesome; 
    font-weight: 900; /* Required for solid icons */
	color: #E4002B;
    margin-right: 8px; /* Adds space between the icon and the text */
    display: inline-block;
}

.secondarynav-group {
	border-bottom: 4px solid #E4002B;
}



/* 2.3 Navigation - SCHOOL - Add class of schoolnav to the nav block in WP */

.schoolnav a {
  position: relative;
  text-decoration: none;
  color: #000000; /* Change to your menu text color */
  padding-bottom: 4px; /* Space between the text and the line */
}

/* Create the 2px line using a pseudo-element */
.schoolnav a::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 4px;
  bottom: 0;
  left: 0;
  background-color: #E4002B; /* Change to your desired line color */
  
  /* Start scaled down to 0 width */
  transform: scaleX(0);
  
  /* Set the animation speed and timing function */
  transition: transform 0.3s ease-in-out;
  
  /* Determines the starting point of the expansion (center by default) */
  transform-origin: center; 
}

/* Expand the line to full width on hover */
.schoolnav a:hover::after {
  transform: scaleX(1);
}

.schoolnav a {
  	border-bottom: 6px solid transparent;
}

.schoolnav .current-menu-item > a, .navigation-top .current_page_item > a {
  	border-bottom: 6px solid #000000;
	width: 100%;
}

.schoolnav-wrap{
	border-bottom: solid 5px #000000;
	padding-bottom: 6px !important;
    padding-top: 14px !important;
}

.wp-block-navigation.schoolnav-mobile .wp-block-navigation__responsive-container-open:after {
    content: "OUR SCHOOLS" !important;
	color: #000000;
    text-transform: capitalize;
	padding-left: .5em;
}

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

/* 2.4 Navigation - SEARCH and TRANSLATE */

/* Reduce the height and padding of the search bar */

.wp-block-search__inside-wrapper {
    height: 30px !important; /* Adjust height as needed */
}

.wp-block-search__input {
    padding: 5px 10px !important; /* Shrinks the inner space */
    height: 100% !important;
}

.wp-block-search__button {
    padding: 0px 5px !important; /* Adjusts the button size to match */
	margin-left:0 !important;
	background-color:var(--wp--preset--color--contrast);
}

:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
	padding: 0px;
}

.gt_selector {
	border-radius: 0px;
	width: 100%;
	padding: 5px 0px;
}

/* 2.5 Navigation - CONNECT - Add class of connectmenu to the nav block in WP */

.connectmenu .wp-block-navigation-item__content img {
    width: 80px !important;
    height: 80px !important;
    object-fit: contain; /* This prevents the image from stretching */
    transition: transform 0.3s ease-in-out;
    display: block;
    margin: 0 auto 0px auto;
}

.connectmenu .wp-block-navigation-item__content:hover img {
    transform: scale(1.15);
}

/* Text Styling */
.connectmenu .wp-block-navigation-item__label {
    text-align: center;
    line-height: 1;
    word-wrap: break-word; /* Prevents long words from breaking the layout */
}

/* Center the flex container contents */
.connectmenu .wp-block-navigation-item__content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;    /* Centers the icon & text horizontally */
    justify-content: flex-start !important;
    text-align: center !important;     /* Centers the text lines themselves */
    width: 100%;
}

/* 2.5 Navigation - Athletics Featured Links - Add class of athleticslinks to the nav block in WP */


.athleticslinks .wp-block-navigation-item__content img {
    width: 75px !important;
    height: 75px !important;
    object-fit: contain; /* This prevents the image from stretching */
    transition: transform 0.3s ease-in-out;
    display: block;
    margin: 0 auto 10px auto;
}

.athleticslinks .wp-block-navigation-item__content:hover img {
    transform: scale(1.15);
}

/* Text Styling */
.athleticslinks .wp-block-navigation-item__label {
    text-align: center;
    line-height: 1.3;
    word-wrap: break-word; /* Prevents long words from breaking the layout */
}

/* Center the flex container contents */
.athleticslinks .wp-block-navigation-item__content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;    /* Centers the icon & text horizontally */
    justify-content: flex-start !important;
    text-align: center !important;     /* Centers the text lines themselves */
    width: 100%;
}

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

/* 3.1 Header - Special Alert Bar */


.wp-block-group.special-alert h1 {
	padding: 0.5em 0 0 0 !important;
}

.wp-block-group.special-alert p {
	padding: 0 0 1em 0 !important;
}

.special-alert h1:after {
    content:"\f06a";
    color: var(--wp--preset--color--contrast-3);
    margin-left:0.5em;
    font-family:'FontAwesome';
    font-weight:normal;
}


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

.social-links p {
	display: inline-flex;
    align-items: center;
    gap: 8px; 
}

/*--------------------------------------------------------------
 * 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--brand-red);
    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--brand-red);
    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--brand-red);
    padding-right: 0.25em;
    text-transform: uppercase;
}

/* 5.2 Page - Staff Directory Results */



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

.ics-calendar-list-wrapper .ics-calendar-date {
	color: #fff;
	background-color: #63666A;
	padding: 5px;
}

.ics-calendar dl.events dd.event {
	font-weight: 400;
	border-bottom: 1px solid #E4002B;
	padding-bottom: 5px;
}

.ics-calendar .events .time .end_time {
    font-size: 100% !important;
	font-weight: 700 !important;
}

.ics-calendar .events .time {
	color: #E4002B;
}


/* 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) {
	
.connectmenu .wp-block-navigation-item__content a {
    flex-wrap: wrap
}
	
}

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

	
} 

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

	.secondarynav {
		padding-top: .5em;
	}

	
} 


@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) {
	
	
}


@media screen and (max-width: 600px) {
	
	.mainnav {
		padding-bottom: .5em !important;
	}

	.schoolnav {
		justify-content: left;
	}
	
	
}

