@charset "utf-8";
/* CSS Document */

* {
	box-sizing: border-box; 
	font-family: "inter-variable", sans-serif;
    font-weight: 400;
    font-style: normal;
}

body{
	color: #1F1F1F;
	overflow-x: hidden;
}

/* nav styles */
.mainNav{
	background-color: #F4F6F8;
	align-self: center;
	z-index: 3;
}

.container-fluid{
	background-color: #F4F6F8;
}

.btn-green, form-control{
	color: #92c100;
}

.nav-link{
	text-decoration: none;
	color: #0B2545;
}

.nav-link:hover {
	color: #F2A541;
}

.mainNav{
	padding: 0;
}

.mainNav .nav-link{
	padding: 1em;
}

.navbar-header{
	display: flex;
	justify-content: space-between;
}

.btn-blue{
    background-color: #0B2545 !important;
    color: white;
    border: none;
    border-radius: .2em;
}

.mainNav .form-control {
    width: 125px !important;
}

.homeMain{
	background-color: #0B2545;
}

/*Video*/
.video-hero{
	width: 100%;
	height: auto;
}

.scroll-block{
	height: 450vh;
}
.hero-bg-img{
  	background: url("../images/hero.jpg");
	background-position: top;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: cover;
	
}



/* hero/jumbotron */
.img-hero{
	width: 100%;
	height: auto;
}

.text-overlay{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-transform: uppercase;
}

.jumbotron-heading{
	font-weight: 900;
	font-size: 350%;
}



.section-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: #F2A541;
}

.feature{
	text-decoration: none;
	color: #F4F6F8;
	vertical-align: middle;
	padding: 5px;
}

.product-img{
	margin: auto;
	width: 80%;
}

.product-link{
	text-decoration: none;
	color: black;
}

.prog-finder{
	background-color: #0B2545;
	padding: 50px 100px;
}


/* Background Hero Img in CSS */
.bg-img{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 400px;
}

.promo-img-1{
	background: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)), url('../images/bgImgProgHub.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.overlay-container {position: relative;}

.overlay-text {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: white;
	font-size: x-large;
}

.overlay-text h2{color: white;}

/* PROGRAM FINDER CAROUSEL */
.prog-carousel .item {
	height: 100%;
	padding: 6px 0;
}

.prog-carousel .card {
	height: 100%;
	border: none;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
	margin: 0;
	background-color: #F4F6F8;
}

.prog-carousel .product-link {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
}

.prog-carousel .product-img {
	width: 100%;
	height: 240px;
	object-fit: cover;
	display: block;
	margin: 0;
}

.prog-carousel .card-body {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	flex-grow: 1;
	padding: 1.25rem;
	text-align: left;
}

.prog-carousel .card-body h3 {
	min-height: 3.2rem;
	margin-bottom: 0.75rem;
}

.prog-carousel .card-body p {
	margin-bottom: 0;
}

/* PROGRAM FINDER NAV */
.prog-carousel .owl-nav {
	margin-top: 1.5rem;
	display: flex;
	justify-content: center;
	gap: 12px;
	position: static;
	transform: none;
	width: auto;
}

.prog-carousel .owl-nav button.owl-prev,
.prog-carousel .owl-nav button.owl-next {
	width: 48px;
	height: 48px;
	border-radius: 50% !important;
	border: none;
	background: #F2A541 !important;
	color: #0B2545 !important;
	font-size: 1.25rem !important;
	margin: 0;
	transition: all 0.3s ease;
}

.prog-carousel .owl-nav button.owl-prev:hover,
.prog-carousel .owl-nav button.owl-next:hover {
	background: #0B2545 !important;
	color: #F2A541 !important;
}

/* SUCCESS STORIES CAROUSEL */
.success-carousel .owl-item {
	padding: 6px 0;
}

.success-carousel .owl-nav {
	margin-top: 1.5rem;
	display: flex;
	justify-content: center;
	gap: 12px;
	position: static;
	transform: none;
	width: auto;
}

.success-carousel .owl-nav button.owl-prev,
.success-carousel .owl-nav button.owl-next {
	width: 48px;
	height: 48px;
	border-radius: 50% !important;
	border: none;
	background: #0B2545 !important;
	color: #F2A541 !important;
	font-size: 1.25rem !important;
	margin: 0;
	transition: all 0.3s ease;
}

.success-carousel .owl-nav button.owl-prev:hover,
.success-carousel .owl-nav button.owl-next:hover {
	background: #F2A541 !important;
	color: #0B2545 !important;
}

.prog-carousel,
.success-carousel {
	position: relative;
}

.prog-carousel .owl-nav,
.success-carousel .owl-nav {
	display: flex !important;
	justify-content: center;
	align-items: center;
	gap: 12px;
	margin-top: 1.5rem;
	position: relative;
	z-index: 20;
}

.prog-carousel .owl-nav button.owl-prev,
.prog-carousel .owl-nav button.owl-next,
.success-carousel .owl-nav button.owl-prev,
.success-carousel .owl-nav button.owl-next {
	width: 48px;
	height: 48px;
	border-radius: 50% !important;
	border: none;
	background: #0B2545 !important;
	color: #F2A541 !important;
	font-size: 1.25rem !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
}

.prog-carousel .owl-nav button.owl-prev:hover,
.prog-carousel .owl-nav button.owl-next:hover,
.success-carousel .owl-nav button.owl-prev:hover,
.success-carousel .owl-nav button.owl-next:hover {
	background: #F2A541 !important;
	color: #0B2545 !important;
}

.prog-carousel .owl-nav button span,
.success-carousel .owl-nav button span {
	display: inline-block;
	font-size: 1.5rem;
	line-height: 1;
	font-weight: 700;
}

h1{
	font-family: "oswald";
	font-weight: 700;
	font-size: 90pt;
}

h2{
	font-family: "oswald";
	font-weight: 500;
	font-size: 35pt;
}

h3{
	font-family: "oswald";
	font-weight: 350;
	font-size: 25pt;
}

h4{
	font-family: "inter-variable";
	font-weight: 300;
	font-size: 16pt;
}


.bg-parallax {
    background-image: url("../images/hero.jpg");
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 1300px;
    color: white;
    text-align: center;
	position: relative;
}

/* Overlay image */
.overlay-grad {
	position: absolute;
    top: 50%; /* Center vertically relative to section */
    left: 50%; /* Center horizontally */
    transform: translate(-50%, -50%);
    width: 100vw;
    z-index: 2; /* Ensure it appears above background */
	padding-bottom: 500px;
	padding-top: 500px;
}

/* Content after parallax */
.content {
    background: #0B2545;
    font-size: 18px;
	z-index: 3;
	position: relative
}

.prog-finder-home{
	z-index: 2;
	position: relative
}

/* Sticky text container */
.sticky-text-container {
    position: relative;
    height: 135vh; /* Allow sticky to compute relative to parent */
}

/* Sticky text */
.sticky-text {
    position: sticky;
    top: 25vh; /* distance from top of viewport */
   	color: #F4F6F8;
    padding: 10px;
	z-index: 3;
	max-width: 80%;
    margin: 0 auto;
	text-align: left;
	font-family: "oswald";
	font-weight: 500;
	font-size: 75pt;
	line-height: 74pt;
}

.details-heading{
	text-align: left;
	margin-bottom: -2px;
}

.details-subheading{
	text-align: left;
}

.details-header-spacing{
	position: absolute;
	bottom: 0;
	margin-bottom: 15px;
}

.details-bg-img{
	height: 500px;
}

.contact-box{
	background-color: #0B2545;
	color: #F4F6F8;
	padding: 5px;
	margin: 5px;
	align-content: center;
}

.whitetxt{
	color: #F4F6F8;
}

.btn-contact{
	text-align: left;
}

.content-section {
      padding: 60px 20px;
    }
    .btn-primary {
      background-color: #0066cc;
      border: none;
    }
    .btn-primary:hover {
      background-color: #004080;
    }

  .why-card {
    background: #fff;
    transition: 0.3s ease;
  }

  .why-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08);
  }

  .why-number {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
    color: #d0d7de;
    margin-bottom: 1rem;
  }

  .why-card h4 {
    font-size: 1.25rem;
  }

