  /*
Theme Name: 精东传媒 School Division Theme
Theme URI: http://chezkoop.ca
Description: HSD Template
Author: Chez Koop
Version: 1.7
*/

* {
    vertical-align: baseline;
    font-weight: inherit;
    font-family: inherit;
    font-style: inherit;
    font-size: 100%;
    border: 0 none;
    outline: 0;
    padding: 0;
    margin: 0;
}
html,
body {
    width: 100%;
    height: 100%;
}

/* Skip link */
.skip-link {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
    font-weight: bold;
}

.skip-link:focus {
    background-color: #eee;
    clip: auto !important;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1.5em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000; /* Above WP toolbar. */
}


:target {
    scroll-margin-top: 25vh;
    @media (max-width: 720px) {
        scroll-margin-top: 200px;
    }
}

/* Grid System */

#site-wrapper {
    position: relative;
}
#body {
    padding-bottom: 2em;
}
.section-centre,
.section-narrow,
.section-full,
.section-wide {
    padding: 0.8em 2em;
    overflow: hidden;
    margin: 0 auto;
    box-sizing: border-box;
}
.section-centre,
.widecolumn {
    width: 95%;
    max-width: 940px;
    text-align: center;
    background-color: white;
    margin: 2em auto;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.2);
}
.section-narrow {
    width: 95%;
    max-width: 740px;
}
.section-full {
    width: 95%;
    max-width: 1240px;
    padding: 0.8em 4em;
}
.section-wide {
    width: auto;
}
header .section-full {
    overflow: visible;
}

.col1,
.col2,
.col3,
.col4,
.col5,
.col6,
.col7,
.col8,
.col9,
.col10,
.col11,
.col12,
.col_logo {
    float: left;
}
.col1 {
    width: 4.47%;
}
.col2 {
    width: 13.14%;
}
.col_logo {
    width: 17.35%;
}
.col3 {
    width: 21.84%;
}
.col4 {
    width: 30.52%;
}
.col5 {
    width: 39.21%;
}
.col6 {
    width: 47.89%;
}
.col7 {
    width: 56.58%;
}
.col8 {
    width: 65.26%;
}
.col9 {
    width: 73.94%;
}
.col10 {
    width: 82.62%;
}
.col11 {
    width: 91.31%;
}
.col12 {
    width: 100%;
}
.margin1 {
    margin-right: 4.21%;
}
.margin2 {
    margin-right: 12.893%;
}
/* Responsive embed css courtesty of embedresponsively.com */

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}
.embed-container iframe,
.embed-container object,
.embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/* http://sonspring.com/journal/clearing-floats */

.clear {
    clear: both;
    display: block;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0;
}
/* End of Grid System Stuff */

/*

Wordpress Image Styles

*/

.aligncenter,
div.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.alignleft {
    float: left;
}
.alignright {
    float: right;
}
.wp-caption {
    background-color: #f3f3f3;
    border: 1px solid #ddd;
    border-radius: 3px;
    margin: 1em 0;
    text-align: center;
}
.wp-caption img {
    border: 0 none;
    margin: 0;
    padding: 0;
    width: 100%;
    height: auto;
}
.wp-caption p.wp-caption-text {
    font-size: 1.4em;
    line-height: 1.8em;
    margin: 0;
    padding: 0 4px;
}
.wp-caption.alignnone {
    width: 100% !important;
}
img.alignright {
    margin: 0 0 1em 1em
}
img.alignleft {
    margin: 0 1em 1em 0
}
a img.alignright {
    float: right;
    margin: 0 0 1em 1em
}
a img.alignleft {
    float: left;
    margin: 0 1em 1em 0
}
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}
/* End wordpress image styles*/

/* Alter Columns styles */

.full_width,
.one_half,
.one_third,
.two_third,
.one_fourth,
.three_fourth,
.one_fifth,
.two_fifth,
.three_fifth,
.four_fifth,
.one_sixth,
.five_sixth {
    padding-right: 3em;
    box-sizing: border-box;
}
.last_column {
    padding-right: 0;
}
/* End columns*/

body {
    font-size: 62.5%;
    background-color: #f3f3f3;
    color: #4c4c4c;
    font-family: 'Open Sans', sans-serif;
    -webkit-font-smoothing: antialiased;
    line-height: 1.67;
}
strong,
b {
    font-weight: bold;
}
em,
i {
    font-style: italic;
}
p,
ul,
ol {
    margin-bottom: 1em;
    font-size: 1.8em;
}
ul ul,
ol ol,
ul ol,
ol ul {
    font-size: 1em;
}
ul li,
ol li {
    margin-bottom: 0.5em;
}
table {
    font-size: 1.6em;
}
table thead {
    line-height: 1.4;
}
ul,
ol {
    margin-left: 2.2em;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    line-height: 1em;
    margin: 0.2em 0 0.4em;
    letter-spacing: -0.02em;
}
h1 {
    font-size: 4.6em;
    color: #54b948;
}
h1 span {
    font-size: 0.8rem;
    color: #4d4d4d;
}
h2 {
    font-size: 3.6em;
    margin: 0.2em 0;
}
h3 {
    font-size: 2.8em;
    line-height: 1.2;
    letter-spacing: -0.01em;
}
h4 {
    font-size: 2.6em;
    color: #54b948;
}
h5 {
    font-size: 2.2em;
}
h6 {
    font-size: 1.8em;
    font-weight: normal;
    text-transform: uppercase;
    color: #969696;
}
h6.section-id {
    margin: 1em 0 1.5em;
}
h6.section-id a {
    font-size: 0.8em;
    font-weight: bold;
}
a {
    text-decoration: none;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
a:hover,
a:focus {
    text-decoration: underline;
}
a:visited {
    opacity: 0.8;
}
h4 a {
    font-size: 0.7em;
    text-transform: uppercase;
    font-weight: normal;
}
img {
    display: block;
}
img.alignnone {
    max-width: 100%;
    height: auto;
}
small {
    font-size: 0.8em;
}
time {
    font-weight: normal;
    font-size: 0.6em;
    letter-spacing: normal;
    text-transform: uppercase;
    white-space: nowrap;
}
blockquote {
    padding: 2em 2em 2em 5em;
    margin-bottom: 2em;
    background-color: #fbfbfb;
    border-left: 6px solid #dedede;
}
blockquote p {
    font-size: 2em;
    font-style: italic;
}
blockquote p.quote-author {
    margin-bottom: 0;
    margin-top: -0.8em;
    font-style: normal;
    font-weight: bold;
    text-align: right;
}
.readmore,
#rcg_sidebar .rcg_view_details a {
    text-transform: uppercase;
    font-size: 0.9em;
    white-space: nowrap;
}
hr {
    border-bottom: 1px solid #d4d4d4;
}
/* Pre-header styling */

