/*
Theme Name: BWCET Sign In
Description: A Wordpress theme made for the Bishop Wilkinson Catholic Education Trust
Version:: 1.0
Author: Mr S Errington
*/

:root {
    --text-primary: #2E2E2D;
    --bg-primary: #4B667A;
    --accent-primary: #141D3E;
}

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;500;700&family=Vollkorn:wght@400;500;700&display=swap');

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}
@media screen and (max-width:1366px) {
    html {
        font-size: 40%;
    }
}

body {
    font-family: 'Montserrat', Helvetica, sans-serif;
    font-weight: 300;
    color: var(--text-primary);
    font-size: 1.6rem;
    line-height: 1.6;
    overflow-y: hidden;
    overflow-x: hidden;
    min-width: 360px;
}

h1 {
    font-family: 'Montserrat', Helvetica, sans-serif;
    font-weight: 500;
    font-size: 6.4rem;
    color: var(--accent-primary);
}
h2 {
    font-family: 'Montserrat', Helvetica, sans-serif;
    font-weight: 500;
}
h3 {
    font-family: 'Montserrat', Helvetica, sans-serif;
    font-weight: 500;
}




.container {
    width: 85%;
    margin: 0 auto;
    position: relative;
}


.header {
    width: 100%;
    height: 12vh;
    display: flex;
    align-items: center;
}
.header .container {
    height: 90%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header .logo {
    height: 100%;
    display: flex;
    align-items: center;
    gap: 2rem;
}
.header .logo a {
    text-decoration: none;
    color: var(--text-primary);
}
.siteName {
    font-size: 3.2rem;
    font-weight: 500;
    line-height: 1.2;
    white-space: nowrap;
}
.siteDescription {
    font-size: 2rem;
    font-weight: 300;
    line-height: 1.2;
}




.header .logo img {
    height: 100%;
}

.sectionBar {
    height: 5vh;
    background-color: var(--accent-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}
.sectionMain {
    height:75vh;
    background-color: var(--bg-primary);
}





.sectionMain .container {
    height: 100%;
    display: flex;
    align-items: center;
}
.letterGrid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(9, 1fr);
    align-items: center;
    justify-content: center;
    gap: 2rem;
}
.letterGrid a {
    text-decoration: none;
    color: var(--text-primary);
}
.letter {
    cursor: pointer;
    border: 0;
    border-radius: 2rem;;
    background-color: var(--bg-primary);
    box-shadow: 0px 0px 9px var(--accent-primary);


    color: #fff;
    display: inline-block;
    aspect-ratio: 1;
    font-size: 4.8rem;
    font-weight: 500;

    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999 !important;
}



.nameReturn {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    align-items: center;
    justify-content: center;
}
.name {
    cursor: pointer;
    border: 0;
    border-radius: 2rem;;
    background-color: var(--bg-primary);
    box-shadow: 0px 0px 9px var(--accent-primary);
    

    color: #fff;
    display: inline-block;
    aspect-ratio: 4 / 1;
    font-size: 3.6rem;
    font-weight: 500;

    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999 !important;
}
.signinReturn {
    text-align: center;
    font-size: 3.6rem;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
}
.signOut {
    gap: 2rem;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.signOut button {
    width: 50%;
    aspect-ratio: auto;
}
.signOut h2 {
    color: #fff;
}













.shape {
    position: absolute;
    background-color: var(--accent-primary);
    z-index: 10 !important;
}
.shape__left {
    top: -50px;
    left: -150px;
    height: 500px;
    width: 200px;
    transform: rotate(16.5deg);
}
.shape__right {
    bottom: -50px;
    right: -150px;
    height: 500px;
    width: 200px;
    transform: rotate(16.5deg);
}





.stavis {
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 5rem;
    width: 100%;
    height: 80%;
}
.stavis i {
    margin-bottom: 2rem;
}
.stavisHead {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
    width: 75%;
    height: 80%;
}
.stavisHead h2 {
    font-size: 3.6rem;
    color: #fff;
}


.stavisHead .btns {
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    width: 100%;
    height: 80%;
}

.stavis button,
.stavisHead button {
    aspect-ratio: auto;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.homeIcon {
    color: #fff;
    background-color: var(--accent-primary);
    position: absolute;
    padding: .5rem;
    border-bottom-left-radius: .5rem;
    border-bottom-right-radius: .5rem;
    width: 350px;
    text-align: center;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 0;
    cursor: pointer;
    z-index: 99999;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    text-decoration: none;
}
#time {
    width: 10px;
}




#visitor {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    font-size: 2.4rem;
    font-weight: 700;
    color: #fff;
}
#visitor input {
    padding: 2rem 1rem;
    font-size: 2.4rem;
    background-color: #3e5465;
    border: none;
    color: #fff;
}
#visitor input:focus {
    outline: none;
    background-color: #314350;
}
#visitor button {
    background-color: var(--accent-primary);
    font-size: 2.4rem;
    color: #fff;
    padding: 2rem 1rem;
    font-weight: 700;
    border: 0;
    cursor: pointer;
}



































