/*
 *  custom style
*/


/* h1 
 * 
 * max font-size: 80px;
 * min font-size; 32px; 
 * 
 * */
h1 {
	font-size: clamp(2rem, 1.1472rem + 3.2107vw, 5rem);
	line-height: 1.1 !important;
}


/* h2
 * 
 * max font-size: 50px;
 * min font-size; 26px; 
 * 
 * */

h2 {
	font-size: clamp(1.625rem, 1.1986rem + 1.6054vw, 3.125rem);
	line-height: 1.2 !important;
}


/* h3 & icon boxes title
 * 
 * max font-size: 22px;
 * min font-size; 20px; 
 * 
 * */

.oom-blog-list-title .elementor-heading-title, h3 {
	font-size: clamp(1.25rem, 1.2145rem + 0.1338vw, 1.375rem);
	line-height: 1.2 !important;
}

/* titles
 * 
 * max font-size: 30px;
 * min font-size; 22px; 
 * 
 * */

.oom-header-title .elementor-heading-title {
	font-size: clamp(1.375rem, 1.2329rem + 0.5351vw, 1.875rem);
	line-height: 1.2 !important;
}


 /* podcast titles
 * 
 * max font-size: 40px;
 * min font-size; 22px; 
 * 
 * */

.oom-podcast-title .elementor-heading-title {
	font-size: clamp(1.375rem, 1.0552rem + 1.204vw, 2.5rem);
	line-height: 1.1 !important;
}

/* breadcrumb navi */
.oom-breadcrumb-navigation .elementor-icon-list-item:after {
    rotate: 20deg;
}



/* Campus Overview Page hero banner text 
 * 
 * max font-size: 65px;
 * min font-size; 22px; 
 * 
 * */

.oom-campus-hero-banner-text .elementor-heading-title {
	font-size: clamp(2rem, 1.4137rem + 2.2074vw, 4.0625rem);
	line-height: 1.15 !important;
}


/* navigation menu - start */

.page-id-14 .navbar-logo img {
	filter: brightness(0) invert(1);
}


.page-id-14 .navbar-logo img {
	filter: brightness(0) invert(1) !important;
}

.home .elementor-element.elementor-element-9c4a179.e-con-full.oom-navbar.e-flex.e-con.e-parent.elementor-sticky.elementor-sticky--effects.e-lazyloaded.elementor-sticky--active.elementor-section--handles-inside {
    background-color: #ffffff00;
}

.page-id-14 .oom-navbar.scrolled {
    background-color: #ffffff !important;
}

.page-id-14 .oom-navbar.scrolled .navbar-menu .menu-item a {
	color: #181512 !important;
}

.page-id-14 .oom-navbar.scrolled .navbar-logo img {
	filter: unset !important;
}

.page-id-14 .oom-navbar.scrolled .navbar-menu .menu-item svg {
	fill: #181512;
}

.page-id-14 .oom-navbar .navbar-menu .elementor-nav-menu--main > ul > li > a {
    color: #ffffff !important;
	fill: #ffffff !important;
}

/*
.oom-navbar.scrolled {
	box-shadow: 0px 4px 4px #0000001A;
}*/

.oom-navbar {
	background-color: #ffffff;

}


@media (max-width: 1024px) {
	
	.page-id-14 .elementor-sticky--active .oom-navbar {
  background-color: #ffffff !important;
}
	.page-id-14 .navbar-logo img {
    filter: unset !important;
}

}

/* navigation menu - end */

.spolight-carousel .swiper-pagination-bullets {
	margin-left: 2.6%;
	z-index:0;
}

@media (max-width: 1024px) {
	
.spolight-carousel .swiper-pagination-bullets {
	margin-left: 10%;
	z-index:0;
}
}


/* blog list item - start */

.oom-blog-list-item .oom-blog-list-tags p {
	overflow: hidden;
	height: 16px;
    display: block;
    -webkit-line-clamp: 1;
    display: box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    display: -webkit-box;

}

.oom-blog-list-item .oom-blog-list-title p{
	height: 54px; /* Ensure this aligns with line height */
	overflow: hidden;
    display: block;
    -webkit-line-clamp: 2;
    display: box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    display: -webkit-box;

}

.oom-blog-list-item .oom-blog-list-excerpt p {
	overflow: hidden;
    display: block;
    -webkit-line-clamp: 3;
    display: box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    display: -webkit-box;
}

.oom-blog-list-item .oom-post-excerpt p {
    overflow: hidden;
    -webkit-line-clamp: 3;
    display: box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    display: -webkit-box;
	margin-bottom: 4px;
}

.oom-news-tags-container {
    height: 38px;
}