#pre-header {
    color: #fff;
    background-color: #00a4e3;
}
#pre-header a {
    color: white;
    padding: 0 0.4em;
    display: inline-block;
}
#pre-header a:hover,
#pre-header a:focus {
    text-decoration: underline;
    position: relative;
    background-color: rgba(0, 0, 0, 0.2);
}
#pre-header ul {
    list-style: none;
    margin: 0;
    line-height: 1.8;
    font-size: 1.6em;
}
#pre-header ul li {
    display: inline-block;
    margin: 0 1em 0 0;
}
#pre-header ul li.schoolday {
    float: left;
    text-transform: uppercase;
    font-weight: bold;
}
#pre-header ul li.search-form {
    float: right;
    margin-right: 0;
}

/*

Pre header search form

*/

.search-form {
    display: inline;
}
.search-form .search-field {
    background-color: rgba(0, 0, 0, 0.1);
    padding: 0.6em;
    margin-top: -0.6em;
    color: white;
    width: 220px;
}
.search-form .search-field::-webkit-input-placeholder {
    color: white;
}
.search-form .search-field:-moz-placeholder {
    color: white;
}
.search-form .search-field::-moz-placeholder {
    color: white;
}
.search-form .search-field:-ms-input-placeholder {
    color: white;
}
.search-form .search-submit {
    background-color: rgba(0, 0, 0, 0.1);
    padding: 0.6em;
    margin-top: -0.7em;
    color: white;
}
.search-form .search-submit:hover,
.search-form .search-submit:focus {
    background-color: rgba(255, 255, 255, 0.1);
}
.search-excerpt {
    background-color: rgba(255, 255, 0, 0.4);
}

/*

Translate options

*/

.translate_options {
    display: none;
    text-align: center;
}
.translate_languages {
    list-style: none;
    margin: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.translate_languages li {
    -webkit-flex-basis: 20%;
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%;
}

/*

Header Styling

*/

#main-header {
    background-color: #0061aa;
    margin-bottom: 1em;
    z-index: 10000;
    box-sizing: border-box;
}
#main-header.is_stuck {
    background-color: rgba(0, 97, 170, 0.9);
}
#main-header #logo img {
    width: 100%;
    height: auto;
    margin: 1em 0;
}
.menu_trigger,
.mobile_trigger_close {
    display: none;
}
nav>ul {
    font-size: 1.8em;
    list-style: none;
    margin: 0.7em 0 0.5em;
    line-height: 1.8;
    float: right;
    letter-spacing: -0.02em;
    clear: right;
}
nav>ul>li {
    display: inline-block;
    margin: 0 0.6em 0 0;
    position: relative;
    z-index: 10000;
}
nav>ul>li:last-child {
    margin-right: 0;
}
nav>ul>li a {
    color: #fff;
    white-space: nowrap;
}
body nav>ul>li a:hover,
body nav>ul>li a:focus {
    color: white;
    opacity: 0.6;
    text-decoration: underline;
}
nav>ul>li>ul {
    list-style: none;
    box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.2);
    opacity: 0;
    position: absolute;
    top: 100%;
    z-index: -2;
    margin: 0.4em 0 0 0;
    background-color: #00a4e3;
    padding: 0.4em 0.4em;
    left: -0.4em;
    font-size: 1em;
    visibility: hidden;
    -webkit-transition: all 0.1s ease 0.2s;
    transition: all 0.1s ease 0.2s;
    line-height: 1.6;
    min-width: 100%;
}
nav>ul>li.menu-item-has-children:last-child ul {
    left: inherit;
    right: -0.4em;
}
nav>ul>li.menu-item-has-children:nth-last-child(2) ul {
    left: inherit;
    right: -0.4em;
}
nav>ul>li.menu-item-has-children.expanded {
    z-index: 5;
}
nav>ul>li:before {
    visibility: hidden;
    opacity: 0;
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: -0.4em;
    top: -0.4em;
    z-index: -1;
    padding: 0.4em 0.4em;
    background-color: #00a4e3;
    -webkit-transition: all 0.1s ease 0.2s;
    transition: all 0.1s ease 0.2s;
}
nav>ul>li.menu-item-has-children.expanded:before {
    opacity: 1;
    visibility: visible;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
}
@media screen and (min-width: 1024px) {
    nav>ul>li.menu-item-has-children.expanded>ul {
        opacity: 1;
        visibility: visible;
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
    }
}
nav>ul>li>ul>li {
    font-weight: 400;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
    line-height: 1.8;
    margin: 0;
}
nav>ul>li>ul>li:last-child {
    border-bottom: none;
}
nav>ul>li>ul>li>ul {
    list-style: none;
    font-size: 0.85em;
    padding: 0 0 0 0.4em;
    margin: 0 0 0.5em;
    line-height: 1.1;
}
#body .main-content {
    background-color: #fff;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.2);
    padding: 3em 4em;
}
/*

Page Header

*/

.page-header {
    padding: 0 4em 1em;
}
    .page-header h1 span {
        font-size: inherit;
    }
/*

Breadcrumbs

*/

.breadcrumbs {
    list-style: none;
    margin: 0 0 1.2em;
    font-size: 1.6em;
    opacity: 0.7;
}
.breadcrumbs li {
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.5em;
}
.breadcrumbs li a {
    color: #4d4d4d;
}
.breadcrumbs .separator {
    color: #c4c4c4;
}
/* hide breadcrumbs on the timeline express pages */
.single-te_announcements .breadcrumbs {
    display: none;
}

/* Child Pages menu */

.child-pages {
    margin: -0.2em 0 1em;
    list-style: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    line-height: 1.4;
}
.child-pages li {
    border-right: 1px solid #c1c1c1;
    box-sizing: border-box;
    padding: 0 0.5em;
    margin: 0 0 0.5em;
}
.child-pages li:first-child {
    padding-left: 0;
}
.child-pages li:last-child {
    border-right: none;
    padding-right: 0;
}
.child-pages li.current_page_item {
    font-weight: 600;
}
.child-pages li a {
    color: #000;
    opacity: 0.6;
}
.child-pages li a:hover,
.child-pages li a:focus {
    text-decoration: underline;
    opacity: 1;
}
.child-pages li ul {
    display: block;
    font-size: 1em;
    margin: 0;
    font-weight: 400;
    list-style: none;
}
.child-pages li ul li {
    border: none;
    padding: 0;
    margin: 0;
    font-size: 0.8em;
}
/* Post Formatting */