.headNav {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 900;
}


.topBar {
    padding: 0 1rem;
    height: 3.5rem;
    background-color: var(--bg-primary);
    display: flex;
    align-items: center;
    justify-content: flex-end;
    column-gap: 1rem;
    font-size: 1.2rem;
    font-weight: 500;
}
.topBar i {
    font-size: 1.6rem;
}
.topBar a {
    text-decoration: none;
    color: var(--text-secondary);
    transition: all .3s ease;
}
.topBar a:hover {
    color: #3f3f3e;
}
.socials {
    height: 100%;
    border-left: 1px solid var(--text-primary);
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0 1rem;
}


.navigationBar {
    padding: 0 2rem;
    height: 12rem;
    background-color: #fff;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.navigationBar .fa-search {
    margin-left: 1.5rem;
    cursor: pointer;
}
.navigationBar__logo {
    height: 85%;
    overflow: hidden;
    display: flex;
    align-items: center;
    text-decoration: none;
    color: var(--text-primary);
}
.navigationBar__logo img {
    height: 100%;
}
.navigationBar .siteName {
    font-size: 3.2rem;
    font-weight: 500;
    line-height: 1.2;
}
.navigationBar .siteDescription {
    font-size: 1.4rem;
    font-weight: 300;
    line-height: 1.2;
}
.navigationBar__content {
    height: 100%;
    display: flex;
    align-items: center;
    font-weight: 300;
}
nav .menu-main-menu-container {
    height: 100%;
    display: flex;
    align-items: center;
}
nav .menu-main-menu-container ul {
    height: 100%;
    display: flex;
    align-items: center;
    list-style-type: none;
}
nav .menu-main-menu-container ul .current-menu-item a {
    font-weight: 500 !important;
}
nav .menu-main-menu-container ul li {
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 1.5rem;
    text-align: center;
    position: relative;
    border-bottom: 2px solid var(--text-secondary);
}
nav .menu-main-menu-container ul li ul li {
    border-bottom: none;
}
nav .menu-main-menu-container ul li:hover {
    background-color: #f2f2f2;
    border-bottom: 2px solid var(--bg-primary);
}
nav .menu-main-menu-container ul li ul li:hover {
    border-bottom: none;
}
.current-menu-item {
    border-bottom: 2px solid var(--bg-primary) !important;
}
nav .menu-main-menu-container ul li ul .current-menu-item {
    border-bottom: none !important;
}
.current-menu-parent a {
    font-weight: 500 !important;
}
.current-menu-parent ul li a {
    font-weight: 300 !important;
}
.current-menu-parent {
    border-bottom: 2px solid var(--bg-primary) !important;
}
.mobMenu .current-menu-item {
    border-bottom: none !important;
}
.mobMenu .current-menu-parent {
    border-bottom: none !important;
}
nav .menu-main-menu-container ul li a {
    font-weight: 300;
    font-size: 1.4rem;
    text-decoration: none;
    color: var(--text-primary);
    width: auto;
}
@media screen and (max-width:1100px) {
    nav .menu-main-menu-container ul li a {
        max-width: 100px;
    }
}
nav .menu-main-menu-container ul li:hover .sub-menu {
    display: block;
    transition: all .3s ease;
}
nav .menu-main-menu-container ul li .sub-menu {
    min-width: 100%;
    width: max-content;
    height: min-content;
    position: absolute;
    top: 12rem;
    left: 0;
    z-index: 9999;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background-color: #fff;

    box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
    display: none;
}
nav .menu-main-menu-container ul li .sub-menu li {
    padding: 1rem 2rem;
    width: 100%;
    border-top: 1px solid #eeeeee;
}
nav .menu-main-menu-container ul li .sub-menu li a:hover {
    color: var(--bg-primary);
}







.mobMenu {
    background-color: #fff;
    height: 100%;
    width: 250px;
    position: fixed;
    top: 0;
    right: -300px;
    z-index: 99999;
    transition: all .3s ease;
    padding: 2rem;

    display: flex;
    flex-direction: column;
}
.nav-active {
    right: 0 !important;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
}
.nav-active .menu-main-menu-container ul {
    list-style: none !important;
}
.nav-active .menu-main-menu-container ul li a {
    text-decoration: none;
    color: var(--text-primary);
    font-weight: 700;
}
.nav-active .menu-main-menu-container ul li .mob-active {
    display: block;
}
.nav-active .menu-main-menu-container ul li {
    padding: 1rem 0;
}
.nav-active .menu-main-menu-container ul li ul li {
    border-bottom: 1px solid #eeeeee;
    padding: .5rem 0 .5rem 2rem;
}
.nav-active .menu-main-menu-container ul li ul li a {
    font-weight: 500;
}
.nav-active .menu-main-menu-container ul li ul {
    margin-top: 1rem;
    display: none;
}
.nav-active .menu-main-menu-container ul li a i {
    display: none;
}
.burgerClose {
    align-self: flex-end;
    cursor: pointer;
}
.burger div {
    width: 25px;
    height: 2px;
    background-color: var(--text-primary);
    margin: 5px;
}
.burger {
    display: none;
    margin-left: 40px;
    cursor: pointer;
}

