/*
 Theme Name:   VPSA (GeneratePress Child)
 Theme URI:    https://generatepress.com
 Description:  GeneratePress child for the VPSA
 Author:       Steve Garten / Shaun Geisert
 Template:     generatepress
 Version:      0.1
*/

/* Add Poppins font */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');


/* ==========================================================================
   CSU Web Guidelines
   https://brand.colostate.edu/web-guidelines/
   ========================================================================== */


/* Global Font Sizes */
html {
  font-size: 16px;
}
@media screen and (min-width: 320px) {
	html {
		font-size: calc(16px + 6 * ((100vw - 320px) / 680));
	}
}
@media screen and (min-width: 1000px) {
	html {
		font-size: 22px;
	}
}
body {
	/*font-size: calc(14px + 0.25vw);*/
    font-size: 16px;
    font-weight: 300;
    line-height: 1.8em;
    line-height: 2em;
}


/* ==========================================================================
   Theme Tweaks - Header
   ========================================================================== */
#masthead .inside-header {
	padding-top: 10px;
	padding-bottom: 10px;
}

#site-navigation #primary-menu ul.sub-menu {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.3);
	width: 300px;
}

#site-navigation #primary-menu ul.sub-menu li i {
	color: #999;
}

#responsiveLogoSubsytem a {
	font-weight: 400; 
}

/* ==========================================================================
   Menu Tweaks
   ========================================================================== */

.elementor-widget-nav-menu .elementor-nav-menu--layout-horizontal .elementor-nav-menu>li:not(:last-child) a,
.elementor-widget-nav-menu .elementor-nav-menu--layout-horizontal .elementor-nav-menu>li:not(:first-child) a {
    -webkit-margin-start: 0em;
    -webkit-margin-end: 0em;
    -webkit-margin-before:0em;
    -webkit-margin-after:0em;
	margin-inline-start: 0em;
    margin-inline-end: 0em;
}

.elementor-259 .elementor-element.elementor-element-21a9bf5 .elementor-menu-toggle {
    margin-right: auto;
}

.elementor-location-header nav ul li a {
	font-size:18px;
	font-weight:700;
	text-transform:uppercase;
	border-right: 1px solid #0B3A1D;
	padding-left: 30px !important;
	padding-right: 30px !important;
}

/* ==========================================================================
   Theme Tweaks - Body
   ========================================================================== */
#content .elementor-container {
	font-family: "Poppins", sans-serif;
}*/

#content .elementor-text-editor a, #content .elementor a, #content .inside-article a {
	text-decoration: underline;
}

#content .uael-post__title a, 
#content .elementor-icon-list-item a, 
#content .elementor-icon-box-title a, 
#content a.elementor-button-link, 
#content .uael-posts a.elementor-button, 
.search nav .menu-item *, 
#content .elementor-accordion a.elementor-accordion-title,
#content .elementor-toggle a.elementor-toggle-title,
#content .elementor-post-navigation .elementor-post-navigation__link a,
#content .elementor-cta__title,
#content a.elementor-cta {
	text-decoration: none;
}

.bdt-carousel-title {
	line-height:1.2em;
}

/* Adjust In-Page Anchor to account for fixed header */
body:not(.elementor-editor-active) .elementor-menu-anchor:before {
	content: "";
	display:block;
	height: 150px; /* fixed header height*/
	margin: -150px 0 0; /* negative fixed header height */
	visibility: hidden;
	pointer-events: none;
}

table.noborder, table.noborder tr, table.noborder td {
    border: none; 
	border-width: 0;
}

.site-content .byline {
	display:none;
}

/* Make Custom Loop Items Same-Height */
.ecs-posts > .ecs-post-loop > [data-elementor-type="loop"],
.ecs-posts > .ecs-post-loop > [data-elementor-type="loop"] > .elementor-section-wrap,
.ecs-posts > .ecs-post-loop > [data-elementor-type="loop"] > .elementor-section-wrap > .elementor-section,
.ecs-posts > .ecs-post-loop > [data-elementor-type="loop"] > .elementor-section-wrap > .elementor-section > .elementor-container {
	height: 100%;
}

#content .elementor-price-table {
	background-color:#D9782D;
}

#content span.elementor-button-text {
	color:#fff;
}

