*,
*:after,
*:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.clearfix:before,
.clearfix:after {
  content: '';
  display: table;
}

.clearfix:after {
  clear: both;
}

.display-inline * {
  display: inline-block;
}

.aria-hide {
  display: none;
}

.less-gap {
    margin-left: -.5rem;
    margin-right: -.5rem;
}

.less-gap > div {
    padding-left: .5rem;
    padding-right: .5rem;
}

.mt0 {
	margin-top: 0;
}

.mb0 {
	margin-bottom: 0;
}

/* Variables */
:root {
	--primary-brand: #0099A8;
	--secondary-brand: #004A98;
	--accent-1: #F04B24;
	--accent-2: #95C93D;
	--accent-3: #C31F33;
	--district: #0099A8;
	--school: #004A98;
	
	--dark-font-color: #000000;
	--light-font-color: #fff;
	--dark-grey: #4E4E4E;
	--medium-grey: #7E7E7E;
	--light-grey: #F4F4F4; 
	--navy: #024081;
	--black: #000000;
	
	--professional-learning: #95C93D;
	--indigenous-education: #F04B24;
	--sd22-cupe-professional-learning: #F04B24;
	--sd22-exempt-professional-learning: #95C93D;
	--sd22-teacher-professional-learning: #C12033;

	--body-font: Arial, Helvetica, sans-serif;
	--heading-font: 'Roboto', sans-serif;
	--btn-font: 'Open Sans', sans-serif;
	
	--font-regular: 400;
	--font-medium: 500;
	--font-semibold: 600;
	--font-bold: 700;
	
	--main-top-xs: 75.75px;
	--main-top-lg: 4.5rem;
}

/* background-colors */
.bg-primary-brand {background: var(--primary-brand)}
.bg-secondary-brand {background: var(--secondary-brand)}
.accent-1 {color: var(--accent-1)}
.accent-2 {color: var(--accent-2)}
.accent-3 {color: var(--accent-3)}
.brand-1 {color: var(--primary-brand)}
.brand-2 {color: var(--secondary-brand)}
.bg-white {
	background-color: white;
}

/* waves colour */
.banner-wave path {
	fill: var(--primary-brand);
}

.cta-2-wave path,
.menu-wave path,
.page-title path {
	fill: var(--secondary-brand);
}

.banner-wave.bottom path {
	fill: var(--secondary-brand);
}

/* TYPOGRAPHY
Using the Perfect Fifth factor from https://www.gridlover.net/try
*/
html {
  font-size: 16px;
  line-height: 21px;
  scroll-behavior: smooth;
}

@media (min-width: 99em){
	html {
	  font-size: calc(12px + 0.390625vw);
	}
}

@media (min-width: 125em){
	html {
	  font-size: calc(15px + 0.390625vw);
	}
}

body {
  max-width: 2560px;
  padding: 0;
  margin: 0 auto;  
  font-family: var(--body-font);
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
  line-height: 1.4;
  color: var(--dark-font-color);
}

h1, .h1 {
  font-family: var(--heading-font);
  font-weight: var(--font-bold);
  font-style: normal; 
  font-size: 3.25rem;
  margin-top: 1.3125rem;
  margin-bottom: 2.625rem;
}

h2, .h2, h3, .h3, h4, 
.h4, h5, .h5, h6, .h6 {
  font-family: var(--heading-font);
  font-weight: var(--font-bold);
  font-style: normal;
}

h2, .h2, .editor-heading-h1 {
  font-size: 2rem;
  margin-top: 1.3125rem;
  margin-bottom: 1.3125rem;
}

h3, .h3, .editor-heading-h2 {
  font-size: 1.375rem;
  margin-top: 1rem;
  margin-bottom: 0.75rem;
}

h4, .h4 {
  font-size: 1rem;
  margin-top: 1.3125rem;
  margin-bottom: 0.75rem;
}

h5, .h5 {
  font-size: 1rem;
  margin-top: 1.3125rem;
  margin-bottom: 0.75rem;
}

@media all and (max-width: 62em){
	h1, .h1 {
		font-size: 2rem;
	}
	
	h2, .h2 {
		font-size: 1.5rem;
		margin: 1rem 0;
	}
}

/* Font size within main content */
.resize-text h1 {
  font-size: 3.25em;
}

.resize-text h2 {
  font-size: 2em;
}

.resize-text h3 {
  font-size: 1.375em;
}

.resize-text h4,
.resize-text h5{
  font-size: 1em;
}

@media all and (max-width: 62em){
	.resize-text h1 {
		font-size: 2em;
	}
	
	.resize-text h2 {
		font-size: 1.5em;
	}
}

p, ul, ol, pre, blockquote {
  margin-top: 0rem;
  margin-bottom: 1.3125rem;
}

ul ul, ol ol, ul ol, ol ul {
  margin-top: 0rem;
  margin-bottom: 0rem;
}

h1 + h2 {
  margin-top: 0;
}

p {
	line-height: 1.5;
}

hr {
	border: 0;
    height: 1px;
    background-color: #e6e6e6;
	margin: 2rem 0;	
	clear: both;
}

img {
	height: auto;
	max-width: 100%;	
	object-fit: cover;
}	

a {
  text-decoration: none;
}

blockquote {
	background: var(--light-grey);
    border-left: 5px solid var(--primary-brand);
    padding: 1.5rem;
    margin: 0 0 1.5rem;
    position: relative;
    font-weight: 300;
}

blockquote p:last-of-type {
	margin-bottom: 0;
}

ul {
	padding-left: 0;
	list-style: none;
}

svg {
	margin-top: -1px;
}

strong {
	font-weight: var(--font-bold);
}

.allow-newlines {
  white-space: pre-wrap;
}

.no-padding {
  padding: 0;
}

.no-margin {
	margin: 0;
}

.flex-row {
	display: flex;
	align-items: center;
	gap: .5rem;
}

.flew-row-between {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.flex-column-center {
	display: flex;
	justify-content: center;
	flex-direction: column;
}

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

.content-inner ul,
.content ul {
	padding-left: 1.2rem;
	list-style: unset;
}

.page {
	padding: 2rem 0;
}

.content {
	width: 100%;
}

.wrapper {
	display: block;
	width: 100%;
}

.content-wrapper {
	position: relative;
	width: 100%;
}

.font-bold {
	font-weight: var(--font-bold);
}

@media all and (min-width: 75em){
	.wrapper {
		display: flex;
		width: 100%;
	}
	
	.full-container {
		padding: 0 2rem;
	}

	blockquote {
	 	padding: 2rem
	}
}

/* Google Translate */
.goog-te-gadget .goog-te-combo {
	margin: 0 0 1rem!important;
	padding: 0.75rem;
    border: none;
	border-right: 0.5rem solid #fff;
    font-weight: var(--font-medium);
	width: 100%;
}

/* Layout */
.content-container,
.container.pad-side {
	padding: 0 1rem;
}

.container.pad-side {
	margin: 0 1rem;
}

@media all and (min-width: 48em){
	.content-container,
	.container.pad-side {
		padding: 0 5%;
		width: auto;
	}
}

@media all and (min-width: 62em){
	.content-container,
	.container.pad-side {
		padding: 0 7.5%;
	}
	
	/*.page-template.content-container {
		padding: 0 10%;
	}*/
	
	.container.pad-side {
		margin-top: 3rem;
	}
}

/* Search Results */
.container.pad-side > .row > h1 {
	width: 100%;
}
.search-results {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.search-result {
	border: 1px dashed #c3c3c3;
	padding: 1rem 1rem 0;
	flex-basis: 100%;
	max-width: 100%;
}

.search-result a {
	display: flex;
	column-gap: 1rem;	
	color: var(--dark-font-color);
}

.search-description strong {
	color: var(--accent-1)
}

.error-page-container .input-buttons {
	margin: auto;
}

@media (min-width: 75em){
	/*.search-result {
		flex-basis: calc(50% - 1rem);
		max-width: calc(50% - 1rem);
	}*/
}

/* show and hide on different screen sizes */
.mobile-only {
	display: block;
}

.desktop-only {
	display: none;
}

@media all and (min-width: 75em){
	.desktop-only {
		display: block;
	}
	.mobile-only {
		display: none;
	}
}

/* BUTTON & LINKS */
a {
  	transition: all .2s ease-in-out; 
	color: var(--accent-1);
}

a:hover,
a:focus {
	filter: brightness(90%)
}

.page-template a,
.page-template .btn-link {
	color: var(--accent-3);
}

.btn {
	color: var(--light-font-color) !important;
    padding: .75rem 1.75rem;
    font-weight: var(--font-bold);
	font-size: 1rem;
	font-family: var(--btn-font);
	border-radius: 10px;
    margin-top: 1rem;
    display: block;
	width: fit-content;	
	transition: all .3s ease-in-out;
}

.btn-primary {
    background: var(--primary-brand);
}

.btn-secondary {
    background: var(--secondary-brand);
}

.btn-accent-1 {
	 background: var(--accent-1);
}

.btn-accent-2 {
	 background: var(--accent-2);
}

.btn-accent-3 {
	 background: var(--accent-3);
}

.btn-link {
	padding: 0;
	color: var(--accent-1)!important;
	font-weight: var(--font-semibold);
}

.btn-link-secondary {
	color: #fff;
}

/* INPUT FIELDS */
input:-webkit-autofill,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:focus {
  border: none;
  -webkit-text-fill-color: none;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}

.input-field input[type="text"], .input-field input[type="password"], 
.input-field input[type="date"], .input-field input[type="tel"], 
.input-field input[type="email"],.input-field input[type="search"], 
textarea {
    width: 100%;
    box-sizing: border-box;
    border: solid 1px #e4e4e4;
    transition: 0.5s;
	padding: .5rem;
}

textarea {
	min-height: 200px;
    font-family: var(--body-font);
}

input[type="submit"] {
    font-weight: bold;
    background: var(--accent-1);
    color: white;
	border-radius: 50px;
    border: 0;
    cursor: pointer;
    padding: .5rem 1.5rem;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.input-field {
	margin-bottom: 1rem;
}

.input-field label {
    margin-bottom: .5rem;
    display: block;
}

.input-buttons {
    font-weight: var(--font-bold);
    margin-top: 1rem;
    display: block;
	width: fit-content;	
	color: var(--light-font-color);
    background: var(--accent-1);
}

/* Alerts */
.banner-alert-wrapper {
	font-size: 1rem;
}

/* Table Styles */
.table {
  margin: 0 0 2rem;
  overflow-x: auto;
  box-shadow: 0px 5px 10px rgb(0 0 0 / 10%);
}

.table th a {
	color: white;
}

.table th a:hover,
.table th a:focus {
	text-decoration: underline;
}

.table.bell-schedule {
	box-shadow: none;
}

.table table {
  border-radius: 5px;
  font-weight: normal;
  border: none;
  border-collapse: collapse;
  width: 100%;
  max-width: 100%;
  white-space: normal;
  background-color: white;
}

.table table td, 
.table table th {
  padding: 10px 15px;
}

.table table td {
  border-right: 1px solid #F7F6F4;
}

.table table td:last-of-type {
  border-right: 0;
}

.table table thead th {
  color: #ffffff;
  background: var(--primary-brand);
}

.table table thead th > * {
  color: #ffffff;
}

.table table thead th:nth-child(odd) {
  color: #ffffff;
  background: var(--secondary-brand);
}

.table table tr:nth-child(even) {
  background: #f5f5f5;
}

.table table tr:nth-child(odd) {
  background: white;
}

.table h3 {
	margin: .5rem 0;
}

.table img {
	width: 100%;
}


/* Header */
.logo:hover {
	filter: none;
}
.logo img {
	height: 70px;
	object-fit: contain;
	padding: .75rem;
	display: block;
}

.nav-link {
    color: var(--dark-font-color);
    font-family: var(--btn-font);
    font-weight: var(--font-bold);
	justify-content: center;
	gap: 0;
}

.nav-link a {
	color: var(--dark-font-color);
}

.desktop-primary-nav a:hover,
.desktop-primary-nav a:focus {
	font-weight: var(--font-bold);
}

header {
	position: sticky;
    z-index: 120;
    background: white;
    width: 100%;
	max-width: 2560px;
    top: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#nav-primary {
    display: none;
	flex-direction: column;
    background: white;
    margin: 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 200;
    width: 100%;
    height: 100dvh;
    min-height: 100dvh;
    overflow-y: scroll;
	font-family: var(--btn-font);
	font-weight: var(--font-semibold);
}

.icon-trigger {
    margin-left: 0.5rem;
	cursor: pointer;
}

.nav-primary-wrapper {
	flex: 1 0 auto;
}

.nav-primary-wrapper .content-container{
	margin-top: var(--main-top-xs);
}

.nav-app {
	z-index: 200;
}

.nav-app-btn {
	width: var(--main-top-xs);
    height: var(--main-top-xs);
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: auto;
	text-align: center;
	cursor: pointer;
}

.nav-app-btn:hover,
.nav-app-btn:focus {
	filter: none;
}

.nav-app-btn.nav-icon {
	background: var(--accent-1);
}

.nav-app-btn.search-icon {
	background: var(--accent-2);
	display: none;
}

.nav-app-btn.translate-icon {
	background: var(--accent-3);
	display: none;
}

.nav-app-btn i {
	font-size: 2rem;
	color: white;
}

.app-wrapper {
    background: var(--accent-1);
    height: var(--main-top-xs);
	display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 1.25rem;
	position: fixed;
    z-index: 120;
	left: 0;
    right: 0;
    width: 100%;
}

.app-wrapper .flex-row {
	gap: 1rem;
}

.app-wrapper a {
	color: white;
	display: flex;
    flex-direction: column;
    justify-content: center;
}

.app-wrapper i {
	font-size: 2rem;
}

.search-wrapper {
    padding: 1rem 0;
}

.search-api-form,
#search-form {
	position: relative;
}

.search-api-form label,
#search-form label {
	display: none;
}

.input-field input[type="text"].search-box,
#search-term, #searchInput {
	margin-bottom: 0;
    border-radius: 10px;
    border: none;
    padding: 0.95rem 1.25rem;
    box-shadow: 0px 16px 40px #7040B029;
}

