﻿/* Colors used: #FFF Lightest | #CCC Light | #222 Darkest | #666 Medium | #404040 Branding | #183763 Branding Alt 

Primary
#ed1c24 - Madron, #c4161c - Redwood, #b31d22 - Heartwood

Greens
#2c642 - Juniper, #336600 - Pine, #669900 - Fern, #80a930 - Cedar, #d2e388 - Moss

Shades
#003366 - Ocean, #006699 - River, #9db9c8 - Sky, #970e76 - Sorrel, #ffffff - Trillium

Grayscale
#000000 - Hawk, #231f20 - Charcoal, #404040 - Pebbles, #666666 - Storm, #939598 - Fog, #c4c4c4 - 
Marine, #e4e4e4 - Ash, #f3f3f3 - Mist
*/

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

.right { background-color: transparent; }

body { font-size: 18px !important; font-family: 'open sans', Helvetica, Arial, sans-serif;background:#e4e4e4 !important;}

/* Start Foundation 6 Marketing Footer */
.marketing-site-footer {background: #f3f3f3; color: #231f20;}
.marketing-site-footer .marketing-site-footer-menu-social a {color: #b31d22;}
.marketing-site-footer-name {color: #FFF;}
.marketing-site-footer-title {color: #FFF;}
.marketing-site-footer-block .fa {color: #231f20;}
.marketing-site-footer-bottom {background: #f3f3f3; color: #231f20; padding: 25px !important; font-size:11px;}
.marketing-site-footer-bottom .marketing-site-footer-bottom-links a {color: #b31d22 !important;}
.marketing-site-footer-bottom-links a:hover {color: #b31d22 !important;}

.bottom-social {
	float:right;
	vertical-align: top;
}

ul.bottom-social-links li {
	display:inline-block;
	width:30px;
}

li.bottom-fb a:hover {
	background-color: #37589b;
	color: #fff !important;
	
}

li.bottom-youtube a:hover {
	background-color: #b31d22;
	color: #fff !important;
	
}

.bottom-social a, .bottom-social a:visited {
	color:#231f20 !important;
	padding:5px;
}

td.class-list-link-column {
    word-break: break-all;
}

/* End Foundation 6 Marketing Footer */

/* Start Foundation 6 Top Bar Marketing Menu */
.topbar-responsive {background: #f3f3f3; padding-top: 0px !important; padding-bottom: 0px !important;}
.topbar-responsive .topbar-responsive-logo {color: #404040; position: relative; }
.top-bar-right a { position: relative;}
.top-bar-right .topbar-responsive-button {top: 20px; color: #404040 !important; border-color: #404040; background: #FFF !important; border-radius: 25px !important;}
.top-bar-right .topbar-responsive-button:hover {background: #404040 !important;}
.top-bar-right .topbar-responsive-button i { color: #404040 !important;}
.top-bar-right .topbar-responsive-button:hover i {color: #404040 !important; border-color: #404040;}
@media screen and (max-width: 39.9375em) {.topbar-responsive .top-bar-title span {border-color: #FFF;}}
/* End Foundation 6 Top Bar Marketing Menu */

.topbar-responsive .menu {
    background: #f3f3f3;
	padding-top:25px !important;
}

		
.topbar-responsive .menu a {
    font-size: 16px;
    font-weight: 600;
    color: #404040;
    text-align: center;
	padding-top:15px;
	padding-left:5px;
	padding-bottom: 35px !important;
}

.topbar-responsive .menu a:hover {
    color: #b31d22;
	padding-bottom: 35px !important;
}

.custom-menu { background-color: #b31d22 !important; font-family: 'open sans', Helvetica, Arial, sans-serif; font-size: 16px; min-height:30px;padding-top:3px;padding-bottom:3px; }
.custom-menu a, .custom-menu a:visited, .custom-menu a:hover { 
	border-color: #b31d22;
	color:#f3f3f3;
	font-weight: 400;
	padding-left:2px;
	padding-right:2px;
	text-decoration:none !important;
	font-size:16px;
	}
		
.custom-menu a:hover {
	color: #ffffff !important;
    border-bottom: solid 2px #ffffff !important;
    padding-bottom: 5px;
	}

.custom-menu ul {
	padding-left:20px;
}


.custom-menu ul, .custom-menu ul li {
	display: inline-block;
	line-height: 30px;
	min-height:30px;
	padding:0;
	text-align:center;
	overflow:visible;
}

.custom-menu ul li {
	width:30px;
}

.facebook:hover {
    color: #fff;
    background-color: #37589b;
}


/* Start Foundation 6 Simple Hero */
.hero-section {
	background: url("https://sou.edu/olli/wp-content/uploads/sites/37/2024/09/OLLI-at-SOU-Campus-CE-Catalog.jpg");
	background-size:cover;
	height: 50vh; 
	background-position: 50% 50% !important;
	background-repeat: no-repeat !important;
	position:relative;
}
.herobox {
	width:100%;
    bottom: 0;
    position: absolute;
    background-image: linear-gradient(to top, rgba(0,0,0,0.9), transparent);
    padding: 50px 20px 30px 20px !important;
}


p.herotop {font-size:28px !important;font-weight:900;letter-spacing:0.02em;margin-bottom:0 !important;font-family: 'open sans', sans-serif;}
p.herobottom {font-size:48px !important;line-height:1.3em !important;margin-bottom:0px;font-weight:900;font-family: museo, sans-serif;}

.hero-section .hero-section-text {color: #FFF;}
/* End Foundation 6 Simple Hero */

#CCEContent { font-family: 'open sans', Helvetica, Arial, sans-serif; }
#CCEContent a, #CCEContent a:visited {color: #b31d22; text-decoration: none;}
#CCEContent a:hover {color: #c4161c; text-decoration: underline;}

#catalogHoriz {width: 100%;}
.categoryColumn {width: 100%;}
@media only screen and (min-width: 200px) {#catalogHoriz {width: 100%; padding: 0;} .categoryColumn {margin-bottom: 4%;}}
@media only screen and (min-width: 640px) {.categoryColumn {width: 48%; min-height: 275px;}}
@media only screen and (min-width: 960px) {.categoryColumn {width: 31%; min-height: 200px;}}

@media only screen and (max-width: 640px) { 

	.custom-menu ul li { border-top: 1px solid #DDD; }
	#CCEMenu li { padding-top: 10px; }
}

@media only screen and (max-width: 1100px) { #CCESecMenu {padding-bottom: 15px !important;}}

#CCESecMenu { background-color: #404040; color: #FFF !important; font-weight: 400 !important;padding-top:11px;}
#CCESecMenu {background-image: linear-gradient(to right, rgba(0,0,0,.5), rgba(0,0,0,.0), rgba(0,0,0,.5)) !important;}
#CCESecMenu a:link, #CCESecMenu a:visited { color: #FFF !important; font-weight: 400 !important;}
#CCESecMenu a:hover {color: #ccc !important; }

table#ctl00_ContentPlaceHolder1_ucCartTable_cartTable ~ div table tr td {background: #FFF !important;}
td.classInfoButton, table.class tr + tr, #ctl00_ContentPlaceHolder1_pnlClass tr {background: #FFF !important;}

button, .button, input[type="submit"], input[type="button"] {
	background-color: #c4161c !important; 
	color: #FFF !important; 
	font-size: 16px !important;
	padding: 20px !important;
	font-weight: 400 !important;
	text-transform: uppercase !important;
	border-radius: 6px !important;
	border-color:#c4161c;

}
button:hover, .button:hover, input[type="submit"]:hover, input[type="button"]:hover {
	background-color: #c4161c !important; 
	color: #FFF !important;
	font-size: 16px !important;
	padding: 20px !important;
	font-weight: 400 !important;
    border-color: #ffffff;
}

.searchtip { display:none;}

#topBtn {
  color: #FFF !important; /* Text color */
  border: 1px solid #FFF !important; /* Remove borders */
  background-color: #222 !important; /* Set a background color */
  bottom: 75px !important; /* Place the button at the bottom of the page */
}

#topBtn:hover {
  color: #FFF !important; /* Text color */
  border: 1px solid #222;
  background-color: #404040 !important; /* Set a background color */
}

#topBtn i {font-size: 32px !important;}
#topBtn div {position: relative; top: -5px;}

ul.result {border-color: #404040;}
ul.result p.right a {background: #404040; color: #FFF !important;}

ul.course li div.wrap { display: table !important; width: 100% !important; }

ul.course li div.wrap div { display: table-cell !important; float: left; text-align: left;}
ul.course li div.wrap div.right { width: 66%; padding-top: 10px;}
ul.course li div.wrap div.left { width: 33%; padding-top: 10px;padding-right:10px;}

ul.course li.coursetitle { background-color: #404040; padding: 5px 0px 5px 10px;}
ul.course li.coursetitle span, ul.course li.coursetitle span a {font-weight: bold; font-size: 18px !important; color: #FFF !important;}

#ctl00_ContentPlaceHolder1_pnlClass div.classPanelInfo { border-top: none !important; }

/*ul.course { border-bottom: #183763 5px solid; padding-bottom: 10px;}*/

/* FONT SIZES & FORMATTING */
div.pageHeading p, div.pageHeading p span span,
div.pageTitle, div.whitebody div.pageTitle p,
div.pageHeading, table tr td span.pageTitle, h1, h2 {
	text-align: center;
	font-size: 36px !important;
	color: #000;
	font-family: 'open sans', Helvetica, Arial, sans-serif;
}

div.pageHeading { font-weight:400;}

h2 {font-size: 28px !important;}
h3 {font-size: 22px !important;}
h4 {font-size: 20px !important;}
h5 {font-size: 18px !important;}
h6 {font-size: 16px !important;}

strong {font-weight:600;}

#bob {max-width: 290px !important;}
#bobsynopsis { padding: 0.5rem !important;}

#divPopup, .genericPopup, .genericPopupHeader[width], .genericPopup[width], .genericPopupFooter[width] {width: 458px !important;}
#divPopup table tr td:nth-of-type(1)[width], .genericPopup table tr td:nth-of-type(1)[width] {width: 9px !important;}
#divPopup table tr td:nth-of-type(2)[width], .genericPopup table tr td:nth-of-type(2)[width] {width: 409px !important;}
#divPopup table tr td:nth-of-type(3)[width], .genericPopup table tr td:nth-of-type(3)[width]{width: 40px !important;}
.genericPopup {border: 5px solid #000 !important;}
#divPopup table tr td[style], .genericPopup table tr td[style] {background-image: none !important;}
#divPopup img {display: none !important;}
#tdContent {font-size: 120% !important;}
#divPopup, .genericPopup {height: 150px !important;}
.genericPopupHeader {background-color: #000; text-transform: uppercase;}
.genericPopupHeader tr td:nth-of-type(1), 
.genericPopupHeader tr td:nth-of-type(3) {display: none;}
.genericPopupHeader tr td:nth-of-type(2) span { 
	position: relative; 
	top: 12px;
	left: 12px;
	color: #FFF !important;
	font-weight: bold;
}
.genericPopupFooter {display: none;}

.genericPopupHeader tr td:nth-of-type(2) {background: #000 !important; padding-bottom: 15px !important;}
.genericPopup tr td:nth-of-type(2) table tr:nth-of-type(2) td {background: #FFF !important;}
#divPopup .genericPopup tr td:nth-of-type(2) table tr td, .genericPopup tr td:nth-of-type(2) table tr td {font-size: 16px !important;}

span#ctl00_ContentPlaceHolder1_ucCourse_lblDescription p img { padding: 25px; width: 400px; }

button.menu-icon { background-color: #404040 !important; }

#ctl00_Ucpreheader1_hypFeedback { display: none !important; }

.categoryImg { padding: 0px; border: 0px; }

footer div div { margin-top: 0px; padding-bottom: 10px;}

footer div div span { font-weight: bold; font-size: 18px; }

footer a, footer a:visited { color: #b31d22 !important; text-decoration: none; }


footer a:hover { color: #b31d22 !important; text-decoration: none; }

.marketing-site-footer-bottom a, .marketing-site-footer-bottom a:visited {text-decoration: none;}
.marketing-site-footer-bottom a:hover {text-decoration: none;}

.footerborder { border-left: 2px solid #FFF; padding-right: 50px; min-height: 250px; display: inline-block; }
@media only screen and (max-width: 1020px) { .footerborder {border-top: 2px solid #FFF; display: block; border-left:0px; min-height: 0px; padding-right: 0px;}}

/*.categoryColumn ul {display: none;}*/

#ctl00_Ucpreheader1_divPreHeaderWelcome { color: #FFF !important; font-weight: bold !important; }


.categoryTitle {
	background: #c4161c !important;
	text-align: center !important;
	margin-top: 0 !important;
	padding: 10px 15px !important;
	margin-top:20px !important;
	border-radius: 6px;
	min-height:60px;
	font-weight: 400;
	width:100%;
    display: table; /* Use table display to center text vertically */
    text-align: center; /* Center the text within the title div */
	border: 0 none #ed1c24;
}

.categoryTitle span {
    display: table-cell; /* Use table-cell to vertically center the text */
    vertical-align: middle; /* Vertically center the text */
}

#CCEContent .categoryTitle:hover a,
#CCEContent .categoryTitle:hover a:visited {
	color: #ffffff !important;
	text-decoration: none;
}

.categoryTitle:hover {
	background: #c4161c !important;
}

}
.categoryTitle span a {
	color:#ffffff !important;
}

.categoryTitle span a:hover {
	color:#ffffff  !important;
}

#CCEContent .categoryTitle span a {
	color:#ffffff !important;
}

.categoryImg {
	overflow:hidden;
	border-radius: 5px;
	display:none;
}
.categoryImg img {
	transition: all 0.3s;
}

ul.course img {display: block !important;}

.leftpane, .rightpane {
	display: inline-block !important; 
	float: left; 
	padding: 5px 25px 25px 25px; 
	border: 1px solid #003B73; 
	border-radius: 5px;}

.leftpane {margin-right: 25px;}

@media only screen and (min-width: 200px) { .leftpane, .rightpane {width: 100% !important;} }
@media only screen and (min-width: 1200px) { .leftpane, .rightpane {width: 45% !important;} }

.sliding-cart { background: rgba(24, 55, 99, 0.75) !important; }

#CCENewSearch input { 
	display: inline-block;
	height: 45px;
}

/* More info tab */
  details {
    background-color: #f1f1f1;
    border: 1px solid #ddd; /*  Add a border for better visibility */
 	margin-top: 0px;
	margin-bottom: 10px;
	
 }

details .details {
	padding: 5px !important; /* This pads the inner box */
}

  /* Icon styling */
  #icon {
	font-size:24px;
    margin-left: auto;
  }


  /* Styling for the summary element */
  summary {
    display: flex;
    cursor: pointer;
    background-color: #9cbbdc;
    color: white;
    padding: 10px; /* Increase padding for better click/tap area */
    font-size: 16px;
    font-weight: bold; /* Add bold font for better emphasis */
    border: none;
    outline: none;
    user-select: none;
  }

  /* Hide the default marker */
  summary::-webkit-details-marker {
    display: none;
  }

/* Accordion */
#CCECatalog ul li, #CCECatalog ul, #ctl00_ContentPlaceHolder1_ucCourse_lblDescription ul, #ctl00_ContentPlaceHolder1_ucCourse_lblDescription ul li, #ctl00_ContentPlaceHolder1_pnlSearch ul, #ctl00_ContentPlaceHolder1_pnlSearch ul li {
    list-style: disc !important;
    margin-left: 10px !important;
}

#ctl00_ContentPlaceHolder1_passwordRecoveryDescrDiv ol li {
	margin-left: 20px !important;
	list-style: decimal !important;
}

#ctl00_ContentPlaceHolder1_CourseInfo {
	max-width: 870px;
	margin: auto;
}

.password_icon_sph {
	left:85%;
}

main {
	max-width: 870px;
	margin: auto;
}

details {
	max-width: 800px; 
	background-color:#fff; 
	padding: 0px ;	
}
details p {
	padding: 10px 30px 0px 10px;
}
details ul, details ol {
	padding: 0px 0px 0px 20px;
}
details details {
	background-color: #f3f3f3;
	margin: 0px 20px ;
}
details ul li, details ol li {
	padding: 10px 10px 0px 10px;
}
details ul li ul li {
	list-style-type: circle;
}
summary {
	background-color:#fff;  
	border: #f3f3f3;
	color: #b31d22;
	font-weight: normal;
	font-size: inherit;
}
#icon {
	font-weight: normal;
}
.subCat1 {
	padding-left: 50px;
}
.subCat1 ul, .subCat2 ul {
	float:left;
	margin: 0px 50px;
}

.sliding-cart {background: rgba(0,0,0, 0.75) !important;} /* Use RBGA Value */
.sliding-cart-title {color: #ed1c24 !important;}
.sct-trash-icon {color: #ed1c24 !important;}
.sct-trash-icon:hover {color: #ed1c24 !important;}
#sctReturn .fa-regular, #sctReturn .fa-circle-chevron-left {color: #ed1c24 !important;}

/* Cart Count */
.badge {
  padding-left: 9px;
  padding-right: 9px;
  -webkit-border-radius: 9px;
  -moz-border-radius: 9px;
  border-radius: 9px;
}

.label-warning[href],
.badge-warning[href] {
  background-color: #c67605;
}
#lblCartCount {
    font-size: 12px;
    background: #ff0000;
    color: #fff;
    padding: 0 5px;
    vertical-align: top;
    margin-left: -10px; 
	margin-top: -7px;
}