.post,
.index-results {
    margin: 2em 0 3em;
    border-bottom: 1px solid #e7e7e7;
}
.post>h3 a:hover,
.post>h3 a:focus {
    text-decoration: underline;
    opacity: 0.7;
}
.post:last-of-type,
.index-results:last-of-type {
    border-bottom: none;
}
.post .post-categories {
    color: #7e7e7e;
    font-size: 1.4em;
    line-height: 1.8;
    display: none;
}
.post.format-standard .post-categories {
    display: block;
}
.post-categories a {
    opacity: 0.7;
    display: inline-block;
    color: white;
    text-transform: uppercase;
    padding: 0.1em 0.4em 0.05em;
    line-height: 1.4;
    font-weight: bold;
}
.post-categories a:hover,
.post-categories a:focus {
    opacity: 1;
    text-decoration: underline;
}
.post .readmore:hover,
.post .readmore:focus {
    color: black;
    text-decoration: underline;
}
.post.format-status {
    background-color: #fbfbfb;
    padding: 2em 3em 3em;
}
.post.format-status p:first-child:before {
    content: 'Status Update';
    display: block;
    margin-bottom: 0.6em;
    font-size: .8em;
    text-transform: uppercase;
    font-weight: bold;
    text-align: right;
    color: #8e8e8e;
}
.post.format-image img {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 1em;
}
.post.format-image h3 {
    margin-bottom: 0.9em;
}
.post-meta {
    font-size: 1.6em;
    margin-bottom: 0.2em;
    font-style: italic;
    color: #7e7e7e;
}
.post-meta,
.post-categories time {
    text-transform: none;
    font-size: 1em;
    font-style: italic;
}

.view-all{
    font-size: 2em;
    font-weight: bold;
    color: #54b948;
}
.fa-angle-double-right{
    padding-left: 5px;
}
.school_websites {
    padding-top: 20px;
}
/* Gallery Index = .hsd_gallery */
/* Galleries */

.gallery,
.hsd_gallery {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
}
.gallery li,
.hsd_gallery article {
    display: block;
    -webkit-flex-basis: 23.5%;
    -ms-flex-preferred-size: 23.5%;
    flex-basis: 23.5%;
    margin-right: 2%;
    margin-bottom: 1em;
}
.hsd_gallery article {
    font-size: 1.6em;
    line-height: 1.2;
    text-align: center;
}
.gallery li:nth-child(4n) {
    margin-right: 0;
}
.gallery a img,
.hsd_gallery a img {
    display: block;
    width: 100%;
    height: auto;
}
.gallery a:hover img,
.gallery a:focus img {
    opacity: 0.7;
}
.col12 .gallery li,
.hsd_gallery article {
    -webkit-flex-basis: 15%;
    -ms-flex-preferred-size: 15%;
    flex-basis: 15%;
}
.col12 .gallery li:nth-child(4n) {
    margin-right: 2%;
}
.col12 .gallery li:nth-child(6n),
.hsd_gallery article:nth-child(6n) {
    margin-right: 0;
}
.hsd_gallery .gallery_title {
    font-weight: bold;
    padding-top: 0.5em;
    display: block;
}
.hsd_gallery h2 {
    flex-basis: 100%;
}
/* 精东传媒 listing homepage */

.schools_list {
    margin: 0;
    list-style: none;
    -webkit-columns: 3 150px;
    -moz-columns: 3 150px;
    columns: 3 150px;
}
.schools_list li {
    line-height: 1.4;
    margin-bottom: 0.6em;
}
/* School Profiles */

.school_details {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    clear: both;
    padding-bottom: 2em;
}
.school_details>div {
    -webkit-flex-basis: 20%;
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%;
    padding-right: 2em;
    box-sizing: border-box;
    margin-bottom: 2em;
}
.school_details>.school_people {
    -webkit-flex-basis: 20%;
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%;
    margin: 0 0 1em;
    list-style: none;
    font-size: 1.5em;
}
.school_details>.school_people li {
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    line-height: 1.4;
    margin: 0 0 0.6em;
}
.school_details>.school_people.school_links {
    -webkit-flex-basis: initial;
    -ms-flex-preferred-size: initial;
    flex-basis: initial;
    display: block;
    width: 100%;
    box-sizing: border-box;
}
.school_details>.school_people.school_links li {
    display: inline-block;
    margin: 0 1.2em 0 0;
}
.school_details .school_links_title {
    background-color: #f4f4f4;
    padding: 1em 1em 0;
    width: 100%;
    margin: 0;
    display: block;
}
.school_details>.school_people.school_links {
    background-color: #f4f4f4;
    padding: 1em;
}
.school_people .school_people_title {
    font-weight: bold;
    text-transform: uppercase;
    display: block;
}
.school_people .school_people_name {
    display: block;
    font-size: 1.2em;
}
.school_people .school_people_email {
    font-weight: bold;
}
.school_details .school_thumbnail {
    -webkit-flex-basis: 30%;
    -ms-flex-preferred-size: 30%;
    flex-basis: 30%;
}
.school_thumbnail img {
    width: 100%;
    height: auto;
}
.school_details .school_phone,
.school_details .school_fax,
.school_details .school_email,
.school_details .school_twitter {
    display: block;
}
.school_details .school_address {
    font-size: 1.6em;
}
.school_details .school_map {
    -webkit-flex-basis: 30%;
    -ms-flex-preferred-size: 30%;
    flex-basis: 30%;
    padding-right: 0;
}
.school_desc {
    font-size: 0.9em;
}
h4.school_name {
    font-size: 2.8em;
    overflow: hidden;
    vertical-align: middle;
    border-top: 1px solid #c1c1c1;
    padding: 0.4em 0 0;
    margin-bottom: 0.3em;
}
.school_profile:nth-child(1) h4.school_name {
    border-top: none;
}
h4.school_name .school_subtitle {
    padding-left: 1em;
    font-size: 0.8em;
    font-weight: 400;
}
h4.school_name a {
    font-size: 0.7em;
    text-transform: uppercase;
    padding-left: 1em;
    float: right;
    font-weight: bold;
}
.acf-map {
    width: 100%;
    height: 18em;
}
h3.school_category {
    font-weight: 300;
}
/* Post Navigation */

.posts-nav {
    font-size: 2em;
    border-top: 1px solid #e7e7e7;
    padding: 0.7em;
}
/* Buttons */

.button,
.b1,
.b2 {
    border: 1px solid;
    padding: 0.6em 0.8em;
    line-height: 2;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 0.9em;
}
.button:hover,
.button:focus {
    text-decoration: underline;
}
.b1 {
    color: white;
}
.b1:hover,
.b1:focus {
    color: #fff;
    text-shadow: none;
}
.b2 {
    width: 100%;
    display: block;
    box-sizing: border-box;
    text-align: center;
    color: #969696;
}
.b2:hover,
.b2:focus {
    color: black;
}
/* Division Message */