#search-button {
	cursor: pointer;
    border: none;
    background: transparent;
    position: absolute;
    right: 0.5rem;
    top: 52%;
    transform: translateY(-50%);
}

#search-button i {
	color: var(--accent-2);
	font-size: 2rem;
}

.nav-menu.mobile-only {
    text-align: center;
}

.nav-menu.mobile-only li {
	padding-bottom: 1rem;
}

.links-swiper {
	margin: 0 0 2rem;
}

.links-title {
	color: var(--secondary-brand);
	display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
	margin-bottom: .5rem;
}

.links-title h3 {
	font-size: 1.1rem;
}

.links-nav-buttons {
	display: flex;
}

.links-button-next, 
.links-button-prev {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: static;
    color: var(--secondary-brand);
    margin-top: 0;
	cursor: pointer;
}

.swiper-button-disabled {
	opacity: .5;
}

.links-button-next i, 
.links-button-prev i {
	font-size: 2rem;
}

.service span {
	color: var(--medium-grey);
	font-size: .75rem;
	text-align: center;
	display: block;
	line-height: 1.5;
	font-family: var(--heading-font);
	font-weight: var(--font-medium);
	margin-top: 0.5rem;
	transition: all .3s ease-in-out;
}

.service a:hover,
.service a:focus {
	filter: none;
	color: var(--dark-font-color);
}

.service a:hover span,
.service a:focus span {
	color: var(--dark-font-color);
}

.service-icon {
    display: flex;
    flex-direction: column;
    justify-content: center;
	margin-bottom: .5rem;
}

.service-icon img {
	object-fit: contain;
    width: auto;
    height: 4rem;
}

.app-contact {
	color: white;
	margin-top: -10px;
	padding-bottom: 1rem;
}

.app-contact .contact-row a {
	color: white;
}

.app-contact address {
	margin-bottom: 1rem;
}

#nav-primary .social-wrapper {
	padding-top: 1rem;
	padding-bottom: 1rem;
}

#nav-primary .social-icon {
	width: 1.75rem;
}

#nav-primary .social-icon i {
	font-size: .75rem;
}

/* primary menu dropdown */
.main-nav-ul > li {
	position: relative;
}
.main-dropdown-div {
    background: white;
    width: 100%;
    padding: 1rem 0 0;
}

.main-dropdown-div-2 {
	padding: 0;
}

.main-nav-ul i {
	color: #014A98;
	font-weight: var(--font-bold);
	font-size: 1.2rem;
}

.main-dropdown-ul a {
	font-weight: var(--font-regular);
	font-size: .9rem;
}

.main-dropdown-ul .nav-link-primary a {
	font-weight: var(--font-medium);
}

.main-dropdown-trigger-2 {
	position: relative;
}

.icon-trigger-2 {
	cursor: pointer;
}

.icon-trigger.active {
	transform: rotate(180deg);
}

@media (max-width: 1199px){
	.header-row {
		display: flex;
		justify-content: space-between;
		width: 100%;
	}
	
	header.menu-active {
		position: fixed;
	}
}

@media all and (min-width: 75em){
	header {
		justify-content: center;
		gap: 5%;
		height: var(--main-top-lg);
	}
	
	.logo {
		position: absolute;
    	left: 1rem;
    	display: block;
	}
	
	.logo img {
		height: var(--main-top-lg);
		padding: 0.5rem 0;
		display: block;
	}
	
	.nav-app {
		position: absolute;
		z-index: 100;
		top: 0;
		right: 0;
	}
	.nav-app-btn {
		width: 4.5rem;
		height: var(--main-top-lg);
	}
	
	.nav-app-btn i,
	.app-wrapper i {
		font-size: 30px;
	}
	
	.nav-app-btn.search-icon,
	.nav-app-btn.translate-icon {
		display: flex;
	}
	
	.sticky-active .search-icon,
	.sticky-active .translate-icon,
	.menu-active .search-icon,
	.menu-active .translate-icon {
		display: none;
	}
	
	/*.bus-icon.hide-app {
		display: none;
	}*/
	
	#nav-primary {
		display: none;
		margin: 0;
		position: fixed;
		top: 0;
		left: auto;
		right: 0;
		z-index: 100;
		width: 26rem;
		height: fit-content;
		max-height: 1200px;
		height: fit-content;
		min-height: fit-content;
		overflow-y: scroll;
		border-radius: 0 0 0 10px;
		box-shadow: 0px 16px 40px #7040B029;
	}
	
	.nav-primary-wrapper .content-container {
		margin-top: var(--main-top-lg);
	}
	
	.app-wrapper {
		left: unset;
		width: 26rem;
		height: var(--main-top-lg);
	}
	
	.desktop-primary-nav ul {
		display: flex;
		align-items: center;
		gap: 1.5rem;
		margin-bottom: 0;
		top: 1rem;
	}
	
	.desktop-primary-nav .main-dropdown-ul,
	.desktop-primary-nav .main-dropdown-ul-2 {
		flex-direction: column;
		gap: 0;
		align-items: flex-start;
	}
	
	.desktop-primary-nav .main-dropdown-ul-2{
		position: absolute;
		left: 100%;
    	top: 0;
		background: white;
		margin: 0;
		/*padding: 1rem 1.25rem;*/
		padding: 0;
		/*border-radius: 0 10px 10px 10px;*/
		width: 100%;
		box-shadow: 0px 16px 40px #7040B029;
	}
	
	.desktop-primary-nav .primary-li:nth-of-type(5)~.primary-li .main-dropdown-ul-2{
		right: 100%;
		left: auto;
	}
	
	.desktop-primary-nav .main-dropdown-ul-2 li {
		width: 100%;
	}
	
	.desktop-primary-nav .main-dropdown-ul .nav-link {
		display: flex;
		font-family: var(--heading-font);
		justify-content: space-between;
		padding: .55rem .65rem;
		border-bottom: 1px solid #e1e1e1;
	}
	
	.desktop-primary-nav .main-dropdown-ul li:last-of-type .nav-link {
		border-bottom: none;
	}
	
	.desktop-primary-nav .main-dropdown-ul .nav-link:hover {
		background: var(--light-grey);
	}
	
	.desktop-primary-nav .main-dropdown-ul a:hover,
	.desktop-primary-nav .main-dropdown-ul a:focus {
		font-weight: var(--font-regular);
		filter: none;
	}
	
	.main-nav-ul > li {
		height: var(--main-top-lg);
		display: flex;
		flex-direction: column;
		justify-content: center;
		border-top: 5px solid transparent;
		transition: all .2s ease-in-out;
	}
	
	.main-nav-ul i {
		transition: all .2s ease-in-out;
	}
	
	.main-nav-ul > li:hover,
	.main-nav-ul > li:focus,
	.main-nav-ul > li.active {
		border-top: 5px solid #038390;
	}
	
	/*.main-nav-ul > li:hover .nav-link-icon,
	.main-nav-ul > li:focus .nav-link-icon {
		transform: rotate(180deg);
	}*/
	
	.main-dropdown-ul > li {
		width: 100%;
	}
	
	.main-dropdown-div {
		display: none;
    	position: absolute;
		padding: 0;
		/*border-radius: 0 0 10px 10px;*/
		top: 100%;
    	min-width: 14rem;
		background: white;
		box-shadow: 0px 16px 40px #7040B029;
	}
	
	
	/* Secondary Level of Primary Dropdown */
	/*.main-dropdown-trigger-2:hover .nav-link-icon-2,
	.main-dropdown-trigger-2:focus .nav-link-icon-2 {
		transform: rotate(180deg);
	}*/

	.main-dropdown-ul-2 {
		margin-left: 0.75rem;
		margin-top: .5rem;
	}
	
	#nav-primary .social-icon {
		width: 2.2rem;
	}

	#nav-primary .social-icon i {
		font-size: .9rem;
	}
}

@media all and (min-width: 99em){
	.nav-link, .nav-link a {
		font-size: .9rem;
	}
	
	.nav-app-btn i,
	.app-wrapper i {
		font-size: 40px;
	}
	
	.desktop-primary-nav ul {
		gap: 2rem;
	}
	
	.main-dropdown-div {
    	min-width: 17rem;
	}
}

/* Footer */
footer.content-container {
	padding-top: 2rem;
	font-family: var(--btn-font);
	font-weight: var(--font-semibold);
}

footer .col-xs-12 {
	margin-bottom: 2rem;
}

footer h4 {
	font-size: 1.1rem;
	margin: 0 0 1rem;
}

footer .brand-color {
	color: var(--secondary-brand);
}

footer .nav-link:hover,
footer .nav-link:focus {
	font-weight: var(--font-bold)
}

footer .image-link {
	margin: 1rem 0;
	display: block;
	color: var(--medium-grey);
}

footer .image-link:hover,
footer .image-link:focus {
	color: var(--dark-font-color);
}

footer .image-link img {
	display: block;
	width: 80%;
	max-width: 300px;
    margin-bottom: 0.5rem;
}

.footer-logo {
    display: block;
    width: 50%;
	max-width: 200px;
	margin-bottom: 1rem;
}

.footer-logo img {
	display: block;
}

.intro-wrapper p {
	color: var(--medium-grey);
	margin-bottom: 1rem;
	font-family: var(--body-font);
	font-weight: var(--font-regular);
}

.social-icon {
    aspect-ratio: 1/1;
    border: 2px solid;
    border-radius: 50%;
    width: 3rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
	transition: all .3s ease-in-out;
}

.social-icon.fb {
	color: var(--accent-1);
}

.social-icon.ig {
	color: var(--accent-2);
}

.social-icon.tw {
	color: var(--primary-brand);
}

.social-icon.fb:hover,
.social-icon.fb:focus {
	color: white;
	background: var(--accent-1);
	border-color: var(--accent-1);
}

.social-icon.ig:hover,
.social-icon.ig:focus {
	color: white;
	background: var(--accent-2);
	border-color: var(--accent-2);
}

.social-icon.tw:hover,
.social-icon.tw:focus {
	color: white;
	background: var(--primary-brand);
	border-color: var(--primary-brand);
}

.quicklinks-wrapper ul {
	margin-bottom: 0;
}

.quicklinks-wrapper li {
	padding-bottom: 0.5rem;
}

footer .nav-link {
	font-weight: var(--font-semibold);
}

address {
	font-style: normal;
	margin: 1rem 0;
}

.contact-row {
    margin-bottom: 0.5rem;
}

.contact-row a {
	color: var(--dark-font-color);
}

.contact-type {
	font-weight: var(--font-bold);
}

footer .copyright .col-xs-12 {
	margin-bottom: 1rem;
	color: #7E7E7E;
	font-size: .9rem;
}

.copyright .ie-website {
	margin-bottom: 2rem;
}

footer hr {
    height: 3px;
    background: #EDEDED;
	margin: 0 0 1.5rem;
}

@media (min-width: 75em){
	footer.content-container {
		margin-top: 2rem;
	}
	.footer-logo {
		width: 50%;
		margin-bottom: 2rem;
		max-width: 300px;
	}
	.intro-wrapper p {
		width: 90%;
		font-size: .9rem;
		margin-bottom: 3rem;
	}
	
	.quicklinks-wrapper li {
		padding-bottom: 0.75rem;
	}
	
	.contact-row {
		margin-bottom: 0.75rem;
	}
	.copyright > div,
	.copyright .ie-website {
		margin-bottom: 0;
	}

	.copyright {
		padding-bottom: .5rem;
	}
	
	.ie-website {
		text-align: right;
	}
}
/* Home */
@media (min-width: 75em){
	.home h2 {
		font-size: 4rem;
	}
	
	.home p {
		line-height: 1.8;
	}
}

/* Home - Banner */
.banner-wrapper {
	position: relative;
}

.banner-content {
    color: white;
    position: absolute;
	z-index: 50;
    text-align: center;
    top: 40%;
	left: 0;
	right: 0;
    transform: translateY(-50%);
    width: 90%;
	z-index: 110;
	margin: auto;
	font-size: 90%;
}

.district .banner-content {
	top: 50%;
}

.banner-text h1 {
	font-size: 2rem;
    margin: 0 auto .5rem;
}

.banner-text h3 {
	font-family: var(--body-font);
	max-width: 40rem;
    margin: 0 auto;
}

.banner-bottom .btn {
	margin: 1rem auto 0;
	position: absolute;
    left: 0;
    right: 0;
    top: -1rem;
}

.banner-bottom {
    color: white;
    position: absolute;
    bottom: 0;
	width: 100%;
	z-index: 110;
}

.banner-item.image img {
	display: block;
	width: 100%;
    aspect-ratio: 16/9;
}

.district .banner-item.image img {
	min-height: 550px;
}

.banner-item.image img.top {
	object-position: top;
}

.banner-item.image img.center {
	object-position: center;
}

.banner-item.image img.bottom {
	object-position: bottom;
}

.banner_video {
    position: relative;
    overflow: hidden;
    height: 0;
    width: 100%;
    padding-top: 56.25%;
}

.banner_video iframe {
	position: absolute;
    top: 50%;
    left: 50%;
    width: 150%;
    height: 100%;
    transform: translate(-50%, -50%);
}