.elementor-widget-container .elementor-accordion, .elementor-toggle {
	border-left: 4px solid #C9D845;
}

.entry-content .elementor .elementor-tab-title a.elementor-accordion-title, .entry-content .elementor a.elementor-toggle-title {
	text-decoration: none;
	font-size: 1.3em;
	font-weight: 500;
}

.elementor-toggle-item:first-child {
	border-top: 1px solid #d4d4d4;
}

button, html input[type="button"], input[type="reset"], input[type="submit"], a.button, a.wp-block-button__link:not(.has-background), a.elementor-button {
	background-color: #d9782d;
}

.entry-content .elementor a.elementor-button-link {
	text-decoration: none;
	color:#fff;
}

	button:hover, html input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover, a.button:hover, a.wp-block-button__link:not(.has-background):hover {
		background-color: #fff !important;
		color: #d9782d;
		border: 1px solid #d9782d;
	}

.elementor .elementor-widget-bdt-advanced-icon-box .bdt-advanced-icon-box-title {
	font-size: 28px;
	font-weight: normal;
}

.entry-content .elementor-icon-list-text {
	line-height:1.4em;
}

.entry-content .elementor .bdt-advanced-icon-box-icon {
	margin-bottom:0px !important;
}

.elementor h3.elementor-icon-box-title {
	padding-top:5px;
}

.bdt-advanced-icon-box-description ul {
	text-align: left;
}

a.bdt-advanced-icon-box-readmore {
	background-color: #d9782d;
	display: inline-block;
	line-height: 1;
	font-size: 15px;
	padding: 12px 24px;
	margin-top:10px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	color: #fff;
	fill: #fff;
	text-align: center;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
	text-decoration:none !important;
}

a.bdt-advanced-icon-box-readmore:hover {
	text-decoration: underline !important;
	color:#fff;
}

/* 
Not currently needed as they requested to remove the filters

#content .byline, li.bdt-ep-grid-filter[content*="All Clusters"] {
	display:none;
} */
/* .site-content .elementor-column-gap-default>.elementor-column>.elementor-element-populated {
	padding: 5px;
} */
.home .entry-content {
	margin-top: 0px;
}

.entry-content .elementor a {
	text-decoration: underline;
	font-weight:bold;
}

.entry-content .elementor h1 a, 
.entry-content .elementor h2 a, 
.entry-content .elementor h3 a, 
.entry-content .elementor h4 a,
.entry-content .elementor .bdt-post-gallery-desc a {
	text-decoration: none;
	font-weight:normal;
}

.elementor-kit-4 h3 {
	padding-top:20px; 
}

.sourceNewsItem h3 {
	padding-top: 0;
}

/* Fix For Flow Flow Filter appearing on top of everything */
.ff-stream:not([data-size=large]) .ff-header {
	z-index: initial;
}

.site-content table th {
    vertical-align: bottom;
    background-color: #1e4d2b;
    color: #fff;
}

.csu-resources-grid-item .elementor-shortcode {
	text-align: center;
}

.csu-resources-grid-item .elementor-shortcode i {
	color: #CC5430;
	font-size:48px;
	text-align: center;
}

/* staff */
/* add gradient overlay - borrowed [and tweaked] from Elementor Pro's "frontend.css" (line 14155) */
.csu-staff-grid-item .elementor-post__thumbnail > .elementor-widget-container:after {
    display: block;
    content: "";
    background-image: -webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.35)),color-stop(75%,transparent));
    background-image: -webkit-linear-gradient(bottom,rgba(0,0,0,.35),transparent 75%);
    background-image: -o-linear-gradient(bottom,rgba(0,0,0,.35) 0,transparent 75%);
    background-image: linear-gradient(0deg,rgba(0,0,0,.35),transparent 75%);
    background-repeat: no-repeat;
    height: 100%;
    width: 100%;
    position: absolute;
    bottom: 0;
    opacity: 1;
    -webkit-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out
}

/* resources */
.uael-post__title {
	text-align:center;
}
.entry-content a.uael-post__read-more {
	text-align: center;
	margin: 0 auto;
	display: block;
	width: 50%;
}
.entry-content .elementor-330 .elementor-element.elementor-element-445e6e5 .uael-post__header-filters {
    padding-bottom: 0px;
}