.division-message p {
    margin: 0.4em 0 0;
}
.division-message p a {
    color: #313131;
    vertical-align: middle;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0.5em;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 0.5em;
}
.division-message p a i.fa-exclamation-circle {
    color: #e1521a;
    vertical-align: middle;
}
.division-message p a .dm-important {
    color: #e1521a;
    text-transform: uppercase;
    font-weight: bold;
    padding: 0 0.6em;
    font-size: 1.1em;
}
.division-message p a .dm-title {
    text-align: center;
    padding: 0 0.8em;
}
.division-message p a .readmore {
    padding-left: 1em;
}
.division-message p a:hover,
.division-message p a:focus {
    text-decoration: underline;
    background-color: rgba(0, 0, 0, 0.1);
}
/* Sidebar Styles */

.widget {
    margin-bottom: 2em;
}
.widget_sp_image h3 {
    font-weight: 300;
    font-size: 2.2em;
    text-align: center;
}
.widget_sp_image img {
    height: auto;
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.3);
}
.widget_nav_menu {
    padding: 1.5em;
    background-color: #f9f9f9;
    border-radius: 0.7em;
}
/* Sidebar Buttons */

.button_sidebar {
    display: block;
    text-align: center;
    color: white;
    padding: 3em 2em;
}
.button_sidebar span {
    display: block;
}
.button_sidebar .button_title {
    font-size: 2.8em;
    font-weight: bold;
    margin-bottom: 0.1em;
    line-height: 1.2;
}
.button_sidebar .button_subtitle {
    font-size: 1.8em;
    font-style: italic;
    opacity: 0.8;
    margin-bottom: 0.4em;
}
.button_sidebar .button_link_label {
    font-size: 1.4em;
    text-transform: uppercase;
    font-weight: bold;
}
.button_sidebar:hover,
.button_sidebar:focus {
    text-decoration: underline;
    opacity: 0.6;
}

.button_sidebar:not([href]):hover,
.button_sidebar:not([href]):focus {
    opacity: 1;
}
/* Category & Archive widget styling */

.widget_categories ul,
.widget_archive ul {
    list-style: none;
    margin: 0;
}
.widget_categories ul li,
.widget_archive ul li {
    padding-right: 1em;
    display: inline-block;
}
.widget_categories .current-cat a {
    color: #4c4c4c;
}
/*

Flex Content Styling

*/

/* Tab Layout Styling */

.tabs-container {} ul.tabs {
    list-style: none;
    margin: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
ul.tabs li {
    opacity: 0.4;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    white-space: nowrap;
    position: relative;
    background-color: #00a4e3;
    color: white;
    cursor: pointer;
    padding: 0.2em 0.6em;
    border-radius: 0.2em;
    font-weight: bold;
    letter-spacing: -0.02em;
    margin: 0 0.3em 0.6em;
}
ul.tabs li.current {
    opacity: 1;
}
ul.tabs li.current>i {
    display: inherit;
}
ul.tabs li>i {
    position: absolute;
    bottom: -0.4em;
    left: 50%;
    left: 0;
    right: 0;
    text-align: center;
    display: none;
}
ul.tabs li:hover {
    opacity: 1;
}
.tab-content {
    display: none;
    padding: 1em 0 0;
}
.tab-content.current {
    display: block;
}
/*

Accordion Layout Styling

*/

.panel {
    padding: 1.5em 1.8em 0.1em;
    background-color: rgba(0, 0, 0, 0.02);
    margin: 0 0 1em;
}
.panel>h3 {
    font-size: 1.8em;
    letter-spacing: -0.02em;
    margin: 0;
    padding: 0 0 0.6em;
    cursor: pointer;
}
/*

Homepage Featured Content

*/

/* 5up & 3up templates */

#featured_content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    margin: 2em auto 0;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-shadow: 0px -2px 3px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: visible;
    z-index: 1;
}
#featured_content article {
    position: relative;
}
#featured_content article a:hover,
#featured_content article a:focus {
    text-decoration: underline;
}
#featured_content .secondary_features article .item_background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    -webkit-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
}
#featured_content .secondary_features {
    -webkit-flex-basis: 33.334%;
    -ms-flex-preferred-size: 33.334%;
    flex-basis: 33.334%;
    height: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
#featured_content .secondary_features article {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}
#featured_content>article:nth-child(1) {
    -webkit-flex-basis: 66.666%;
    -ms-flex-preferred-size: 66.666%;
    flex-basis: 66.666%;
    height: auto;
    max-width: 66.666%;
    aspect-ratio: 4 / 3;
}

#featured_content>article:nth-child(1) .item_background {
    height: 100%;
}
#featured_content article .feature-text {
    z-index: 100;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    color: white;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.4);
    text-align: center;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 2em;
    background-color: rgba(0, 0, 0, 0.0);
    transition: background 0.1s ease;
}
#featured_content article .feature-text a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
}
#featured_content article.text-top .feature-text, #featured_content article.text-top .feature-text a {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
	/* background-image: linear-gradient(to bottom, rgba(0,0,0,0.5) 10%, rgba(0,0,0,0) 40%); */
}
#featured_content article.text-top .feature-text.has-text {
	background-image: linear-gradient(to bottom, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 50%);
}

#featured_content article.text-bottom .feature-text, #featured_content article.text-bottom .feature-text a {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
	/* background-image: linear-gradient(to top, rgba(0,0,0,0.5) 10%, rgba(0,0,0,0) 40%); */
}
#featured_content article.text-bottom .feature-text.has-text {
	background-image: linear-gradient(to top, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 50%);
}
#featured_content article.text-middle .feature-text, #featured_content article.text-middle .feature-text a {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
#featured_content article .feature-text h4 {
    font-weight: bold;
    color: white;
}
#featured_content article .feature-text p {
    line-height: 1.2;
    color: white;
}
#featured_content article .feature-text.has-url:hover,
#featured_content article .feature-text.has-url:focus {
    background-color: rgba(0, 0, 0, 0.25);
}
#featured_content .secondary_features article .feature-text p {
    margin-bottom: 0;
}
#featured_content .secondary_features article .feature-text h4 {
    margin-bottom: 0.2em;
}
#featured_content>article:nth-child(1) .feature-text h4 {
    font-size: 4em;
    margin-bottom: 0.2em;
}
#featured_content>article:nth-child(1) .feature-text p {
    font-size: 2.2em;
}
#featured_content.layout_3up .secondary_features .feature-text h4 {
    font-size: 3em;
}
#featured_content.layout_5up .secondary_features .feature-text {
    padding: 1.2em;
    text-align: left;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