.steps-section{
	background-color: #0B2545;
	color: #F4F6F8; 
}

.dates-section{
	background-color: #0B2545;
}

.header-dates-section{
	color: #F4F6F8;
}

.start-application-section{
	background-color: #0B2545;
	color: #F4F6F8;
}

.section-img-wrap {
	overflow: hidden;
	border-radius: 18px;
}

.section-img {
	width: 100%;
	height: 450px;
	object-fit: cover;
	display: block;
	border-radius: 18px;
}

.tour-card,
.contact-card {
	padding: 1.5rem;
	border: 1px solid #ddd;
	border-radius: 12px;
	background-color: #fff;
}

.tour-card ul {
	margin: 0;
	padding-left: 1.2rem;
}

.tour-card li {
	margin-bottom: 0.5rem;
}

/* BASE BUTTON */
.btn {
    display: inline-block;
    padding: 16px 42px;
    font-size: 1.2rem;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    border-radius: 4px;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    min-width: 190px;
}

/* GOLD BUTTON */
.btn-primary {
    background-color: #F2A541;
    color: #0B2545;
    border-color: #F2A541;
}

/* HOVER → SWITCH TO NAVY */
.btn-primary:hover,
.btn-primary:focus {
    background-color: #0B2545;
    color: #F2A541;
    border-color: #0B2545;
}

/* NAVY BUTTON */
.btn-secondary {
    background-color: #0B2545;
    color: #F2A541;
    border-color: #0B2545;
}

/* HOVER → SWITCH TO GOLD */
.btn-secondary:hover,
.btn-secondary:focus {
    background-color: #F2A541;
    color: #0B2545;
    border-color: #F2A541;
}

.btn-outline-secondary{
	color: #F2A541;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus{
	color: #F2A541;
	background-color: #0B2545;
    border-color: #0B2545;
}

.scholarship-section{
	background-color: #0B2545;
}

.scholarship-section-header{
	color: #F4F6F8
}

.stats-section {
	position: relative;
	z-index: 2; 
	background-color: #0B2545;
	color: #F4F6F8;
	padding: 50px 0 0;
}

.stats-section .section-tag {
	color: #F2A541;
}

.stats-section .section-intro {
	color: #cfd6df;
	max-width: 700px;
	margin: 0 auto;
}

.stat-card {
	background-color: rgba(255,255,255,0.05);
	padding: 2rem;
	border-radius: 18px;
	border: 1px solid rgba(255,255,255,0.1);
	transition: all 0.3s ease;
	height: 100%;
}

.stat-card:hover {
	transform: translateY(-6px);
	background-color: rgba(255,255,255,0.08);
}

.stat-number {
	font-size: 2.5rem;
	font-weight: 700;
	color: #F2A541;
	margin-bottom: 0.5rem;
}

.stat-card h4 {
	margin-bottom: 0.5rem;
	color: #fff;
}

.stat-card p {
	color: #cfd6df;
	margin: 0;
}