.dsa-resources-icon {
	color: #CC5430;
	font-size:48px;
	text-align: center;
	margin-bottom: 20px;
}

/* offices */
.uael-post-image-top .uael-post__inner-wrap {
	position:relative;
}
.uael-post-image-top .uael-post__content-wrap {
	position:absolute;
	bottom:10px;
	width:100%;
}
 .uael-post-image-top .uael-post__title {
	padding: 10px;
    color: #fff;
    background: rgb(30 77 43 / 75%);
    transition: .25s ease-out;
 }
.uael-post-image-top .uael-post__separator-wrap, .uael-post-grid .uael-post__authorbox-wrapper, .uael-post-image-top .dsa-resources-icon {
	display:none;
}

.em.em-calendar .em-cal-body.event-style-pill .em-cal-event>div {
	padding-top:0px;
}

.resources .elementor-widget-container a {
	text-decoration: underline;
}

/* ==========================================================================
   Footer
   ========================================================================== */
   
.site-footer a {
	color: rgba(255, 255, 255, 0.8);
	text-decoration: underline;
}

.site-footer a:hover {
	color: rgba(255, 255, 255, 1);
	text-decoration: underline;
}

.site-footer nav.elementor-nav-menu--layout-vertical li.menu-item {
	border-bottom: 1px dotted #5b6366;
}

div.site-footer .elementor-nav-menu--main .elementor-nav-menu a {
	padding-left: 16px;
}

