html {
    scroll-behavior: smooth;
}

body {
    font-family: "Montserrat", sans-serif;
    margin: 0 !important;
    overflow-x: hidden !important;
}

h1,
h2,
h3 {
    letter-spacing: .22rem;
    color: black;
}

h1,
h2,
h3,
h4 {
    color: black;
}

:root {
    --bs-link-color: rgb(30, 115, 190);
    --light-gray-color: rgb(154, 154, 154);
    --shiny-gray-color: rgb(222, 222, 222);
    --general-yellow: rgb(248, 201, 32);
}

a {
    color: var(--bs-link-color);
    text-decoration: none;
}

ol {
    counter-reset: list !important;
    list-style-type: none;
}

ol li {
    counter-increment: list !important;
    position: relative;
    padding-left: 40px;
    margin-bottom: 12px;
}

ol li:before {
    display: inline-block;
    margin-right: 10px;
    content: counter(list) !important;
    position: relative;
    left: 0;
    width: 27px !important;
    height: 27px;
    background-color: var(--light-gray-color) !important;
    color: white;
    text-align: center;
    line-height: 27px;
    border-radius: 50% !important;
    font-weight: normal !important;
}

.gt_switcher_wrapper {
    top: 60px !important;
}

.glink {
    margin:0 3px;
}

/* home images */
.carousel-img figure img {
	width:300px !important;
	height: 300px !important;
}

.reveal-text,
.reveal-text-v2,
.reveal-text:after,
.reveal-text-v2::after {
	animation-delay: 0.5s;
	animation-iteration-count: 1;
	animation-duration: 1s;
	animation-fill-mode: both;
	animation-timing-function: cubic-bezier(0.0, 0.0, 0.2, 1);
}

.reveal-text,
.reveal-text-v2 {
	display: block;
	animation-name: reveal-text;
    width: fit-content;
    position: absolute;
}

.reveal-text:after,
.reveal-text-v2:after {
    content: "";
    position: absolute;
    z-index: 999;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--general-yellow);
    transform: scaleX(0);
    transform-origin: 0 50%;
    pointer-events: none;
    animation-name: revealer-text;
}

.reveal-text-v2 {
    position: relative;
    margin: auto;
}

@keyframes reveal-text {
	from {
		clip-path: inset(0 100% 0 0);
	}
	to {
		clip-path: inset(0 0 0 0);
	}
}

@keyframes revealer-text {
	
	0%, 50% {
		transform-origin: 0 50%;
	}
	
	60%, 100% {
		transform-origin: 100% 50%;		
	}

	50% {
		transform: scaleX(1);
	}
	
	60% {
		transform: scaleX(1);
	}
	
	100% {
		transform: scaleX(0);
	}
}

.reserve-button a {
    background-color: var(--general-yellow) !important;
    border: none;
    width: 200px;
    color: white !important;
}

.reserve-button a:hover {
    background-color: var(--shiny-gray-color) !important;
    border-color: var(--light-gray-color) !important;
    color: black !important;
}

/* Main body */
.main-page-container,
.main-post-container {
    max-width: 1350px;
    margin: auto;
    min-height: calc(100vh - 336px);
}

.main-post-container {
    margin-top: 64px;
    margin-bottom: 64px;
}

.page_title_wrapper,
.page_title_wrapper_post {
    background-size: cover;
    height: 300px;
    margin-top: 80px;
    display: flex;
    justify-content: start;
    align-items: center;
    background-position: center center;
    background-repeat: no-repeat;
    padding-left: 50px;
}

.page_title_wrapper_post {
    background-image: url('../images/post-banner.png');
}

.page-title-new {
    color: white;
    text-shadow: 1px 1px 0 gray;
    letter-spacing: .5rem;
}

/* Accordion in page "Health and Dental" */
.accordion-section-dental a span {
    font-size: 1rem;
    letter-spacing: normal;
}

/* Change event calendar button color */
.tribe-common-c-btn {
    background-color: #FFC729 !important;
}

/* Change the menu third level background color */
.different_back_sub_menu {
    background-color: #ffce34 !important;
}

/* Center menu items in mobile version */
.quadmenu-item-content {
    max-width: 400px !important;
    margin: auto !important;
}

.accordion-section {
    font-size: .8rem;
}

.staff-table thead tr th {
    background-color: rgb(243, 243, 243);
}

.staff-table thead tr th,
.staff-table tbody tr td {
    text-align: center;
}