/* VISIT BANNER */
.visit-banner-inner {
	background: linear-gradient(135deg, #0B2545 0%, #163a66 100%);
	color: #F4F6F8;
	padding: 3rem;
	border-radius: 24px;
	box-shadow: 0 14px 40px rgba(11, 37, 69, 0.16);
}

.visit-banner .section-tag,
.apply-now-section .section-tag,
.success-stories-section .section-tag,
.news-events-section .section-tag {
	color: #F2A541;
}

.visit-banner h2,
.apply-now-box h2 {
	color: #F4F6F8;
	margin-bottom: 0.75rem;
}

.visit-banner p {
	color: #e1e7ee;
	max-width: 800px;
}

.news-events-section-header{
	color: #F4F6F8;
}

/* SUCCESS STORIES */
.success-stories-section {
	background-color: #f8fafc;
}

.success-story-card {
	background-color: #F4F6F8;
	border-radius: 22px;
	overflow: hidden;
	
}

.success-story-img {
	width: 100%;
	height: 100%;
	min-height: 380px;
	object-fit: cover;
	display: block;
}

.success-story-content {
	padding: 2.5rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
}

.success-program {
	color: #F2A541;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-bottom: 0.75rem;
}

.success-story-content h3 {
	color: #0B2545;
	margin-bottom: 1rem;
	font-size: 1.8rem;
}

.success-story-content p {
	color: #5d6776;
	line-height: 1.7;
}

.success-meta {
	margin-top: 1.25rem;
	color: #0B2545;
}

/* OWL CUSTOM */
.success-carousel .owl-stage-outer {
	padding-bottom: 10px;
}

.success-carousel .owl-dots {
	text-align: center;
	margin-top: 1.5rem;
}

.success-carousel .owl-dot span {
	width: 12px;
	height: 12px;
	margin: 5px;
	background: #c9d2dc;
	display: inline-block;
	border-radius: 50%;
	transition: all 0.3s ease;
}

.success-carousel .owl-dot.active span {
	background: #F2A541;
}

.success-carousel .owl-nav {
	margin-top: 1rem;
	text-align: center;
}

.success-carousel .owl-nav button.owl-prev,
.success-carousel .owl-nav button.owl-next {
	background: #0B2545 !important;
	color: #F2A541 !important;
	width: 48px;
	height: 48px;
	border-radius: 50% !important;
	margin: 0 6px;
	font-size: 1.4rem !important;
	transition: all 0.3s ease;
}

.success-carousel .owl-nav button.owl-prev:hover,
.success-carousel .owl-nav button.owl-next:hover {
	background: #F2A541 !important;
	color: #0B2545 !important;
}

/* NEWS & EVENTS */
.news-card {
	background-color: #F4F6F8;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 10px 28px rgba(11, 37, 69, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.news-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 14px 34px rgba(11, 37, 69, 0.14);
}

.news-card-img {
	width: 100%;
	height: 240px;
	object-fit: cover;
	display: block;
}

.news-card-body {
	padding: 1.5rem;
}

.news-date {
	font-weight: 700;
	margin-bottom: 0.75rem;
}

.news-card h3 {
	color: #0B2545;
	font-size: 2rem;
	margin-bottom: 0.85rem;
}

.news-card p {
	color: #3A5F7D;
	margin-bottom: 1rem;
}

.news-link {
	color: #0B2545;
	font-weight: 700;
	text-decoration: none;
}

.news-link:hover {
	color: #F2A541;
}

/* APPLY NOW */
.apply-now-section {
	background-color: #0B2545;
}

.apply-now-box {
	padding: 3rem 2rem;
	max-width: 900px;
	margin: 0 auto;
}

.apply-now-box h2 {
	font-size: 2.5rem;
}

.apply-now-box .section-intro {
	color: #d9e1e8;
	max-width: 700px;
}

.prog-carousel .item {
	height: 100%;
}

.prog-carousel .card {
	height: 100%;
	border: none;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
}

.prog-carousel .product-link {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
}

.prog-carousel .product-img {
	width: 100%;
	height: 240px;
	object-fit: cover;
	display: block;
}

.prog-carousel .card-body {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	flex-grow: 1;
	padding: 1.25rem;
}

.prog-carousel .card-body h3 {
	min-height: 3.2rem;
}

.prog-carousel .card-body p {
	margin-bottom: 0;
}

/* Owl nav styling */
.prog-carousel .owl-nav {
	margin-top: 1.5rem;
	text-align: center;
}

.prog-carousel .owl-nav button.owl-prev,
.prog-carousel .owl-nav button.owl-next,
.success-carousel .owl-nav button.owl-prev,
.success-carousel .owl-nav button.owl-next {
	width: 48px;
	height: 48px;
	border-radius: 50% !important;
	border: none;
	background: #0B2545 !important;
	color: #F2A541 !important;
	font-size: 1.25rem !important;
	margin: 0 6px;
	transition: all 0.3s ease;
}

.prog-carousel .owl-nav button.owl-prev:hover,
.prog-carousel .owl-nav button.owl-next:hover,
.success-carousel .owl-nav button.owl-prev:hover,
.success-carousel .owl-nav button.owl-next:hover {
	background: #F2A541 !important;
	color: #0B2545 !important;
}

.carousel-btn:hover {
	background: #F2A541;
	color: #0B2545;
}


.prog-carousel .owl-nav,
.success-carousel .owl-nav {
	display: none !important;
}

.carousel-wrapper {
	position: relative;
	padding: 0 80px;
}

.carousel-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 20;

	width: 52px;
	height: 52px;
	border-radius: 50%;
	border: none;

	background: #0B2545;
	color: #F2A541;

	font-size: 1.6rem;
	display: flex;
	align-items: center;
	justify-content: center;

	cursor: pointer;
	transition: all 0.3s ease;
}

/* LEFT SIDE */
.carousel-btn.prog-prev,
.carousel-btn.success-prev,
.carousel-btn.healthcare-prev,
.carousel-btn.tech-prev,
.carousel-btn.trades-prev,
.carousel-btn.business-prev {
	left: 0;
}

/* RIGHT SIDE */
.carousel-btn.prog-next,
.carousel-btn.success-next,
.carousel-btn.healthcare-next,
.carousel-btn.tech-next,
.carousel-btn.trades-next,
.carousel-btn.business-next {
	right: 0;
}

/* hover */
.carousel-btn:hover {
	background: #F2A541;
	color: #0B2545;
}

.prog-carousel .owl-stage {
	display: flex;
}

.prog-carousel .owl-item {
	display: flex;
}