div.site-footer .elementor-nav-menu--main .elementor-nav-menu a.elementor-item:after {
	content: "";
    display: block;
    position: absolute;
    width: 5px;
    height: 7px;
    z-index: 10;
    top: 50%;
    left: 5px;
    margin-top: -4px;
    background-image: url(/wp-content/themes/masterstudy/assets/img/chevron2x-right-orange.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 5px 7px;
}

div.site-footer .elementor-item:not(:hover):not(:focus):not(.elementor-item-active):not(.highlighted):after {
	opacity:inherit;
}

	/* the button when you hover/click it */
	.generate-back-to-top:hover,
	.generate-back-to-top:focus {
		text-decoration:none;
	}


/* ==========================================================================
   SOURCE Feed
   ========================================================================== */
/* Container for All News Items */
.sourceNewsHolder {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
/* Individual News Items */
.sourceNewsItem {
	background: #ffffff;
	display: grid;
	grid-auto-rows: min-content min-content min-content auto;
	margin: 10px !important;
}
/* News Item: Feature Image */
.sniImageHolder {
	background-position: 50% 50%;
	background-size: cover;
	box-sizing: border-box;
	display: block;
	grid-row-gap: 0ch;
	height: 150px;
	width: 100%;
}
/* News Item: First Text Row */
.sniHeaderRow {
	display: flex;
	padding: 10px 15px 10px 15px;
}
.sniDateHolder {
	border-right: 1px solid #bababa;
	padding-right: 10px;
}
.sniDateHolder span {
	display: block;
	margin: 0 auto;
	text-align: center;
}
.sniTitleHolder {
	padding-left: 10px;
}
.sniTitleHolder a {
	text-decoration: none;
}
.sniTitleHolder a h3 {
	font-weight: 400;
	margin: 0;
}
.site-footer h3.sniTitle {
	font-size: 1em;
	line-height: 1.2em;
}
/* News Item: Second Text Row */
.sniExcerptRow p {
	color: rgba(0, 0, 0, 0.7);
	font-size: 13px;
	font-weight:normal;
	line-height: normal;
	padding: 0px 10px 10px 10px;
	margin-bottom: 0;
}
/* News Item: Read More Button */
.sniReadMoreButtonRow {
	align-self: end;
}
.sniReadMoreButtonRow a {
	border-top: 1px solid #dfdfdf;
	color: rgba(0, 0, 0, 0.6);
	display: block;
	font-size: 0.8em;
	padding: 3px 0 3px 0;
	text-align: center;
	transition-delay: 0s;
	transition-duration: 0.2s;
	transition-property: all;
	transition-timing-function: ease-in-out;
	width: 100%;
}
.sniReadMoreButtonRow a:hover,
.sniReadMoreButtonRow a:active {
	background: #efefef;
	color: #555555;
}

/* ---------- HOME PAGE SOURCE ---------- */
/* Container for All News Items */
.home .sourceNewsHolder {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  }
/* Individual News Items */
.home .sourceNewsItem {
	background: #ffffff;
	display: grid;
	grid-auto-rows: min-content min-content min-content auto;
	margin: 10px !important;
}
/* News Item: All Rows */
.home .sniRow {
	border: 10px solid #fff;
}
/* News Item: Feature Image */
/*.home .sniImageHolder {
	background-size: cover;
	background-position: 50% 50%;
	box-sizing: border-box;
	display: block;
	grid-row-gap: 0ch;
	height: 350px;
	width: 100%;
}*/
/* News Item: First Text Row */
.home .sniHeaderRow {
	display: flex;
	padding: 10px 15px 10px 15px;
}
.home .sniDateHolder {
	border-right: 1px solid #bababa;
	padding-right: 10px;
	font-size:1.5em;
	line-height:1.7em;
}
.home .sniDateHolder span {
	display: block;
	margin: 0 auto;
	text-align: center;
}
.home .sniTitleHolder {
	padding-left: 10px;
}
.home .sniTitleHolder a {
	text-decoration: none;
}
.home .sniTitleHolder a h3 {
	font-weight: 400;
	margin: 0;
}
.home .sniTitle {
	font-size: 1.2em;
	line-height: 1.4em;
}
/* News Item: Second Text Row */
.home .sniExcerptRow p {
	color: rgba(0, 0, 0, 0.7);
	font-size: 13px;
	font-weight:normal;
	padding: 0px 10px 10px 10px;
	margin-bottom: 0;
}
/* News Item: Read More Button */
.home .sniReadMoreButtonRow {
	align-self: end;
}
.home .sniReadMoreButtonRow a {
	border-top: 1px solid #dfdfdf;
	color: rgba(255, 255, 255, 0.8);
	display: block;
	font-size: 1em;
	padding: 3px 0 3px 0;
	text-align: center;
	transition-delay: 0s;
	transition-duration: 0.2s;
	transition-property: all;
	transition-timing-function: ease-in-out;
	width: 100%;
	background-color: #d47f28;
	border-radius: 5px;
}
.home .sniReadMoreButtonRow a:hover,
.home .sniReadMoreButtonRow a:active {
	background: #004810;
	color: #fff;
}
.home .site-footer #footerSourceFeed {
	display:none;
}


/* ==========================================================================
   Responsive
   ========================================================================== */
/* Phone */
@media only screen and (max-width: 768px) {
	body {
		overflow: hidden;
		overflow-y: auto;
	}
	/* Buy us more space for CSU header*/
	#csu-header .header-csu-top-bar {
		padding-left: 5px;
		padding-right: 5px;
	}
	/* Save some space by making menu items thinner */
	#csu-header .csu-main-menu-row > .elementor-container {
		min-height: 65px;
	}
	#csu-header .csu-main-menu nav ul li a {
		padding-top: 16px;
		padding-bottom: 16px;
	}
	/* Help visually distinguish what items are part of the submenu */
	#csu-header .csu-main-menu nav ul li .sub-menu {
		background-color: #0f2c18;
		border-bottom: 1px solid #C9D845;
	}
	/* Make the feature image effect more tame */
	.home .dsa-feature-image .elementor-shape svg {
		width: calc(340% + 100px) !important;
		height: 100px !important;
	}
	/* Footer Area */
	#footerSourceFeed .elementor-column {
		width: 100%
	}
	footer.site-info .footer-bar {
		margin-bottom: 0;
	}
	footer.site-info aside:first-child {
		width: 100%;
	}
	footer.site-info aside:last-child {
		float: none;
		margin-top: 15px;
		width: 75%;
	}
}
@media only screen and (max-width: 1260px) {
	body #mobile-header {
		width: auto !important;
	}
}

@media only screen and (max-width: 1300px) {
	.elementor-259 .elementor-element.elementor-element-733e2e57 {
		width: 100% !important;
	}
}


.mec-book-tickets-reg-fields-container {
	padding-left:45px !important;
	padding-right:45px !important;
}

.mec-book-tickets-reg-fields-container label {
	clear:both !important;
}

/* Don't need fill other attendees */
.mec-first-for-all-wrapper {
	display:none !important;
}