@media (max-width: 834px) {
	
.oom-blog-list-item .oom-blog-list-title p{
	height: 50px;
	}
}

@media (min-width: 2379px) {
	
.oom-blog-list-item .oom-blog-list-excerpt{
	height: 100px;
	}
}

/* blog list item - start */

/* custom blog read more btn - start */

.oom-news-blog-read-more-btn {
	padding: 0px !important;
    border: none;
    font-size: 16px !important;
    font-weight: 400 !important;
    text-decoration: underline;
    color: #2e2e2e80;
}

.oom-news-blog-read-more-btn:hover,
.oom-news-blog-read-more-btn:focus {
	background-color: #ffffff00;
	color: #2e2e2e80;
	text-decoration: underline;
}

/* custom read more btn - end */


/* Campus Overview Page - Start */

.campus-carousel .swiper-pagination-bullets{
    padding-right: 10%;
    padding-left: 10%;
	padding-bottom: 10%;
    display: flex;
	margin: 0px !important;
}

.campus-carousel span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    margin: 0px !important;
	background: #E3001C;
}

.campus-carousel span.swiper-pagination-bullet {
    width: 108px;
    border-radius: 0;
	background:#FFFFFF4D;
}




.gallery-carousel .elementor-swiper-button {
    background-color: #ffffff;
    padding: 18px;
    border-radius: 99px;
	box-shadow: 3px 4px 18px #00000017;
}

.managers-iconbox .elementor-image-box-description {
	padding: 0px 40px;
}

.managers-iconbox .elementor-image-box-title {
	font-size: clamp(1.375rem, 1.0552rem + 1.204vw, 2.5rem);
	line-height: 1.5 !important;
}


.oom_video .elementor-custom-embed-play::before {
    content: 'PLAY VIDEO';
    position: absolute;
    bottom: -30px;
    color: #ffffff;
    width: 100px;
    transform: translateX(-20%);
}

/* Campus Overview Page - End */



.news-menu li.menu-item {
    border: solid;
    border-width: 1px;
    border-color: #C7C8CA;
}

.news-menu .current-menu-item {
	background-color: #F4F4F4;
}


/* Testimonial Read More/Read Less - Start */

.oom-testimonial-content {
	display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: all 0.3s ease;
}

.oom-testimonial-container:has(.oom-testimonial-content.expanded) .oom-testimonial-content {
	-webkit-line-clamp: unset;
	overflow: visible;
}


.oom-testimonial-read-more {
   display: block;
    cursor: pointer;
}

/* Testimonial Read More/Read Less - End */


/* Testimonial Listing css - Start */

.oom-testimonial-img img {
    aspect-ratio: 1 / 0.957;
    object-fit: contain;
}
@media (max-width: 1024px) {
.oom-testimonial-img img {
    aspect-ratio: 4 / 3;
    object-fit: contain;
}
}

.oom-testimonial-listing .jet-listing-grid__slider-icon {
    border-radius: 99px;
}

/* Testimonial Listing css - End */


/* Campus Calendar Page - Start */

.oom-campus-term-dates-container {
    overflow-x: auto !important;
}


.events-table .jet-listing-grid__item:nth-child(even) {
    background-color: #F4F4F4;
}

.events-table .jet-listing-grid__item:nth-child(odd) {
    background-color: #ffffff; /* White (optional) */

}

/* Campus Calendar Page - End */

/* School Level container hover effect - Start */

.oom-sch-level-container {
    /* The card art is a CSS background. A width-only size (100%) left grey
       dead space under the portrait photos, so the image now always fills
       the card: cover crops, it never stretches. */
    background-size: cover !important;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    isolation: isolate;
}

/* The zoom-on-hover moved to its own layer so it stays smooth while the card
   background itself remains locked to cover. */
.oom-sch-level-container::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: inherit;
    background-position: inherit;
    background-size: cover;
    background-repeat: no-repeat;
    transform: scale(1);
    transition: transform 0.4s ease-in-out;
    pointer-events: none;
}

.oom-sch-level-container:hover::after {
    transform: scale(1.1);
}

/* With the photo now filling the card, the label sat over the bright part of
   some images (2.7:1). The card's own bottom gradient is deepened so every
   label clears the 3:1 large-text floor. */
.oom-sch-level-container::before {
    opacity: 0.72 !important;
}

/* School Level container hover effect - End */

/* Contact Form - Start */

.oom-contact-form button.iti__selected-country {
	padding: 0px;
}

.oom-contact-form span.oom-form-label {
    padding-top: 15px;
}

.oom-contact-form .elementor-field-type-submit {
    padding-top: 40px;
}

.oom-contact-form label.elementor-field-label {
    line-height: 1.2em;
}

/* Contact Form - End */