.prog-carousel .card {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.prog-carousel .product-img {
	height: 240px;
	object-fit: cover;
}

.prog-carousel .card-body {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-grow: 1;
	padding: 1.25rem;
	text-align: left;
}

.prog-carousel .card-body h3 {
	min-height: 3.2rem; /* 2 lines */
	line-height: 1.2;
	margin-bottom: 0.75rem;
}

.prog-carousel .card-body p {
	margin-bottom: 0;
}

.prog-carousel .card-body {
	gap: 8px;
}

.success-story-card .col-lg-5,
.success-story-card .col-lg-7 {
	display: flex;
}

.success-story-img {
	width: 100%;
	height: 320px; /* adjust this */
	object-fit: cover;
	display: block;
	border-radius: 0;
	
}

.success-story-content {
	padding: 2.5rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
}



.success-story-card .col-lg-5 {
	display: flex;
	align-items: center;
}

.news-modal {
	border: none;
	border-radius: 20px;
	overflow: hidden;
}

.news-modal .modal-header {
	border-bottom: none;
	padding: 1.5rem 1.5rem 0.5rem;
}

.news-modal .modal-body {
	padding: 1.5rem;
}

.news-modal .modal-title {
	color: #0B2545;
}

.modal-news-img {
	width: 100%;
	height: 320px;
	object-fit: cover;
	border-radius: 16px;
}

.news-modal .news-date {
	color: #F2A541;
	font-weight: 700;
	margin-bottom: 1rem;
}

.btn-outline{
	color: #F2A541;
}

.btn-outline:hover,
.btn-outline:focus{
	color: #3A5F7D;
}

/* PROGRAM CATEGORY CAROUSELS */
.healthcare-carousel .item,
.tech-carousel .item,
.trades-carousel .item,
.business-carousel .item {
	height: 100%;
	padding: 6px 0;
}

.healthcare-carousel .owl-stage,
.tech-carousel .owl-stage,
.trades-carousel .owl-stage,
.business-carousel .owl-stage {
	display: flex;
}

.healthcare-carousel .owl-item,
.tech-carousel .owl-item,
.trades-carousel .owl-item,
.business-carousel .owl-item {
	display: flex;
	height: auto;
}

.healthcare-carousel .card,
.tech-carousel .card,
.trades-carousel .card,
.business-carousel .card {
	height: 100%;
	width: 100%;
	border: none;
	border-radius: 18px;
	overflow: hidden;
	background-color: #F4F6F8;
	transition: transform 0.3s ease;
	margin: 0;
}

.healthcare-carousel .card:hover,
.tech-carousel .card:hover,
.trades-carousel .card:hover,
.business-carousel .card:hover {
	transform: translateY(-6px);
}

.healthcare-carousel .product-link,
.tech-carousel .product-link,
.trades-carousel .product-link,
.business-carousel .product-link {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
}

.healthcare-carousel .product-img,
.tech-carousel .product-img,
.trades-carousel .product-img,
.business-carousel .product-img {
	width: 100%;
	height: 250px;
	object-fit: cover;
	display: block;
	margin: 0;
}

.healthcare-carousel .card-body,
.tech-carousel .card-body,
.trades-carousel .card-body,
.business-carousel .card-body {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	flex-grow: 1;
	padding: 1.5rem;
	text-align: left;
}

.healthcare-carousel .card-body h3,
.tech-carousel .card-body h3,
.trades-carousel .card-body h3,
.business-carousel .card-body h3 {
	margin: 0 0 0.5rem 0;
	min-height: 3.1rem;
	line-height: 1.2;
	color: #0B2545;
	font-size: 2rem;
}

.healthcare-carousel .card-body h4,
.tech-carousel .card-body h4,
.trades-carousel .card-body h4,
.business-carousel .card-body h4 {
	margin: 0;
	color: #3A5F7D;
	font-size: 1rem;
	font-weight: 500;
}

.healthcare-carousel .owl-nav,
.tech-carousel .owl-nav,
.trades-carousel .owl-nav,
.business-carousel .owl-nav {
	display: flex !important;
	justify-content: center;
	align-items: center;
	gap: 12px;
	margin-top: 1.5rem;
	position: relative;
	z-index: 20;
}

.healthcare-carousel .owl-nav button,
.tech-carousel .owl-nav button,
.trades-carousel .owl-nav button,
.business-carousel .owl-nav button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50% !important;
	border: none;
	background: #0B2545 !important;
	color: #F2A541 !important;
	font-size: 1.4rem !important;
	margin: 0 !important;
	line-height: 1;
}

.healthcare-carousel .owl-nav button:hover,
.tech-carousel .owl-nav button:hover,
.trades-carousel .owl-nav button:hover,
.business-carousel .owl-nav button:hover {
	background: #F2A541 !important;
	color: #0B2545 !important;
}

.card-body h3{
	font-size: 36px;
}


.proghub-main{
	background-color: #0B2545;
	padding-bottom: 8px;
}

html {
	scroll-behavior: smooth;
}

#heca-prog,
#tech-prog,
#trad-prog,
#bus-prog {
	scroll-margin-top: 110px;
}

.student-life-intro,
.events-section,
.housing-section,
.gallery-section {
	background-color: #F4F6F8;
}

.clubs-section,
.services-section {
	background-color: #0B2545;
}

.clubs-section h2,
.services-section h2,
.clubs-section .section-intro,
.services-section .section-intro {
	color: #F4F6F8;
}

.gallery-card {
	border-radius: 18px;
	overflow: hidden;
	background-color: #fff;
}

.gallery-img {
	width: 100%;
	height: 260px;
	object-fit: cover;
	display: block;
	transition: transform 0.3s ease;
}

.gallery-card:hover .gallery-img {
	transform: scale(1.03);
}

.student-life-updates {
	background-color: #F4F6F8;
}

.student-life-updates .section-intro {
	max-width: 700px;
}

.update-type {
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #F2A541;
	margin-bottom: 0.5rem;
}

.news-card {
	background-color: #fff;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.news-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 12px 28px rgba(11, 37, 69, 0.12);
}

.news-card-img {
	width: 100%;
	height: 240px;
	object-fit: cover;
	display: block;
}

.news-card-body {
	padding: 1.5rem;
	text-align: left;
}

.news-date {
	font-weight: 700;
	color: #3A5F7D;
	margin-bottom: 0.35rem;
}

.news-card h3 {
	color: #0B2545;
	font-size: 1.7rem;
	margin-bottom: 0.85rem;
}

.news-card p {
	color: #3A5F7D;
	margin-bottom: 1rem;
}

.news-link {
	color: #0B2545;
	font-weight: 700;
	text-decoration: none;
}

.news-link:hover {
	color: #F2A541;
}

.news-modal {
	border: none;
	border-radius: 20px;
	overflow: hidden;
}

.news-modal .modal-header {
	border-bottom: none;
	padding: 1.5rem 1.5rem 0.5rem;
}

.news-modal .modal-body {
	padding: 1.5rem;
}

.news-modal .modal-title {
	color: #0B2545;
}

.modal-news-img {
	width: 100%;
	height: 320px;
	object-fit: cover;
	border-radius: 16px;
}

.news-modal .news-date {
	color: #3A5F7D;
	font-weight: 700;
	margin-bottom: 0.35rem;
}

.news-modal .update-type {
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #F2A541;
	margin-bottom: 1rem;
}

.career-intro-section,
.internship-section,
.contact-section {
	background-color: #F4F6F8;
}

.career-stats-section {
	background-color: #0B2545;
}

.career-stats-section h2,
.career-stats-section .section-intro {
	color: #F4F6F8;
}

.employer-banner-section {
	background-color: #ffffff;
}

.logo-banner {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.5rem;
	align-items: center;
}

.logo-item {
	background-color: #F4F6F8;
	border-radius: 18px;
	padding: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 110px;
}

.logo-item img {
	max-width: 100%;
	max-height: 48px;
	object-fit: contain;
	opacity: 0.85;
}

.outcomes-carousel {
	display: block !important;
}

.carousel-wrapper {
	position: relative;
	padding: 0 80px;
	overflow: visible;
}

.carousel-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 30;

	width: 52px;
	height: 52px;
	border-radius: 50%;
	border: none;

	background: #0B2545;
	color: #F2A541;

	font-size: 1.6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease;
}

.carousel-btn:hover {
	background: #F2A541;
	color: #0B2545;
}

.prog-prev,
.success-prev,
.healthcare-prev,
.tech-prev,
.trades-prev,
.business-prev,
.outcomes-prev {
	left: 0;
}

.prog-next,
.success-next,
.healthcare-next,
.tech-next,
.trades-next,
.business-next,
.outcomes-next {
	right: 0;
}