#featured_content .secondary_features .button {
    padding: 0;
    border: none;
}
#featured_content article.icon {
    text-align: left;
}
#featured_content article.icon a {
    display: block;
    height: 11.2em;
    color: white;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}
#featured_content article.icon a:hover,
#featured_content article.icon a:focus {
    text-decoration: underline;
}
#featured_content article.icon .featured_icon {
    font-size: 5em;
    padding: 0.2em 0.4em;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    width: 20%;
    line-height: 2.2;
}
#featured_content article.icon h4,
#featured_content article.icon p {
    width: 68%;
}
#featured_content article.icon .feature-text:hover,
#featured_content article.icon .feature-text:focus {
    background-color: rgba(255, 255, 255, 0.1);
}
#featured_content .feature-progress {
    height: 0.6em;
    background-color: rgba(0, 0, 0, 0.3);
    position: absolute;
    bottom: 0;
    z-index: 100;
}
#featured_content article.slideshow .f-slideshow {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
#featured_content article.slideshow .f-slide {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
#featured_content article.slideshow .f-slideshow .f-slide .feature-text {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    left: 0;
}
#featured_content article.slideshow img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
#f-slideshow-pager {
    position: absolute;
    bottom: 0;
    z-index: 1000;
    left: 0;
    right: 0;
    text-align: center;
    line-height: 0.5;
}
#f-slideshow-pager span {
    font-size: 5em;
    color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    -webkit-transition: 0.1s ease;
    transition: 0.1s ease;
}
#f-slideshow-pager span:hover {
    color: white;
}
#f-slideshow-pager span.cycle-pager-active {
    color: white;
}
/*

Colours

*/

#featured_content article.black .feature-text p {
    color: black;
    text-shadow: none;
}
#featured_content article.black .feature-text h4 {
    color: black;
    text-shadow: none;
}
/*

1up template, slider

*/

#featured_content .feature_slider {
    width: 100%;
}
#featured_content .feature_slider article {
    width: 100%;
    height: 54.5em;
}
#featured_content .feature_slider article .feature-text {
    padding: 2em 12em;
}
#featured_content .feature_slider article .feature-text h4 {
    font-size: 5.4em;
}
#featured_content .feature_slider article .feature-text p {
    font-size: 2em;
}
#featured_content #feature-pager {
    width: 100%;
    display: none;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    background-color: white;
    height: 12em;
}
#featured_content #feature-pager a {
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1em;
    font-size: 2.2em;
    font-weight: bold;
    text-align: center;
    color: #4c4c4c;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: -1px 0px 0px rgba(0, 0, 0, 0.1) inset;
}
#featured_content #feature-pager a:last-child {
    box-shadow: none;
}
#featured_content #feature-pager a:hover,
#featured_content #feature-pager a.cycle-pager-active {
    color: white;
    text-decoration: underline;
    position: relative;
}
#featured_content #feature-pager a:focus {
    text-decoration: underline;
}
#featured_content #feature-pager a.cycle-pager-active:after {
    content: "";
    width: 0;
    height: 0;
    border-left: 0.8em solid transparent;
    border-right: 0.8em solid transparent;
    border-bottom: 0.8em solid white;
    position: absolute;
    bottom: -1px;
    left: 50%;
    margin-left: -0.8em;
}
#featured_content .feature-previous,
#featured_content .feature-next {
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    font-size: 8em;
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -0.5em;
    z-index: 100;
    color: rgba(0, 0, 0, 0.2);
    cursor: pointer;
}
#featured_content .feature-previous {
    left: -0.6em;
}
#featured_content .feature-next {
    right: -0.6em;
}
#featured_content .feature-previous:hover,
#featured_content .feature-next:hover {
    color: rgba(0, 0, 0, 0.4)
}
/*

Home Feature Buttons (displayed below featured content on homepage)

*/

.home_feature_buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: -3em -4em 3em;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #f8f8f8;
}
.home_feature_buttons a {
    display: block;
    position: relative;
    cursor: pointer;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    text-align: center;
    padding: 1em 1.5em 2em;
    border-right: 1px solid #e5e5e5;
    border-bottom: 1px solid white;
}
.home_feature_buttons a .feature_button_icon.accent_1 {
    color: #0061aa;
}
.home_feature_buttons a .feature_button_icon.accent_2 {
    color: #00a4e3;
}
.home_feature_buttons a .feature_button_icon.accent_3 {
    color: #54b948;
}
.home_feature_buttons a:last-child {
    border-right: none;
}
.home_feature_buttons a:hover,
.home_feature_buttons a:focus {
    text-decoration: underline;
    background-color: #fff;
    border-bottom: 1px solid #929292;
}
.home_feature_buttons a .feature_button_icon {
    font-size: 3.5em;
    display: block;
    color: black;
}
.home_feature_buttons a .feature_button_title {
    font-size: 2em;
    display: block;
    font-weight: bold;
    color: #525252;
}
.home_feature_buttons a .feature_button_subtitle {
    font-size: 1.5em;
    display: block;
    color: #9b9b9b;
}


/*

Resources

*/