.banner-overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	background: var(--secondary-brand);
	opacity: 0.13;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
}

.banner-1-textarea {
	color: white;
	margin-top: -8px;
	position: relative;
    z-index: 100;
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.banner-bottom-block {
	text-align: center;
	margin-bottom: 1.5rem;
}
.banner-bottom-block:last-of-type {
	margin-bottom: 0;
}

.banner-bottom-block h2 {
	margin-top: 0;
}

.district .quicklinks {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
    align-items: center;
	margin-top: 1.5rem;
}

.district .quicklink {
	background: #FFFFFF0A;
	box-shadow: 0px 16px 40px #7040B029;
    color: white;
    border-radius: 50%;
    border: 2px solid #FFFFFF41;
    aspect-ratio: 1/1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.25rem;
    font-weight: var(--font-bold);
    font-family: var(--btn-font);
    font-size: .75rem;
    padding: 0.5rem;
    width: 6rem;
    height: 6rem;
}

.district .quicklink:hover, .district .quicklink:focus {
	background: var(--secondary-brand);
	border-color: var(--secondary-brand);
}

@media (max-width: 650px) {
    .banner_video_1 {
        padding-top: calc(4 / 3 * 100%);
    }

    .banner_video_1 iframe {
        width: 290%;
        height: calc(100% + (56.25* 100% * 4 / 3));
    }
}

@media (max-width: 400px) {
    .banner_video_1 {
        padding-top: calc(16 / 9* 100%);
    }

    .banner_video_1 iframe {
        width: 350%;
        height: calc(100% + (56.25* 100%* 16 / 9));
    }
}

@media (min-width: 48em){
	.banner_video {
		padding-top: 56.25%;
	}
	
	.banner-text h1 {
		font-size: 3rem;
		margin-bottom: 1rem;
	}
	
	.banner-text p {
		max-width: 70%;
		margin: auto;
	}
	
	.banner-item.image img {
		aspect-ratio: 2.6/1;
	}
	
	.district .banner-item.image img {
		aspect-ratio: 2/1;
	}
	
	.banner_video {
		position: relative;
		overflow: hidden;
		width: 100%;
		height: 0;
		padding-top: calc(1/2.6 * 100%);
	}
	
	.banner_video iframe {
		width: 100%;
		height: calc(100% + (56.25 * 100% /2.6) )
	}

	.banner_video_1 {
		padding-top: calc(1/2 * 100%);
	}
	
	.banner_video_1 iframe {
		height: calc(100% + (56.25 * 100% /2) )
	}
	
	.banner-bottom .btn {
		top: 0;
	}
	
	.banner-1-textarea {
		padding-top: 0;
		padding-bottom: 2.5rem;
		margin-top: -1.5rem;
		z-index: 110;
	}
	
	.banner-bottom-block {
		margin-bottom: 0;
	}
	
	.banner-bottom-block p {
		margin: auto;
		width: 80%;
	}
	
	.district .quicklink {
		gap: 1rem;
		width: 7rem;
    	height: 7rem;
	}
}

@media (min-width: 62em){
	.banner-text h1 {
		font-size: 3.5rem;
		max-width: 35rem;
		line-height: 1.2;
	}

}

@media (min-width: 75em){
	.banner-content, .district .banner-content {
		top: 45%;
		width: 100%;
		font-size: 100%;
	}
	.banner-text h1 {
		font-size: 5.25rem;
		max-width: 44rem;
	}
	
	.banner-text p {
		width: 40%;
	}
	
	.banner-bottom .btn {
		top: 1.6rem;
	}
	
	.banner-bottom-content {
		margin-top: -2rem;
		padding-bottom: 2rem;
	}
	
	.district .quicklinks {
		flex-wrap: nowrap;
		padding: 0 10%;
		margin-top: 2rem;
	}
	
	.district .quicklink {
		width: calc((100% - 4rem)/5);
		height: auto;
		font-size: 1.1rem;
		padding: 1.5rem;
	}
	
	.district .quicklink i {
		font-size: 1.5rem;
	}

}

@media (min-width: 99em){
	.district .banner-item.image img {
		aspect-ratio: 2.2/1;
	}
	
	.banner-bottom-block p {
		width: 70%;
	}
	
	.district .quicklinks {
		max-width: 80%;
		margin: auto;
	}

    .banner_video_1 {
		padding-top: calc(1/2.2 * 100%);
	}
	
	.banner_video_1 iframe {
		height: calc(100% + (56.25 * 100% /2.2) )
	}
}

/* Home: CTA 1*/
.cta-1 {
	background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 2rem 0;
    color: white;
    aspect-ratio: 4/1;
	display: flex;
    flex-direction: column;
    justify-content: center;
	position: relative;
	width: 100%;
}

.cta-1-overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(29, 29, 29, 0.4);
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
}

.cta-1 .content-container {
	position: relative;
	z-index: 110;
}

.cta-1 .row {
	flex-direction: column-reverse;
}

@media (min-width: 62em){
	.cta-1 .row {
		flex-direction: row;
	}
}

@media (min-width: 75em){
	.cta-1 .btn {
		margin-top: 2rem;
	}
	.cta-1 h2 {
		max-width: 17rem;
		margin: 0 auto;
	}
	
	.cta-1 p {
		line-height: 1.8;
		font-size: 1.2rem;
		width: 90%;
	}
}

/* Home: CTA 2*/
.cta-2 {
	color: white;
	padding: 2rem 0; 
}

.cta-2 h2 {
	margin-top: 0;
}

@media (min-width: 75em){
	.cta-2 {
		text-align: center;
		padding: 2rem 0 3.5rem;
	}
	
	.cta-2 .btn {
		margin: 1.5rem auto 0;
	}
	
	.cta-2 p {
		width: 60%;
    	margin: auto;
	}
}

/* Home - CTA 3 */
.cta-3.new {
    padding: 0;
}

.cta-3.new img {
    display: block;
    aspect-ratio: 3 / 4;
    width: 100%;
}

.cta-3.new h2,
.cta-3.new p {
    text-align: left;
}

.banner_video_3 {
    padding-top: calc(4 / 3 * 100%);
}

.banner_video_3 iframe {
    width: 290%;
    height: calc(100% + (56.25 * 3 * 100% / 4));
}

@media (min-width: 450px) {
    .cta-3.new img {
        aspect-ratio: 16/9;
    }

    .banner_video_3 {
        padding-top: 56.25%;
    }

    .banner_video_3 iframe {
        width: 150%;
        height: 100%;
    }
}

@media (min-width: 62em) {
    .cta-3.new img {
        aspect-ratio: 3.5/1;
    }

    .banner_video_3 {
        padding-top: calc(1 / 3.5* 100%);
    }

    .banner_video_3 iframe {
        width: 100%;
        height: calc(100% + (56.25* 100% / 3.5));
    }
}

/* Home - News */
section.news {
    margin-top: -5rem;
	position: relative;
}

.news-item {
    background: white;
    padding: 1rem;
    border-radius: 10px;
    box-shadow: 0px 16px 40px #7090B029;
	transition: all .3s ease-in-out;
	margin-bottom: 1.5rem;
    height: fit-content;
}

.news-item a {
	color: var(--medium-grey);
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    gap: 1.25rem;
}

.news-item.news-1 a {
	justify-content: flex-start;
}

.news-item a:hover,
.news-item a:focus {
	filter: none;
}

.news-item:hover,
.news-item:focus {
	filter: brightness(90%);
}

.news-title {
	color: var(--dark-font-color);
	font-weight: var(--font-medium);
}

.format-date.news-date {
    font-size: .8rem;
    margin-bottom: 0.25rem;
	color: var(--medium-grey);
}

.news-desc {
	margin: .75rem 0;
}

