@charset "utf-8";
/* CSS Document */

body {
	margin: 0px;
	font-family: 'Muli', sans-serif;
}

.container-fluid {
	padding:0px !important;
	margin:0px !important;
}

h1, h2, h3, h4, h5, h6 { text-shadow:none; }


/* ═══════════════════════════════════════════
   HEADER
═══════════════════════════════════════════ */

header {
	background: linear-gradient(135deg, #0e3d20 0%, #1a6b38 60%, #0e3d20 100%);
	padding: 5px 0;
	position: relative;
	overflow: hidden;
	min-height: 100px;
}

header::after {
	content: '';
	position: absolute;
	bottom: 0; left: 0; right: 0;
	height: 4px;
	background: linear-gradient(90deg, #c9a84c, #f0d88a, #c9a84c);
}

header::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle at 85% 50%, rgba(201,168,76,.08) 0%, transparent 50%);
	pointer-events: none;
}

.logo {
	display: flex !important;
	align-items: center;
	gap: 14px;
	padding: 4px 15px;
	position: relative;
	z-index: 1;
	/* preserve legacy float behaviour on old pages */
	font-family: 'Muli', sans-serif;
	font-size: 18px;
	color: #01553c;
	text-transform: uppercase;
	text-align: left;
	line-height: 16pt;
	margin-top: 10px;
	font-weight: bold;
}

.logo img {
	height: 78px;
	width: auto;
	filter: drop-shadow(0 2px 6px rgba(0,0,0,.3));
	flex-shrink: 0;
	margin-right: 0; /* reset old 20px */
}

.logo-text {
	color: #fff;
	font-family: 'Merriweather', serif;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.35;
}

.logo-text small {
	display: block;
	font-family: 'Open Sans', sans-serif;
	font-size: 11px;
	font-weight: 400;
	color: rgba(255,255,255,.75);
	letter-spacing: 1.5px;
	text-transform: uppercase;
	margin-top: 3px;
}

.slogan {
	display: flex !important;
	align-items: center;
	justify-content: flex-end;
	padding-right: 20px;
	position: relative;
	z-index: 1;
	/* legacy compat */
	/*font-family: 'Lobster', cursive;*/
	font-family: 'Lora', serif;
	font-size: 35px;
	color: #000;
	text-align: right;
	line-height: 20pt;
	margin-top: 35px;
	float: right;
}

.slogan-inner {
	text-align: right;
}

.slogan-inner .tagline {
	font-family: 'Merriweather', serif;
	font-size: 28px;
	font-weight: 400;
	font-style: italic;
	color: #fff;
	line-height: 1.3;
}

.slogan-inner .tagline .highlight {
	color: #f0d88a;
	font-weight: 700;
	font-style: normal;
}

.slogan-inner .sub {
	font-size: 10px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(255,255,255,.8);
	margin-top: 0px;
}

/* ═══════════════════════════════════════════
   TOP UTILITY BAR
═══════════════════════════════════════════ */

.top-utility-bar {
	background: #0e3d20;
	color: rgba(255,255,255,.75);
	font-size: 12px;
	padding: 5px 0;
	border-bottom: 2px solid #c9a84c;
}

.top-utility-bar .container-fluid {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 20px;
}

.top-utility-bar a {
	color: rgba(255,255,255,.75);
	text-decoration: none;
	margin: 0 8px;
	transition: color .2s;
}

.top-utility-bar a:hover { color: #c9a84c; }

.top-utility-bar .social-icons a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 1px solid rgba(255,255,255,.3);
	border-radius: 50%;
	margin-left: 5px;
	font-size: 11px;
	transition: all .2s;
}

.top-utility-bar .social-icons a:hover {
	background: #c9a84c;
	border-color: #c9a84c;
	color: #0e3d20;
}

/* ═══════════════════════════════════════════
   PAGE HEAD (interior pages)
═══════════════════════════════════════════ */

.page-head-job {
	width: 100%;
	background-color: #02a372;
	color: #FFF;
	min-height: 40px;
	border-bottom: 0px solid #CCC;
}