.resource_list {
    list-style: none;
    margin-left: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.resource_list li {
    -webkit-flex-basis: 24%;
    -ms-flex-preferred-size: 24%;
    flex-basis: 24%;
    min-width: 275px;
    margin: 0 1% 0.7em 0;
    background-color: #f4f4f4;
    padding: 0.7em;
    box-sizing: border-box;
    -webkit-transition: background-color 0.2s ease;
    transition: background-color 0.2s ease;
}
.resource_list li:hover {
    background-color: #e4e4e4
}
.resource_list li a {
    display: block;
    height: 100%;
}
.resource_list li a:hover,
.resource_list li a:focus {
    text-decoration: underline;
}
.resource_list li a span {
    display: block;
}
.resource_list li a i {
    color: black;
}
.resource_list li a .resource_heading {
    font-weight: bold;
}
.resource_list li a .resource_desc {
    font-size: 0.8em;
    color: #4c4c4c;
    line-height: 1.4;
}

/*

Staff

*/

.staff_list {
    list-style: none;
    margin-left: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.staff_list li {
    -webkit-flex-basis: 23.5%;
    -ms-flex-preferred-size: 23.5%;
    flex-basis: 23.5%;
    margin: 0 2% 0.7em 0;
    box-sizing: border-box;
    border-bottom: 1px solid #e7e7e7;
    line-height: 1.4;
    padding-bottom: 0.6em;
}
.staff_list li img {
    width: 100%;
    height: auto;
    margin-bottom: 0.4em;
}
.staff_list li:nth-child(4n) {
    margin-right: 0;
}
.staff_list .staff_name {
    font-weight: bold;
    display: inline-block;
    padding: 0 0.4em 0 0;
    font-size: 1.2em;
}
.staff_list .staff_subtitle {
    white-space: nowrap;
    font-size: 0.8em;
}
.staff_list .staff_email {
    display: block;
}
.none-found {
    margin-top: 1.1em;
    background-color: #f4f4f4;
    padding: 0.7em;
    font-style: italic;
}
/* Jobs */

.jobs {
    margin-bottom: 2em;
}
.jobs h3 {
    margin-bottom: 1em;
    font-weight: 400;
}
.job {
    background-color: #f9f9f9;
    padding: 1.5em;
    margin-bottom: 1em;
    border-radius: 0.7em;
}
.job h4 {
    margin-bottom: 0.2em;
}
.job_details {
    margin-bottom: 0;
}
.job a {
    font-weight: bold;
    white-space: nowrap;
    font-size: 0.9em;
    text-transform: uppercase;
    display: block;
}
/*

Calendar Styling

*/

body #calendar {
    max-width: 1200px;
    padding: 0;
}
#calendar_wrap {
    position: relative;
}
#loading {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    padding: 60px 0 0 0;
    text-align: center;
    left: 0;
    bottom: 0;
    font-size: 1px;
    background-color: rgba(255, 255, 255, 0.7);
    z-index: 5;
}
#loading i {
    font-size: 30px;
}
.fc .fc-view-container {
    font-size: 1.5em;
}
.fc .fc-center h2 {
    font-size: 4em;
    text-transform: uppercase;
    color: #4d4d4d;
}
.fc .fc-head {
    background-color: #8d8d8d;
    color: white;
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.5;
}
.fc .fc-button {
    font-size: 1.4em;
}
.fc .fc-event {
    padding: 0.2em;
    margin: 0 0.3em 0.3em;
    font-size: 0.8em;
}
.fc .fc-view-container .fc-basic-view .fc-day-number {
    text-align: left;
    font-size: 1.2em;
    color: #959595;
}
#calendar_list {
    padding: 2em 2em 1.5em;
    margin-bottom: 2em;
    border-top: 1px solid #d1d1d1;
    border-bottom: 1px solid #d1d1d1;
}
#calendar_list ul {
    margin: 0;
    line-height: 1;
}
#calendar_list ul li {
    -webkit-transition: color 0.2s ease;
    transition: color 0.2s ease;
    font-size: 0.8em;
}
#calendar_list ul li:hover {
    color: black;
}
#calendar_list ul li div {
    margin-right: 0.4em;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
#calendar_list ul li.inactive_cal div {
    opacity: 0.6;
}
.event_details {
    font-size: 1.8em;
    max-width: 600px;
}
.event_details .rcg_title {
    font-size: 1.4em;
    font-weight: bold;
}
.event_details .rcg_date {
    text-transform: uppercase;
    display: inline;
    padding-right: 0.5em;
}
.event_details .rcg_all_day,
.event_details .rcg_start_time {
    display: inline;
    opacity: 0.7;
    padding-right: 0.5em;
}
.event_details .rcg_event_description {
    margin-top: 0.8em;
    line-height: 1.6;
}
/* Upcoming events Styling */

h4.upcoming-title {
    text-align: center;
    color: #969696;
    font-size: 2.2em;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1.6;
}
#rcg_sidebar {
    width: 100%;
    margin: 0 0 1em;
    font-size: 1.8em;
    color: #4c4c4c;
    border-spacing: 0;
}
#rcg_sidebar td {
    box-sizing: border-box;
    padding: 0 0.8em 0.8em;
}
#rcg_sidebar td:nth-child(2n) {
    padding-top: 0.5em;
}
#rcg_sidebar .rcg_odd {
    background-color: #f5f5f5;
}
#rcg_sidebar .rcg_date {
    text-transform: uppercase;
    font-size: 0.8em;
    color: #747474;
    min-width: 60px;
    padding: 0 0 0 0.6em;
}
#rcg_sidebar .rcg_event_title {
    font-weight: bold;
    color: #4c4c4c;
    margin-bottom: 0;
    line-height: 1.4;
}
#rcg_sidebar .rcg_view_details a {
    font-size: 0.8em;
}
.no_events {
    font-size: 1.8em;
    font-style: italic;
    margin: 0 0 1em;
    text-align: center;
}

/* TABLES /*
/* k3 tracker */

.k3tracker tbody td.column-1 {
    font-weight: bold;
    font-size: 1.4em;
    vertical-align: middle;
    background-color: #f4f4f4;
}
table.k3tracker thead th.column-1 {
    font-weight: bold;
    background-color: #f4f4f4;
    border-bottom: none;
}
table h4 {
    font-size: 2rem;
    margin: 0;
}
/*

Form styling

*/


/* Blame Gravity forms for these selectors */
body .gform_wrapper .gform_body .gform_fields .gfield input[type=text],
body .gform_wrapper .gform_body .gform_fields .gfield textarea,
input[type=number],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=email],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=url],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=password],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=tel],
body .gform_wrapper .gform_body .gform_fields .gfield select {
    border: 1px solid #d1d1d1;
    padding: 0.5em 0.4em;
    box-sizing: border-box;
}
body .gform_wrapper .gform_body .gform_fields .gfield .gfield_description,
body .gform_wrapper .ginput_complex label {
    /* font-size: 0.75em; */
	font-size: 12px;
    margin-bottom: 0;
}
body .gform_wrapper .gform_footer input[type=submit] {
    margin-top: 1px;
    font-size: 2em;
    color: white;
    font-weight: bold;
    padding: 0.4em 0.5em;
    border-radius: 2px;
    width: 98%;
    box-sizing: border-box;
}
body .gform_wrapper .gform_footer input[type=submit]:hover,
body .gform_wrapper .gform_footer input[type=submit]:focus {
    opacity: 0.7;
    cursor: pointer;
}
body .gform_wrapper .gform_footer input[type=submit]:active {
    margin-bottom: 1px;
    margin-top: 0px;
}
body .gform_wrapper .top_label .gfield_label {
    margin: 0.7em 0 0;
}
body .gform_wrapper .gform_heading {
    margin: 0 0 0.5em;
    font-size: 1.4em;
}
body .gform_wrapper .gform_heading .gform_required_legend {
	font-size: 1em;
}
body .gform_confirmation_message {
    font-size: 1.8em;
    padding: 1em;
    background-color: #e5f7e6;
    font-weight: bold;
}
body .gform_wrapper div.validation_error {
    font-size: 1.6em;
}
body .gform_wrapper .gfield_html {
    /* font-size: 0.55em; */
	font-size: 15px;
}
body .gform_wrapper .gfield_html ul {
    font-size: 1.8em;
    margin-left: 2em !important;
}
.screen-reader-text {
    display: none;
}