/* CSU Posters */
.poster-table {
    padding: 0 10px;
}

.poster-table .ult_pricing_table .ult_pricing_heading {
    min-height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ult_pricing_heading {
    padding: 10px;
}

/* Footer */

footer {
    background-color: black;
    color: white;
    padding: 50px;
}

.footer_subtitle a {
    color: white;
    text-decoration: none;
}

.footer_wrapper {
    display: flex;
    justify-content: center;
}

.footer_subtitle,
.footer_title {
    width: fit-content;
    margin: auto;
}

.footer_title {
    text-transform: uppercase;
    margin-bottom: 10px;
    font-weight: bold;
}

.footer_subtitle {
    font-weight: lighter;
}

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

.footer_subtitle img {
    width: 16px;
    margin-right: 5px;
}

.footer_subtitle a div {
    height: 16px;
    margin: 5px auto;
    width: 102px;
}

.all-rights {
    width: fit-content;
    margin: auto;
    font-size: .7rem;
    margin-top: 30px;
}

/* page 404 */
.body_404 {
    height: calc(100vh - 290px);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.body_404 div img {
    width: 300px;
    margin-bottom: 30px;
}

/* CSS for CSU Spaces pages */
.spaces-box {
    padding: 0 10px;
}

.spaces-txtbox {
    padding: 20px;
    min-height: 67px;
}

.location-table {
    padding: 0 10px;
    min-height: 360px;
}

.ays-pb-modal hr {
    display: none !important;
}

.popup-reserve-container {
    display: flex;
    flex-direction: column;
    align-content: center;
    flex-wrap: wrap;
}

.popup-reserve-wrapper {
    width: 50% !important;
}

.popup-reserve-title {
    letter-spacing: 0;
}

.popup-reserve-button {
    display: flex;
    border: solid;
    border-color: black;
    border-width: 1px;
    margin: 0 18px;
    color: black;
    height: 40px;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}

.reserve-btn-cont {
    display: flex;
    justify-content: center;
}

/* POPUP reservation */
.popup-reserve-wrapper {
    width: 50% !important;
}

.popup-reserve-title {
    letter-spacing: 0;
}

.popup-reserve-button {
    display: flex;
    border: solid;
    border-color: black;
    border-width: 1px;
    margin: 0 18px;
    color: black;
    height: 40px;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}

/* *** CSU Spaces pages - End *** */

/* Call to action section-Reggie Page and Hive Café Page */
.reggie-btn .ubtn-text:after {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="white"><path d="M2 10h4v12H2zM23 11c0-1.1-.9-2-2-2h-6.6l.8-4c0-.4-.1-.8-.4-1.1L13.2 2l-5 5.5c-.5.5-.8 1.2-.8 1.9V18c0 1.1.9 2 2 2h9c.7 0 1.4-.4 1.7-1l2.7-7.2c.1-.2.2-.5.2-.8V11z"/></svg>');
    background-size: cover;
    margin-left: 10px;
    position: relative;
    top: 3px;
}

.hive-btn .ubtn-text:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--> <path fill="white" d="M416 0C400 0 288 32 288 176l0 112c0 35.3 28.7 64 64 64l32 0 0 128c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128 0-112 0-208c0-17.7-14.3-32-32-32zM64 16C64 7.8 57.9 1 49.7 .1S34.2 4.6 32.4 12.5L2.1 148.8C.7 155.1 0 161.5 0 167.9c0 45.9 35.1 83.6 80 87.7L80 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-224.4c44.9-4.1 80-41.8 80-87.7c0-6.4-.7-12.8-2.1-19.1L191.6 12.5c-1.8-8-9.3-13.3-17.4-12.4S160 7.8 160 16l0 134.2c0 5.4-4.4 9.8-9.8 9.8c-5.1 0-9.3-3.9-9.8-9L127.9 14.6C127.2 6.3 120.3 0 112 0s-15.2 6.3-15.9 14.6L83.7 151c-.5 5.1-4.7 9-9.8 9c-5.4 0-9.8-4.4-9.8-9.8L64 16zm48.3 152l-.3 0-.3 0 .3-.7 .3 .7z"/> <path fill="white" d="M416 0C400 0 288 32 288 176l0 112c0 35.3 28.7 64 64 64l32 0 0 128c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128 0-112 0-208c0-17.7-14.3-32-32-32zM64 16C64 7.8 57.9 1 49.7 .1S34.2 4.6 32.4 12.5L2.1 148.8C.7 155.1 0 161.5 0 167.9c0 45.9 35.1 83.6 80 87.7L80 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-224.4c44.9-4.1 80-41.8 80-87.7c0-6.4-.7-12.8-2.1-19.1L191.6 12.5c-1.8-8-9.3-13.3-17.4-12.4S160 7.8 160 16l0 134.2c0 5.4-4.4 9.8-9.8 9.8c-5.1 0-9.3-3.9-9.8-9L127.9 14.6C127.2 6.3 120.3 0 112 0s-15.2 6.3-15.9 14.6L83.7 151c-.5 5.1-4.7 9-9.8 9c-5.4 0-9.8-4.4-9.8-9.8L64 16zm48.3 152l-.3 0-.3 0 .3-.7 .3 .7z"/></svg>');
    background-size: cover;
    margin-left: 10px;
    position: relative;
    top: 3px;
}

.wood-btn .ubtn-text:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path fill="white" d="M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48L48 64zM0 176L0 384c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-208L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z"/></svg>');
    background-size: cover;
    margin-left: 10px;
    position: relative;
    top: 3px;
}