@media screen and (max-width:1024px) {
    .burger {
        display: block;
    }
    nav .menu-main-menu-container .menu {
        display: none;
    }
}












.floatTime {
    position: absolute;
    bottom: 0;
    right: 0;
    color: #fff;
}






/* STYLES TO WIPE WITH NEW BROWSER */
.stavis button {
    margin: auto auto !important;
    padding: 100px;
    width: 250px;
}
.letterGrid button {
    margin: auto auto !important;
    padding: 30px;
    margin: 5px !important;
}
.letterGrid button p {
    margin: 0 auto !important;
}
.nameReturn button {
    margin: auto auto !important;
    padding: 30px;
    margin: 5px !important;
    text-align: center !important;

    display: flex;
    align-items: center;
    justify-content: center;
}
.nameReturn button p {
    margin: 0 auto !important;
}
.signOut button {
    margin: auto auto !important;
    margin: 5px !important;
    text-align: center !important;
}
.signOut button p {
    margin: 0 auto !important;
}
.btns button {
    margin: auto auto !important;
    padding: 100px;
    width: 250px;
    white-space: nowrap;
}
#visitor button {
    margin-top: 10px;
}


























#calAng {
    position: absolute;
    top: -40px;
    left: -60px;
    width: 100px;
    height: 300px;
    background-color: #DDB349;
    transform: rotate(16.5deg);
}
#calPage {
    position: relative;
    height: 100vh;
    width: 100vw;
    background-color: #4B667A;

    display: grid;
    grid-template-columns: 3fr 1fr;
}
#calPage * {
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box;
}
#calPage h2 {
    color: #fff;
    font-size: 3.6rem !important;
    margin-bottom: 1rem !important;
}



#calShort {
    padding: 2rem !important;
    width: 100%;
    height: 100%;

}
#calShort h3, #calShort h4 {
    display: none !important;
}
#calShort dt {
    background-color: #fff;
    padding: 2rem 2rem 0 2rem !important;
}
#calShort dd {
    padding: 0 2rem 2rem 2rem !important;
    background-color: #fff;
    margin-bottom: 2rem !important;
}
#calShort .organizer_email {
    background: none !important;
    font-size: 1.2rem;
}


#calShort .end_time {
    font-size: 1.6rem !important;
}
#calShort .end_time {
    font-weight: 700 !important;
}
#calShort .title, #calShort .location {
    font-size: 1.6rem;
}
#calShort .title::before {
    content: 'Name: ';
}
#calShort .location::before {
    content: 'Room: ';
}







#calMain {
    padding: 2rem 2rem 2rem 10rem !important;
    flex-direction: column;
    justify-content: space-between;
}
#calContent {
    padding-top: 4rem !important;
    width: 100%;
    height: 77vh;
    color: #fff;


}


#calContent .calIntro {
    font-size: 2.4rem;
    font-weight: 500;
    padding-bottom: 2rem !important;
    padding-top: 1rem !important;
}
#calColumn p {
    font-size: 2rem;
    margin-bottom: 2rem;
    text-align: justify;
}

#calColumn img {
    width: 310px;
    float: left;

    margin-right: 40px;
    margin-bottom: 10px;

    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}


#calColumn .calText p {
    font-size: 2rem;
    margin-bottom: 1rem !important;
}
#calColumn .calText p span {
    font-weight: 700;
}



#calColumn .calText .ceoDetails {
    margin-top: 3rem !important;

}
#calColumn .ceoDetails span {
    font-size: 2rem;
    font-weight: 700;
}
#calColumn .ceoDetails p {
    margin-bottom: 0 !important;
    font-size: 1.2rem !important;
}























#evWrap {
    padding: 5rem;
    background-color: #4B667A;
    width: 100vw;
    height: 100vh;
    
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 5rem;

    font-size: 1.6rem !important;
}
.evWrapInner dl {
    display: grid;
    grid-template-columns: 150px 4fr;
    row-gap: 1rem
}
.evWrapInner .descloc {
    display: flex !important;
    justify-content: space-between;
}
.evWrapInner .title {
    display: block;
    font-size: 2.4rem !important;
    height: 40px !important;
    overflow: hidden !important;
}






#evWrap dt,
#evWrap dd {
    
}
#evWrap  dt {
    padding: 1rem;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: #DDB349;
    
    font-size: 2.4rem !important;
    font-weight: 400 !important;
}
#evWrap  dt span {
    display: none !important;
}
#evWrap dd {
    padding: 1rem;
    background-color: #fff;
}




#evWrap .ics-calendar-label,
#evWrap .ics-calendar-date {
    display: none !important;
}