.usp-iconbox svg {
    height: 69px;

}

/* Banner CTA - Start */


.oom-banner-container .oom-banner-container-cta{
	transition: height 0.5s ease, opacity 0.5s ease;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	height: 0px !important;
}


.oom-banner-container:hover .oom-banner-container-cta
{
	
	visibility: visible;
	opacity: 1;
	height: 50px !important;

}




/* Banner CTA - End */


/* compare schools */

.schools-dropdown-row {
    display: flex;
    justify-content: space-between;
}

.schools-dropdown-column {
    width: 30%; /* Adjust this width as needed */
}

/* compare schools - end */


/* floating whatsapp button - start */

.oom-widget-popup-wrapper .oom-widget-chat-button {
    bottom: 30px;
    background-color: #2AA81A;
	border-radius: 10px;
	border: 1px solid #ffffff;
	box-shadow: 3px 10px 20px rgba(0, 0, 0, 0.1);
}


.oom-widget-popup-wrapper .oom-widget-chat-button:hover {

    bottom: 35px;

}

/* floating whatsapp button - end */


/* compare schools */
/*
.schools-dropdown-row {
    display: flex;
    justify-content: space-between;
}

.schools-dropdown-column {
    width: 30%;
}*/

.school-compare-card {
    display: flex !important;
    gap: 20px;
    flex-direction: column;
}

.school-compare-card span {
	font-weight: 700;
	font-size: clamp(1.125rem, 1.0418rem + 0.1735vw, 1.25rem);;
	line-height: 1.4em;
    text-align: center !important;
}

.compare-schools-table {
	margin-top: 2rem;
}

.schools-dropdown {
    width: 33%;
}

.compare-header {
	padding-bottom: 12px;
	border-bottom: 1px solid #e0e0e0;
	margin-bottom: 32px;
}

.compare-section.compare-type {
    padding-top: 1.2em;
    padding-bottom: 64px;
}


.compare-header span {
	font-weight: 700;
	font-size: 1.25rem;
}

.compare-row {
	display: flex !important;
	gap: 2rem;
	margin-top: 0.5rem;
}

.compare-row [role="cell"] {
	flex: 1;
}

.schools-dropdown-row {
	display: flex;
	gap: 2rem;
	margin-bottom: 2rem;
}

.schools-dropdown-row select {
	
	width: 100%;
	padding: 0.5rem;
	font-size: 1rem;
}

a.book-tour-btn {
    background-color: #E3001C;
    color: #ffffff;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    padding: 15px 32px;
    align-self: center;
}

@media (max-width: 810px) {
	
	img.oom-compare-school-img {
		height: 200px !important;
	}
	
	.compare-section.compare-type {
		padding-bottom: 40px;
	}
}

@media (max-width: 480px) {
	/* Make the entire comparison table horizontally scrollable on small screens */
	.compare-table-wrapper {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch; /* smooth scrolling on iOS */
	}
	
	.compare-schools-table {
		display: table;
		min-width: 800px;
		width: 100%;
		border-collapse: collapse;
	}
}


/* compare schools - end */
/* No page may scroll sideways - Start */
/* Two pages scrolled sideways. On About Us (and its Arabic twin, which shares these ids) the
   photo carousel sat in a column of flex boxes that refused to shrink below the width of the
   slides, pushing the document 207px wider than a tablet screen. Letting those boxes shrink
   keeps the carousel inside the screen. */
.elementor-element-4058318,
.elementor-element-e85044a,
.elementor-element-2e78a84,
.elementor-element-ef19962,
.elementor-element-6f98d0a { min-width: 0; max-width: 100%; flex-shrink: 1; }
.elementor-widget-image-carousel .elementor-image-carousel-wrapper { overflow: hidden; }

/* On the age-placement page the booking embed is a full-width box that also carries 30px side
   margins, so it always needed 60px more room than it had. Hold it to the space it actually has. */
.elementor-element-e5efabd { max-width: calc(100% - 60px); }
.elementor-element-e5efabd iframe { max-width: 100%; }
/* No page may scroll sideways - End */

/* Arabic CTA band on phones - Start */
/* On a phone the call-to-action text spans the full width, so the half-and-half tint that works on
   desktop left the words sitting on the bright part of the photo (2.8:1). Cover the whole band on
   phones only; desktop and tablet keep the mirrored tint. */
@media (max-width: 767px) {
  .elementor-element-ca5fbd8::before,
  .elementor-element-dc3e371::before,
  .elementor-element-4740d4c::before,
  .elementor-element-d42f057::before,
  .elementor-element-018c34d::before {
    background-image: linear-gradient(90deg, #181512 0%, #181512 100%) !important;
  }
}
/* Arabic CTA band on phones - End */