.bursaries-btn .ubtn-text:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path fill="white" d="M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM244.7 395.3l-112-112c-4.6-4.6-5.9-11.5-3.5-17.4s8.3-9.9 14.8-9.9l64 0 0-96c0-17.7 14.3-32 32-32l32 0c17.7 0 32 14.3 32 32l0 96 64 0c6.5 0 12.3 3.9 14.8 9.9s1.1 12.9-3.5 17.4l-112 112c-6.2 6.2-16.4 6.2-22.6 0z"/></svg>');
    background-size: cover;
    margin-left: 10px;
    position: relative;
    top: 3px;
}

.bursaries-btn:hover .ubtn-text:after {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM244.7 395.3l-112-112c-4.6-4.6-5.9-11.5-3.5-17.4s8.3-9.9 14.8-9.9l64 0 0-96c0-17.7 14.3-32 32-32l32 0c17.7 0 32 14.3 32 32l0 96 64 0c6.5 0 12.3 3.9 14.8 9.9s1.1 12.9-3.5 17.4l-112 112c-6.2 6.2-16.4 6.2-22.6 0z"/></svg>');
}

.wood-btn:hover .ubtn-text:after {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48L48 64zM0 176L0 384c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-208L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z"/></svg>');
}

.hive-btn:hover .ubtn-text:after {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M416 0C400 0 288 32 288 176l0 112c0 35.3 28.7 64 64 64l32 0 0 128c0 17.7 14.3 32 32 32s32-14.3 32-32l0-128 0-112 0-208c0-17.7-14.3-32-32-32zM64 16C64 7.8 57.9 1 49.7 .1S34.2 4.6 32.4 12.5L2.1 148.8C.7 155.1 0 161.5 0 167.9c0 45.9 35.1 83.6 80 87.7L80 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-224.4c44.9-4.1 80-41.8 80-87.7c0-6.4-.7-12.8-2.1-19.1L191.6 12.5c-1.8-8-9.3-13.3-17.4-12.4S160 7.8 160 16l0 134.2c0 5.4-4.4 9.8-9.8 9.8c-5.1 0-9.3-3.9-9.8-9L127.9 14.6C127.2 6.3 120.3 0 112 0s-15.2 6.3-15.9 14.6L83.7 151c-.5 5.1-4.7 9-9.8 9c-5.4 0-9.8-4.4-9.8-9.8L64 16zm48.3 152l-.3 0-.3 0 .3-.7 .3 .7z"/></svg>');
}

.reggie-btn:hover .ubtn-text:after {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%234867AA"><path d="M2 10h4v12H2zM23 11c0-1.1-.9-2-2-2h-6.6l.8-4c0-.4-.1-.8-.4-1.1L13.2 2l-5 5.5c-.5.5-.8 1.2-.8 1.9V18c0 1.1.9 2 2 2h9c.7 0 1.4-.4 1.7-1l2.7-7.2c.1-.2.2-.5.2-.8V11z"/></svg>');
}

.reggie-bar-txt {
    margin-top: 26px;
}

.reggie-bar-txt .wpb_wrapper h4,
.wood-txt .wpb_wrapper h4 {
    color: white;
}