.page-head-job a { color: #FFF; }

/* ═══════════════════════════════════════════
   NAVIGATION
═══════════════════════════════════════════ */

.navbar-custom {
	background: #fff !important;
	border: none !important;
	border-radius: 0 !important;
	margin-bottom: 0 !important;
	min-height: 50px;
	box-shadow: 0 3px 12px rgba(0,0,0,.1);
	position: sticky;
	top: 0;
	z-index: 999;
	color: #333;
}

.navbar {
	margin-bottom: 0px;
}

/* Green bar below navbar */
.nav-greeen-bar {
	height: 3px;
	background: linear-gradient(90deg, #0e3d20, #c9a84c, #0e3d20);
}

/* Nav links */
.navbar-custom .navbar-nav > li > a {
	display: block;
	font-size: 13.5px !important;
	font-weight: 600;
	color: #333 !important;
	padding: 10px 5px !important;
	transition: color .2s, background .2s, border-bottom-color .2s;
	border-bottom: 3px solid transparent;
}

.navbar-custom .navbar-nav > li > a:hover,
.navbar-custom .navbar-nav > li > a:focus {
	color: #0e3d20 !important;
	background: #f7faf8 !important;
	border-bottom-color: #c9a84c;
}

.navbar-custom .navbar-nav > .active > a,
.navbar-custom .navbar-nav > .active > a:hover,
.navbar-custom .navbar-nav > .active > a:focus {
	color: #0e3d20 !important;
	background: transparent !important;
	border-bottom-color: #c9a84c;
}

.navbar-custom .navbar-nav > li > a:hover,
.nav > li > a:focus,
.navbar-custom .navbar-nav .open > a {
	background: #f7faf8 !important;
	color: #0e3d20 !important;
}

/* Dropdown */
.navbar-custom .navbar-nav .dropdown-menu {
	background-color: #fff;
	border: none;
	border-top: 3px solid #c9a84c;
	border-radius: 0 0 6px 6px;
	box-shadow: 0 6px 20px rgba(0,0,0,.12);
	padding: 6px 0;
	margin-top: 1px;
}

.navbar-custom .navbar-nav .dropdown-menu > li > a {
	color: #444;
	font-size: 13px !important;
	padding: 9px 18px;
	transition: background .15s;
}

.navbar-custom .navbar-nav .dropdown-menu > li > a:hover,
.navbar-custom .navbar-nav .dropdown-menu > li > a:focus {
	background: #f0f7f2;
	color: #0e3d20 !important;
}

/* Brand & toggle */
.navbar-custom .navbar-brand { color: #333; }

.navbar-custom .navbar-toggle {
	border-color: #0e3d20;
	margin: 8px 15px;
}
.navbar-custom .icon-bar { background-color: #0e3d20; }
.navbar-custom .navbar-toggle:hover { background: #f0f7f2; }

/* Misc navbar helpers */
.navbar-shadow {
	z-index: 99;
	box-shadow: 0px 4px 4px #444;
}

.navbar-bg { background-color: #fff !important; }
.navbar-nav { text-transform: uppercase !important; }

.navbar a {
	font-weight: 400;
	margin-left: 8px;
	margin-right: 8px;
}

.navbar a:hover {
	color: #0e3d20 !important;
	transition-duration: 0.4s;
}

/* ═══════════════════════════════════════════
   BANNER / CAROUSEL
═══════════════════════════════════════════ */

.banner-shadow {
    position: relative;
    box-shadow: 0 4px 20px rgba(0,0,0,.25);
}

#carousel-example .carousel-inner .item img {
    width: 100%;
    height: clamp(200px, 37.5vw, 450px); /* 450px at 1200px width, scales down proportionally */
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Better carousel indicators */
#carousel-example .carousel-indicators {
    bottom: 16px;
}
#carousel-example .carousel-indicators li {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.7);
    background: transparent;
    margin: 0 4px;
    transition: all .2s;
    cursor: pointer;
}
#carousel-example .carousel-indicators li.active {
    background: #c9a84c;
    border-color: #c9a84c;
    width: 28px;
    border-radius: 6px;
}

#carousel-example .carousel-control {
	width: 48px;
	height: 48px;
	top: 50%;
	transform: translateY(-50%);
	bottom: auto;
	background: rgba(14,61,32,.75) !important;
	border-radius: 50%;
	display: flex !important;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity .25s;
}

#carousel-example .carousel-control.left  { left: 16px; }
#carousel-example .carousel-control.right { right: 16px; }
.banner-shadow:hover #carousel-example .carousel-control { opacity: 1; }
#carousel-example .carousel-control:hover { background: #c9a84c !important; }
#carousel-example .carousel-control .glyphicon {
	font-size: 16px;
	text-shadow: none;
	position: static;
	margin: 0;
}

#carousel-example .carousel-caption {
	background: linear-gradient(transparent, rgba(0,0,0,.55));
	left: 0; right: 0; bottom: 0;
	padding: 30px 20px 50px;
	text-align: left;
}

#carousel-example .carousel-caption h4 {
	font-family: 'Merriweather', serif;
	font-size: 20px;
	font-weight: 700;
	text-shadow: 0 2px 8px rgba(0,0,0,.6);
	margin: 0;
}

/* ═══════════════════════════════════════════
   ANNOUNCEMENT TICKER
═══════════════════════════════════════════ */

.ticker-wrap {
	background: #0e3d20;
	border-top: 2px solid #c9a84c;
	padding: 8px 0;
	overflow: hidden;
}

.ticker-wrap .ticker-lbl {
	background: #c9a84c;
	color: #0e3d20;
	font-weight: 700;
	font-size: 10px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	padding: 3px 12px;
	white-space: nowrap;
	flex-shrink: 0;
}

.ticker-wrap .ticker-inner-wrap {
	overflow: hidden;
	flex: 1;
	margin-left: 14px;
}

.ticker-text {
	display: inline-block;
	white-space: nowrap;
	animation: ticker-scroll 40s linear infinite;
	color: rgba(255,255,255,.9);
	font-size: 13px;
}

.ticker-text a {
	color: rgba(255,255,255,.9);
	text-decoration: none;
	margin-right: 60px;
	transition: color .2s;
}

.ticker-text a::before {
	content: '◆';
	font-size: 7px;
	color: #c9a84c;
	margin-right: 7px;
	vertical-align: middle;
}

