/* ==========================================================================
     Project:     Ogeechee Tech
     Date:        02/25/2022 - File created	
     Created by:  Third Wave Digital (www.thirdwavedigital.com)
========================================================================== */

/* ==========================================================================
     Typograpy
========================================================================== */

body {font-family: neue-haas-unica, sans-serif;color: #444; font-size: .875rem}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6 {font-family: soleil, sans-serif; line-height:1.25;font-weight:700;color: #212121}
h1.line-bottom {position: relative;}
h1.line-bottom::after {content:""; position: absolute; bottom: -15px; left: 0px; height: 4px; background:#C4122F; width: 40px;}
h1.line-top {background: #fff; padding: 15px; border-top: 4px solid #C4122F; display: inline-block; box-shadow:  0px 0px 15px 0px rgba(0, 0, 0, 0.10);}
small,.small { line-height: 1.65}
section p {margin-bottom: 1rem}
section li:not(:last-child) {margin-bottom: 7.5px}

/* ==========================================================================
     Main Layout
========================================================================== */ 

html {scroll-behavior: smooth;}

/* Grid */
.container-fluid {max-width: 1200px; padding-left: 30px; padding-right: 30px;}

/* Links */
a {color: #C4122F;text-decoration: underline;}
a:hover, a.text-dark:hover { text-decoration: none;color: #C4122F}
a.text-dark:hover, a.text-dark:focus {color: #C4122F !important}

/* Images */
img {max-width: 100%; height: auto}

/* Forms */
input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-results-button,input[type="search"]::-webkit-search-results-decoration {-webkit-appearance:none;}

/* Skip */
.skip {position:absolute;top:-1000px;left:15px;width:auto;height:auto;text-align:center;overflow:hidden;transition:.25s;background:#656565; width:auto;height:auto;overflow:visible;padding:10px;color:#fff;font-weight:500;font-size:.875rem;z-index:9999;text-decoration:underline}
     .skip:active,.skip:focus,.skip:hover{left:15px;top:15px;color: #fff; background:#404040}

/* Header */
header { z-index: 3; background: #fff; width: 100%; box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25);}
     /* Header menus */
     .headermenu ul {margin: 0px; padding: 0px; list-style:none;font-weight: 700;}
     .headermenu a {text-decoration: none;display:block;}
     .headermenu .fa-caret-down {opacity: .5}
     .headermenu ul > li.show {display: inline-block !important}
     .headermenu ul > li.active > a:not(.btn) {color: #C4122F}
     .headermenu .fas {transition: transform 250ms ease}
     .headermenu .fas.rotate {-webkit-transform: rotate(-180deg); -ms-transform: rotate(-180deg); transform: rotate(-180deg);opacity: 1}

     .headermenu .quicklinks {height: 40px;font-size: .688rem; padding-top: 30px; }
     .headermenu .quicklinks > li > a, .headermenu .quicklinks .fas,.headermenu .quicklinks .btn {color: #fff}
     .headermenu .quicklinks > li {position:relative; padding-bottom: 30px}
     .headermenu .quicklinks > li:not(:last-child) > a {padding: 0px 10px}
     .headermenu .quicklinks > li:nth-last-child(2) > a {padding: 0px 5px}
     .headermenu .quicklinks > li.active .fa-caret-down {color: #fff}

     .headermenu .mainmenu {font-size: .75rem; padding-top: 30px;}
     .headermenu .mainmenu > li {position: relative; padding-bottom: 20px} 
     .headermenu .mainmenu > li > a:not(.btn) {color: #444}
     .headermenu .mainmenu > li:hover > a:not(.btn), .headermenu .mainmenu > li > a:not(.btn):focus  {color: #C4122F}
     .headermenu .mainmenu > li:not(:nth-last-child(-n+4)) > a {padding: 0px 10px}
     .headermenu .mainmenu > li:nth-last-child(-n+4) {padding-left: 4px}
     .headermenu .mainmenu .btn {border-radius: 0px}
     .headermenu .mainmenu > li.active .fa-caret-down {color: #444}

	/* Header menu dropdowns */
	.headermenu ul ul {text-align:left; z-index:3; text-transform: none; background: #f1f1f1;font-size: .688rem; border-radius: 3px; font-weight: 400; pointer-events:none; width: 200px;top: 40px;position: absolute; left: 50%; margin-left: -100px;opacity: 0; visibility: hidden; transition: all 250ms ease;}
          .headermenu ul ul::before {content:""; position: absolute; top: -5px; left: 50%; margin-left: -5px; width: 0px; height: 0px;border-left: 5px solid transparent;border-right: 5px solid transparent;border-bottom: 5px solid #f1f1f1;}
          .headermenu ul ul.active {opacity:1;top: 35px; pointer-events: all;visibility: visible;}
          
          .headermenu ul li:first-child ul {left: 0px;margin:0px}
          .headermenu ul li:first-child ul::before {left: 30px;margin:0px}

          .headermenu ul li:last-child ul {right: 0px; left:auto; margin: 0px;}
          .headermenu ul li:last-child ul::before {left:auto; right: 30px;}

          .headermenu ul ul li:not(:last-child) {border-bottom: 1px solid rgba(0,0,0,.05)}
          .headermenu ul ul li:first-child a {border-radius: 3px 3px 0px 0px}
          .headermenu ul ul li:last-child a {border-radius: 0px 0px 3px 3px}
          .headermenu ul ul li:last-child {border-bottom:none;}
          .headermenu ul ul a { padding: 9px; line-height: 1.2; color: #212121; display:block; border-left: 3px solid transparent}
          .headermenu ul ul a:hover, .headermenu ul ul a:focus {border-left: 3px solid #C4122F;color:#C4122F}

          header .btn-toggle-offcanvas {}
          header .hamburger-inner, header .hamburger-inner:after, header .hamburger-inner:before {background: #404040;}
          header .btn-toggle-search {font-size: .813rem; }

 /* Offcanvas menu */
.offcanvasmenu {position:fixed; width: 100%; top: 60px;bottom: 0px; left: 0px; background: #fff; overflow-x:hidden; overflow-y:auto; z-index:-1;font-size: .813rem;-webkit-transform: scale(.75); -ms-transform: scale(.75); transform: scale(.75); transform-origin: top center; pointer-events: none; opacity: 0; visibility: hidden; transition: all 250ms ease}
     .offcanvasmenu ul {list-style:none; margin: 0px; padding:0px; background: #fff}
     .offcanvasmenu ul > li {border-bottom: .5px solid #e5e5e5; position: relative;text-transform: uppercase; font-weight: 500}
     .offcanvasmenu ul a:not(.btn) {height: 40px; color: #1D1D1B; display: block; padding: 0px 15px;text-decoration: none; display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; align-items:center;}
     .offcanvasmenu ul a:not(.btn):hover, .offcanvasmenu ul a:not(.btn):focus {background: rgba(0,0,0,.05); color:#1D1D1B; }
     .offcanvasmenu ul li a[aria-haspopup] {margin-right: 42.5px;}
     .offcanvasmenu ul li .fa-angle-right {margin-right: 10px}
     .offcanvasmenu ul li .fa-angle-down {font-size: 1rem; transition: transform 200ms ease-in-out}
     .offcanvasmenu ul li .fa-angle-down.rotate {-webkit-transform: rotate(-180deg); -ms-transform: rotate(-180deg); transform: rotate(-180deg)}
     .offcanvasmenu ul li ul {list-style:none; background: #f9f9f9; color: #1D1D1B;margin: 0;font-size:.8125rem; padding: 0px; text-transform:none;visibility: hidden; overflow:hidden; height: 0px; transition: all 500ms ease}
     .offcanvasmenu ul li ul li { font-weight: 400; margin-bottom: 0px;}
     .offcanvasmenu ul li ul li:last-child {border-bottom: 0px}
     .offcanvasmenu ul li ul a:not(.btn) {height:auto; min-height: 40px}

     .offcanvasmenu ul li.active a:hover, .offcanvasmenu ul li.active a:focus, .offcanvasmenu ul li.active a {background:#404040; color: #fff;text-decoration:none;}
     .offcanvasmenu ul li.active li a {color: #1D1D1B;  white-space: normal; background:none}
     .offcanvasmenu ul li.active li a:hover, .offcanvasmenu ul li.active li a:focus {color: #1D1D1B; background: rgba(0,0,0,.05)}

     .offcanvasmenu ul li ul.active {visibility: visible;}
     .offcanvasmenu ul .btn-gradient {margin: 15px;width: calc(100% - 30px); padding: 10px}

     .offcanvasmenu .btn-toggle-dropdown {position: absolute; top: 0px; right:3px; width: 40px; height:40px;padding: 0px;border-radius: 0px; border: none; background: none;border-left: 1px solid #e5e5e5;}
     .offcanvasmenu .btn-toggle-dropdown:hover, .offcanvasmenu .btn-toggle-dropdown:focus {}

     .offcanvasmenu .bg-grey {background: #f1f1f1; border-bottom: 3px solid #C4122F; height: 60px; padding: 5px;  display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; align-items:center;}
     .offcanvasmenu form {position: relative; height: 35px;width: 100%; }
     .offcanvasmenu form .btn {color: #666; width: 35px; height: 35px; padding: 0px; position: absolute; top: 0px;right: 10px; border-radius: 0px;background:none}
     .offcanvasmenu form .btn:hover, .offcanvasmenu form .btn:focus {color: #1D1D1B}
     .offcanvasmenu form .btn span {margin: 4px 0px -4px 0px}
     .offcanvasmenu form input {height: 36px; position: absolute; top: 0px; font-size: .875rem; left: 0px; width: 100%;  border: 1px solid #e2e2e2; padding: 0px 45px 0px 15px;border-radius: 18px;}
     .offcanvasmenu form input::-ms-clear {display:none}
     
     .offcanvasmenu .btn-block {width: calc(100% - .5rem)}

     /* Webkit's scrollbar */
     .offcanvasmenu::-webkit-scrollbar {-webkit-appearance: none;width:5px;}
     .offcanvasmenu::-webkit-scrollbar-track-piece {margin: 15px 0px;}
     .offcanvasmenu::-webkit-scrollbar-thumb {border-radius: 4px;background-color: rgba(0,0,0,.3);}

     /* Offcanvas animation */
     .offcanvas-open .offcanvasmenu {pointer-events: all; opacity: 1; z-index: 3; visibility: visible; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1);}

/* Footer */
footer {position: relative;background: url(/Institutions/Ogeechee-Technical-College/images/bg-footer.jpg) center center no-repeat; background-size:cover; color: #fff}
     footer a {color: #fff}
     footer::before {z-index: 0; content:""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(1,44,61,.85);}
     footer hr {border-color: #fff}

/* Search */
.search-wrapper {position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; background: rgba(0,0,0,.5);z-index:-1; opacity: 0; visibility: hidden; transition: opacity 300ms ease}
     .search-open body {overflow:hidden}
     .search-open .search-wrapper {visibility: visible; opacity: 1; z-index: 3}
     .search-wrapper .btn-close-search {position: absolute; top: 15px; right: 15px; padding: 0px; height: 40px; width: 40px;}
     .search-wrapper .btn-close-search::before { content: '';height: 40px;border-left: 2px solid #fff;position: absolute;-webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg);left: 18px;top: 0px;}
     .search-wrapper .btn-close-search::after { content: '';height: 40px;border-left: 2px solid #fff;position: absolute;-webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg);left:18px;top: 0px}
     .search-wrapper form {position: relative; height: 100px;width: 100%; max-width: 600px;margin:auto}
	.search-wrapper form .btn {color: #C4122F; width: 100px; height: 100px; padding: 0px; position: absolute; top: 0px;right: 0px; border-radius: 0px;background:none;font-size: 1.8rem;}
	.search-wrapper form .btn:hover, .search-wrapper form .btn:focus {color: #C4122F}
     .search-wrapper form .btn span {-webkit-text-stroke: 2px #fff}
	.search-wrapper form input {height: 100px; position: absolute; top: 0px; left: 0px; width: 100%;  border: none; padding: 10px 45px 10px 30px;border-radius: 0px;font-size: 1.5rem}
	.search-wrapper form input::-ms-clear {display:none}

/* Submenu */
.submenu {font-size: .75rem; transition: opacity 250ms ease;line-height: 1.4; font-weight:700; font-family: soleil, sans-serif;border-top: 2px solid #fff}

     .submenu a {display:block;color: #000;  background: #F1F1F1; border-left: 2px solid transparent; border-bottom: 2px solid #fff; padding: 7.5px 13px; text-decoration:none; }
     .submenu a:hover, .submenu a:focus {color:#000;border-left: 2px solid #C4122F}
     .submenu li.active a {color: #C4122F; border-left: 2px solid #C4122F}

     .btn-toggle-submenu {background: #E6E6E6; border:none; padding: 5px; height: 36px; border-radius: 0px;text-decoration:none; padding: 10px 15px;position: relative;border-radius: 3px; border-radius: 0px; border:none;font-family: soleil, sans-serif;  font-weight:700; text-transform: uppercase; font-size: .688rem;}
          .btn-toggle-submenu:hover, .btn-toggle-submenu:focus {background: #404040; color: #fff}
          .btn-toggle-submenu:hover span, .btn-toggle-submenu:focus span {color: #fff}
          .btn-toggle-submenu span.ml-3 {position: relative;width: 5px}
          .btn-toggle-submenu span.ml-3::after {content:""; background: #ccc; height: calc(100% + 10px); width: 1px; position: absolute; left: -10px; top: -5px;}

     .submenu-onecolumn {position: relative; z-index: 1}
          .submenu-onecolumn .submenu {width: 225px;visibility: hidden; opacity:0; overflow:hidden; height: 0px;position: absolute; top: 36px;}
     
/* Hamburgers */
.btn-hamburger {border-radius: 0px; height: 36px;margin:0;padding:0px;transition-timing-function:linear;transition-duration:.15s;transition-property:opacity,filter;text-transform:none;color:inherit;border:0;}
     .hamburger-box {position: relative;display: inline-block;width: 24px;height: 24px;}
     .hamburger-inner,.hamburger-inner:after,.hamburger-inner:before{position:absolute;width:24px;height:2px;transition-timing-function:ease;transition-duration:.15s;transition-property:transform;border-radius:4px;background-color:#1D1D1B}
     .hamburger-inner{top:50%;display:block;transition-timing-function:cubic-bezier(.55,.055,.675,.19);transition-duration:.22s;}
     .hamburger-inner:after,.hamburger-inner:before{display:block;content:"";}
     .hamburger-inner:before{transition:top .1s ease-in .25s,opacity .1s ease-in; top:-8px;}
     .hamburger-inner:after{transition:bottom .1s ease-in .25s,transform .22s cubic-bezier(.55,.055,.675,.19); bottom:-8px;}
     .btn-hamburger.active .hamburger-inner{transition-delay:.12s;transition-timing-function:cubic-bezier(.215,.61,.355,1);transform:rotate(-225deg)}
     .btn-hamburger.active .hamburger-inner:before{top:0;transition:top .1s ease,opacity .1s ease .12s;opacity:0}
     .btn-hamburger.active .hamburger-inner:after{bottom:0;transition:bottom .1s ease,transform .22s cubic-bezier(.215,.61,.355,1) .12s;transform:rotate(90deg)}

/* Masthead */
.masthead-wrapper {position: relative;z-index: 0}
     .masthead-wrapper .cms-contentmenu {position: absolute; top: calc(50% - 20px); left: 22px;}

     .masthead-wrapper + article {position: relative; z-index: 1}

/* Socials */
.socials {}
     .socials a {color: #fff; display:block; font-size: .75rem;border: 1.5px solid #fff; border-radius: 50%;width: 30px;height: 30px;text-align: center;line-height: 27px;}

/* Breadcrumbs */
.breadcrumb {background:none; font-size: .688rem;position: relative; padding: 0px 0px 0px 30px;min-height: 30px}
     .breadcrumb li:first-child {position: absolute; top: 0px; left: 0px;}
     .breadcrumb li:first-child .rounded-circle {width: 30px; height: 30px;}
     .breadcrumb-item.active {color: #969696}

/* Cta squares */
.cta {border-radius: 4px; width: 110px; height: 110px; font-size: .75rem; line-height:1.2}
.cta img {height: 40px}
.cta:hover, .cta:focus {color: #fff}
.cta.bg-white:hover, .cta.bg-white:focus {color: #C4122F}

/* ==========================================================================
     Templates
========================================================================== */ 

/* Homepage */
.hero-wrapper {position:relative}
     .hero-wrapper .item {min-height: unset !important  /* Remove min height set from cms slideshow plugin */}
     .hero-wrapper .item::before {z-index: 1; content:""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: linear-gradient(90deg, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%);}
     .hero-wrapper .caption-wrapper {max-width: 1200px; margin:auto; width: auto !important} /* Remove width from slideshow plugin */
     .hero-wrapper .caption {padding: 0px !important;} /* Negates cms slideshow plugin */
     .hero-wrapper .caption h2 {text-shadow:none !important; margin-bottom: 1.875rem !important;line-height: 1.1;}  /* Negates cms slideshow plugin */
     .hero-wrapper .caption h2 .small {font-size: .875rem; font-style: italic; margin-bottom: 10px;font-family: neue-haas-unica, sans-serif;}
     .hero-wrapper .caption h2 + p {text-shadow:none !important;margin-bottom: 1.875rem !important; }  /* Negates cms slideshow plugin */
     .hero-wrapper .caption p:last-child {margin: 0px !important}

     .hero-wrapper .slick-controls .slick-dots {width: 100%; text-align:left; max-width: 1200px; margin: auto; padding-left: 20px; padding-right: 20px}
     .hero-wrapper .slick-controls .slick-dots li {padding: 0px 2px}
     .hero-wrapper .slick-controls .slick-dots {position: absolute; bottom: 15px}
     .hero-wrapper .slick-controls .slick-dots button, .hero-wrapper .slick-controls .slick-dots .slick-active button {background: #fff}

     .news-wrapper {position: relative;}
          .news-wrapper::before {content:""; width: 100%; background: url(/img/ogeechee-tech-logomark-muted.svg) 15px center no-repeat; background-size: contain;position: absolute; left: 0px; }

     .start-wrapper {position:relative;overflow:hidden;}
          .start-wrapper .row {position:relative; z-index: 2}
          .start-wrapper .start-img {width: 50%; height: 100%; position: absolute; right: 0px; top: 0px; z-index: 1} 
  
     .events-wrapper {}
          .events-wrapper .events .date {border: 2px solid #C4122F; width: 65px; height: 65px;}

/* Interiors */
article {}
     article p {line-height: 1.8}

/* Academic Programs */
.academic-programs-search {width:100%; max-width:250px}
     .academic-programs-search .form-control {padding-right: 20px; border:none; background:none; border-bottom: 2px solid #C4122F; font-size: .813rem; padding-left: 0px}
     .academic-programs-search .form-control:focus {box-shadow:none}
     .academic-programs-search .fas {color: #C4122F;font-size: .813rem; position: absolute; top: 10px; right: 0px;}

.academic-programs .highlight {color: #C4122F;font-weight:700}

/* ==========================================================================
   Alert
   ========================================================================== */

   .alert-wrapper {top: 0px; left: 0px; width: 100%; z-index:1;}
     .alert-wrapper .alert {text-align:center; background: #404040; color: #fff; position: relative;width: 100%;font-size: .813rem; padding: 10px 30px; line-height: 1.4; margin: 0px; border-radius: 0px}
     .alert-wrapper .alert + .alert {border-top: 1px solid rgba(255,255,255,.3);}
     .alert-wrapper a {color: #fff;}
     .alert-wrapper button {position: absolute; top: 50%; font-size: .75rem; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); right: 15px; padding: 0px; background:none; border:none; color: #fff;}
     .alert-wrapper button:hover, .alert-wrapper button:focus {color: #fff}
          
/* ==========================================================================
     CMS Classes & Components
========================================================================== */

/* Text */
.text-red {color: #C4122F}
.text-dark {color: #444 !important}
.text-large {font-size: 130%; line-height: 1.55}
.text-xlarge {font-size: 450%}
.font-weight-semibold {font-weight: 500}
.line-height-sm {line-height: 1.4}

/* Buttons */
.btn-red, .btn-ultralight-grey, .btn-light-grey, .btn-dark-grey, .cms-slideshow .btn-primary, .cms-form .btn-primary { position: relative;text-decoration:none; padding: 6px 20px;position: relative;border-radius: 3px; text-align:center; border:none;font-family: soleil, sans-serif;  font-weight:700; text-transform: uppercase; font-size: .688rem; color: #fff}

     .btn-sm {font-size: .688rem;padding: 5px;}

     .btn-circle {border-radius: 50%; width: 100px; height: 100px;padding: 12px; display:flex; align-items:center; position: relative;}

     .btn-red, 
          .cms-slideshow .btn-primary, 
          .cms-form .btn-primary,
          form[name=frmSearch] .btn-primary {background: #C4122F;border-color: transparent}

     .btn-ultralight-grey {background: #D3D3D3; color: #404040}
          .btn-ultralight-grey:hover, .btn-ultralight-grey:focus {color: #404040}

     .btn-light-grey {background: #969696; }
          .btn-light-grey:hover, .btn-light-grey:focus {color: #fff}

     .btn-dark-grey {background: #404040; }
          .btn-dark-grey:hover, .btn-dark-grey:focus {color: #fff}

     .cms-slideshow .btn-primary:active, 
          .cms-slideshow .btn-primary:hover, .cms-slideshow .btn-primary:focus, 
          .cms-form .btn-primary:hover, .cms-form .btn-primary:focus,
          .btn-red:hover, .btn-red:focus, 
          form[name=frmSearch] .btn-primary:hover,
          form[name=frmSearch] .btn:focus {color: #fff; background:#C4122F !important; }

     .cms-slideshow .btn-primary {position: relative;padding-right: 50px}
          .cms-slideshow .btn-primary::after {content:""; position: absolute; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); right: 15px; width: 30px; height: 10px; background: url(/img/icon-arrow-white.svg) no-repeat center center; background-size: contain}

     .cms-slideshow .btn-primary:active, 
          .cms-slideshow .btn-primary:focus,
          .btn-red:active,.btn-red:focus,
          .btn-ultralight-grey:active,.btn-ultralight-grey:focus,
          .btn-light-grey:active,.btn-light-grey:focus,
          .btn-dark-grey:active,.btn-dark-grey:focus,
          .cms-form .btn-primary:active, .cms-form .btn-primary:focus {box-shadow: none !important}

/* Backgrounds */
.bg-red {background:#C4122F}
.bg-ultralight-grey {background: #E6E6E6}
.bg-light-grey {background: #969696}
.bg-grey {background: #656565}
.bg-dark-grey {background: #404040}

/* Animations - AOS */
[data-aos=fade-up] { transform:translate3d(0,50px,0)}
[data-aos=fade-down] { transform:translate3d(0,-25px,0)}

/* Datatables */
.page-item.active .page-link {background-color: #969696; border-color: #969696}
.page-link {color: #444; text-decoration: none;}
.page-link:hover {color: #C4122F;}

/* Images */
.img-fit {}
     .img-fit-overlay::before {z-index: 0; content:""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(0,0,0,.3);}
     .img-fit img {position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; object-fit:cover;z-index:0}
     .img-fit p {margin: 0px;display:inline} /* CKeditor might have wrapped the image with a <p> tag */
     .img-fit-top-center img {object-position: top center; font-family: "object-fit: cover; object-position: top center;"}
     .img-fit-bottom-center img {object-position: bottom center; font-family: "object-fit: cover; object-position: bottom center;"}
     .img-fit-center-center img {object-position: center center; font-family: "object-fit: cover; object-position: center center;"}
     .img-fit-center-70 img {object-position: center 70%; font-family: "object-fit: cover; object-position: center 70%;"}
     .img-fit-right-center img {object-position: right center; font-family: "object-fit: cover; object-position: right center;"}

.img-aspectratio {position: relative; height: 0px;}
     .img-aspectratio-4x3 { padding-bottom: 75%;}
     .img-aspectratio-16x9 {padding-bottom: 56.25%}
     .img-aspectratio-22x15 {padding-bottom: 70%}
     .img-aspectratio-1x1 {padding-bottom: 100%}

.img-shadow {box-shadow: -15px 15px 0px 0px #D3D3D3;}

/* Lists */
.list-reddots {padding: 0px 0px 0px 15px}
     .list-reddots li {margin-bottom: 7.5px;}
     .list-reddots li::marker {color: #C4122F}

.list-programs {padding: 0px; list-style:none}
     .list-programs li {margin-bottom:8px;}
     .list-programs a {display:block; border-bottom: 2px solid #C4122F; background: #f1f1f1; transition: background 250ms ease; padding: 13px 10px; line-height: 1.3; text-decoration:none; color:#000}
     .list-programs a:hover, .list-programs a:focus {background: #e7e7e7}

.list-bookmarks {list-style: none; padding: 0px;font-size: .938rem;font-weight:bold }
     .list-bookmarks li {position: relative; padding-left: 25px;margin-bottom: 15px}
     .list-bookmarks li:last-child {margin-bottom: 0px}
     .list-bookmarks li::before {position: absolute; top: 0px; left: 0px; font-size: 1.25rem; color: #000; font-family: "Font Awesome 5 Free"; font-weight: 400; content: "\f02e";}

/* Accordions (has overrides to defaults from cms) */
.cms-accordion {}
     .cms-accordion .card {border-radius: 0px; border:none;margin-bottom: 10px !important}
     .cms-accordion .card-header {background:none; border: 1px solid #C4122F; border-radius: 0px; padding-right: 35px !important; font-family: soleil, sans-serif;text-transform: uppercase; position: relative; font-size: .813rem; color: #404040}
     .cms-accordion .card-header::before {content:""; font-family: "Font Awesome 5 Free"; font-weight: 700; font-size: .875rem; content: "\f055";color:#969696;text-align:center; position: absolute; right: 12px; margin-top: 1px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);}
     .cms-accordion .card-header[aria-expanded=true]::before {content: "\f056";}
     .cms-accordion .card-header:hover {text-decoration: none;}
     .cms-accordion .card-body p:last-child {margin-bottom:0px}

/* Borders */
.border-top-red {border-top: 5px solid #C4122F}

/* Calendars */
.cms-calendar .text-primary {color: #C4122F !important}
.cms-calendar .bg-primary {background: #C4122F !important}

/* ==========================================================================
     Media Queries
========================================================================== */

/* Min Width */
@media (min-width: 0px) {	
     /* Type */
     h1, .h1 {font-size: 1.75rem}
     h2, .h2 {font-size: 1.5rem}
     h3, .h3 {font-size: 1.375rem}
     h4, .h4 {font-size: 1.25rem}
     h5, .h5 {font-size: 1.125rem}
     h6, .h6 {font-size: 1rem}

     /* Header */
     body {padding-top: 60px}
     header {height: 60px; position: fixed;top: 0px}
     header .logo img {width: 150px;}

     /* Submenu */
     .submenu-onecolumn .submenu {left: 0px;}
     .submenu-twocolumn .submenu {visibility: hidden; opacity:0; overflow:hidden; height: 0px;}
     .submenu.active {visibility: unset;opacity: 1; overflow:visible; height:unset}
     
     /* Homepage */
     .hero-wrapper .slick-track {height: 480px} /* Negates adaptiveHeight on cms slideshow plugin */
     .hero-wrapper .caption-wrapper { left: 50px !important; right: 50px;}  /* Remove left from slideshow plugin */
     .hero-wrapper .caption h2 {font-size: 2rem;}
     .hero-wrapper .slick-prev {left: 5px;}
     .hero-wrapper .slick-next {right: 5px;}

     .start-wrapper .start-img {width: 100%;opacity:.1}

     .news-wrapper::before {top: 0px; height: 500px}

     /* Masthead */
     .masthead-wrapper {height: 250px}
     .masthead-wrapper + article {margin-top: -45px;}

     /* Academic Detail */
     .btn-apply-program {position: absolute;top: -15px; right: 30px}
}

@media (min-width: 576px) {    
     /* Borders */
     main .border-sm-right {border-right: 1px solid #dee2e6!important}
     main .border-sm-top {border-top: 1px solid #dee2e6!important}
     main .border-sm-bottom {border-bottom: 1px solid #dee2e6!important}
     footer .border-sm-right {border-right: 1px solid rgba(204,204,204,.5)}
}

@media (min-width: 768px) {	
     /* Type */
     h1, .h1 {font-size: 2.25rem}
     h2, .h2 {font-size: 1.75rem}
     h3, .h3 {font-size: 1.25rem}
     h4, .h4 {font-size: 1.125rem}
     h5, .h5 {font-size: 1rem}
     h6, .h6 {font-size: .875rem}

      /* Submenu */
     .submenu-onecolumn .submenu {left: auto; right: 0px;}
     .submenu-twocolumn .submenu {visibility: visible; opacity:1;overflow:auto; height: auto;}
  
     /* Homepage */
     .hero-wrapper .slick-track {height: 600px} /* Negates adaptiveHeight on cms slideshow plugin */
     .hero-wrapper .caption-wrapper { left: 100px !important; right: 100px;}  /* Remove left from slideshow plugin */
     .hero-wrapper .caption h2 {font-size: 3rem}
     .hero-wrapper .caption {width: 80%;}
     .hero-wrapper .caption h2 + p {padding-left: 20px; border-left: 4px solid #C4122F}
     .hero-wrapper .slick-prev {left: 15px;}
     .hero-wrapper .slick-next {right:15px;}

     .news-wrapper::before {top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);  height: 100%;}
     
     /* Borders */
     footer .border-sm-right {border:none}
     footer .border-md-right {border-right: 1px solid rgba(204,204,204,.5)}
     main .border-md-right {border-right: 1px solid #dee2e6!important}
     main .border-sm-bottom-none {border-bottom: none !important}

     /* Masthead */
     .masthead-wrapper {height: 350px}
     .masthead-wrapper + article {margin-top: -55px;}

     /* Academic Detail */
     .btn-apply-program {position: absolute;top: -5px; right: 30px}
}

@media (max-width: 991px) {
     /* Scrollables */
     .scrollable-section {scroll-margin-top: 60px}
}

@media (min-width: 992px) {	
     /*  Header */
     body {padding-top: 0px}
     header {height: auto; position: relative}
     header .logo img {width: 190px;}

     /* Homepage */
     .hero-wrapper .caption {width: 55%;}

     .start-wrapper .start-img {width: 50%;opacity:1}
     .start-wrapper .start-img::before {content:""; position: absolute; z-index: 1; left: -1px; top: -1px; height: calc(100% + 1px); width: 100px; background: url(/img/bg-curve.png) left top no-repeat; background-size:100% 100%}
     
}

@media (min-width: 1200px) {	

}

@media (prefers-reduced-motion: reduce) {
     * { animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;scroll-behavior: auto !important;transition: none !important}
}