.news-text .format-card-longer {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.cover-image {
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-radius: 10px;
	background: var(--light-grey);
	position: relative;
}

.cover-image img {
	width: 100%;
	height: 100%;
	border-radius: 10px;
	aspect-ratio: 709/252;
}

.news-1 .cover-image img {
	aspect-ratio: unset;
}

.cover-image .cover-logo {
    width: 40%;
	max-height: 150px;
    margin: 2rem auto;
    display: block;
	object-fit: contain;
}

.read-more {
    display: flex;
    justify-content: space-between;
    align-items: center;
	color: var(--accent-1);
	font-family: var(--btn-font);
    font-weight: var(--font-semibold);
	margin-top: 1rem;
}

.read-more .format-date-news {
	color: var(--dark-font-color);
}

.news-2 .read-more,
.news-3 .read-more,
.news-2 .format-card-longer,
.news-3 .format-card-longer {
	display: none;
}

section.news {
	background: transparent;
}

.fb-wrapper {
    position: absolute;
    top: -0.5rem;
    left: -0.5rem;
    background: #006FCE;
    color: white;
    border-radius: 50%;
    width: 2rem;
    height: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    font-size: 1rem;
}

@media (min-width: 48em){
	.news-item {
    	padding: 2rem;
	}
	
	.fb-wrapper {
		top: -1rem;
		left: -1rem;
		width: 3rem;
		height: 3rem;
		font-size: 1.5rem;
	}
}

@media (min-width: 75em){
	section.news {
		margin-top: -18%;
	}
	.news-wrapper {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(2, 1fr);
		grid-column-gap: 1rem;
		grid-row-gap: 1rem;
	}
	
	.home .news-item {
		margin-bottom: 0;
        height: auto;
	}
	
	.news-1 { grid-area: 1 / 1 / 3 / 2; }
	.news-2 { grid-area: 1 / 2 / 2 / 3; }
	.news-3 { grid-area: 2 / 2 / 3 / 3; }
	
	.news-2 .cover-image, 
	.news-3 .cover-image {
		height: 80%;
	}
	
	.news-1 .cover-image {
		height: auto;
    	flex-grow: 1;
	}
	
	.news-1 .news-text {
		height: 25%;
	}
}

/* Home - Events */
section.events {
    margin: 2.5rem 0;
}

.page-template .event-item,
.event-item {
    display: flex;
    align-items: center;
    color: var(--dark-font-color);
    font-weight: var(--font-medium);
	font-family: var(--heading-font);
    margin-bottom: 1rem;
	box-shadow: 0px 16px 40px #7090B029;
	border-radius: 10px;
}

.event-date-wrapper {
    background: var(--accent-1);
    color: var(--light-font-color);
    text-align: center;
    font-size: 1.2rem;
    padding: 1.2rem 1.8rem;
	border-radius: 10px 0 0 10px;
}

.event-date-wrapper .month {
    text-transform: uppercase;
}

.event-date-wrapper .day {
    font-size: 1.8rem;
}

.event-name {
    padding: 0 1.5rem;
    font-size: 1.2rem;
}

.event-name .card-description {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.events .btn {
	margin: 0.5rem 0 0 auto;
	display: flex;
}

.events .btn i {
	font-size: 1.2rem;
}

.events h2 {
	margin-top: 0;
}

.event-heading {
    margin-bottom: 2rem;
}

@media (min-width: 48em){
	.event-heading {
		display: flex;
		justify-content: space-between;
		align-items: baseline;
	}
	
	.events .btn {
		margin: 0;
	}
}

@media (min-width: 75em){
	section.events {
		margin: 3rem 0;
	}
	
	.home-events-wrapper {
        padding: 0 .5rem;
    }

    .event-item-wrapper {
        padding: 0 .5rem;
    }
}

/* Home - banner 2 */
.banner-2 .banner-overlay {
    background: rgba(25, 25, 25, 0.34);
	opacity: unset;
}

.banner-2 .banner-item.image img {
    aspect-ratio: 16/9;
}

.banner-2 .banner-content {
	top: 40%;
}

.pause {
	position: absolute;
	right: 1rem;
	top: 1rem;
	z-index: 100; 
	cursor: pointer;
	color: var(--accent-1);
	transition: color .3s ease-in-out;
}

.pause i {
	font-size: 2rem;
}

.banner-2-textarea {
	color: white;
	margin-top: -1rem;
    position: relative;
    z-index: 110;
	padding-bottom: 5rem;
}

.banner-2-textarea p {
	margin-bottom: 1rem;
}

.number-wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
}

.number-circle {
    flex-basis: calc(50% - 0.5rem);
    max-width: calc(50% - 0.5rem);
}

.number-circle-inner {
	background: rgba(255, 255, 255, 0.11);
    border-radius: 50%;
	display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    aspect-ratio: 1/1;
	font-family: var(--heading-font);
    font-weight: var(--font-medium);
	font-size: 1.3rem;
}


@media(min-width: 31.25em){
	.number-circle {
		flex-basis: calc(33.333% - 0.75rem);
		max-width: calc(33.333% - 0.75rem);
	}
	
	.number-circle-inner {
		font-size: 1rem;
	}
}

@media (min-width: 75em) {
	.banner-2 .banner_video {
		padding-top: calc(1/2.5 * 100%);
	}
	
	.banner-2 .banner_video iframe {
		height: calc(100% + (56.25 * 100% /2.5) );
	}
	
	.banner-2-textarea {
		padding-bottom: 0;
	}
	
	.banner-2-textarea h2,
	.banner-2-textarea p {
		width: 90%;
	}
	
	.banner-2 p,
	.banner-2-textarea p {
		font-size: 1.2rem;
	}
	
	.banner-2 .banner-item.image img {
		aspect-ratio: 2.8/1;
	}
	
	.number {
		font-size: 2rem;
	}
	
	.unit {
		font-size: 1.1rem;
	}
	
	.banner-2-textarea .banner-bottom-content {
		padding-bottom: 6rem;
    	margin-top: -2.75rem;
	}

    .pause-1 {
        right: 5.5rem;
    }
	
}

.logo-circle {
	width: 6rem;
    aspect-ratio: 1/1;
    margin: -2.5rem auto 0;
    position: relative;
    z-index: 110;
    border-radius: 50%;
    background: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.logo-circle img {
	object-fit: contain;
	width: 85%;
    margin: auto;
	padding: 1rem;
}

.cta-3 {
	margin-top: -2.5rem;
	padding: 3rem 0;
	aspect-ratio: 3.5/1;
}

@media (min-width: 75em) {
	.cta-3 {
		margin-top: -4.5rem;
	}
	
	.logo-circle {
		width: 10rem;
		margin: -4.5rem auto 0;
	}
}

/* Collapsible box - ck editor */
.collapsible-box {
	width: 100%;
	margin-bottom: 1rem;
}

.collapsible-box .material-icons {
	color: var(--primary-brand);
}

.collapsible-box-description { 
	display: none;
	padding: 1rem 0.5rem;
}

.collapsible-box-title {
    background-color: var(--light-grey);
    display: flex;
    align-items: center;
    padding: .5rem;
	margin: 0;
	cursor: pointer;
}

.collapsible-box-title i {
	margin-right: .5rem;
}

.collapsible-bottom-icon {
	cursor: pointer;
}

/* Collapsible boxes - lexical editor */
.editor details summary {
    background-color: var(--light-grey);
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
	margin: 0;
	cursor: pointer;
    transition: all .3s ease-in-out;
}

.editor details summary i {
    color: var(--primary-brand);
    margin-right: .5rem;
}

.editor details {
    margin-bottom: 1rem;
    transition: all .3s ease-in-out;
}

.editor div[data-lexical-collapsible-content]{
    padding: 1rem;
}


/* Rich Text Template */
.page-content,
.page-title,
.sidebar-wrapper {
	font-family: var(--heading-font);
}

.page-title {
	position: relative;
	color: white;
}

.title-bg {
	clip-path: polygon(100% 0%, 0% 0% , 0.00% 91.59%, 2.00% 90.82%, 4.00% 90.01%, 6.00% 89.17%, 8.00% 88.31%, 10.00% 87.46%, 12.00% 86.63%, 14.00% 85.83%, 16.00% 85.09%, 18.00% 84.41%, 20.00% 83.81%, 22.00% 83.29%, 24.00% 82.88%, 26.00% 82.57%, 28.00% 82.38%, 30.00% 82.30%, 32.00% 82.34%, 34.00% 82.50%, 36.00% 82.77%, 38.00% 83.16%, 40.00% 83.64%, 42.00% 84.22%, 44.00% 84.88%, 46.00% 85.60%, 48.00% 86.38%, 50.00% 87.21%, 52.00% 88.05%, 54.00% 88.91%, 56.00% 89.76%, 58.00% 90.58%, 60.00% 91.37%, 62.00% 92.09%, 64.00% 92.76%, 66.00% 93.33%, 68.00% 93.82%, 70.00% 94.21%, 72.00% 94.48%, 74.00% 94.64%, 76.00% 94.69%, 78.00% 94.62%, 80.00% 94.43%, 82.00% 94.12%, 84.00% 93.71%, 86.00% 93.20%, 88.00% 92.60%, 90.00% 91.92%, 92.00% 91.18%, 94.00% 90.39%, 96.00% 89.55%, 98.00% 88.70%, 100.00% 87.85%);
}


.page-title-text a {
	font-weight: var(--font-medium);
	color: white;
	margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
}

.page-title-text {
	width: fit-content;
	margin: auto;
	padding: 2rem 1rem 2.5rem;
	z-index: 11;
	position: relative;
}

.page-title svg {
	margin-top: -1.25rem;
	z-index: 10;
    position: relative;
}

.page-template > .row {
	margin-left: 0;
	margin-right: 0;
}

.page-template h1,
.page-template h2,
.page-template h3 {
	color: var(--primary-brand);
}

.page-content ul {
	list-style: unset;
	padding-left: 1rem;
}

.page-content ol {
	padding-left: 1rem;
}

.side-container {
	padding: 0 1rem;
}

@media (max-width: 991px){
	.page-template .page-content {
		padding: 1rem 0 0;
	}
}


@media (min-width: 62em){
	.page-title-text {
		padding-top: 2.5rem;
    	padding-bottom: 3.5rem;
		max-width: 80%;
	}
	
	.side-container {
		padding: 0 7.5% 0 0;
		margin-top: -2rem;
	}
	.page-content {
		padding: 3rem 0 0 3rem;
	}
	
	.page-content.no-side-nav {
		padding: 1rem 0 2rem;
	}
}

/* Side Navigation */
.sidebar-wrapper {
	font-weight: var(--font-medium);
    background: var(--light-grey);
	color: var(--dark-font-color);
	padding: 0.5rem 1rem;
	margin: 1rem auto 0;
    border-radius: 5px;
}

.sidebar-wrapper a {
	color: var(--dark-font-color);
}
.nav-secondary {
	display: none;
	margin-top: .5rem;
}

.cookie a {
    display: flex;
    align-items: center;
}

.secondary-nav-item {
    margin-bottom: 0.5rem;
	transition: all .3s ease;
	font-weight: var(--font-regular);
	font-size: .9rem;
	width: fit-content;
}

.secondary-nav-item.active {
    font-weight: var(--font-bold);
	font-size: 1rem;
}

.secondary-nav-item.active a {
	color: var(--secondary-brand);
}


.cookie:hover a,
.cookie:focus a,
.secondary-nav-item:hover a,
.secondary-nav-item:focus a{
    color: var(--secondary-brand);
	filter: none;
}

.nav-secondary-ul {
    margin: .5rem 0 0 .5rem;
}

.current-page {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

@media (min-width: 62em){
	.sidebar-wrapper {
		padding: 4rem 5%;
		border-radius: 0 0 10px 0;
		margin: unset;
		height: fit-content;
	}
	.nav-secondary {
		display: block!important;
		margin: unset;
	}
	
	.nav-secondary-ul {
		margin: 1rem 0 0 .5rem;
	}
	.current-page {
		display: none;
	}
	.cookie a {
		font-size: .9rem;
	}
}

/* News Article, Event Article*/
.article-template .btn-link {
	margin: 1rem 0;
	display: flex;
	gap: .25rem;
}

.article-date {
    margin-bottom: 1rem;
    color: var(--medium-grey);
    font-weight: var(--font-medium);
}

@media (min-width: 62em){
	.article-template .btn-link {
		margin: 1rem 0 2rem;
	}
}

/*News Archive*/
.news-wrapper.archive {
	display: flex;
	flex-wrap: wrap;
	grid-gap: unset;
	margin-top: 2rem;
	row-gap: 1rem;
}

.news-item.archive .cover-image {
    aspect-ratio: 3/2;
}

.news-item.archive {
	padding: 1.25rem;
	margin-bottom: 0;
	height: 100%;
}

.news-item.archive .fb-wrapper {
    top: -0.5rem;
    left: -0.5rem;
    width: 2rem;
    height: 2rem;
    font-size: 1rem;
}

/*CM Calendar*/
#calendar a {
	color: var(--dark-font-color);
    text-decoration: none;
}

#calendar .fc-daygrid-event-harness a {
	color: var(--primary-brand);
}

#calendar .fc-daygrid-event-harness .fc-h-event {
	background: var(--primary-brand);
	border-color: var(--primary-brand);
}
#calendar .fc-view-harness {
  background: #fff;
  margin-bottom: 2rem;
}

#calendar .fc-col-header {
  margin-bottom: 0;
}

/*Calendar*/
.fc-scrollgrid-sync-table {
	margin-bottom: 0;
}

.fc-col-header-cell-cushion,
.fc-daygrid-day-number {
  color: inherit;
}

.fc-h-event .fc-event-title-container,
.fc-daygrid-dot-event .fc-event-title {
  white-space: normal;
}

.fc-daygrid-dot-event {
  flex-wrap: wrap;
} 

.fc-daygrid-event-dot {
  margin: 3px 4px!important;
}

.fc-daygrid-block-event .fc-event-time {
  display: none;
}

.fc-daygrid-dot-event .fc-event-title {
  padding: 0;
}

#calendar .fc-daygrid-event-dot {
    border-color: var(--primary-brand);
}

#calendar.fc .fc-list-event-dot {
	background: var(--primary-brand);
	border-color: var(--primary-brand);
}

/* Calendar Filter */	
.calendar-filters-container {
	display: block;
	margin-bottom: 2rem;
	background: var(--light-grey);
	padding: 1.5rem;
}

.calendar-filters-container p {
	margin-top: 0;
}

.calendar-filters-heading h3 {
	margin-top: 0;
	font-size: 1.375rem;
}

.target-calendar-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.filter-checkbox-wrapper {
	padding: 0.5rem 1rem;
	border-radius: 5px;
}

.filter-checkbox-wrapper label {
	text-transform: capitalize;
}

.filter-checkbox-wrapper:first-of-type {
	padding-left: 0;
}

/* Calendar Legend */
.filter-checkbox-wrapper.--school {
	background: var(--school);
	color: white;
}

#calendar .fc-daygrid-event.--school .fc-daygrid-event-dot,
#calendar .fc-event.--school .fc-list-event-dot,
#calendar .fc-daygrid-event.--school {
	border-color: var(--school);
	color: var(--school);
}

#calendar .fc-daygrid-event.--school .fc-event-main{
	background: var(--school);
}

#calendar .fc-v-event.--school {
	background: var(--school);
	border-color: var(--school);
}

.filter-checkbox-wrapper.--district {
	background: var(--district);
	color: white;
}

#calendar .fc-daygrid-event.--district .fc-daygrid-event-dot,
#calendar .fc-event.--district .fc-list-event-dot,
#calendar .fc-daygrid-event.--district {
	border-color: var(--district);
	color: var(--district);
}

#calendar .fc-daygrid-event.--district .fc-event-main{
	background: var(--district);
}

#calendar .fc-v-event.--district {
	background: var(--district);
	border-color: var(--district);
}


/* General DCT Template */
.featured-img img.bottom {
	object-position: bottom;
}

.featured-img img.top {
	object-position: top;
}

.featured-img img.center, .featured-img img {
	object-position: center;
}

.dct-template .intro-content {
	background: var(--light-grey);
	padding: 1rem 1.5rem;	
	margin-bottom: 2rem;
	display: flex;
    justify-content: space-between;
    align-items: center;
}

.dct-template .intro-content img {
	max-width: 150px;
	width: 100%;
}

.content-row {
	margin-bottom: 2rem;
}

.content-row.border-top {
  padding-top: 4rem;
  margin-top: 4rem;
  border-top: 1px solid #e3e3e3;
}

.content-row.border-top-bottom {
  padding: 4rem 0;
  margin: 3rem 0;
  border-top: 1px solid #e3e3e3;
  border-bottom: 1px solid #e3e3e3;
}

.content-row.border-bottom {
  padding-bottom: 4rem;
  margin-bottom: 3rem;
  border-bottom: 1px solid #e3e3e3;
}

.content-row.border-top > div *:first-child,
.content-row.border-top-bottom > div *:first-child  {
  margin-top: 0;
}

.content-row.border-bottom > div *:last-child,
.content-row.border-top-bottom > div *:last-child {
  margin-bottom: 0;
}

.content-row img {
  display: block;
  width: 100%;
}

.content-row .btn {
  margin-bottom: 1rem;
  display: inline-block;
}

.responsive-video {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}

.responsive-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.editor iframe {
    min-height: unset;
}

.useful-links-wrapper {
  margin-top: 1.3125rem;
  margin-bottom: 5rem;
}

.useful-link {
  line-height: 1;
  margin-top: 2rem;
  text-align: center;
}

.page-content-inner .useful-link a {
	display: block;
	padding: 1.5rem 1rem;
	color: white;
}

.useful-link i {
  display: block;
  font-size: 40px;
  margin-bottom: .5rem;
}

.useful-link span {
	font-size: 1.25rem;
	font-weight: bold;	
}

.useful-link i,
.useful-link span {
  -webkit-transition: all .2s ease-in-out;
  -moz-transition: all .2s ease-in-out;
  -ms-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}

.useful-link a:hover i,
.useful-link a:focus i {
  opacity: 0.8;
}

.useful-link a:hover span,
.useful-link a:focus span {
  border-bottom: 1px solid;
}

.simple-links-wrapper h5 {
  margin-bottom: .75rem;
}

.simple-links-wrapper .simple-link {
  margin: 0 0 .5rem;  
}

.simple-links-wrapper .pre-link {
  margin: 1rem 0 0.5rem 0;
}

.documents-section {
    margin-top: 1.3125rem;
    margin-bottom: 5rem;
}

.documents-section ul {
	list-style: none;
	margin: 0;
	padding: 0;
	box-shadow: rgb(149 157 165 / 20%) 0px 8px 24px;
}

.documents-section ul li {
	padding: 0.5rem 1rem;
	margin: 0;
}

.documents-section ul li:nth-child(2n) {
	background: #f5f5f5;
}

.content-boxes .col-xs-12 {
	margin-bottom: 1.5rem;
}

.content-box {
    height: 100%;
	background: var(--light-grey);
	color: var(--dark-font-color);
    padding: 1rem;
    border-bottom: 5px solid var(--primary-brand);
}

.content-box h3 {
	margin-top: 0;
}

.content-box img {
	width: 100%;
	aspect-ratio: 16/9;
}

/* Content Tabs */
.ui-widget.ui-widget-content,.ui-widget-content  {
    border: none; 
	background: transparent;
	font-family: var(--sans-serif-font);
	margin: 0;
}