/*

Footer Styles

*/

.copyright {
    font-size: 0.8em;
    text-align: right;
    line-height: 3;
}
.hsd-logo {
    width: 30%;
    max-width: 62px;
    height: auto;
    margin: 0 1.8em 1em 0;
    float: left;
}
footer {
    opacity: 0.9;
    margin-bottom: 1.5em;
}
footer .footer-content {
    position: relative;
    padding-bottom: 2em;
    margin-bottom: 2em;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
footer .footer-content:before {
    content: ' ';
    width: 100%;
    display: block;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    position: absolute;
    margin-left: -2em;
    margin-top: 3.4em;
}
.footer-pic {
    width: 100%;
    height: auto;
}
footer h5 {
    font-size: 2em;
    padding-bottom: 0.5em;
    margin-bottom: 0.9em;
}
footer p,
footer ul {
    margin: 0;
    font-size: 1.6em;
}
footer .organization-name {
    display: block;
    margin: 0.6em 0 0;
}
footer a {
    color: #4c4c4c;
}

/*

Footer menu styles

*/

footer .menu {
    // margin-left: 1em;
    list-style: square;
    list-style-position: inside;
}
footer .menu-hsd {
    column-count: 2;
}
@media screen and (max-width: 1240px) {
    #featured_content .feature-previous {
        left: 0.1em;
    }
    #featured_content .feature-next {
        right: 0.1em;
    }
    nav>ul {
        font-size: 1.7em;
    }
    nav>ul>li {
        margin-right: 0.4em;
    }
    .section-centre {
        width: 100%;
        max-width: 940px;
    }
    .section-narrow {
        width: 100%;
        max-width: 740px;
    }
    .section-full {
        width: 100%;
        max-width: 1140px;
    }
}
@media screen and (max-width: 1024px) {
    body {
        font-size: 57.5%;
    }
    .section-full {
        padding: 0.8em 2em;
        box-sizing: border-box;
    }
    #main-header .section-full {
        padding: 1.2em 1.5em;
    }
    #body .main-content {
        padding: 3em 3em;
    }
    .home_feature_buttons {
        margin: -3em -3em 4em;
    }
    nav>ul {
        display: none;
        position: absolute;
        top: 0;
        margin-top: 0;
        left: 0;
        background-color: rgba(0, 0, 0, 0.8);
        width: 100%;
        padding: 1em 0;
        box-sizing: border-box;
        z-index: 1000;
        text-align: center;
    }
    body nav.col9>ul a {
        color: white;
    }
    nav>ul>.mobile_trigger_close {
        position: absolute;
        top: 0.6em;
        right: 0.6em;
        display: block;
        font-size: 2em;
        line-height: 1;
        z-index: 10001;
        color: white;
    }
    nav>ul>li {
        display: block;
        margin-right: 0;
        -webkit-transition: all 0.2s ease;
        transition: all 0.2s ease;
    }
    nav>ul>li>a {
        font-weight: bold;
    }
    nav>ul>li>a:hover,
    nav>ul>li>a:focus {
        color: white;
    }
    nav>ul>li>ul {
        box-sizing: border-box;
        font-size: 0;
        -webkit-transition: all 0.1s ease;
        transition: all 0.1s ease;
        position: static;
        height: 0;
        background: none;
        border: none;
        padding: 0;
        margin-top: 0;
        margin-bottom: 0.5em;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        box-shadow: none;
    }
    nav>ul>li>ul>li {
        padding: 0 0.5em;
        border: none;
        box-sizing: border-box;
        margin: 0;
    }
    nav>ul>li>ul>li>a {
        -webkit-transition: none;
        transition: none;
    }
    nav>ul>li.menu-item-has-children:before {
        display: none;
    }
    nav>ul>li.menu-item-has-children.expanded:before {
        display: none;
    }
    nav>ul>li.expanded>ul {
        opacity: 1;
        visibility: visible;
        height: auto;
        font-size: inherit;
    }
    nav>ul>li.expanded {
        background-color: rgba(0, 0, 0, 0.2);
        box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2) inset;
        padding: 0.2em 0 0.1em;
    }
    #featured_content article.icon .featured_icon {
        font-size: 4em;
        padding: 0.2em 0.4em 0 0;
    }
    #featured_content article.icon .feature-text h4 {
        font-size: 2.2em;
    }
    .menu_trigger {
        display: inline-block;
        float: right;
        font-size: 2em;
        border: 2px solid;
        padding: 0.3em 0.5em;
        font-weight: bold;
        text-transform: uppercase;
        line-height: 1.8;
        color: white;
    }
    .menu_trigger:hover,
    .menu_trigger:focus {
        text-decoration: underline;
        background-color: white;
    }
}
@media screen and (max-width: 800px) {
    body {
        font-size: 52.5%;
    }
    footer {
        font-size: 1.1em;
    }
    .school_details {
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
    .school_details .school_thumbnail,
    .school_details .school_map {
        -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        padding-right: 0;
    }
    .school_details .school_contact {
        -webkit-flex-basis: 30%;
        -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
    }
    .acf-map {
        height: 30em;
    }
}

/*

Tablet in portrait

*/

@media screen and (max-width: 765px) {
    body #featured_content {
        display: block;
    }
    body #featured_content .secondary_features {
        display: block;
        height: auto;
    }
    body #featured_content article,
    body #featured_content .secondary_features article,
    body #featured_content .feature_slider article,
    #featured_content>article:nth-child(1) {
        width: 100%;
        height: auto;
    }
    body #featured_content article.image:first-child .feature-text {
        padding: 8em 2em;
    }
    body #featured_content article.image:first-child .item_background {
        display: block;

    }
    #featured_content .secondary_features article .item_background {
        position: relative;
    }
    #featured_content.layout_5up .secondary_features .feature-text {
        padding: 0 1.2em;
    }
    #featured_content>article:nth-child(1) {
        max-width: 100%;
    }
    #featured_content .feature_slider article {
        height: auto;
    }

    #featured_content article .f-slide .feature-text {
        height: 100%;
    }
    #featured_content article .feature-text {
        height: auto;
    }
    #featured_content #feature-pager {
        height: auto;
    }
    .page-header {
        text-align: center;
    }
    .child-pages {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .child-pages li {
        border: none;
        padding: 0 0.5em;
    }
    .division-message p a {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    #pre-header ul li {
        display: none;
    }
/*	#pre-header ul li.google-translate, */
    #pre-header ul li.search-form,
    #pre-header ul li.stafflink {
        display: inline-block;
    }
    .home_feature_buttons {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .home_feature_buttons a {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        box-shadow: 0px -1px 0px rgba(0, 0, 0, 0.1) inset;
    }
    .staff_list li {
        -webkit-flex-basis: 49%;
        -ms-flex-preferred-size: 49%;
        flex-basis: 49%;
        margin: 0 2% 0.7em 0;
        box-sizing: border-box;
        border-bottom: 1px solid #c4c4c4;
        line-height: 1.4;
        padding-bottom: 0.6em;
    }
    .staff_list li:nth-child(2n) {
        margin-right: 0;
    }
    .main-content>.col4,
    .main-content>.col8 {
        width: 100%;
        box-sizing: border-box;
        padding: 0;
        float: none;
        clear: both;
    }
    .col4.widget-area {
        padding-top: 2em;
    }
    footer .col3 {
        width: 47.89%;
        margin-bottom: 2em;
    }
    footer .col3:nth-child(2n) {
        margin-right: 0;
    }
    footer .footer-content:before {
        display: none;
    }
    footer .footer-content h5 {
        border-bottom: 1px solid #c1c1c1;
    }
    footer .menu-hsd {
        column-count: 1;
    }
    .col_logo {
        width: 30%;
        margin: 0;
    }
    #main-header .col10 {
        width: 70%;
        margin: 0;
    }
}
@media screen and (max-width: 575px) {
    .col_logo {
        width: 40%;
    }
    #main-header .col10 {
        width: 60%;
    }
    .school_details>.school_people,
    .school_details>.school_contact {
        -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        margin-bottom: 0.2em;
    }
    .school_details .school_map,
    .school_details .school_thumbnail {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }
    h4.school_name {
        border: none;
        padding-top: 1em;
    }
    h4.school_name {
        font-size: 4em;
        text-align: center;
    }
    h4.school_name .school_subtitle {
        display: block;
        padding: 0;
        line-height: 1.4;
    }
    h4.school_name a {
        display: block;
        font-size: 0.7em;
        text-transform: uppercase;
        padding: 0.3em 0.5em;
        margin: 0.5em 0 0;
        background-color: #0061aa;
        color: white;
        float: none;
    }
    h3.school_category {
        text-align: center;
    }
    #body .main-content {
        padding: 2em 2em;
    }
    .home_feature_buttons {
        margin: -2em -2em 3em;
    }
    .col12 .gallery a {
        -webkit-flex-basis: 32%;
        -ms-flex-preferred-size: 32%;
        flex-basis: 32%;
    }
    .col12 .gallery a:nth-child(3n) {
        margin-right: 0;
    }
}
@media screen and (max-width: 490px) {
    .child-pages li {
        width: 100%;
        box-sizing: border-box;
    }
    .search-form .search-field {
        width: 160px;
    }
    .gallery a {
        -webkit-flex-basis: 32%;
        -ms-flex-preferred-size: 32%;
        flex-basis: 32%;
    }
    .gallery a:nth-child(4n) {
        margin-right: 2%;
    }
    .gallery a:nth-child(3n) {
        margin-right: 0;
    }
    footer .col3 {
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 2em;
        float: none;
        margin-right: 0;
    }
    .resource_list li {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        margin: 0 0 0.7em 0;
    }
    footer {
        font-size: 1.2em;
    }
}
@media screen and (max-width: 370px) {
    .col_logo {
        width: 50%;
    }
    #main-header .col10 {
        width: 50%;
    }
    .school_details .school_phone,
    .school_details .school_fax,
    .school_details .school_email,
    .school_details .school_twitter {
        font-size: 0.9em;
    }
    .search-form .search-field {
        width: 130px;
    }
}
.sticky {
    position: -webkit-sticky;
    position: -moz-sticky;
    position: -o-sticky;
    position: -ms-sticky;
    position: sticky;
    top: -3px;
    z-index: 1000;
}