.promo-img-careerOut{
	background: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)), url('../images/bgImgCareerOut.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.promo-img-studLife{
	background: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)), url('../images/bgImgStudLife.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}



.promo-img-FinAid{
	background: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)), url('../images/bgImgFinAid.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.about-main {
	background-color: #0B2545;
}

.mission-vision-section,
.accreditation-section {
	background-color: #0B2545;
}

.mission-vision-section h2,
.mission-vision-section p,
.accreditation-section h2,
.accreditation-section p {
	color: #F4F6F8;
}

.history-section,
.campus-section {
	background-color: #F4F6F8;
}

.leadership-section {
	background-color: #ffffff;
}

.leader-img {
	width: 100%;
	height: 520px; 
	object-fit: cover;
	object-position: center top;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}

/* TIMELINE */
.timeline {
	position: relative;
	max-width: 900px;
	margin: 0 auto;
	padding-left: 2rem;
	border-left: 3px solid #F2A541;
}

.timeline-item {
	position: relative;
	padding-left: 2rem;
	margin-bottom: 2.5rem;
}

.timeline-item:last-child {
	margin-bottom: 0;
}

.timeline-item::before {
	content: "";
	position: absolute;
	left: -11px;
	top: 8px;
	width: 18px;
	height: 18px;
	background-color: #0B2545;
	border: 3px solid #F2A541;
	border-radius: 50%;
}

.timeline-year {
	font-family: "oswald";
	font-size: 1.5rem;
	font-weight: 500;
	color: #F2A541;
	margin-bottom: 0.5rem;
}

.timeline-content h4 {
	color: #0B2545;
	margin-bottom: 0.5rem;
	font-weight: 600;
}

.timeline-content p {
	color: #3A5F7D;
	margin-bottom: 0;
}

/* LEADERSHIP */
.leader-card {
	background-color: #F4F6F8;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.leader-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 12px 28px rgba(11, 37, 69, 0.12);
}

.leader-body {
	padding: 1.75rem;
	text-align: left;
}

.leader-role {
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #F2A541;
	margin-bottom: 0.5rem;
}

.leader-body h3 {
	color: #0B2545;
	margin-bottom: 0.85rem;
}

.leader-body p {
	color: #3A5F7D;
	margin-bottom: 0;
}

.visit-main {
	background-color: #0B2545;
}

.visit-intro-section,
.how-to-visit-section,
.visit-details-section {
	background-color: #F4F6F8;
}

.tour-options-section,
.visit-form-section {
	background-color: #0B2545;
}

.tour-options-section h2,
.tour-options-section .section-intro,
.visit-form-section h2,
.visit-form-section p {
	color: #F4F6F8;
}

.visit-form-section .contact-card {
	border: none;
	border-radius: 18px;
	background-color: #F4F6F8;
	padding: 2rem;
}

.visit-form-section .form-label {
	color: #0B2545;
	font-weight: 600;
}

.visit-form-section .form-control,
.visit-form-section .form-select {
	border-radius: 10px;
	padding: 0.85rem 1rem;
	border: 1px solid #d6dde5;
}

.visit-form-section .form-control:focus,
.visit-form-section .form-select:focus {
	border-color: #F2A541;
	box-shadow: 0 0 0 0.2rem rgba(242, 165, 65, 0.15);
}

.visit-form-section .form-control,
.visit-form-section .form-select {
	width: 100% !important;
	display: block;
}

.promo-img-visit{
	background: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)), url('../images/bgImgVisitUs.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.why-you {
	background-color: #F4F6F8;
}

.why-card {
	position: relative;
	background: #ffffff;
	border-radius: 18px;
	padding: 2rem 1.5rem;
	height: 100%;
	box-shadow: 0 10px 30px rgba(11, 37, 69, 0.08);
	transition: all 0.3s ease;
	overflow: hidden;
}

/* hover effect */
.why-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 18px 40px rgba(11, 37, 69, 0.12);
}

/* big background number */
.why-number {
	position: absolute;
	top: 10px;
	right: 15px;
	font-size: 4rem;
	font-weight: 700;
	color: rgba(11, 37, 69, 0.06);
	pointer-events: none;
}

/* title */
.why-card h4 {
	position: relative;
	font-weight: 600;
	color: #0B2545;
	margin-top: 1.5rem;
}

/* accent bar */
.why-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 5px;
	width: 100%;
	background: #F2A541;
}

.skills-section {
	background-color: #0B2545;
	color: #F4F6F8;
}

.skills-section h2 {
	color: #ffffff;
}

.skills-copy {
	color: #d9e1e8;
	font-size: 1.1rem;
	line-height: 1.8;
	max-width: 560px;
}

.skills-visual {
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 20px 40px rgba(0,0,0,0.2);
}

.skills-visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.promo-img-details{
	background: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)), url('../images/bgImgCareerOut.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.prog-summary-section {
	background-color: #F4F6F8;
}

.summary-copy {
	color: #3A5F7D;
	font-size: 1.1rem;
	line-height: 1.8;
	max-width: 720px;
}

.summary-card {
	background-color: #ffffff;
	border-radius: 18px;
	padding: 1.5rem;
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.summary-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 12px 28px rgba(11, 37, 69, 0.12);
}

.summary-label {
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #F2A541;
	margin-bottom: 0.5rem;
}

.summary-card h4 {
	color: #0B2545;
	margin-bottom: 0;
	font-weight: 600;
}

.prog-path-section {
	background-color: #F4F6F8;
}

.path-card {
	background-color: #ffffff;
	border-radius: 20px;
	padding: 2rem;
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
	height: 100%;
}

.path-label {
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #F2A541;
	margin-bottom: 0.5rem;
}

.path-card h3 {
	color: #0B2545;
}

.path-card p {
	color: #3A5F7D;
	line-height: 1.8;
}

.prog-costs-section {
	background-color: #0B2545;
}

.prog-costs-section h2,
.prog-costs-section .section-intro {
	color: #F4F6F8;
}

.resource-card {
	background-color: #F4F6F8;
	border-radius: 20px;
	padding: 2rem;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.15);
}

.resource-label {
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #F2A541;
	margin-bottom: 0.5rem;
}

.resource-card h3 {
	color: #0B2545;
}

.resource-card p {
	color: #3A5F7D;
	line-height: 1.8;
}

.prog-cta-section {
	background-color: #F4F6F8;
}

.cta-card {
	background-color: #ffffff;
	border-radius: 20px;
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cta-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 12px 28px rgba(11, 37, 69, 0.12);
}

.cta-label {
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #F2A541;
	margin-bottom: 0.5rem;
}

.cta-card h3 {
	color: #0B2545;
}

.cta-card p {
	color: #3A5F7D;
	line-height: 1.8;
}