/* Tab Header */
.ui-widget-header {
	border: none;
	background: transparent;
}

.ui-tabs .ui-tabs-nav {
    padding: 0;
	display: flex;
    flex-wrap: wrap;
    row-gap: .5rem;
	border-bottom: 2px solid var(--primary-brand);
	border-radius: 0;
}

.ui-tabs .ui-tabs-nav li {
    font-weight: 700;
	border: none;
    background: var(--light-grey);
	transition: all .2s ease-in-out;
	margin: 0 .5rem 0 0;
	border-radius: 0;
	cursor: pointer;
}

.ui-tabs .ui-tabs-nav li:hover {
	filter: brightness(1.02);
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active {
    margin-bottom: 0;
	padding-bottom: 0;
	background: var(--primary-brand);
	border: none;
}

/* Tab Content */
.ui-tabs .ui-tabs-panel {
    padding: 1rem 0.25rem;
	margin-top: 0;
}

.ui-widget-content a {
    color: var(--primary-brand);
}

.ui-widget-content .btn {
	margin-top: 1rem;
}

.ui-widget-content .btn-primary {
	color: white;
}

.ui-widget-content .btn-link {
	color: var(--accent-1);
}

.tab-item-content {
	padding: 1rem 0;
}

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    white-space: pre-wrap;
}

/* Photo Gallery */
.gallery-item {
	margin-bottom: 1rem;
}
.gallery-item img {
    min-height: unset;
	aspect-ratio: 4/3;
	width: 100%;
}

.pswp__custom-caption {
    text-align: center;
    font-size: 16px;
    color: #fff;
    width: fit-content;
    max-width: 800px;
    padding: .5rem 1rem;
    position: absolute;
    left: 50%;
    bottom: 1rem;
    transform: translateX(-50%);
}

@media (min-width: 62em) and (max-width: 99em) {
	.useful-link span {
		font-size: 0.9rem;
	}
}

/* Landing Page Template */
.row.landing {
    row-gap: 1rem;
    flex-wrap: wrap;
	list-style: none;
	padding-left: 0;
	margin-top: 1rem;
    margin-bottom: 2rem;
}

.landing-page-padding {
	/*background: var(--light-grey);*/
	color: var(--primary-brand);
	border-bottom: 5px solid var(--primary-brand);
	min-height: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
	border: none;
	background: white;
    padding: 1rem;
    border-radius: 10px;
    box-shadow: 0px 16px 40px #7090B029;
    transition: all .3s ease-in-out;
}

@media (min-width: 48em){
	.landing-item {
		padding-left: .5rem;
		padding-right: .5rem;
	}
}

@media all and (min-width: 62em) {
	.landing-page-padding {
		min-height: 160px;
	}
}

/* Content boxes */
.page-template .landing-page-padding.content-box {
    background: white;
    box-shadow: 0px 16px 40px #7090B029;
	border: none;
    border-radius: 10px;
    color: #707070;
	min-height: unset;
	padding: 1rem;
}

.page-template .landing-page-padding.content-box h3 {
	color: var(--dark-font-color);
	transition: all .2s ease-in-out;
	margin-top: 0;
}

.landing-item .btn,
.box-item .btn {
	margin: 1rem auto 0;
}

.page-template .box-item .landing-page-padding {
	aspect-ratio: unset;
	padding: 2rem 1rem;
	height: 100%;
    justify-content: space-between;
}

.landing-title i {
	margin-right: .65rem;
}

@media (min-width: 48em){
	.box-desc {
		height: 120px;
		overflow-y: hidden;
		padding: 0 .5rem;
	}
	
	.box-item:hover .box-desc {
	   overflow-y: auto;
	}
}

/* Hide the scrollbar */
/*.box-desc::-webkit-scrollbar{
    display: none;
}

.box-desc {
    -ms-overflow-style: none;
	scrollbar-width: none;
	position: relative;
}*/

/*.box-desc.overflow {
	padding-right: 1.25rem;
}*/

/*.box-desc.overflow::before {
	content: '\f103';
	display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
	font: var(--fa-font-solid);
	font-size: .9rem;
	position: absolute;
	right: 0;
	top: 0;
}*/

/* Modal */
/* General Styling */
body.lb-disable-scrolling {
    overflow: hidden;
}

.main-content-wrapper {
	margin: auto;
}

.modal-trigger {
	cursor: pointer;
}

.modal-wrapper {
    display: none;
    position: fixed;
    z-index: 500;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.7);
    margin: 0!important;
}

.modal-info {
	margin: 0 auto;
    width: 90%;
    position: absolute;
    top: 20%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    padding: 1rem;
	max-height: 90vh;
}

.modal-wrapper .close-icon {
    font-size: 1.5rem;
    position: sticky;
    top: 0;
    left: 100%;
    cursor: pointer
}

.modal-info iframe {
    display: block;
    margin: auto;
    width: 100%;
    border: none;
    height: 80dvh;
}

.form-modal .modal-info {
    background-color: white;
    box-shadow: 0px 5px 10px rgb(0 0 0 / 10%);
    padding: 0;
    top: 50%;
}

.form-close {
    color: white;
}

.form-link {
    color: var(--accent-3);
}

.page-template .form-title {
    margin: 0;
    color: white;
}

.close-icon-wrapper {
    position: absolute;
    z-index: 100;
    top: 0;
    color: var(--light-grey);
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 2rem;
}

@media (min-width: 62em){
	.modal-info {
		width: 40%;
		top: 50%;
	}

    .form-modal .modal-info {
        width: 50%;
    }
}

/* Animation */
.fade {
    -webkit-animation-name: fade;
    -webkit-animation-duration: .5s;
    animation-name: fade;
    animation-duration: .5s;
}

/* Secure Login Page */
.login-form {
	text-align: center;
	margin-top: 2rem;
}

.login-form.native {
	text-align: left;
}

@media (min-width: 75em){
	.login-form {
		width: 40%;
		margin: 2rem auto 0;
	}
}

/* Staff Directory */
.profiles .intro-content {
	margin-top: 2rem;
	margin-bottom: 3rem;
}

.profiles .intro-content p {
	margin-bottom: .5rem;
}

.profile-text span {
	font-weight: var(--font-medium);
}
.profile-img-wrapper {
    background: var(--light-grey);
    aspect-ratio: 562/540;
	display: flex;
    justify-content: center;
    flex-direction: column;
	border-radius: 10px;
}

.profile-img {
	aspect-ratio: 562/540;
    object-fit: cover;
	box-shadow: 0px 16px 40px #7040B029;
    border-radius: 10px;
}

.profile-img.placeholder {
	width: 50%;
	aspect-ratio: unset;
	margin: auto;
}

.profile-item {
	margin-bottom: 2rem;
}

.profile-wrapper.center-md .profile-item {
	max-width: 20rem;
}

.page-content .doc-links {
	list-style: none;
	padding-left: 0;
}

.doc-links li {
	padding-bottom: .5rem;
}

.profile-collapse {
    display: none;
}

.profile-buttons {
	padding: 0;
	position: relative;
}

/*.profile-buttons::before {
	content: "";
	background: transparent linear-gradient(180deg, #FFFFFF83 0%, #ffffff 20%, #FFFFFF 100%) 0% 0% no-repeat padding-box;
    width: 100%;
    height: 20px;
    position: absolute;
    top: -0.75rem;
}*/

.profile-buttons .social-icon {
	width: 2.25rem;
}

.expand-profile {
	cursor: pointer;
	color: var(--accent-1);
}

.expand-profile:hover, 
.expand-profile:focus {
    color: white;
    background: var(--accent-1);
    border-color: var(--accent-1);
}

.page-template .profile-email {
	color: var(--dark-font-color);
}

.page-template .profile-email:hover, 
.page-template .profile-email:focus {
	color: var(--secondary-brand);
}

.profile-email .social-icon {
	color: var(--secondary-brand);
}

.profile-email:hover, 
.profile-email:focus {
	filter: none;
}

.profile-email:hover .social-icon, 
.profile-email:focus .social-icon {
    color: white;
    background: var(--secondary-brand);
    border-color: var(--secondary-brand);
}

/* Font Sizer */
.change-font-size {
    padding: 0.5rem 1rem;
	margin-top: 1rem;
    margin-bottom: 1rem;
    border-radius: 25px;
    background: var(--light-grey);
    margin-left: auto;
    width: fit-content;
}

.change-font-size span {
	font-weight: bold;
}

.change-font-size a {
    display: inline-block;
    margin-left: 0.75rem;	
	cursor: pointer;
}

@media(min-width:62em){
	.change-font-size {
		margin-top: 0;
	}
}

/* School Plan */
.plan-intro p {
	margin: 0;
}

.plan-intro {
	margin-bottom: 1.5rem;
}

.plan-intro .plan-intro-title,
.plan-topic-title {
	font-weight: var(--font-bold);
	margin-bottom: .5rem;
}

.plan-intro .plan-intro-title em,
.plan-topic-title em {
	font-weight: var(--font-regular);
}

.school-plan .gallery-item img {
    border-radius: 10px;
}

.embed-link {
	width: 100%;
    height: 25rem;
    border-radius: 10px;
}

.page-content-inner .topic-btn {
	color: white;
	cursor: pointer;
	margin-top: 0;
	box-shadow: 0px 16px 40px #7040B029;
}

.topic-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem;
    justify-content: center;
	margin-bottom: 2rem;
}

.topic-arrow,
.topic-bottom-arrow {
	color: var(--primary-brand);
    font-size: 2rem;
	cursor: pointer;
}

.plan-topic {
    box-shadow: 0px 16px 40px #7090B029;
    padding: 1rem;
	margin-bottom: 1.5rem;
    border-radius: 10px;
}

.plan-topic fieldset {
	font-weight: var(--font-bold);
    border: 2px solid var(--primary-brand);
    border-radius: 10px;
    padding: 0.5rem 1rem;
	margin-bottom: 2rem;
}

.plan-topic fieldset legend {
	color: var(--primary-brand);
	font-weight: var(--font-bold);
	padding: 0 .5rem;
}

.plan-link p {
	margin-bottom: .75rem;
}

.topic-collapsible-title {
	cursor: pointer;
}

.topic-collapsible-content {
	display: none;
}

@media (min-width: 48em){
	.school-plan .sqs-system-gallery {
		padding: 0 .5rem;
	}
	.school-plan .gallery-item {
		padding-left: .5rem;
		padding-right: .5rem;
	}
	
	.plan-topic {
		padding: 1.5rem;
	}
	
	.topic-collapsible-title i {
		font-size: 2rem;
	}
}

@media (min-width: 99em){
	.school-plan .gallery-item {
		flex-basis: 20%;
    	max-width: 20%;
	}
}

.contact-form {
	margin-top: 2rem;
}

/* Schools Template */
.school-logo {
    width: 6rem;
	object-fit: contain;
	display: block;
}

.school-item {
    padding: 1rem;
    border-radius: 10px;
    box-shadow: 0px 16px 40px #7090B029;
	height: 100%;
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.school-item h3 {
	margin-top: 0;
}

.school-card a.btn,
.school-modal-info a.btn {
	display: inline-block;
	color: white;
	padding: 0.5rem .75rem;
    font-size: .8rem;
	margin-top: 0;
	cursor: pointer;
}

.schools-wrapper {
	row-gap: 1.5rem;
}

.modal-info.school-modal-info {
	background: white;
	overflow: auto;
	top: 50%;
}

.school-desc {
    margin: 1rem 0;
}

#gmap-canvas-2 {
	width: 100%;
	height: 100%;
	max-width: 800px;
	aspect-ratio: 3/1;
}

#gmap-canvas-2 img {
	max-width:none!important;
	background:none!important;
	font-size: inherit;
	font-weight:inherit;
}

.googlemaps-made {
	display: none;
}

.school-title {
	margin-bottom: 1.5rem;
}

.school-contact {
	margin-top: 1.5rem;
	margin-bottom: 1rem;
}

.school-contact .contact-row {
	align-items: flex-start;
}

.school-contact .contact-row span:first-of-type {
	font-weight: var(--font-medium);
	width: 20%;
}

.school-contact a:hover {
	color: var(--primary-brand);
}

.map-link {
    margin-top: 1rem;
    display: block;
}

.school-content {
    padding: 0 1rem 1rem;
}

.schools-type {
    margin-bottom: 3rem;
}

.school-item .flex-row {
    flex-wrap: wrap;
}

@media (min-width: 62em){
	.modal-info.school-modal-info {
		width: 60%;
		padding: 1rem;
	}
	
	#gmap-canvas-2 {
		aspect-ratio: 2/1;
	}
	
	.school-contact .contact-row span:first-of-type {
		width: 15%;
	}
}

.tablinks-template .tab-item-content > .row {
	row-gap: 1.5rem;
}

.tablinks-template .icon-link {
	gap: 1rem;
}

.tablinks-template .icon-text {
	width: calc(75% - 1rem);
}

.tablinks-template .icon-img {
    width: 25%;
}

/* Calendar Filter */	
.calendar-filters-container {
	display: block;
	margin-bottom: 2rem;
	background: #f4f4f4;
	padding: 1.5rem;
}

.calendar-filters-heading h3 {
	margin-top: 0;
	font-size: 1.375rem;
}

.target-calendar-filters {
	display: flex;
	gap: 1rem;
}

.filter-checkbox-wrapper {
	padding: .35rem .75rem;
	font-size: .9rem;
	border-radius: 5px;
}

.filter-checkbox-wrapper:first-of-type {
	padding-left: 0;
}

.fc-daygrid-event {
	color: #3788D8;
}