/* Juicer Styles */
.juicer-feed p {
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
}
.juicer-feed .j-filters.filters {
	display: none;
}

/* timeline express plugin style overrides  */
h2.cd-timeline-item-title {
    font-size: 22px;
    font-weight:  bold;
}

section#cd-timeline p {
    font-size: 15px;
    line-height: 1.2;
}

a.timeline-express-read-more-link {
    font-size: 14px;
}

.timeline-date {
    font-size: 13px;
}

/* No Title Template */
.page-template-page-no_title  .breadcrumbs {
    margin-bottom: 0;
}
.page-template-page-no_title .tablepress td, .page-template-page-no_title .tablepress th {
    padding: 6px 8px;
}

/* Accessibility */
:focus, button.slick-next.slick-arrow:focus-within, button.slick-prev.slick-arrow:focus-within, a.lwp_carousel_featured_image:focus-within {
  outline: solid 2px #8300e9;
}
#featured_content article.slideshow .f-slide {
	position: relative;
}
#featured_content article.slideshow  .f-slide .feature-text a {
	height: unset;
	text-decoration-color: #fff;
}

.f-slideshow.slick-slider {
	margin-bottom: 0;
}
.f-slideshow .slick-list, .f-slideshow .slick-track, .f-slideshow .slick-slide > div {
	height: 100%;
}
.f-slideshow .slick-prev {
	left: 25px;
	z-index: 1;
}
.f-slideshow .slick-next {
	right: 25px;
}
.f-slideshow .slick-prev .slick-prev-icon, .f-slideshow .slick-next .slick-next-icon {
	color: #fff;
}
.f-slideshow .slick-dots {
	bottom: 6px;
}
.f-slideshow .slick-dots li button .slick-dot-icon, .f-slideshow .slick-dots li.slick-active button .slick-dot-icon {
	color: #fff;
}
.f-slideshow .slick-next:focus .slick-next-icon, .f-slideshow .slick-next:focus .slick-prev-icon, .f-slideshow .slick-prev:focus .slick-next-icon, .f-slideshow .slick-prev:focus .slick-prev-icon, .f-slideshow .slick-dots li.slick-active button:focus .slick-dot-icon, .f-slideshow .slick-dots li button:focus .slick-dot-icon::before {
	color: #fff;
}
.f-slideshow-arrow {
	position: absolute;
	top: 0;
	height: 100%;
	z-index: 999;
	color: white;
	display: flex;
	align-items: center;
	background-color: transparent;
	padding: .25em;
	font-size: 60px
}
#f-slideshow-prev {
	left: 0;
}
#f-slideshow-next {
	right: 0;
}