/* "Student Groups and Associations" Page  */
.header-student {
    color: white;
    padding: 10px 20px;
}

/* For new advocacy pages March 2025 */
.advocacy-image-caption .wpb_wrapper h5 {
    background-color: #A0013B;
    color: white;
    padding: 0 10px;
    min-height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.foot_map iframe {
    height: 400px;
    width: 100%;
}

.advocacy-section:hover .advocacy-section-img {
    transform: scale(1.2);
}

.advocacy-section,
.accordion-section-end {
    overflow: hidden;
}

.accordion-section-end {
    max-width: 250px;
}

.advocacy-section-img {
    transition: transform 0.8s ease-in-out;
    margin-bottom: 0 !important;
}

.advocacy-wrapper {
    max-width: 1300px;
    margin-left: auto !important;
    margin-right: auto !important;
}

.advocacy-title div h1 {
    font-size: 3rem;
    color: #A2253F;
}

.advocacy-title div h3 {
    color: #A2253F;
    padding-bottom: 0;
}

#delayed-button-1 {
    animation-delay: 0ms !important;
}

#delayed-button-2 {
    animation-delay: 300ms !important;
}

#delayed-button-3 {
    animation-delay: 600ms !important;
}

#delayed-button-4 {
    animation-delay: 900ms !important;
}

.advocacy-btn-container .vc_column-inner .wpb_wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.advocacy-btn {
    min-width: 166px;
    display: flex;
    justify-content: center;
}

.advocacy-btn a {
    width: 166px;
    background-color: rgb(162, 37, 63) !important;
    color: white !important;
    transition: 800ms;
}

.advocacy-btn a:hover {
    border-width: 1px !important;
    border-color: rgb(162, 37, 63) !important;
    background-color: white !important;
    color: rgb(162, 37, 63) !important;
}

.accordion-section-who-we div p a span {
    font-weight: bold;
}

/* For Campaign */
.creative-link-campaign {
    margin: 0 !important;
}

/* Job */
.apply-job-btn input {
    padding: 10px 40px;
    margin-top: 20px;
    transition: 500ms;
    background-color: var(--general-yellow);
    border: none;
    border-radius: 7px;
}

.apply-job-btn input:hover {
    background-color: black;
    color: white;
}

.campaign-img-wrapper {
    display: flex;
    flex-direction: column;
    width: 200px;
    margin: auto;
}

.job-message {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin-top: 10px;
}

.job_filters {
    display:none;
}

.job_listings {
    border-top: none !important;
}

.single-job {
    display: flex;
    justify-content: center;
    text-align: center;
    margin-bottom: 30px;
}

.job-title {
    margin-bottom: 10px;
}

.company {
    color: gray;
    margin-top: 20px;
}

.expiry, .job-type {
    color: black;
}

.job_listings .single-job a {
    transition: 0.4s;
}

.job_listings .single-job a:hover {
    transform: scale(1.05);
}

/* Contact page */
.contact-btn {
    display: flex !important;
    justify-content: center;
}

.contact-btn a {
    width: 156px;
    text-align: center !important;
    display: flex !important;
    justify-content: center;
    padding-left: 30px !important;
}

#social-media-x .fa-times::before {
    content: "" !important;
    width: 12px !important;
    height: 12px !important;
    background-image: url("../images/twitter-new.png");
    display: block;
    background-size: cover;
}

.news-wrapper {
    padding: 0 !important;
}

.ticker-news span {
    background-color: black !important;
}

.social-media-contact {
    transition:1000ms;
}

.social-media-contact:hover {
    transform: scale(1.1);
}

.accordion-spaces h4 .vc_tta-title-text {
    font-size: 1rem;
    font-weight: bold;
    color: black !important;
}

/*Yellow line under title of pages modification*/

.center {
    margin-top: -15px;
}

.accordion-campaigne-about .vc_tta-title-text {
    font-size: 1rem !important;
}

/* ===========   MEDIA QUERY  ===========  */

@media only screen and (max-width:1400px) {
    .main-page-container {
        padding: 0 40px;
    }
}

@media only screen and (max-width:1165px) {
    .different_back_sub_menu {
        background-color: white !important;
    }
}


@media only screen and (max-width:930px) {
    .ult_pricing_heading .ult-responsive {
        font-size: .9rem;
    }
}

@media only screen and (max-width:767px) {
    .spaces-image img {
        width: 1000px;
    }
}