.filter-checkbox-wrapper.--professional-learning {
	background: var(--professional-learning);
	color: white;
}


#calendar .fc-daygrid-event.--professional-learning .fc-daygrid-event-dot {
	border-color: var(--professional-learning);
}

#calendar .fc-daygrid-event.--professional-learning {
	color: var(--professional-learning);
	border-color: var(--professional-learning);
}

#calendar .fc-daygrid-event.--professional-learning .fc-event-main{
	background: var(--professional-learning);
}

.filter-checkbox-wrapper.--indigenous-education {
	background: var(--indigenous-education);
	color: white;
}

#calendar .fc-daygrid-event.--indigenous-education .fc-daygrid-event-dot {
	border-color: var(--indigenous-education);
}

#calendar .fc-daygrid-event.--indigenous-education {
	color: var(--indigenous-education);
	border-color: var(--indigenous-education);
}

#calendar .fc-daygrid-event.--indigenous-education .fc-event-main{
	background: var(--indigenous-education);
}

.filter-checkbox-wrapper.--sd22-cupe-professional-learning {
	background: var(--sd22-cupe-professional-learning);
	color: white;
}

#calendar .fc-daygrid-event.--sd22-cupe-professional-learning .fc-daygrid-event-dot {
	border-color: var(--sd22-cupe-professional-learning);
}

#calendar .fc-daygrid-event.--sd22-cupe-professional-learning {
	color: var(--sd22-cupe-professional-learning);
	border-color: var(--sd22-cupe-professional-learning);
}

#calendar .fc-daygrid-event.--sd22-cupe-professional-learning .fc-event-main{
	background: var(--sd22-cupe-professional-learning);
}
#calendar .--sd22-exempt-professional-learning .fc-list-event-dot {
	border-color: var(--sd22-cupe-professional-learning);
}

.filter-checkbox-wrapper.--sd22-exempt-professional-learning {
	background: var(--sd22-exempt-professional-learning);
	color: white;
}

#calendar .fc-daygrid-event.--sd22-exempt-professional-learning .fc-daygrid-event-dot {
	border-color: var(--sd22-exempt-professional-learning);
}

#calendar .fc-daygrid-event.--sd22-exempt-professional-learning {
	color: var(--sd22-exempt-professional-learning);
	border-color: var(--sd22-exempt-professional-learning);
}

#calendar .fc-daygrid-event.--sd22-exempt-professional-learning .fc-event-main{
	background: var(--sd22-exempt-professional-learning);
}

#calendar .--sd22-exempt-professional-learning .fc-list-event-dot {
	border-color: var(--sd22-exempt-professional-learning);
}
.filter-checkbox-wrapper.--sd22-teacher-professional-learning {
	background: var(--sd22-teacher-professional-learning);
	color: white;
}

#calendar .fc-daygrid-event.--sd22-teacher-professional-learning .fc-daygrid-event-dot {
	border-color: var(--sd22-teacher-professional-learning);
}

#calendar .fc-daygrid-event.--sd22-teacher-professional-learning {
	color: var(--sd22-teacher-professional-learning);
	border-color: var(--sd22-teacher-professional-learning);
}

#calendar .fc-daygrid-event.--sd22-teacher-professional-learning .fc-event-main{
	background: var(--sd22-teacher-professional-learning);
}
#calendar .--sd22-teacher-professional-learning .fc-list-event-dot {
	border-color: var(--sd22-teacher-professional-learning);
}
	

#mobile-calendar-list .event-li .event-day.day-hide {
	background: transparent!important;
}

/* Event colours on homepage */
.event-date-wrapper.--sd22-teacher-professional-learning {
	background: var(--sd22-teacher-professional-learning);
}

.event-date-wrapper.--sd22-exempt-professional-learning {
	background: var(--sd22-exempt-professional-learning);
}

.event-date-wrapper.--sd22-cupe-professional-learning {
	background: var(--sd22-cupe-professional-learning);
}

.event-date-wrapper.multi-tags {
	background: var(--primary-brand);
}

#mobile-calendar-list.--sd22-teacher-professional-learning .event-day {
	background: var(--sd22-teacher-professional-learning);
}

#mobile-calendar-list.--sd22-exempt-professional-learning .event-day {
	background: var(--sd22-exempt-professional-learning);
}

#mobile-calendar-list.--sd22-cupe-professional-learning .event-day {
	background: var(--sd22-cupe-professional-learning);
}

#mobile-calendar-list.--sd22-teacher-professional-learning .event-time {
	color: var(--sd22-teacher-professional-learning);
}

#mobile-calendar-list.--sd22-exempt-professional-learning .event-time {
	color: var(--sd22-exempt-professional-learning);
}

#mobile-calendar-list.--sd22-cupe-professional-learning .event-time {
	color: var(--sd22-cupe-professional-learning);
}