.main-dets{
	background-color: #0B2545;
}

/* PROGRAM FINDER CARDS */

.prog-finder-home .card:hover {
	transform: translateY(-6px);
}

/* HOMEPAGE PROGRAM FINDER - smooth hover */
.prog-finder-home .prog-carousel .card {
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
	will-change: transform, box-shadow;
	backface-visibility: hidden;
	transform: translateY(0);
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
}

.prog-finder-home .prog-carousel .card:hover {
	transform: translateY(-8px);
	box-shadow: 0 16px 36px rgba(11, 37, 69, 0.14);
}

.prog-finder-home .prog-carousel .item {
	padding-top: 12px;
	padding-bottom: 12px;
}

#tech-prog,
#heca-prog,
#trad-prog,
#bus-prog {
	scroll-margin-top: 110px;
}

/* kill Bootstrap blue button states */
/* base */
.btn-primary {
	background-color: #F2A541;
	color: #0B2545;
	border-color: #F2A541;
	transition: all 0.25s ease;
}

/* hover only */
.btn-primary:hover {
	background-color: #0B2545;
	color: #F2A541;
	border-color: #0B2545;
	transform: translateY(-2px);
}

.apply-btn{
	margin-left: 20px;
	padding: 12px 22px;
}

/* click / pressed state */
.btn-primary:active,
.btn-primary.active,
.btn-check:checked + .btn-primary,
:not(.btn-check) + .btn-primary:active {
	background-color: #F2A541 !important;
	color: #0B2545 !important;
	border-color: #F2A541 !important;
	transform: translateY(1px);
	box-shadow: none !important;
}

/* focus ring only — no blue */
.btn-primary:focus,
.btn-primary:focus-visible {
	box-shadow: none !important;
	outline: none !important;
}

.btn-secondary {
	background-color: #0B2545;
	color: #F2A541;
	border-color: #0B2545;
	transition: all 0.25s ease;
}

.btn-secondary:hover {
	background-color: #F2A541;
	color: #0B2545;
	border-color: #F2A541;
	transform: translateY(-2px);
}

.btn-secondary:active,
.btn-secondary.active,
.btn-check:checked + .btn-secondary,
:not(.btn-check) + .btn-secondary:active {
	background-color: #0B2545 !important;
	color: #F2A541 !important;
	border-color: #0B2545 !important;
	transform: translateY(1px);
	box-shadow: none !important;
}

.btn-secondary:focus,
.btn-secondary:focus-visible {
	box-shadow: none !important;
	outline: none !important;
}

.contact-main {
	background-color: #0B2545;
}

.contact-intro-section,
.contact-location-section {
	background-color: #F4F6F8;
}

.contact-form-section,
.contact-departments-section {
	background-color: #0B2545;
}

.contact-form-section h2,
.contact-form-section p,
.contact-departments-section h2,
.contact-departments-section .section-intro {
	color: #F4F6F8;
}

.form-card {
	border: none;
	border-radius: 18px;
	background-color: #F4F6F8;
	padding: 2rem;
}

.contact-form-section .form-label {
	color: #0B2545;
	font-weight: 600;
}

.contact-form-section .form-control,
.contact-form-section .form-select {
	width: 100% !important;
	display: block;
	border-radius: 10px;
	padding: 0.85rem 1rem;
	border: 1px solid #d6dde5;
}

.contact-form-section .form-control:focus,
.contact-form-section .form-select:focus {
	border-color: #F2A541;
	box-shadow: 0 0 0 0.2rem rgba(242, 165, 65, 0.15);
}

.org-txt{
	color: #F2A541;
}

.bluetxt{
	color: #3A5F7D;
}

.navtxt{
	color: #0B2545;
}


.legal-modal {
	border: none;
	border-radius: 20px;
	overflow: hidden;
}

.legal-modal .modal-header {
	border-bottom: none;
	padding: 1.5rem 1.5rem 0.5rem;
}

.legal-modal .modal-body {
	padding: 1.5rem;
}

.legal-modal .modal-title {
	color: #0B2545;
}

.legal-modal .modal-body p {
	color: #3A5F7D;
	line-height: 1.8;
	margin-bottom: 1rem;
}

.foot-brand{
	padding-top: 12px;
}

h4{
	color: #F2A541;
}

/* Details PROGRAM FINDER - smooth hover */
.prog-path .prog-path-section .path-card,
.prog-costs .prog-costs-section .resource-card {
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease;
	will-change: transform, box-shadow;
	backface-visibility: hidden;
	transform: translateY(0);
	box-shadow: 0 8px 24px rgba(11, 37, 69, 0.08);
}

.prog-path .prog-path-section .path-card:hover,
.prog-costs .prog-costs-section .resource-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 16px 36px rgba(11, 37, 69, 0.14);
}

.section-subtxt {
	color: #F2A541;
}

.section-headtxt{
	color: #F4F6F8;
	font-size: 48pt;
}

.apply-main {
	background-color: #0B2545;
}

.apply-intro-section,
.apply-ready-section,
.contact-section {
	background-color: #F4F6F8;
}

.apply-options-section,
.apply-form-section,
.steps-section {
	background-color: #0B2545;
}

.apply-options-section h2,
.apply-options-section .section-intro,
.apply-form-section h2,
.steps-section h2,
.steps-section .section-intro {
	color: #F4F6F8;
}

.apply-form-section .form-card {
	border: none;
	border-radius: 18px;
	background-color: #F4F6F8;
	padding: 2rem;
}

.apply-form-section .form-label {
	color: #0B2545;
	font-weight: 600;
}

.apply-form-section .form-control,
.apply-form-section .form-select {
	width: 100% !important;
	display: block;
	border-radius: 10px;
	padding: 0.85rem 1rem;
	border: 1px solid #d6dde5;
}

.apply-form-section .form-control:focus,
.apply-form-section .form-select:focus {
	border-color: #F2A541;
	box-shadow: 0 0 0 0.2rem rgba(242, 165, 65, 0.15);
}

.thank-you-main {
	background-color: #0B2545;
	padding: 80px 0;
}