.ticker-text a:hover { color: #c9a84c; }

@keyframes ticker-scroll {
	0%   { transform: translateX(100vw); }
	100% { transform: translateX(-100%); }
}

/* ═══════════════════════════════════════════
   ADMISSIONS CTA STRIP
═══════════════════════════════════════════ */

.admissions-strip {
	background: linear-gradient(135deg, #c9a84c 0%, #e0c06b 50%, #c9a84c 100%);
	padding: 22px 0;
}

.admissions-strip .container-fluid {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	padding: 0 30px;
}

.admissions-strip .strip-text h4 {
	font-family: 'Merriweather', serif;
	font-size: 20px;
	color: #0e3d20;
	margin: 0;
}

.admissions-strip .strip-text p {
	font-size: 13px;
	color: rgba(14,61,32,.75);
	margin: 3px 0 0;
}

.admissions-strip .strip-btns {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.btn-strip {
	background: #0e3d20;
	color: #fff;
	border: none;
	padding: 10px 22px;
	border-radius: 4px;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	transition: all .2s;
	display: inline-block;
}

.btn-strip:hover {
	background: #0a2e17;
	color: #fff;
	text-decoration: none;
	transform: translateY(-1px);
}

.btn-strip-outline {
	background: transparent;
	color: #0e3d20;
	border: 2px solid #0e3d20;
	padding: 8px 20px;
	border-radius: 4px;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	transition: all .2s;
	display: inline-block;
}

.btn-strip-outline:hover {
	background: #0e3d20;
	color: #fff;
	text-decoration: none;
}

/* ═══════════════════════════════════════════
   SECTION HEADINGS
═══════════════════════════════════════════ */

.section-heading {
	font-family: 'Merriweather', serif;
	font-size: 17px;
	font-weight: 700;
	color: #0e3d20;
	padding: 12px 16px;
	border-left: 4px solid #c9a84c;
	background: linear-gradient(90deg, #f0f7f2, transparent);
	margin-bottom: 0;
	letter-spacing: .3px;
}

/* ═══════════════════════════════════════════
   NEWS SECTION
═══════════════════════════════════════════ */

.news-section {
	background: #f5f8f6;
	padding: 40px 0 50px;
}

.news-card {
	background: #fff;
	border-radius: 6px;
	overflow: hidden;
	height: 100%;
	box-shadow: 0 2px 10px rgba(0,0,0,.06);
	border: 1px solid #dde8e1;
	display: flex;
	flex-direction: column;
	transition: box-shadow .2s, transform .2s;
}

.news-card:hover {
	box-shadow: 0 6px 24px rgba(14,61,32,.14);
	transform: translateY(-3px);
}

.news-card-header {
	background: #0e3d20;
	padding: 13px 16px;
	display: flex;
	align-items: center;
	gap: 9px;
}

.news-card-header .icon {
	width: 28px;
	height: 28px;
	background: rgba(201,168,76,.25);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.news-card-header .icon .fa {
	color: #c9a84c;
	font-size: 13px;
}

.news-card-header h4 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 700;
	font-size: 11px;
	color: #fff;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	margin: 0;
}

.news-list {
	list-style: none;
	padding: 0;
	margin: 0;
	flex: 1;
	min-height: 220px;
	max-height: 450px;
	overflow: hidden;
}

.news-list li {
	border-bottom: 1px solid #eef2ef;
}

.news-list li:last-child { border-bottom: none; }

.news-list li a {
	display: flex;
	gap: 8px;
	align-items: flex-start;
	padding: 11px 16px;
	font-size: 13px;
	color: #333;
	text-decoration: none;
	line-height: 1.5;
	transition: background .15s, color .15s;
}

.news-list li a:hover {
	background: #f0f7f2;
	color: #0e3d20;
}

.news-list li a::before {
	content: '›';
	color: #c9a84c;
	font-size: 18px;
	line-height: 1.2;
	font-weight: 700;
	flex-shrink: 0;
	margin-top: -1px;
}

.news-card-footer {
	padding: 10px 16px;
	border-top: 1px solid #eef2ef;
	background: #f9faf9;
}

.news-card-footer a {
	font-size: 11px;
	color: #0e3d20;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: .8px;
	transition: color .2s;
}

.news-card-footer a:hover { color: #c9a84c; }

/* ═══════════════════════════════════════════
   ABOUT / VISION BLOCKS
═══════════════════════════════════════════ */

.about-section {
	padding: 45px 0 50px;
	background: #fff;
}

.about-block {
	background: #f5f8f6;
	border-radius: 6px;
	padding: 24px 22px;
	border-left: 4px solid #0e3d20;
	height: 100%;
	transition: box-shadow .2s;
}

.about-block:hover { box-shadow: 0 4px 18px rgba(14,61,32,.1); }

.about-block h4 {
	font-family: 'Merriweather', serif;
	font-size: 16px;
	color: #0e3d20;
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.about-block h4 .fa { color: #c9a84c; font-size: 14px; }

.about-block p {
	font-size: 13.5px;
	line-height: 1.8;
	color: #555;
	margin: 0;
}

.about-block .read-more {
	display: inline-block;
	margin-top: 12px;
	font-size: 12px;
	color: #0e3d20;
	font-weight: 600;
	text-decoration: none;
	border-bottom: 1.5px solid #dde8e1;
	padding-bottom: 1px;
	transition: border-color .2s;
}

.about-block .read-more:hover { border-color: #0e3d20; }

/* ═══════════════════════════════════════════
   VC CARD
═══════════════════════════════════════════ */

.home-vc {
	min-height: 450px;
	clear: both;
	margin-bottom: 30px;
	font-size: 14px;
	color: #FFF;
	padding: 20px;
}

.vc-card {
	background: #0e3d20;
	border-radius: 6px;
	overflow: hidden;
	height: 100%;
	color: rgba(255,255,255,.85);
}

.vc-card-banner {
	background: linear-gradient(135deg, #0e3d20, #1a6b38);
	padding: 24px 22px 18px;
	display: flex;
	align-items: flex-start;
	gap: 16px;
	border-bottom: 3px solid #c9a84c;
}

.vc-card-banner img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid #c9a84c;
	flex-shrink: 0;
}

.vc-card-banner .vc-info h4 {
	font-family: 'Merriweather', serif;
	font-size: 16px;
	color: #fff;
	margin-bottom: 4px;
}

.vc-card-banner .vc-info .role {
	font-size: 10px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #c9a84c;
	margin-bottom: 0;
}

.vc-card-body {
	padding: 18px 22px 20px;
}

.vc-card-body p {
	font-size: 13px;
	line-height: 1.8;
	color: rgba(255,255,255,.75);
	margin: 0;
}

.vc-card-body a {
	display: inline-block;
	margin-top: 14px;
	font-size: 12px;
	color: #c9a84c;
	text-decoration: none;
	font-weight: 600;
	border-bottom: 1px solid rgba(201,168,76,.3);
	transition: .2s;
}

.vc-card-body a:hover { border-color: #c9a84c; }

/* VC legacy classes */
.vc-pic-box { float: left; }

.vc-pic {
	background-color: #999;
	border-radius: 360px;
	box-shadow: 0px 0px 6px 1px #333;
}

.vc-msg-heading {
	float: left;
	text-shadow: none;
	font-family: 'Archivo Black', sans-serif;
}

.vc-msg {
	font-size: 14px;
	color: #FFF;
	padding: 20px;
	text-align: justify;
	clear: both;
}

/* ═══════════════════════════════════════════
   OFFICES SECTION
═══════════════════════════════════════════ */

.offices {
	background-image: url(../images/offices-bg.jpg);
	background-repeat: repeat-x;
	background-position: bottom;
	background-color: #5096fc;
	min-height: 460px;
	height: 100%;
	overflow: auto;
}

.offices-section {
	background: #f5f8f6;
	padding: 44px 0 52px;
	border-top: 3px solid #c9a84c;
}

.offices-section .sec-title-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 24px;
}

.offices-section .sec-title {
	font-family: 'Merriweather', serif;
	font-size: 20px;
	font-weight: 700;
	color: #0e3d20;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 10px;
}

.offices-section .sec-title::before {
	content: '';
	display: inline-block;
	width: 4px;
	height: 26px;
	background: #c9a84c;
	border-radius: 2px;
	flex-shrink: 0;
}

.office-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.office-tile {
	background: #fff;
	border: 1px solid #dde8e1;
	border-radius: 8px;
	padding: 0;
	text-decoration: none;
	color: #333;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: all .25s;
	box-shadow: 0 2px 8px rgba(14,61,32,.06);
}

.office-tile:hover {
	box-shadow: 0 6px 24px rgba(14,61,32,.15);
	border-color: #c9a84c;
	color: #0e3d20;
	text-decoration: none;
	transform: translateY(-4px);
}

.office-tile .ot-top {
	background: #0e3d20;
	padding: 18px 20px;
	display: flex;
	align-items: center;
	gap: 14px;
	transition: background .25s;
}

.office-tile:hover .ot-top { background: #1a6b38; }

.office-tile .ot-icon {
	width: 44px;
	height: 44px;
	background: rgba(201,168,76,.2);
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: background .25s;
}

.office-tile:hover .ot-icon { background: rgba(201,168,76,.35); }
.office-tile .ot-icon .fa { color: #c9a84c; font-size: 20px; }

.office-tile .ot-abbr {
	font-family: 'Merriweather', serif;
	font-size: 18px;
	font-weight: 700;
	color: #c9a84c;
	line-height: 1;
}

.office-tile .ot-bottom {
	padding: 14px 20px 16px;
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.office-tile .ot-label {
	font-size: 13px;
	font-weight: 600;
	color: #333;
	line-height: 1.45;
	transition: color .2s;
}

.office-tile:hover .ot-label { color: #0e3d20; }

.office-tile .ot-arrow {
	color: #c9a84c;
	font-size: 18px;
	flex-shrink: 0;
	opacity: 0;
	transform: translateX(-6px);
	transition: all .25s;
}

.office-tile:hover .ot-arrow { opacity: 1; transform: translateX(0); }

/* Legacy office boxes */
.offices-box { border-right: 1px solid #3e8af9; overflow: auto; float: left; }

.offices .green-box {
	min-height: 150px;
	background-color: #a9cf46;
	font-size: 18px;
	text-transform: uppercase;
	text-align: right;
	float: left;
	margin: 15px;
	padding: 10px;
	color: #FFF;
	font-weight: 700;
	line-height: 15pt;
}

.offices .white-box {
	min-height: 150px;
	background-color: #FFF;
	font-size: 18px;
	text-transform: uppercase;
	text-align: right;
	float: left;
	margin: 15px;
	padding: 10px;
	color: #a9cf46;
	font-weight: 700;
	line-height: 15pt;
}

.offices .green-box:hover,
.offices .white-box:hover {
	background-color: #144e77;
	transition: all 500ms ease-out;
}

/* ═══════════════════════════════════════════
   QUICK LINKS SIDEBAR
═══════════════════════════════════════════ */

.quick-links {
	float: right;
	margin-top: 20px;
}

.quick-links ul li {
	color: #FFF;
	margin-top: 10px;
}

.quick-links ul li a {
	font-size: 23px;
	color: #FFF;
	margin-left: 10px;
	text-decoration: none;
}

.quick-links ul li a:hover {
	color: #a9cf46;
	transition: all 500ms ease-out;
	text-decoration: none;
}

.quick-links ul li i {
	background-color: #a9cf46;
	color: #FFF;
	margin-right: 10px;
}

.quick-links-box {
	background: #fff;
	border: 1px solid #dde8e1;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,.05);
}

.quick-links-box ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.quick-links-box ul li {
	border-bottom: 1px solid #eef2ef;
}

.quick-links-box ul li:last-child { border-bottom: none; }

.quick-links-box ul li a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 16px;
	font-size: 13px;
	color: #333;
	font-weight: 500;
	text-decoration: none;
	transition: background .15s, color .15s;
}

.quick-links-box ul li a:hover {
	background: #f0f7f2;
	color: #0e3d20;
}

.quick-links-box ul li a .ql-icon {
	width: 30px;
	height: 30px;
	background: #f0f7f2;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: background .15s;
}

.quick-links-box ul li a .ql-icon .fa { color: #0e3d20; font-size: 13px; }
.quick-links-box ul li a:hover .ql-icon { background: #0e3d20; }
.quick-links-box ul li a:hover .ql-icon .fa { color: #fff; }

/* ═══════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════ */

footer {
	background: #0a2615;
	color: rgba(255,255,255,.65);
	padding: 48px 0 0;
	border-top: 4px solid #c9a84c;
	min-height: 350px;
	height: 100%;
	overflow: auto;
}

footer .logo {
	font-family: 'Muli', sans-serif;
	font-size: 11px;
	color: #6c6c6c;
	text-transform: uppercase;
	float: left;
	text-align: left;
}

footer .logo img { margin-right: 10px; }

footer .contact {
	color: rgba(255,255,255,.65);
	font-size: 12px;
	text-align: left;
	margin-top: 20px;
	clear: both;
}

footer .copy {
	color: rgba(255,255,255,.35);
	font-size: 11px;
	text-align: left;
	clear: both;
	margin-top: 5px;
	margin-left: 10px;
}

footer .social-icon {
	margin-bottom: 20px;
	margin-top: 20px;
}

footer .social-icon i {
	margin-right: 20px;
	color: #c9a84c;
}

footer .social-icon i:hover { color: #fff; }

footer .heading {
	color: #c9a84c;
	text-shadow: none;
}

footer .navigation { float: left; }

footer .navigation ul li a {
	font-size: 12px;
	color: rgba(255,255,255,.6);
	line-height: 20pt;
	text-decoration: none;
}

footer .navigation ul li a:hover {
	color: #c9a84c;
	text-decoration: none;
}

footer .footer-brand-logo {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 14px;
}

footer .footer-brand-logo .fb-icon {
	width: 46px;
	height: 46px;
	background: rgba(201,168,76,.15);
	border-radius: 50%;
	border: 2px solid rgba(201,168,76,.3);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

footer .footer-brand-logo .fb-icon .fa { color: #c9a84c; font-size: 20px; }

footer .footer-brand-logo .fb-name {
	font-family: 'Merriweather', serif;
	font-size: 14px;
	color: #fff;
	font-weight: 700;
	line-height: 1.3;
}

footer h5 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 700;
	font-size: 10px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #c9a84c;
	margin-bottom: 16px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(255,255,255,.1);
}

footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

footer ul li { margin-bottom: 8px; }

footer ul li a {
	font-size: 13px;
	color: rgba(255,255,255,.6);
	text-decoration: none;
	transition: color .2s;
	display: flex;
	align-items: center;
	gap: 6px;
}

footer ul li a::before {
	content: '›';
	color: rgba(201,168,76,.6);
	font-size: 16px;
	line-height: 1;
	font-weight: 700;
}

footer ul li a:hover { color: #c9a84c; }

.footer-contact-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 12px;
	font-size: 13px;
	color: rgba(255,255,255,.65);
}

.footer-contact-item .fc-icon {
	width: 30px;
	height: 30px;
	background: rgba(201,168,76,.12);
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.footer-contact-item .fc-icon .fa { color: #c9a84c; font-size: 12px; }
.footer-contact-item a { color: rgba(255,255,255,.65); text-decoration: none; transition: color .2s; }
.footer-contact-item a:hover { color: #c9a84c; }

.footer-social {
	display: flex;
	gap: 8px;
	margin-top: 18px;
}

.footer-social a {
	width: 34px;
	height: 34px;
	border: 1px solid rgba(255,255,255,.2);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255,255,255,.6);
	font-size: 14px;
	text-decoration: none;
	transition: all .2s;
}

.footer-social a:hover {
	background: #c9a84c;
	border-color: #c9a84c;
	color: #0a2615;
}

.footer-bottom {
	margin-top: 36px;
	padding: 16px 24px;
	background: rgba(0,0,0,.35);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	font-size: 12px;
	color: rgba(255,255,255,.35);
}

.footer-bottom a { color: rgba(255,255,255,.4); text-decoration: none; }
.footer-bottom a:hover { color: #c9a84c; }

/* ═══════════════════════════════════════════
   MODAL  (improved)
═══════════════════════════════════════════ */

.modal-content { border-radius: 8px; overflow: hidden; border: none; }

.modal-header {
	background: #0e3d20;
	border: none;
	padding: 16px 20px;
}

.modal-header .modal-title { color: #fff; font-size: 16px; }
.modal-header .close { color: #fff; opacity: .8; text-shadow: none; }
.modal-body { padding: 0; max-height: 65vh; overflow-y: auto; }

.ann-item {
	display: flex;
	gap: 12px;
	padding: 15px 20px;
	border-bottom: 1px solid #f0f0f0;
	align-items: flex-start;
}

.ann-item:last-child { border-bottom: none; }

.ann-badge {
	background: #0e3d20;
	color: #fff;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1px;
	padding: 3px 8px;
	border-radius: 3px;
	white-space: nowrap;
	flex-shrink: 0;
	margin-top: 2px;
}

.ann-badge.gold { background: #c9a84c; color: #0e3d20; }
.ann-text { font-size: 14px; color: #333; line-height: 1.55; }
.ann-text a { color: #0e3d20; font-weight: 600; text-decoration: none; }
.ann-text a:hover { color: #c9a84c; }
.modal-footer { background: #f9f9f9; border-top: 1px solid #eee; }

/* ═══════════════════════════════════════════
   HOME — VISION / ABOUT blocks (legacy)
═══════════════════════════════════════════ */

.home-vision {
	min-height: 230px;
	margin-bottom: 30px;
	background-image: url(../images/green-bg.png);
	font-size: 14px;
	color: #FFF;
	padding: 20px;
	text-align: left;
}

.home-about {
	min-height: 190px;
	background-image: url(../images/purple-bg.png);
	font-size: 14px;
	color: #FFF;
	padding: 20px;
	text-align: left;
}

.home-vision h4, .home-about h4 { color: #FFF; }

/* ═══════════════════════════════════════════
   ABOUT PAGE
═══════════════════════════════════════════ */

.about {
	background-image: url(../images/adminstrative-block-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	min-height: 550px;
	height: 100%;
	overflow: auto;
}

/* ═══════════════════════════════════════════
   PHOTO SLIDER
═══════════════════════════════════════════ */

.photo-slider {
	background-color: #FFF;
	min-height: 230px;
	height: 100%;
	overflow: auto;
}

/* ═══════════════════════════════════════════
   CONTENT & PAGE PAGES
═══════════════════════════════════════════ */

.div-centered {
	float: none;
	margin: 0 auto;
}

.content-div {
	margin-top: 50px;
	margin-bottom: 50px;
	min-height: 400px;
	background-color: #FFF;
	overflow: auto;
}

.page-head {
	padding: 20px;
	background-size: cover;
	background-color: #02a372;
	width: 100%;
	min-height: 150px;
}

.page-header-bg {
	width: 100%;
	height: 150px;
	background-size: cover;
}

.page-heading {
	font-family: 'Archivo Black', sans-serif;
	text-align: center;
	color: #FFF;
	text-transform: uppercase;
}

.page-heading h2 {
	text-shadow: 2px 2px 8px #000000 !important;
}

.page-heading .contact-info {
	font-family: 'Muli', sans-serif;
	text-align: center;
	color: #FFF;
	font-size: 18px;
	text-transform: uppercase;
}

.page-shadow {
	z-index: 5;
	position: relative;
	box-shadow: 0px 6px 50px #888;
}

.content-heading {
	font-family: 'Archivo Black', sans-serif;
	color: #02a372;
}

.content {
	text-align: justify;
	line-height: 18pt;
}

.page-content {
	text-align: justify;
	line-height: 20pt;
}

.page-content h2, .page-content h3, .page-content h4 {
	font-family: 'Archivo Black', sans-serif;
	color: #02a372;
	text-transform: uppercase;
}

.page-content p { line-height: 20pt; }

.page-content img {
	float: left;
	margin: 0px 20px 0px 0px;
	border: 1px solid;
}

/* ═══════════════════════════════════════════
   STAFF / OFFICE
═══════════════════════════════════════════ */

.office-staff {
	font-size: 13px;
	line-height: 14pt;
	text-align: center;
}

.office-staff h4, .office-staff h5 {
	font-family: 'Archivo Black', sans-serif;
	color: #02a372;
	text-transform: uppercase;
	text-align: center;
}

.office-staff .panel { background-color: #E6E7E8; }

.bdr-right { border-left: 1px solid #CCC; }

/* ═══════════════════════════════════════════
   BREADCRUMB / NAV
═══════════════════════════════════════════ */

.breadcramp {
	font-family: 'Muli', sans-serif;
	font-size: 11px;
}

.breadcramp a { color: #FFF; text-decoration: none; }
.breadcramp a:hover { color: #000; text-decoration: none; }
.breadcramp span { color: #000 !important; }

.page-nav { text-align: right; text-transform: uppercase; }
.page-nav li { margin-top: 20px; }
.page-nav li a { color: #000; font-size: 14px; text-decoration: none; }
.page-nav li a:hover { color: #02a372; text-decoration: none; transition: width 2s; }

/* ═══════════════════════════════════════════
   PROGRAMS
═══════════════════════════════════════════ */

.programs {
	padding: 10px;
	font-size: 16px;
	border-radius: 5px;
}

/* ═══════════════════════════════════════════
   PROFILE
═══════════════════════════════════════════ */

.profile-pic {
	background-color: #999;
	border-radius: 360px;
	box-shadow: 0px 0px 6px 1px #999;
}

.profile-model { font-size: 14px; }
.profile-model div { margin-top: 12px; }

/* ═══════════════════════════════════════════
   CARDS
═══════════════════════════════════════════ */

.card {
	padding-top: 20px;
	margin: 10px 0 20px 0;
	background-color: rgba(214, 224, 226, 0.2);
	border-top-width: 0;
	border-bottom-width: 2px;
	border-radius: 3px;
	box-shadow: 0px 0px 6px 1px #999;
	box-sizing: border-box;
}

.card .card-heading { padding: 0 20px; margin: 0; }
.card .card-heading.simple { font-size: 20px; font-weight: 300; color: #777; border-bottom: 1px solid #e5e5e5; }

.card .card-body { padding: 0 20px; margin-top: 20px; }

.card.hovercard {
	position: relative;
	padding-top: 0;
	min-height: 270px;
	overflow: hidden;
	text-align: center;
	background-color: rgba(214, 224, 226, 0.6);
}

.card.hovercard .cardheader {
	background: url("../images/profile-bg.jpg");
	background-color: #03F;
	background-size: cover;
	min-height: 80px;
}

.card.hovercard .avatar {
	position: relative;
	top: -50px;
	min-height: 100px;
	margin-bottom: -50px;
}

.card.hovercard .avatar img {
	width: 100px;
	height: 100px;
	max-width: 100px;
	max-height: 100px;
	border-radius: 50%;
	margin: 0 auto;
	border: 5px solid rgba(255,255,255,0.5);
}

.card.hovercard .info { padding: 4px 8px 10px; }
.card.hovercard .info .title { margin-bottom: 4px; font-size: 16px; line-height: 1; color: #262626; }
.card.hovercard .info .desc { overflow: hidden; font-size: 12px; line-height: 20px; color: #737373; text-overflow: ellipsis; }
.card.hovercard .bottom { padding: 0 20px; margin-bottom: 17px; }
.card.hovercard .bottom .email { font-size: 11px; color: #737373; text-decoration: none; }
.card.hovercard .bottom .email:hover { color: #02A372; text-decoration: none; }

.card.cardstaff {
	position: relative;
	padding: 15px;
	min-height: 180px;
	overflow: hidden;
	text-align: center;
}

.card.colorstaff { background-color: rgba(214, 224, 226, 0.6); }
.card.colorhead  { background-color: #D7FFD7; }

.card.cardstaff .name {
	font-size: 14px;
	font-weight: bold;
	padding: 10px;
	border-bottom: 2px solid #CCC;
	text-transform: uppercase;
}

.card.cardstaff .detail {
	font-size: 12px !important;
	padding-top: 20px;
	line-height: 18pt;
}

.card.btn { border-radius: 50%; width: 32px; height: 32px; line-height: 18px; }

.dean-card {
	margin-top: 20px;
	float: right;
	padding-right: 0px !important;
}

.dean-card h4 {
	border-bottom: 1px solid #CCC;
	padding-bottom: 5px;
	margin-bottom: 20px;
	text-align: center;
}

.contact-info { font-size: 12px; }

.dept-contact {
	background-color: #6384B7;
	color: #FFF;
	padding: 0px 20px;
	border-radius: 5px;
	border: 1px solid #4D71A6;
}

/* ═══════════════════════════════════════════
   STICKY NOTE
═══════════════════════════════════════════ */

.stickyNote {
	margin: 10px;
	background: linear-gradient(#EBEB00, #C5C500);
	padding: 20px;
	box-shadow: 0px 10px 20px #999;
}

/* ═══════════════════════════════════════════
   NEWS BOXES (legacy)
═══════════════════════════════════════════ */

.news { background-color: #FFF; min-height: 500px; height: 100%; overflow: auto; }

.tender-notice {
	background-image: url(../images/seperater.png);
	background-repeat: no-repeat;
	background-position: center right;
	float: left;
}

.tender-notice-heading { color: #144e77; text-shadow: none; }
.tender-notice ul { list-style-image: url('../images/bullet.gif'); margin-left: 40px; }
.tender-notice ul li { margin-top: 15px; color: #000; }
.tender-notice a.tender { color: #000000; text-decoration: none; }
.tender-notice a.tender:hover { color: #35658A; text-decoration: none; padding-left: 10px; transition: all 250ms ease 0s; }

.news a.readmore { color: #0155d2; text-decoration: none; }
.news a.readmore:hover { color: #000; text-decoration: none; }

.news-events {
	background-image: url(../images/seperater.png);
	background-repeat: no-repeat;
	background-position: center right;
	float: left;
}

.news-events-heading { color: #144e77; text-shadow: none; }
.news-events ul li { padding: 8px 0; border-bottom: 1px dotted #999; line-height: 13pt; color: #000; }
.news-events a.newsevents { color: #000000; text-decoration: none; }
.news-events a.newsevents:hover { color: #35658A; text-decoration: none; padding-left: 10px; transition: all 250ms ease 0s; }

.news-box {
	background: #fff;
	transition: all 0.2s ease;
	border: 1px dashed #999;
	margin-top: 10px;
	box-sizing: border-box;
	border-radius: 5px;
	padding: 0 20px 20px 20px;
}

.news-box:hover { border: 1px solid #525C7A; }
.news-box .box-headline { min-height: 140px; background: #cdecf5; margin: 0px -20px; }
.news-box .box-title { color: #000; font-size: 16px; font-weight: 500; text-transform: uppercase; padding: 20px; }
.news-box .box-content { padding: 16px; border-radius: 0 0 2px 2px; box-sizing: border-box; }
.news-box .box-content p { color: #515c66; text-transform: none; }

.news-detail h4 { border-bottom: 1px solid #ccc; padding-bottom: 5px; }
.news-detail .date { font-size: 12px; color: #666; }
.news-detail .news-content { color: #000; margin-top: 20px; line-height: 24pt; text-transform: none; }

/* ═══════════════════════════════════════════
   DOWNLOAD BOX
═══════════════════════════════════════════ */

.download-box {
	background: #FFF;
	transition: all 0.2s ease;
	border: 1px solid #999;
	margin-top: 30px;
	box-sizing: border-box;
	border-radius: 5px;
	padding: 0 20px 20px 20px;
	box-shadow: 0 8px 6px -6px #999;
}

.download-box a:link, .download-box a:hover { color: #000; text-decoration: none; }
.download-box:hover { border: 1px solid #000; background-color: #CCC; }
.download-box .box-headline { min-height: 100px; background: #2980B9; margin: 0px -20px; }
.download-box .box-title { color: #FFF; font-size: 16px; font-weight: 500; text-transform: uppercase; padding: 20px; }
.download-box .box-content { padding: 16px; border-radius: 0 0 2px 2px; box-sizing: border-box; }
.download-box .box-content p { color: #515c66; text-transform: none; }

/* ═══════════════════════════════════════════
   IMAGES
═══════════════════════════════════════════ */

.img-thumbnail {
	display: inline-block;
	height: auto;
	max-width: 100%;
	padding: 4px;
	line-height: 1.428571429;
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 4px;
	transition: all 0.2s ease-in-out;
}

.img-fluid { max-width: 100%; height: auto; }

.img-round {
	border-radius: 360px;
	border: 5px solid #FFF;
	box-shadow: 0px 0px 6px 1px #333;
}

.more-arrow { color: #FFF; }
.more-arrow:hover { color: #000; }

.vc-image { width: 50%; }

/* ═══════════════════════════════════════════
   FORMS
═══════════════════════════════════════════ */

.from-error { color: #F00; }

/* ═══════════════════════════════════════════
   ERROR 404
═══════════════════════════════════════════ */

.error .clip .shadow { height: 180px; }
.error .clip:nth-of-type(2) .shadow { width: 130px; }
.error .clip:nth-of-type(1) .shadow, .error .clip:nth-of-type(3) .shadow { width: 250px; }
.error .digit { width: 150px; height: 150px; line-height: 150px; font-size: 120px; font-weight: bold; }
.error h2 { font-size: 32px; }
.error .msg { top: -190px; left: 30%; width: 80px; height: 80px; line-height: 80px; font-size: 32px; }
.error span.triangle { top: 70%; right: 0%; border-left: 20px solid #535353; border-top: 15px solid transparent; border-bottom: 15px solid transparent; }

.error .container-error-404 { margin-top: 2%; position: relative; height: 250px; padding-top: 40px; }
.error .container-error-404 .clip { display: inline-block; transform: skew(-45deg); }
.error .clip .shadow { overflow: hidden; }
.error .clip:nth-of-type(2) .shadow { overflow: hidden; position: relative; box-shadow: inset 20px 0px 20px -15px rgba(150,150,150,0.8), 20px 0px 20px -15px rgba(150,150,150,0.8); }
.error .clip:nth-of-type(3) .shadow:after, .error .clip:nth-of-type(1) .shadow:after { content: ""; position: absolute; right: -8px; bottom: 0px; z-index: 9999; height: 100%; width: 10px; background: linear-gradient(90deg, transparent, rgba(173,173,173, 0.8), transparent); border-radius: 50%; }
.error .clip:nth-of-type(3) .shadow:after { left: -8px; }
.error .digit { position: relative; top: 8%; color: white; background: #07B3F9; border-radius: 50%; display: inline-block; transform: skew(45deg); }
.error .clip:nth-of-type(2) .digit { left: -10%; }
.error .clip:nth-of-type(1) .digit { right: -20%; }
.error .clip:nth-of-type(3) .digit { left: -20%; }
.error h2 { color: #A2A2A2; font-weight: bold; padding-bottom: 20px; }
.error .msg { position: relative; z-index: 9999; display: block; background: #535353; color: #A2A2A2; border-radius: 50%; font-style: italic; }
.error .triangle { position: absolute; z-index: 999; transform: rotate(45deg); content: ""; width: 0; height: 0; }

/* ═══════════════════════════════════════════
   FRAMEWORK UTILITIES
═══════════════════════════════════════════ */

.overlay { position: relative; z-index: 20; }
.ground-color { background: white; }
.item-bg-color { background: #EAEAEA; }

.padding-top     { padding-top: 10px; }
.padding-bottom  { padding-bottom: 10px; }
.padding-vertical{ padding-top: 10px; padding-bottom: 10px; }
.padding-horizontal { padding-left: 10px; padding-right: 10px; }
.padding-all     { padding: 10px; }
.no-padding-left { padding-left: 0px; }
.no-padding-right{ padding-right: 0px; }
.no-vertical-padding   { padding-top: 0px; padding-bottom: 0px; }
.no-horizontal-padding { padding-left: 0px; padding-right: 0px; }
.no-padding      { padding: 0px; }

.margin-top      { margin-top: 10px; }
.margin-bottom   { margin-bottom: 10px; }
.margin-right    { margin-right: 10px; }
.margin-left     { margin-left: 10px; }
.margin-horizontal { margin-left: 10px; margin-right: 10px; }
.margin-vertical { margin-top: 10px; margin-bottom: 10px; }
.margin-all      { margin: 10px; }
.no-margin       { margin: 0px; }
.no-vertical-margin   { margin-top: 0px; margin-bottom: 0px; }
.no-horizontal-margin { margin-left: 0px; margin-right: 0px; }
.inside-col-shrink { margin: 0px 20px; }

hr { margin: 0px; padding: 0px; border-top: 1px dashed #999; }

/* ═══════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════ */

@media (max-width: 991px) {
	.office-grid { grid-template-columns: repeat(2, 1fr); }
	.admissions-strip .container-fluid { flex-direction: column; text-align: center; }
	.admissions-strip .strip-btns { justify-content: center; }
}

@media (max-width: 767px) {
	.office-grid { grid-template-columns: 1fr; }
	.logo-text { font-size: 15px; }
	.slogan-inner .tagline { font-size: 18px; }
	.top-utility-bar .contact-links { display: none; }
	#carousel-example .carousel-inner .item img { max-height: 220px; }
	.vc-image { width: 100%; }
}

@media screen and (max-width: 480px) {
	h1 { font-size: 2.2rem; }
	h2 { font-size: 2rem; }
	h3 { font-size: 1.8rem; }
	h4 { font-size: 1.5rem; }
	h5 { font-size: 1.2rem; }

	header .logo { font-size: 13px; line-height: 12pt; margin-top: 15px; }
	.slogan-inner .tagline { font-size: 20px; }
	.home-vc { margin-top: 30px; }
}

@media (max-width: 767px) {
	.error .clip .shadow { height: 100px; }
	.error .clip:nth-of-type(2) .shadow { width: 80px; }
	.error .clip:nth-of-type(1) .shadow, .error .clip:nth-of-type(3) .shadow { width: 100px; }
	.error .digit { width: 80px; height: 80px; line-height: 80px; font-size: 52px; }
	.error h2 { font-size: 24px; }
	.error .msg { top: -110px; left: 15%; width: 40px; height: 40px; line-height: 40px; font-size: 18px; }
	.error span.triangle { top: 70%; right: -3%; border-left: 10px solid #535353; border-top: 8px solid transparent; border-bottom: 8px solid transparent; }
	.error .container-error-404 { height: 150px; }
}