/* Department Template */
.title-bg {
	background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.page-title-text {
	z-index: 110;
}

.department-template .staff-wrapper {
	margin-bottom: 1.5rem;
}

.collapsible-wave .collapsible-image {
	position: relative;
	min-height: 15.5rem;
	background-color: var(--secondary-brand);
	display: flex;
    justify-content: center;
    flex-direction: column;
}

.collapsible-title-row {
	display: flex;
	align-items: center;
    justify-content: space-between;
	margin: 1rem 1rem 2rem;
	color: white;
	position: relative;
    z-index: 110;
}
.collapsible-title-row i {
	font-size: 2rem;
}

.collapsible-image {
	cursor: pointer;
}

.collapsible-image h3 {
	color: white;
}

.collapsible-image .banner-overlay {
	background: #000000;
	opacity: 0.3;
}

.collapsible-content {
	padding-left: 1rem;
	padding-right: 1rem;
}

.collapsible-wave.wave-1 {
	margin-top: 2rem;
}

.collapsible-wave.wave-1 .collapsible-image {
	z-index: 1;
	clip-path: polygon(100% 0%, 0% 0% , 0.00% 91.59%, 2.00% 90.82%, 4.00% 90.01%, 6.00% 89.17%, 8.00% 88.31%, 10.00% 87.46%, 12.00% 86.63%, 14.00% 85.83%, 16.00% 85.09%, 18.00% 84.41%, 20.00% 83.81%, 22.00% 83.29%, 24.00% 82.88%, 26.00% 82.57%, 28.00% 82.38%, 30.00% 82.30%, 32.00% 82.34%, 34.00% 82.50%, 36.00% 82.77%, 38.00% 83.16%, 40.00% 83.64%, 42.00% 84.22%, 44.00% 84.88%, 46.00% 85.60%, 48.00% 86.38%, 50.00% 87.21%, 52.00% 88.05%, 54.00% 88.91%, 56.00% 89.76%, 58.00% 90.58%, 60.00% 91.37%, 62.00% 92.09%, 64.00% 92.76%, 66.00% 93.33%, 68.00% 93.82%, 70.00% 94.21%, 72.00% 94.48%, 74.00% 94.64%, 76.00% 94.69%, 78.00% 94.62%, 80.00% 94.43%, 82.00% 94.12%, 84.00% 93.71%, 86.00% 93.20%, 88.00% 92.60%, 90.00% 91.92%, 92.00% 91.18%, 94.00% 90.39%, 96.00% 89.55%, 98.00% 88.70%, 100.00% 87.85%);
}

.collapsible-wave.wave-1 .collapsible-content {
    padding-bottom: 4rem;
}

.collapsible-wave.wave-2 .collapsible-image {
	position: relative;
	height: 18rem;
	z-index: 0;
    margin-top: -4.25rem;
	clip-path: polygon(100% 100%, 0% 100% , 0.00% 11.95%, 2.00% 11.18%, 4.00% 10.36%, 6.00% 9.52%, 8.00% 8.67%, 10.00% 7.82%, 12.00% 6.98%, 14.00% 6.19%, 16.00% 5.44%, 18.00% 4.76%, 20.00% 4.16%, 22.00% 3.65%, 24.00% 3.23%, 26.00% 2.93%, 28.00% 2.73%, 30.00% 2.66%, 32.00% 2.70%, 34.00% 2.86%, 36.00% 3.13%, 38.00% 3.51%, 40.00% 3.99%, 42.00% 4.57%, 44.00% 5.23%, 46.00% 5.96%, 48.00% 6.74%, 50.00% 7.56%, 52.00% 8.41%, 54.00% 9.26%, 56.00% 10.11%, 58.00% 10.94%, 60.00% 11.72%, 62.00% 12.45%, 64.00% 13.11%, 66.00% 13.69%, 68.00% 14.17%, 70.00% 14.56%, 72.00% 14.84%, 74.00% 15.00%, 76.00% 15.04%, 78.00% 14.97%, 80.00% 14.78%, 82.00% 14.48%, 84.00% 14.07%, 86.00% 13.56%, 88.00% 12.96%, 90.00% 12.28%, 92.00% 11.53%, 94.00% 10.74%, 96.00% 9.91%, 98.00% 9.06%, 100.00% 8.20%);
}

.collapsible-wave.wave-2 .collapsible-title-row {
	margin-top: 2rem;
}

.collapsible-wave.wave-2 .collapsible-content {
	padding-top: 8.5rem;
    margin-top: -8.5rem;
    padding-bottom: 5rem;
    background: white;
    height: fit-content;
    clip-path: polygon(100% 100%, 0% 100% , 0.00% 16.03%, 2.00% 15.83%, 4.00% 15.62%, 6.00% 15.39%, 8.00% 15.15%, 10.00% 14.91%, 12.00% 14.67%, 14.00% 14.44%, 16.00% 14.22%, 18.00% 14.02%, 20.00% 13.84%, 22.00% 13.69%, 24.00% 13.57%, 26.00% 13.48%, 28.00% 13.42%, 30.00% 13.40%, 32.00% 13.42%, 34.00% 13.47%, 36.00% 13.56%, 38.00% 13.68%, 40.00% 13.83%, 42.00% 14.00%, 44.00% 14.20%, 46.00% 14.42%, 48.00% 14.65%, 50.00% 14.89%, 52.00% 15.13%, 54.00% 15.37%, 56.00% 15.60%, 58.00% 15.81%, 60.00% 16.01%, 62.00% 16.19%, 64.00% 16.33%, 66.00% 16.45%, 68.00% 16.54%, 70.00% 16.59%, 72.00% 16.60%, 74.00% 16.58%, 76.00% 16.52%, 78.00% 16.43%, 80.00% 16.30%, 82.00% 16.15%, 84.00% 15.97%, 86.00% 15.76%, 88.00% 15.54%, 90.00% 15.31%, 92.00% 15.07%, 94.00% 14.83%, 96.00% 14.59%, 98.00% 14.37%, 100.00% 14.15%);
}

.collapsible-wave.wave-3 .collapsible-content{
	padding-top: 10.5rem;
    margin-top: -11.5rem;
	padding-bottom: 5rem;
    background: white;
	/*clip-path: polygon(100% 100%, 0% 100% , 0.00% 11.95%, 2.00% 11.18%, 4.00% 10.36%, 6.00% 9.52%, 8.00% 8.67%, 10.00% 7.82%, 12.00% 6.98%, 14.00% 6.19%, 16.00% 5.44%, 18.00% 4.76%, 20.00% 4.16%, 22.00% 3.65%, 24.00% 3.23%, 26.00% 2.93%, 28.00% 2.73%, 30.00% 2.66%, 32.00% 2.70%, 34.00% 2.86%, 36.00% 3.13%, 38.00% 3.51%, 40.00% 3.99%, 42.00% 4.57%, 44.00% 5.23%, 46.00% 5.96%, 48.00% 6.74%, 50.00% 7.56%, 52.00% 8.41%, 54.00% 9.26%, 56.00% 10.11%, 58.00% 10.94%, 60.00% 11.72%, 62.00% 12.45%, 64.00% 13.11%, 66.00% 13.69%, 68.00% 14.17%, 70.00% 14.56%, 72.00% 14.84%, 74.00% 15.00%, 76.00% 15.04%, 78.00% 14.97%, 80.00% 14.78%, 82.00% 14.48%, 84.00% 14.07%, 86.00% 13.56%, 88.00% 12.96%, 90.00% 12.28%, 92.00% 11.53%, 94.00% 10.74%, 96.00% 9.91%, 98.00% 9.06%, 100.00% 8.20%);*/
	clip-path: polygon(100% 100%, 0% 100% , 0.00% 16.03%, 2.00% 15.83%, 4.00% 15.62%, 6.00% 15.39%, 8.00% 15.15%, 10.00% 14.91%, 12.00% 14.67%, 14.00% 14.44%, 16.00% 14.22%, 18.00% 14.02%, 20.00% 13.84%, 22.00% 13.69%, 24.00% 13.57%, 26.00% 13.48%, 28.00% 13.42%, 30.00% 13.40%, 32.00% 13.42%, 34.00% 13.47%, 36.00% 13.56%, 38.00% 13.68%, 40.00% 13.83%, 42.00% 14.00%, 44.00% 14.20%, 46.00% 14.42%, 48.00% 14.65%, 50.00% 14.89%, 52.00% 15.13%, 54.00% 15.37%, 56.00% 15.60%, 58.00% 15.81%, 60.00% 16.01%, 62.00% 16.19%, 64.00% 16.33%, 66.00% 16.45%, 68.00% 16.54%, 70.00% 16.59%, 72.00% 16.60%, 74.00% 16.58%, 76.00% 16.52%, 78.00% 16.43%, 80.00% 16.30%, 82.00% 16.15%, 84.00% 15.97%, 86.00% 15.76%, 88.00% 15.54%, 90.00% 15.31%, 92.00% 15.07%, 94.00% 14.83%, 96.00% 14.59%, 98.00% 14.37%, 100.00% 14.15%);
}

.collapsible-wave.wave-3 .collapsible-image {
	height: 18rem;
	margin-top: -3.5rem;
	clip-path: polygon(100% 100%, 0% 100% , 0.00% 11.95%, 2.00% 11.18%, 4.00% 10.36%, 6.00% 9.52%, 8.00% 8.67%, 10.00% 7.82%, 12.00% 6.98%, 14.00% 6.19%, 16.00% 5.44%, 18.00% 4.76%, 20.00% 4.16%, 22.00% 3.65%, 24.00% 3.23%, 26.00% 2.93%, 28.00% 2.73%, 30.00% 2.66%, 32.00% 2.70%, 34.00% 2.86%, 36.00% 3.13%, 38.00% 3.51%, 40.00% 3.99%, 42.00% 4.57%, 44.00% 5.23%, 46.00% 5.96%, 48.00% 6.74%, 50.00% 7.56%, 52.00% 8.41%, 54.00% 9.26%, 56.00% 10.11%, 58.00% 10.94%, 60.00% 11.72%, 62.00% 12.45%, 64.00% 13.11%, 66.00% 13.69%, 68.00% 14.17%, 70.00% 14.56%, 72.00% 14.84%, 74.00% 15.00%, 76.00% 15.04%, 78.00% 14.97%, 80.00% 14.78%, 82.00% 14.48%, 84.00% 14.07%, 86.00% 13.56%, 88.00% 12.96%, 90.00% 12.28%, 92.00% 11.53%, 94.00% 10.74%, 96.00% 9.91%, 98.00% 9.06%, 100.00% 8.20%);
}

.collapsible-wave.wave-3 .collapsible-title-row {
	margin-bottom: 1rem;
}

.collapsible-content {
	display: none;
}

@media (min-width: 62em){
	.collapsible-wave .collapsible-title-row {
		margin-left: 3%;
		margin-right: 3%;
	}
	
	.collapsible-wave .collapsible-content {
		padding-left: 3%;
		padding-right: 3%;
	}
	.collapsible-wave.wave-1 .collapsible-image {
		clip-path: polygon(100% 0%, 0% 0% , 0.00% 91.24%, 2.00% 89.83%, 4.00% 88.38%, 6.00% 86.91%, 8.00% 85.46%, 10.00% 84.05%, 12.00% 82.70%, 14.00% 81.45%, 16.00% 80.32%, 18.00% 79.33%, 20.00% 78.49%, 22.00% 77.83%, 24.00% 77.35%, 26.00% 77.07%, 28.00% 76.99%, 30.00% 77.12%, 32.00% 77.44%, 34.00% 77.96%, 36.00% 78.66%, 38.00% 79.53%, 40.00% 80.56%, 42.00% 81.72%, 44.00% 83.00%, 46.00% 84.36%, 48.00% 85.78%, 50.00% 87.24%, 52.00% 88.71%, 54.00% 90.15%, 56.00% 91.55%, 58.00% 92.87%, 60.00% 94.09%, 62.00% 95.19%, 64.00% 96.14%, 66.00% 96.93%, 68.00% 97.54%, 70.00% 97.97%, 72.00% 98.19%, 74.00% 98.22%, 76.00% 98.04%, 78.00% 97.66%, 80.00% 97.09%, 82.00% 96.34%, 84.00% 95.42%, 86.00% 94.36%, 88.00% 93.16%, 90.00% 91.86%, 92.00% 90.48%, 94.00% 89.04%, 96.00% 87.58%, 98.00% 86.12%, 100.00% 84.68%);
	}

	.collapsible-wave.wave-1 .collapsible-content {
		margin-top: -1.5rem;
        padding-bottom: 5rem;
	}

	.collapsible-wave.wave-2 .collapsible-image {
		margin-top: -4.25rem;
		clip-path: polygon(100% 100%, 0% 100% , 0.00% 14.25%, 2.00% 12.84%, 4.00% 11.39%, 6.00% 9.92%, 8.00% 8.47%, 10.00% 7.06%, 12.00% 5.71%, 14.00% 4.46%, 16.00% 3.33%, 18.00% 2.33%, 20.00% 1.50%, 22.00% 0.84%, 24.00% 0.36%, 26.00% 0.08%, 28.00% 0.00%, 30.00% 0.13%, 32.00% 0.45%, 34.00% 0.97%, 36.00% 1.67%, 38.00% 2.54%, 40.00% 3.57%, 42.00% 4.73%, 44.00% 6.00%, 46.00% 7.37%, 48.00% 8.79%, 50.00% 10.25%, 52.00% 11.71%, 54.00% 13.16%, 56.00% 14.56%, 58.00% 15.88%, 60.00% 17.10%, 62.00% 18.20%, 64.00% 19.15%, 66.00% 19.94%, 68.00% 20.55%, 70.00% 20.98%, 72.00% 21.20%, 74.00% 21.22%, 76.00% 21.05%, 78.00% 20.67%, 80.00% 20.10%, 82.00% 19.35%, 84.00% 18.43%, 86.00% 17.37%, 88.00% 16.17%, 90.00% 14.87%, 92.00% 13.49%, 94.00% 12.05%, 96.00% 10.59%, 98.00% 9.13%, 100.00% 7.69%);
	}
	
	.collapsible-wave.wave-2 .collapsible-content {
		padding-top: 11.5rem;
        margin-top: -11.5rem;
        padding-bottom: 5rem;
	}

	.collapsible-wave.wave-3 .collapsible-content {
		padding-top: 11.5rem;
        margin-top: -11.5rem;
        padding-bottom: 5rem;
		clip-path: polygon(100% 100%, 0% 100% , 0.00% 27.36%, 2.00% 26.91%, 4.00% 26.42%, 6.00% 25.89%, 8.00% 25.35%, 10.00% 24.80%, 12.00% 24.25%, 14.00% 23.72%, 16.00% 23.22%, 18.00% 22.75%, 20.00% 22.34%, 22.00% 21.99%, 24.00% 21.71%, 26.00% 21.51%, 28.00% 21.38%, 30.00% 21.33%, 32.00% 21.37%, 34.00% 21.49%, 36.00% 21.69%, 38.00% 21.97%, 40.00% 22.31%, 42.00% 22.71%, 44.00% 23.17%, 46.00% 23.67%, 48.00% 24.20%, 50.00% 24.74%, 52.00% 25.30%, 54.00% 25.84%, 56.00% 26.37%, 58.00% 26.86%, 60.00% 27.32%, 62.00% 27.72%, 64.00% 28.06%, 66.00% 28.33%, 68.00% 28.52%, 70.00% 28.63%, 72.00% 28.67%, 74.00% 28.61%, 76.00% 28.48%, 78.00% 28.27%, 80.00% 27.98%, 82.00% 27.63%, 84.00% 27.21%, 86.00% 26.75%, 88.00% 26.24%, 90.00% 25.71%, 92.00% 25.16%, 94.00% 24.61%, 96.00% 24.07%, 98.00% 23.55%, 100.00% 23.06%);
		/*clip-path: polygon(100% 100%, 0% 100% , 0.00% 14.25%, 2.00% 12.84%, 4.00% 11.39%, 6.00% 9.92%, 8.00% 8.47%, 10.00% 7.06%, 12.00% 5.71%, 14.00% 4.46%, 16.00% 3.33%, 18.00% 2.33%, 20.00% 1.50%, 22.00% 0.84%, 24.00% 0.36%, 26.00% 0.08%, 28.00% 0.00%, 30.00% 0.13%, 32.00% 0.45%, 34.00% 0.97%, 36.00% 1.67%, 38.00% 2.54%, 40.00% 3.57%, 42.00% 4.73%, 44.00% 6.00%, 46.00% 7.37%, 48.00% 8.79%, 50.00% 10.25%, 52.00% 11.71%, 54.00% 13.16%, 56.00% 14.56%, 58.00% 15.88%, 60.00% 17.10%, 62.00% 18.20%, 64.00% 19.15%, 66.00% 19.94%, 68.00% 20.55%, 70.00% 20.98%, 72.00% 21.20%, 74.00% 21.22%, 76.00% 21.05%, 78.00% 20.67%, 80.00% 20.10%, 82.00% 19.35%, 84.00% 18.43%, 86.00% 17.37%, 88.00% 16.17%, 90.00% 14.87%, 92.00% 13.49%, 94.00% 12.05%, 96.00% 10.59%, 98.00% 9.13%, 100.00% 7.69%);
*/
	}
	
	.collapsible-wave.wave-3 .collapsible-title-row {
		margin-bottom: 2rem;
		margin-top: 0;
	}
	
	.collapsible-wave.wave-3 .collapsible-content {
		padding-top: 13.5rem;
	}

	.collapsible-wave.wave-3 .collapsible-image {
		height: 14.5rem;
		margin-top: -4rem;
		/*(clip-path: polygon(100% 100%, 0% 100% , 0.00% 14.25%, 2.00% 12.84%, 4.00% 11.39%, 6.00% 9.92%, 8.00% 8.47%, 10.00% 7.06%, 12.00% 5.71%, 14.00% 4.46%, 16.00% 3.33%, 18.00% 2.33%, 20.00% 1.50%, 22.00% 0.84%, 24.00% 0.36%, 26.00% 0.08%, 28.00% 0.00%, 30.00% 0.13%, 32.00% 0.45%, 34.00% 0.97%, 36.00% 1.67%, 38.00% 2.54%, 40.00% 3.57%, 42.00% 4.73%, 44.00% 6.00%, 46.00% 7.37%, 48.00% 8.79%, 50.00% 10.25%, 52.00% 11.71%, 54.00% 13.16%, 56.00% 14.56%, 58.00% 15.88%, 60.00% 17.10%, 62.00% 18.20%, 64.00% 19.15%, 66.00% 19.94%, 68.00% 20.55%, 70.00% 20.98%, 72.00% 21.20%, 74.00% 21.22%, 76.00% 21.05%, 78.00% 20.67%, 80.00% 20.10%, 82.00% 19.35%, 84.00% 18.43%, 86.00% 17.37%, 88.00% 16.17%, 90.00% 14.87%, 92.00% 13.49%, 94.00% 12.05%, 96.00% 10.59%, 98.00% 9.13%, 100.00% 7.69%);*/
	}
}

@media (min-width: 99em){
	.collapsible-wave.wave-3 .collapsible-image {
		height: 18.5rem;
	}
}

/* Land Acknowledgement Modal */
.land-modal .close-icon {
	position: absolute;
	top: 1rem;
	right: 1rem;
	left: auto;
	color: white;
	cursor: pointer;
	z-index: 200;
}
.land-text {
    position: absolute;
    color: white;
    padding: 2rem;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    text-align: center;
	z-index: 101;
}

.land-text .btn {
	margin: auto;
}

.land-text h2 {
    font-size: 2rem;
    margin: 0 0 1.5rem;
}

.land-info {
	position: relative;
    padding: 0;
	top: 50%;
	height: 80vh;
}

.land-info img {
	width: 100%;
	height: 100%;
	border-radius: 10px;
}

.land-info::after {
	content: '';
	position: absolute;
    z-index: 100;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.3);
	border-radius: 10px;
}

img.cm-icon {
	width: 30px;
}

@media (min-width: 62em){
	.modal-info {
		width: 80%;
		top: 50%;
	}
	
	.land-text h2 {
		font-size: 4rem;
	}
}

/* Custom Alerts Styling */
#popup-container .modal-content {
	position: absolute;
	top: 50%;
	left: 0;
    right: 0;
	margin: auto;
	transform: translateY(-50%);
	padding: 0;
	background: var(--primary-brand);
	color: white;
	text-align: left;
	border-radius: 10px;
    border: none;
}

#popup-container .popupContent > * {
	padding-left: 2rem;
}

#popup-container .popupContent > h2 {
	font-size: 2rem;
}

#popup-container button {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
}

#popup-container button i {
	background: none;
}

#popup-container .popupImage img {
    height: 100%;
	border-radius: 0 10px 10px 0;
	display: block;
}

#popup-container .popupImage {
	position: relative;
}

#popup-container .popupImage::after {
	content: '';
	width: calc(100% - 2rem);
    height: 100%;
    background: rgba(29, 29, 29, 0.15);
	border-radius: 0 10px 10px 0;
    position: absolute;
    left: 1rem;
    right: 0;
    top: 0;
}

.banner-alert-wrapper {
    font-size: 1rem;
    background: var(--primary-brand);
    border: none;
    color: white;
    text-align: left;
    grid-template-columns: 3rem auto;
	z-index: 110;
}

.banner-alert-wrapper button {
    padding: 0;
    margin-left: 0;
    color: rgba(255, 255, 255, 0.6);
	border-right: 1px solid white;
    padding-right: 0.5rem 
}

.banner-alert-wrapper button:last-of-type {
	border-right: none;
}

.banner-alert-wrapper button:focus {
	border-bottom: none;
}

.banner-alert-wrapper [role="tab"][aria-selected="true"] {
    border-bottom: none;
    color: rgba(255, 255, 255, 1);
}

.banner-alert-wrapper button:hover {
    background: none;
	color: white;
}

.banner-alert-wrapper p {
	display: inline;
	font-size: .9rem;
}

#bannerAnchor {
	color: white;
	padding-left: .5rem;
	font-weight: var(--font-semibold);
	font-size: .9rem;
}

.alert-icon {
    margin-right: 0.5rem;
	grid-area: 1 / 1 / 3 / 2;
	align-self: center;
}

.alert-icon i {
	font-size: 2rem;
}