.promo-img-apply{
	background: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)), url('../images/apply-bg.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}


/* ========================================
   RESPONSIVE / MOBILE OPTIMIZATION
   Paste at very bottom of site.css
======================================== */

/* ---------- Large tablets / small laptops ---------- */
@media (max-width: 1199.98px) {
	.prog-finder {
		padding: 40px 50px;
	}

	.sticky-text {
		font-size: 56pt;
		line-height: 58pt;
		max-width: 90%;
	}

	.carousel-wrapper {
		padding: 0 60px;
	}

	.section-img {
		height: 380px;
	}

	.leader-img {
		height: 520px;
	}
	
	.success-story-img {
		height: 300px;
	}
}

/* ---------- Tablets ---------- */
@media (max-width: 991.98px) {
	h1 {
		font-size: 64pt;
	}

	h2 {
		font-size: 28pt;
	}

	h3 {
		font-size: 22pt;
	}

	h4 {
		font-size: 15pt;
	}

	.jumbotron-heading {
		font-size: 280%;
	}

	.bg-img {
		height: 320px;
	}

	.prog-finder {
		padding: 36px 28px;
	}

	.section-header {
		gap: 16px;
	}

	.section-img {
		height: 340px;
	}

	.sticky-text {
		font-size: 44pt;
		line-height: 46pt;
		top: 18vh;
	}

	.visit-banner-inner,
	.apply-now-box {
		padding: 2.25rem 1.5rem;
	}

	.success-story-content {
		padding: 2rem;
	}

	.success-story-content h3 {
		font-size: 1.5rem;
	}

	.news-card h3 {
		font-size: 1.45rem;
	}

	.carousel-wrapper {
		padding: 0 54px;
	}

	.carousel-btn {
		width: 48px;
		height: 48px;
		font-size: 1.4rem;
	}

	.tour-card,
	.contact-card,
	.form-card,
	.resource-card,
	.path-card,
	.summary-card,
	.cta-card {
		padding: 1.5rem;
	}

	.logo-banner {
		grid-template-columns: repeat(3, 1fr);
	}

	.timeline {
		padding-left: 1.5rem;
	}

	.timeline-item {
		padding-left: 1.5rem;
	}

	.footer-legal {
		font-size: 0.9rem;
	}
}

/* ---------- Mobile / landscape phones ---------- */
@media (max-width: 767.98px) {
	h1 {
		font-size: 46pt;
	}

	h2 {
		font-size: 24pt;
	}

	h3 {
		font-size: 20pt;
	}

	h4 {
		font-size: 14pt;
	}
	
	.apply-btn{
		margin-left: 0px;
		margin-top: 0.75em;
	}
	
	.bg-parallax {
		display: block;
		background-image: url("../images/hero.jpg");
		background-attachment: scroll;
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		min-height: 75vh;
		height: auto;
		position: relative;
		overflow: hidden;
		padding: 0;
	}

	.overlay-grad {
		display: block;
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		padding: 0;
		transform: none;
		top: 0;
		left: 0;
		z-index: 1;
		opacity: 0.95;
	}

	.sticky-text-container {
		position: relative;
		height: 85vh;
		z-index: 2;
		display: flex;
		align-items: flex-end;
		justify-content: flex-start;
		padding: 0px 0px 10vw;
	}

	.sticky-text {
		position: sticky;
		top: 18vh;
		margin: 0;
		max-width: 80%;
		padding: 0px 0px 5vh 7vw;
		text-align: left;
		font-size: 3rem;
		line-height: 1.05;
		color: #F4F6F8;
	}

	.filler {
		display: none;
	}
	
	.promo-img-1 {
		height: auto; /* remove fixed height */
		min-height: 60vh; /* still feels like a hero */
		padding: 60px 20px;
		background-position: center;
		background-size: cover;
	}
	
	.section-text {
		max-width: 500px;
		margin: 0 auto;
		padding: 20px;
	}

	.jumbotron-heading {
		font-size: 1.8rem;
		line-height: 1.3;
	}

	.jumbotron-subheading {
		font-size: 1rem;
		line-height: 1.6;
		margin-bottom: 20px;
	}
	
	.promo-img-1 {
		position: relative;
	}

	.promo-img-1::before {
		content: "";
		position: absolute;
		inset: 0;
		background: rgba(11, 37, 69, 0.55); /* your dark blue */
		z-index: 1;
	}

	/* keep text above overlay */
	.section-text {
		position: relative;
		z-index: 2;
	}
	
	.hero-buttons {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.hero-buttons .btn {
		width: 100%;
	}
	
	

	.container,
	.container-fluid {
		padding-left: 18px;
		padding-right: 18px;
	}

	.mainNav .nav-link {
		padding: 0.75em 0;
	}

	.mainNav .form-control {
		width: 100% !important;
		max-width: 220px;
		margin-top: 0.5rem;
	}

	.bg-img {
		height: auto;
		min-height: 25vh;
	}

	.jumbotron-heading {
		font-size: 220%;
	}

	.jumbotron-subheading {
		font-size: 1rem;
		line-height: 1.5;
	}

	.prog-finder {
		padding: 28px 16px;
	}

	.section-header {
		flex-direction: column;
		align-items: flex-start;
		text-align: left;
	}

	.section-header .btn,
	.section-header .btn-outline,
	.section-header .btn-secondary,
	.section-header .btn-primary {
		margin-top: 0.5rem;
	}

	.section-subtext,
	.summary-copy,
	.skills-copy,
	.stats-section .section-intro,
	.student-life-updates .section-intro,
	.apply-now-box .section-intro {
		max-width: 100%;
	}

	.btn {
		width: 100%;
		min-width: 0;
		padding: 14px 24px;
		font-size: 1rem;
	}

	.button-group .btn,
	.hero-buttons .btn {
		width: 100%;
		margin-bottom: 0.75rem;
	}

	.hero-buttons .btn:last-child,
	.button-group .btn:last-child {
		margin-bottom: 0;
	}

	.carousel-wrapper {
		position: relative;
		padding-bottom: 50px;
	}

	.carousel-btn {
		position: absolute;
		bottom: 0;
		top: auto;
		transform: none;
	}

	.carousel-btn.prog-prev,
	.carousel-btn.healthcare-prev,
	.carousel-btn.tech-prev,
	.carousel-btn.trades-prev,
	.carousel-btn.business-prev,
	.carousel-btn.success-prev,
	.carousel-btn.outcomes-prev {
		left: 47%;
		transform: translateX(-40px);
	}

	.carousel-btn.prog-next,
	.carousel-btn.healthcare-next,
	.carousel-btn.tech-next,
	.carousel-btn.trades-next,
	.carousel-btn.business-next,
	.carousel-btn.success-next,
	.carousel-btn.outcomes-next {
		left: 47%;
		transform: translateX(40px);
	}
	
	
	.prog-carousel .product-img,
	.healthcare-carousel .product-img,
	.tech-carousel .product-img,
	.trades-carousel .product-img,
	.business-carousel .product-img,
	.news-card-img,
	.gallery-img,
	.modal-news-img {
		height: 220px;
	}
	

	.prog-carousel .card-body,
	.healthcare-carousel .card-body,
	.tech-carousel .card-body,
	.trades-carousel .card-body,
	.business-carousel .card-body,
	.news-card-body,
	.leader-body,
	.success-story-content {
		padding: 1.25rem;
	}

	.prog-carousel .card-body h3,
	.healthcare-carousel .card-body h3,
	.tech-carousel .card-body h3,
	.trades-carousel .card-body h3,
	.business-carousel .card-body h3 {
		font-size: 1.35rem;
		min-height: auto;
	}

	.card-body h3 {
		font-size: 1.35rem;
	}

	.stat-card,
	.why-card,
	.summary-card,
	.path-card,
	.resource-card,
	.cta-card {
		padding: 1.25rem;
	}

	.stat-number {
		font-size: 2rem;
	}

	.why-number {
		font-size: 3rem;
	}

	.section-img {
		height: 280px;
	}

	.section-img-wrap {
		margin-top: 1rem;
	}

	.success-story-card .col-lg-5,
	.success-story-card .col-lg-7 {
		display: block;
	}

	.success-story-img {
		height: 240px;
		width: 100%;
	}

	.success-story-content {
		height: auto;
	}

	.leader-img {
		height: 520px;
	}

	.logo-banner {
		grid-template-columns: repeat(2, 1fr);
		gap: 1rem;
	}

	.logo-item {
		min-height: 90px;
		padding: 1rem;
	}

	.logo-item img {
		max-height: 40px;
	}

	.timeline {
		padding-left: 1rem;
		border-left-width: 2px;
	}

	.timeline-item {
		padding-left: 1.25rem;
		margin-bottom: 2rem;
	}

	.timeline-item::before {
		left: -9px;
		width: 14px;
		height: 14px;
	}

	.timeline-year {
		font-size: 1.2rem;
	}

	.visit-form-section .contact-card,
	.contact-form-section .contact-card,
	.form-card {
		padding: 1.25rem;
	}

	.visit-form-section .form-control,
	.visit-form-section .form-select,
	.contact-form-section .form-control,
	.contact-form-section .form-select {
		padding: 0.8rem 0.9rem;
	}

	.overlay-text {
		width: 90%;
		font-size: large;
	}

	footer {
		text-align: center;
	}

	footer .col-md-4 {
		margin-bottom: 2rem;
	}

	footer img {
		margin-top: 1rem;
		max-width: 180px;
		width: 100%;
		height: auto;
	}
	
	.promo-img-1.bg-img {
		height: auto !important;
		min-height: 60vh;
		padding: 80px 20px;
		align-items: center;
	}

	.promo-img-1 .section-text {
		position: relative;
		z-index: 2;
		max-width: 560px;
		margin: 0 auto;
		padding: 20px;
	}

	.promo-img-1 .jumbotron-heading {
		font-size: 2rem;
		line-height: 1.25;
	}

	.promo-img-1 .jumbotron-subheading {
		font-size: 1rem;
		line-height: 1.6;
		margin-bottom: 0;
	}
}

/* ---------- Small phones ---------- */
@media (max-width: 575.98px) {
	h1 {
		font-size: 34pt;
	}

	h2 {
		font-size: 21pt;
	}

	h3 {
		font-size: 18pt;
	}

	.container,
	.container-fluid {
		padding-left: 14px;
		padding-right: 14px;
	}

	.bg-img {
		height: 240px;
	}

	.jumbotron-heading {
		font-size: 190%;
	}

	.jumbotron-subheading {
		font-size: 0.95rem;
	}

	.prog-finder {
		padding: 24px 10px;
	}

	.carousel-wrapper {
		padding: 0 34px;
	}

	.carousel-btn {
		width: 38px;
		height: 38px;
		font-size: 1rem;
	}
	
	.carousel-wrapper {
	position: relative;
	padding-bottom: 40px;
}

	.prog-carousel .product-img,
	.healthcare-carousel .product-img,
	.tech-carousel .product-img,
	.trades-carousel .product-img,
	.business-carousel .product-img,
	.news-card-img,
	.gallery-img {
		height: 200px;
	}

	.section-img,
	.success-story-img,
	.leader-img,
	.modal-news-img {
		height: 220px;
	}

	.summary-card,
	.path-card,
	.resource-card,
	.cta-card,
	.why-card,
	.stat-card,
	.tour-card,
	.contact-card,
	.form-card,
	.leader-body,
	.news-card-body,
	.success-story-content {
		padding: 1rem;
	}

	.stat-number {
		font-size: 1.8rem;
	}

	.why-number {
		font-size: 2.5rem;
		top: 8px;
		right: 12px;
	}

	.logo-banner {
		grid-template-columns: 1fr;
	}

	.footer-legal {
		flex-direction: column;
		gap: 6px;
	}

	.footer-divider {
		display: none;
	}

	.modal-dialog {
		margin: 0.75rem;
	}

	.modal-news-img {
		height: 220px;
		border-radius: 12px;
	}

	.news-modal .modal-header,
	.legal-modal .modal-header {
		padding: 1rem 1rem 0.5rem;
	}

	.news-modal .modal-body,
	.legal-modal .modal-body {
		padding: 1rem;
	}
	
	.promo-img-1.bg-img {
	height: auto !important;
	min-height: 55vh;
	padding: 70px 16px;
}
}

/* ---------- Utility helpers for common 2-column sections ---------- */
@media (max-width: 991.98px) {
	.section-row,
	.row.section-row {
		align-items: center;
	}

	.section-row > [class*="col-"] {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

/* ---------- Safer media handling ---------- */
img {
	max-width: 100%;
	height: auto;
}

/* ---------- Tables / overflow just in case ---------- */
.table-responsive,
.overflow-scroll-mobile {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}


/* FINAL MOBILE HERO OVERRIDE */
@media (max-width: 767.98px) {
	.bg-img {
		height: auto !important;
		min-height: 30vh !important;
		padding: 80px 20px !important;
		align-items: center !important;
	}

	.section-text {
		position: relative;
		z-index: 2;
		max-width: 560px;
		margin: 0 auto;
		padding: 20px;
	}

	.jumbotron-heading {
		font-size: 2rem !important;
		line-height: 1.25 !important;
		margin-bottom: 0.75rem !important;
	}

	.jumbotron-subheading {
		font-size: 1rem !important;
		line-height: 1.6 !important;
		margin-bottom: 0 !important;
	}
}

@media (max-width: 575.98px) {
	.bg-img {
		height: auto !important;
		min-height: 25vh !important;
		padding: 70px 16px !important;
	}

	.jumbotron-heading {
		font-size: 1.75rem !important;
	}

	.jumbotron-subheading {
		font-size: 0.95rem !important;
	}
}