@media (max-width: 48em){
	#popup-container .popupContent, 
	#popup-container .popupImage {
		flex-basis: 100%;
    	max-width: 100%;
	}
	
	#popup-container .popupContent > * {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	
	#popup-container .popupContent > h2 {
		margin-top: 2rem;
	}
	
	#popup-container .popupImage img {
		border-radius: 0 0 10px 10px;
	}
	
	#popup-container .popupImage::after {
		border-radius: 0 0 10px 10px;
	}
}

@media (min-width: 62em) {
	#popup-container .modal-content {
		position: absolute;
		top: 50%;
		margin: auto;
		transform: translateY(-50%);
		left: 0;
		right: 0;
	}
	
	#popup-container .popupContent > h2 {
		font-size: 3rem;
	}
	
	.banner-alert-wrapper {
		grid-template-columns: 4rem auto;
	}
	
	.alert-icon i {
		font-size: 3rem;
	}
}

/* Transportation */
.flex-row-between {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: nowrap;
	align-items: center;
}

#transportation-column-container {
	align-items: flex-start;
}

.bus-container-route {
	height: auto;
	margin: 1rem 0;
    padding: 1rem;
	background: #F5F5F5;
}
.bus-on-time {
	border-left: 10px solid #7BBE2E;
}
.bus-on-time h5 {
	padding-top: 6px;
}
.status-on-time {
	color:#7BBE2E!important;
	font-weight:600;
	font-size: 1.2em;
	padding-top: 6px;
	margin-bottom: auto;
}
.bus-cancelled {
	border-left: 10px solid #E05B2A;
}
.status-cancelled {
	color: #E05B2A!important;
	font-weight:600;
	font-size: 1.2rem;
	margin-bottom: auto;
}
.bus-delayed {
	border-left: 10px solid #F5B61F;
}
.status-delayed {
	color: #F5B61F!important;
	font-weight:600;
	font-size: 1.2rem;
	margin-bottom: auto;
}
.bus-grid-row {
	display:grid;
	grid-template-columns: 20% 20% 5% 20% 20% 15% 
}

.last-updated {
	font-size: 1rem;
}
.tooltip {
	display: flex;
	align-items: center;
}

.tooltip i {
	margin-right: 10px;
}

.transportation-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
    margin-bottom: 2rem;
}

#search-buses {
    width: 100%;
    border: solid 1px #e4e4e4;
    transition: 0.5s;
    padding: .75rem;
}

#search-buses::placeholder {
  color: black;
}

#select-area {
    border: solid 1px #e4e4e4;
    background-image: linear-gradient(45deg, transparent 50%, black 50%), linear-gradient(135deg, black 50%, transparent 50%);
    background-position: calc(100% - 20px) calc(1em + 3px), calc(100% - 15px) calc(1em + 3px), calc(100% - 2.5em) 0.5em;
    background-size: 5px 5px, 5px 5px, 1px 1.5em;
    background-repeat: no-repeat;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: .75rem 40px .75rem 16px;
    font-size: 1rem;
    width: 100%;
}

@media (max-width: 62em) {
	.flex-row-between {
		flex-wrap: wrap;
	}
	.bus-container-route {
		height:auto;
		width: 100%;
	}
	.bus-container-route h5 p {
		font-size: 0.9rem !important;
	}
	.bus-route-name {
		font-size:1rem;
	}
	.last-updated {
		font-size:1rem;
	}
	.bus-pad-side {
		padding-left:10px;
		padding-right:10px;
	}
	#transportation-column-container {
		display:flex;
		flex-direction:column;
	}
}

@media (min-width: 62em) {
   #search-buses, #select-area {
        width: 30%;
    }
}

/* Documents Template */
.documents table th, 
.doc-number, .doc-category {
    font-weight: var(--font-medium);
    text-align: left;
}

.documents table {
    font-size: 1em;
    line-height: 1.5;
}

.documents .table-filter {
    border: none;
    background: var(--accent-3);
	color: white;
    background-image: linear-gradient(45deg, transparent 50%, white 50%), linear-gradient(135deg, white 50%, transparent 50%);
    background-position: calc(100% - 20px) calc(1em + 3px), calc(100% - 15px) calc(1em + 3px), calc(100% - 2.5em) 0.5em;
    background-size: 5px 5px, 5px 5px, 1px 1.5em;
    background-repeat: no-repeat;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 10px 40px 10px 16px;
    font-size: 16px;
    max-width: 18rem;
}

.js-filters-expand {
	color: var(--accent-3);
    font-weight: var(--font-medium);
    width: fit-content;
	cursor: pointer;
	font-size: 16px;
}

.js-filters {
	display: none;
}

.doc-search {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    width: 100%;
    margin-bottom: 1rem;
}

.doc-search.filters {
	margin-bottom: 1.5rem;
}

#search-documents {
    width: 100%;
    margin: 0;
}

#search-docs {
    padding: 10px;
    font-size: 16px;
}



#reset-table {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: none;
    background: none;
    font-weight: var(--font-medium);
    padding: 0;
    font-size: 16px;
    cursor: pointer;
}

.filter-table .sort {
	display: flex;
    flex-direction: column;
    justify-content: center;
	cursor: pointer;
}

.filter-table .sort:hover {
	color: var(--accent-3);
}

.filter-table .sort-wrapper {
	display: flex;
	align-items: center;
	gap: .5rem;
}

.filter-table .sort:after {
	font-family: 'Material Icons';
	content: "swap_vert";
}

.filter-table .sort.asc:after {
	content: "arrow_upward";
	color: var(--accent-3);
}
.filter-table .sort.desc:after {
	content: "arrow_downward";
	color: var(--accent-3);
}

@media (min-width: 48em) {
    #search-documents {
        width: 50%;
    }
}

@media(min-width: 62em) {
    .documents table {
        font-size: .9em;
    }

	.doc-search.advanced {
		justify-content: space-between;
	}

    .documents table .col-1 {
        width: 105px!important;
    }
}

/* Bus Icon */
.bus-icon {
    position: absolute;
    right: 4.5rem;
    top: 0;
    background: #EFEFEF;
    height: 100%;
    padding: 1rem;
    font-weight: var(--font-semibold);
    color: var(--dark-font-color);
    font-size: .9rem;
}

.staff-bus-icon {
    background: transparent;
}

.bus-icon i {
    color: var(--accent-2);
    font-size: 1.2rem;
}

.bus-icon.bus-icon-cancelled i {
    color: #E05B2A;
}

.bus-icon.bus-icon-delayed i {
    color: #F5B61F;
}

@media (max-width: 330px) {
    .bus-icon span {
        display: none;
    }

    .bus-icon {
        aspect-ratio: 1/1;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .bus-icon i {
        font-size: 1.5rem;
    }
}

@media (min-width: 62em) {
    .bus-icon {
        padding: 1.5rem;
        font-size: 1rem;
        gap: .75rem;
    }

    .bus-icon i {
        font-size: 1.5rem;
    }

	#searchInput {
		width: 30%;
	}
}

@media (min-width: 75em) and (max-width: 99em) {
    .desktop-primary-nav ul {
		gap: .75rem;
	}

    .nav-link a, .bus-icon {
        font-size: .92rem;
    }

    .bus-icon {
        padding: 1rem;
    }
}

/* Software page */
#software-list {
	row-gap: 1rem;
}

.apps-heading {
	margin: .5rem 0 0;
	font-size: .9rem;
    font-weight: var(--font-medium);
}

.buttons-group {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin-top: .5rem;
}

.buttons-group a {
	margin-top: 0;
	padding: .5rem 1rem;
    font-size: .9rem;
}

.resize-text .accordion-header {
    border-radius: 10px;
    padding: .5rem 1rem;
    height: 100%;
    justify-content: space-between;
	gap: .5rem;
	font-weight: var(--font-medium);
	font-size: 1.1rem;
}

.accordion-header .material-icons {
    margin-right: 0;
}

.software-company {
	font-weight: var(--font-medium);
	font-size: 1rem;
}

.accordion-item {
	position: relative;
}

.accordion-body {
	position: absolute;
    border-radius: 10px;
    border: 2px solid #F4F4F4;
    background: #FFF;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    width: 100%;
    top: 90%;
	z-index: 10;
	padding: 1rem;
}

#searchInput {
	box-shadow: none;
    background: var(--light-grey);
	padding-left: 2.25rem;
}

.search-field {
	position: relative;
	margin-bottom: 1.5rem;
}

.search-field i {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: .5rem;
}

.search-field input {
	padding-left: 2.25rem;
}


/* New Homepage Banner */
.banner-row {
	display: flex;
	flex-direction: column;
	height: auto;
	width: 100%;
}

.banner-col-left,
.banner-col-right {
	width: 100%;
	aspect-ratio: 4/5;
}

.banner-col-left-content,
.banner-col-right-content {
	margin: 0 3rem;
	color: white;
}

.banner-col-left-content h2 {
	font-size: 2rem;
	margin-top: 0;
	margin-bottom: .5rem;
	line-height: 1.2;
}

.banner-col-left-content h4 {
	margin: 0;
	font-size: 1.25rem;
}

.banner-swiper .swiper-slide {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	aspect-ratio: 4/5;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.banner-swiper .swiper-horizontal>.swiper-pagination-bullets, 
.banner-swiper .swiper-pagination-bullets.swiper-pagination-horizontal {
	width: fit-content;
    height: fit-content;
    top: 50%;
    left: 1rem;
    display: flex;
    flex-direction: column;
    gap: .5rem;
    transform: translateY(-50%);
}

.banner-swiper .swiper-pagination-bullet {
    background: white;
    width: 5px;
    height: 30px;
    border-radius: 1px;
    box-shadow: 0px 16px 20px 0px rgba(112, 64, 176, 0.16);
}

.banner-col-right {
	background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.scrolling-content {
    margin-top: -2rem;
}

.scrolling-content .banner-bottom-content-1 {
	padding-top: 55%;
	padding-bottom: 3rem;
	color: white;
	margin-top: -.5rem;
}

.scrolling-content .quicklinks {
	max-width: 100%;
    text-align: center;
    z-index: 100;
    padding: 0;
    position: absolute;
    top: -3rem;
    left: 1rem;
    right: 1rem;
}

.district .scrolling-content .quicklink {
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.10) 100%), #0099A8;
    box-shadow: 0px 16px 20px 0px rgba(112, 64, 176, 0.16);
    border: none;
	width: calc((100% - 2rem) / 3);
	aspect-ratio: 1 / 1;
	height: auto;
}

.banner-new-wave {
	width: 100%;
}

.banner-new-wave img {
	width: 100%;
}

.scrolling-content .banner-bottom-wrapper {
	position: relative;
}

.banner-row .banner_video {
	padding-top: 56.25%;
}

.banner-row .banner_video .banner-col-left-content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
	z-index: 100;
}

.banner-row .banner_video iframe {
	width: 120%;
    height: calc(100% * 16 / 9);
}

.banner-row .pause-1 {
	top: 1rem ;
	right: 1rem;
}

.banner-row .banner-overlay {
    background: rgba(25, 25, 25, 0.34);
    opacity: unset;
}

@media (min-width: 48em) {
	.district .scrolling-content .quicklink {
		width: calc((100% - 4rem) / 5);
	}

	.scrolling-content .banner-bottom-content-1 {
		padding-top: 11%;
		padding-bottom: 3rem;
		color: white;
		margin-top: -.5rem;
	}

	.banner-col-left,
	.banner-col-right {
		aspect-ratio: 3/2;
	}

	.banner-swiper .swiper-slide {
		aspect-ratio: 3/2;
	}
}

@media (min-width: 75em) {
	header.sticky-active {
		position: fixed;
	}
	.banner-row {
		flex-direction: row;
		height: 100vh;
        position: fixed;
        top: 72px;
		width: 100%;
		max-width: 2560px;
	}

	.banner-row .banner_video {
		height: auto;
		padding: 0;
	}
	.banner-row .banner_video iframe {
		width: 290%;
		height: 100%;
	}

	.banner-row .pause-1 {
		top: 5rem;
    	right: 1.5rem;
	}

	.banner-col-left {
		width: calc(2/3 * 100%);
		aspect-ratio: unset;
	}

	.banner-col-right {
		width: calc(1/3 * 100%);
		aspect-ratio: unset;
	}

	.banner-col-left-content {
		margin: 0 0 0 8%;
		color: white;
	}

	.banner-col-left-content h2 {
		font-size: 4rem;
		margin-top: 0;
		margin-bottom: .5rem;
		max-width: 40%;
		line-height: 1.2;
	}

	.banner-row .banner_video .banner-col-left-content h2 {
		max-width: 75%;
	}

	.banner-col-left-content h4 {
		margin: 0;
		font-size: 2rem;
	}

	.banner-col-right-content {
		margin: 0 0 0 3rem;
		color: white;
	}

	.banner-col-right-content h2 {
		max-width: 50%;
		font-size: 3rem;
	}

	.scrolling-content {
		position: absolute;
		top: 115vh;
		width: 100%;
		z-index: 100;
		background-color: white;
		margin-top: 0;
	}

	.banner-swiper .swiper-horizontal>.swiper-pagination-bullets, 
	.banner-swiper .swiper-pagination-bullets.swiper-pagination-horizontal {
		left: 2rem;
	}

	.banner-swiper .swiper-pagination-bullet {
		height: 60px;
	}

	.banner-bottom-wrapper {
		margin-top: -3rem;
		position: relative;
	}

	.scrolling-content .banner-bottom-content-1 {
		padding-top: 7%;
	}

	.scrolling-content .quicklinks {
		left: 10%;
		right: 10%;
	}
}