/**
 * Bristol lightweight marketing LP — mockup CSS (bristol-ug-pg-lightweight).
 * No .register-form styling (lead-form-sf module owns form CSS).
 */

*{box-sizing:border-box}
html {scroll-behavior: smooth;}
/* GENERAL STYLE */
body{margin:0;padding:0;font-family: "Open Sans", sans-serif;font-size:16px;line-height:24px;font-weight:400; color: #333333;}
p {margin-top: 0;}
p:last-child {margin-bottom: 0;}
img {max-width: 100%; vertical-align: top;height: auto;}
ol,ul{margin:0;padding:0;list-style:none}
a {text-decoration: underline;}
a:hover {text-decoration: none;}
.bg-grey {background-color: #F6F6F6;}
.bg-red {background-color: #B01C2E;}
.bg-red * {color: #fff;}
.custom-section {padding: 96px 0;}
.container{max-width:1368px;margin:0 auto;padding-left:24px;padding-right:24px}
/* Title */
.heading-section {margin-bottom: 40px;}
.heading-section h2 {margin-bottom: 24px;}
.heading-section p {margin-bottom: 0;}
/*cta */
.cta{font-family: "Sora", sans-serif;cursor:pointer;border-radius:4px;border:1px solid #b01c2e;background-color:#b01c2e;color:#fff;font-size:16px;line-height:24px;font-weight:600;padding:16px 24px 16px 24px;text-decoration:none;display:flex;align-items:center;gap:8px;width:max-content;transition:all .3s;position:relative}
.cta:hover{background-color:#881321;border:1px solid #881321}
.cta span{padding:0;transition:all .3s;display:flex;justify-content:center;align-items:center;width:24px;height:24px}
.cta svg{left:0;position:relative;transition:all .3s}
.cta:hover svg{left:8px;transition:all .3s}
.cta.cta-outline{border:1px solid #fff;background:0 0}
.cta.cta-outline:hover{background-color:#881321;border:1px solid #881321}
h1,h2,h3,h4,h5,h6{font-family: "Sora", sans-serif;}
h1{font-size:56px;font-style:normal;font-weight:600;line-height:68px}
h2{font-size:44px;font-style:normal;font-weight:600;line-height:56px;color:#b01c2e;margin-top:0;margin-bottom:40px}
h3{font-size:36px;font-style:normal;font-weight:600;line-height:44px;margin:0;padding-bottom:16px}
.heading-h2{font-size:56px;line-height:68px}
.heading-h3{font-size:20px;line-height:28px}
@media (max-width:991px){
    h1{font-size:44px;line-height:56px}
    h2{font-size:36px;line-height:44px}
    h3{font-size:32px;line-height:40px}
    .custom-section {padding: 24px 0;}    
}
/* GENERAL STYLE END */

/* FOOTER SECTION */
footer{background:#161b20;padding:40px 0}
.footer-social-links{display:flex;gap:4px}
.footer-social-links li a{width:32px;height:32px;border-radius:4px;border:1px solid #666;background:#212931;display:flex;align-items:center;justify-content:center}
.footer-social-links li a:hover {background: #161b20;}
.footer-social-links li svg{width:14px;height:auto}
.footer-logo{margin-bottom:48px}
.footer-social-info{display:flex;gap:32px;justify-content:space-between;align-items:center}
.footer-links{display:flex;gap:24px}
.footer-links li a{color:#fff;font-size:16px;line-height:24px}
.footer-links li{border-right:1px solid #fff;padding-right:24px}
.footer-links li:last-child{border:0;padding:0}
.footer-bottom{color:#fff;display:flex;justify-content:space-between;align-items:center;margin-top:64px;gap:24px}
.backtotop a{display:flex;align-items:center;gap:8px;color: #ffffff;}
@media (max-width:767px){
    .footer-bottom,.footer-social-info{flex-direction:column;gap:24px;align-items:flex-start}
    .footer-links{flex-direction:column;gap:8px}
    .footer-bottom{margin-top:24px}
    .footer-links li{border:0;padding:0}
    .footer-logo{margin-bottom:24px}
    .backtotop a{margin:0 auto}
}

/* General Card Item */
.card-row{display:grid;gap:32px}
.card-media{position:relative}
.card-media img{width:100%;height:100%;aspect-ratio:2/1;object-fit:cover;object-position:top;}
a .card-media::after{background-color:#b01c2e;content:"";display:block;height:100%;width:100%;left:0;opacity:0;position:absolute;top:0;border-radius:4px 4px 0 0}
a:hover .card-media::after{opacity:.5}
.card-content{padding:24px;background:#fff}
.card-item {border-radius: 4px;overflow: hidden;}
.card-item a{text-decoration:none}
.card-item a h3{color:#b01c2e;text-decoration:underline}
.card-item a:hover h3{text-decoration:none}
.programees .card-item {border: 1px solid #E3E6E5;}
.program-duration{display:flex;flex-direction:column;color:#333}
.program-duration strong{font-weight:600}
.programcard-caption{padding-top:40px}
.disclaimer{color:#b01c2e}
.card-block-two{grid-template-columns:repeat(2,1fr)}
.card-block-three{grid-template-columns:repeat(3,1fr)}
.card-block-four{grid-template-columns:repeat(4,1fr)}
@media (max-width:991px){
	.card-block-four{grid-template-columns:repeat(2,1fr)}
	.card-block-three{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:767px){
	.card-block-four{grid-template-columns:repeat(1,1fr)}
	.card-block-three{grid-template-columns:repeat(1,1fr)}
}

/* STATS SECTION */
.stats-section .campus-item{text-align:center}
.stats-section .campus-item h2{margin-bottom:16px;font-size:56px;line-height:68px}
.stats-section .campus-item p{color:#161b20;font-size:20px;line-height:28px;font-weight:600;margin-bottom:0}
.stats-section .campus-item a{margin-top:8px;color:#b01c2e;display:inline-block;text-decoration:underline}
.stats-section .custom-slider-prev, .stats-section .custom-slider-next {display: none;}
@media (max-width:991px){
    .stats-section .campus-item h2{font-size:44px;line-height:56px}
}
@media (max-width:767px){
	.stats-section .campus-item {border: 0; padding: 0;}
}

/* CONTENT WITH MEDIA STYLE */
.custom-content-with-media{display:flex;gap:96px;align-items:center}
.custom-media {width: 50%;}
.custom-content{width:50%}
.custom-media img{vertical-align:top;width: 100%;overflow: hidden;aspect-ratio: 612 / 378;}
.custom-content h2 {margin-bottom: 32px;}
.custom-content p {font-size: 18px;line-height: 28px;}
.custom-content .cta {margin-top: 32px;}
.custom-content-to-media .custom-content {order: 1;}
.custom-content-to-media .custom-media {order: 2;}
@media (max-width:991px){
	.custom-content-with-media{flex-wrap:wrap;gap:24px}
	.custom-media{width:100%}
	.custom-media img{aspect-ratio:327/202}
	.custom-content{width:100%}
	.custom-content h2 {margin-bottom: 24px;}
	.custom-content p {font-size: 16px;line-height: 28px;}
	.custom-content .cta {margin-top: 24px;}	
}

/* USP of Mumbai campus */
.campus-row {display: grid;grid-template-columns: repeat(4,1fr);gap:32px;}
.campus-item {border-right: 2px solid #E3E6E5;padding-right: 24px;}
.campus-item:last-child {border: 0;}
.campus-item h3 {font-size: 36px;line-height: 44px;	color: #161B20;}
@media (max-width:1199px){
	.campus-row{grid-template-columns:repeat(2,1fr)}
	.campus-item:nth-child(even) {border-right: 0;padding-right: 0;}	
}
@media (max-width:991px){
	.campus-item h3 {font-size: 32px;line-height: 40px;}	
}
@media (max-width:767px){
	.campus-row{grid-template-columns:repeat(1,1fr)}
	.campus-item {border-right: 0;border-bottom: 2px solid #E3E6E5;padding-bottom: 24px;}		
}

/* Student journey and experience */
.student-journey .card-item{height: 100%;background: #881321;}
.student-journey .card-content {background: #881321;}
.student-journey .cta {margin: 32px auto 0 auto;}

/* Hear from our students */
.bg-grey .testimonials-item{background:#fff}
.testimonials-item{padding:48px;background:#f6f6f6}
.quote-icon{margin-bottom:16px}
.students-testimonials{font-style:italic;flex-grow:1;margin-bottom:32px}
.studetnts-details{margin-top:auto;width:100%;display:flex;flex-wrap:wrap;align-items:center;position:relative;gap:16px}
.studetnts-img{width:48px;height:48px;border-radius:100px;position:absolute;overflow:hidden}
.studetnts-details .studetnts-img img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;vertical-align:top}
.studetnts-details .studetnts-name-designation{font-size:16px;line-height:24px;color:#333;padding-left:64px}
.students-name{color:#161b20;font-weight:600}


/* GENERAL SLIDER */
.custom-slider-controls{display:none}
@media (max-width:767px){
	.custom-slider{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:16px;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
	.custom-slider::-webkit-scrollbar{display:none}
	.slider-inner{position:relative}
	.custom-slider .card-item{flex:0 0 100%;scroll-snap-align:start;height: auto;}
	.custom-slider-controls{display:flex;align-items:center;justify-content:center;}
	.custom-slider-controls > button{border:1px solid #b01c2e;background:#b01c2e;width:36px;height:36px;border-radius:4px;display:flex;justify-content:center;align-items:center;cursor:pointer;position:absolute;top: calc(50% - 34px);}
	.custom-slider-controls > button:hover {background: #881321;border: 1px solid #881321;}	
	.custom-slider-controls .custom-slider-prev{left:-16px}
	.custom-slider-controls .custom-slider-next{right:-16px}
	.custom-slider-dots{display:flex;gap:4px;align-items:center;margin-top:24px}
	.custom-slider-dot{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:#e3e6e5}
	.custom-slider-dot.active{opacity:1;background:#b01c2e}
	.bg-red .custom-slider-dot{background:#E3E6E5}
	.bg-red .custom-slider-dot.active{background:#ffffff}
	.bg-red .custom-slider-controls > button{background:#ffffff;border:1px solid #ffffff;}
	.bg-red .custom-slider-controls > button:hover {background: #E3E6E5;border:1px solid #E3E6E5;}	
	.bg-red .custom-slider-controls > button svg, .bg-red .custom-slider-controls > button svg path {fill: #B01C2E;}		
}
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus {
	background: #f1f1f1;
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 1em;
	font-weight: 600;
	height: auto;
	left: 5px;
	line-height: normal;
	margin: 0;
	overflow: visible;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}
footer.site-footer { background: #161b20; padding: 40px 0; }
.footer-social-links li img { width: 14px; height: auto; display: block; }
.youtube-embed-wrapper {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
	border-radius: 4px;
}
.youtube-embed-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
.hero-description p {margin-bottom: 16px;}
body.modal-open { overflow: hidden; }
.custom-modal { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; visibility: hidden; opacity: 0; transition: opacity .3s ease; }
.custom-modal.active { visibility: visible; opacity: 1; }
.modal-overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.72); }
.custom-modal > .modal-content { position: relative; z-index: 2; width: calc(100% - 24px); max-width: 516px; background: #fff; animation: modalFade .3s ease; max-height: calc(100vh - 24px); overflow-y: auto; }
.modal-close { border: 0; background: 0 0; font-size: 26px; line-height: 1; cursor: pointer; margin: 0; padding: 0; color: #000; min-width: inherit; position: absolute; right: 32px; top: 32px; }
.modal-close svg, .modal-close svg path { fill: #0B0C0C; pointer-events: none; }
@keyframes modalFade {
from { opacity: 0; transform: translateY(20px); }
to { opacity: 1; transform: translateY(0); }
}
.lp_modal_dialog > .modal-content { max-width: 1196px; }
.modal-inner { display: flex; flex-wrap: wrap; }
.modal-left { width: 40%; padding: 32px; color: #fff; fill: #fff; background: #000; }
.modal-right { width: 60%; }
.modal-body.p-0 { padding: 0; }
@media (max-width: 991px) {
	.modal-left { width: 100%; padding: 24px; }
	.modal-right { width: 100%; }
}
#lead-form-sf-marketing-hero .form-sec.row,
form[name="lead_form_sf_marketing_lp_program_cards"] .form-sec.row {
	display: flex;
	flex-wrap: wrap;
	margin-left: 0;
	margin-right: 0;
}
#lead-form-sf-marketing-hero .form-sec.row > *,
form[name="lead_form_sf_marketing_lp_program_cards"] .form-sec.row > * {
	width: 100%;
	max-width: 100%;
	flex-shrink: 0;
	padding-left: 0;
	padding-right: 0;
}
#lead-form-sf-marketing-hero input:not([type="submit"]),
#lead-form-sf-marketing-hero select,
#lead-form-sf-marketing-hero textarea {
	font-family: "Open Sans", sans-serif !important;
	font-size: 16px;
	line-height: 24px;
}
#lead-form-sf-marketing-hero label {
	font-family: "Inter", sans-serif !important;
	font-size: 16px;
	line-height: 24px;
}
#lead-form-sf-marketing-hero .cta-submit input[type="submit"],
#lead-form-sf-marketing-hero .cta-submit button[type="submit"],
form[name="lead_form_sf_marketing_lp_program_cards"] .cta-submit input[type="submit"],
form[name="lead_form_sf_marketing_lp_program_cards"] .cta-submit button[type="submit"] {
	font-family: "Sora", sans-serif !important;
}
#lead-form-sf-marketing-hero .form-title h2 {
	margin: 0;
	font-family: "Sora", sans-serif !important;
	color: #161b20 !important;
}
.register-form-popup { max-width: 1116px; }
.register-form-popup .modal-inner {
	background: #000;
	display: flex;
	flex-wrap: wrap;
}
#register-form-popup .modal-left,
.register-form-popup .modal-left { width: 44%; padding: 32px; color: #fff; background: #000; }
#register-form-popup .modal-right,
.register-form-popup .modal-right { width: 56%; }
.modal-program { display: flex; flex-wrap: wrap; gap: 32px; }
.modal-program > img { width: 100%; }
.modal-program-duration-details { display: flex; width: 100%; flex-wrap: wrap; justify-content: space-between; }
.modal-program-duration-details > * { display: flex; flex-wrap: wrap; flex-direction: column; font-weight: 700; gap: 8px; }
.modal-program-duration-details .modal-program-year { padding-left: 32px; }
.modal-program-duration-details .modal-program-duration { min-width: 129px; }
.modal-program-duration-details > * span { font-weight: 400; }
.modal-program-duration-details > * span img { margin-left: -32px; margin-right: 8px; }
.modal-program p { margin-bottom: 0; color: #fff; }
.register-form-popup .form-title { padding: 32px; }
.register-form-popup .register-lp-form .lp-form-body { padding: 32px 20px; }
.register-form-popup .register-lp-form .lp-form-footer { padding: 0 32px 32px; }
.modal-content .btn-close {
	position: absolute;
	right: 32px;
	top: 32px;
	padding: 8px 0;
	opacity: 1;
	width: 24px;
	height: 24px;
	cursor: pointer;
	border: 0;
	background: transparent url("../../../../../images/marketing-lp/close.svg") center/24px no-repeat;
	box-shadow: none;
	outline: none;
}
.read-more-text { max-height: 48px; overflow: hidden; transition: max-height .4s ease; }
.read-more-text.expanded { max-height: 500px; }
.read-more-btn {
	color: #fff;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
	margin-top: -32px;
	padding-top: 12px;
	position: relative;
}
.read-more-btn::after {
	background: url("../../../../../images/marketing-lp/arrow-white.png") no-repeat center;
	width: 20px;
	height: 20px;
	display: inline-block;
	content: "";
}
.lp-btn {
	background: #b01c2e;
	border: 1px solid #b01c2e;
	outline: none;
	padding: 16px;
	border-radius: 4px;
	color: #fff;
	font-size: 16px;
	line-height: 24px;
	font-weight: 600;
	display: inline-block;
	text-decoration: none;
	font-family: "Sora", sans-serif;
}
.lp-btn:hover {
	background: #881321;
	border: 1px solid #881321;
	color: #ffffff;
}
.lp-btn span {
	padding: 0 8px;
	display: flex;
	align-items: center;
}
.lp-sticky-cta-bar { display: none; }
#lp-sticky-cta-modal.lp-sticky-cta-thankyou-active .lead-form-thankyou-inline .lead-form-sf-pc-thankyou-head {
	display: none !important;
}
@media (max-width: 991.98px) {
	body.lp-sticky-cta-visible { padding-bottom: 88px; }
	body.lp-sticky-cta-visible .site-footer { padding-bottom: 112px; }
	body.modal-open .lp-sticky-cta-bar { display: none !important; }
	.lp-sticky-cta-bar {
		display: none !important;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 1050;
		background: #fff;
		padding: 16px;
		padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px));
		box-shadow: 0 -4px 16px rgba(0, 0, 0, .10);
	}
	.lp-sticky-cta-bar.is-visible {
		display: flex !important;
	}
	.lp-sticky-cta-btn {
		width: 100%;
		min-height: 56px;
		border: none;
		cursor: pointer;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.lp-sticky-cta-btn:focus-visible {
		outline: 2px solid #b01c2e;
		outline-offset: 3px;
	}
	#lp-sticky-cta-modal .modal-content {
		border-radius: 0 !important;
		border: none;
		background: #fff;
		max-height: calc(100dvh - 48px);
		overflow-y: auto;
	}
	.lp-sticky-cta-dialog {
		margin: 24px auto;
		max-width: 656px;
	}
	#lp-sticky-cta-modal .modal-header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		padding: 24px !important;
		border-bottom: 1px solid #e3e6e5;
	}
	#lp-sticky-cta-modal .modal-title {
		flex: 1 1 auto;
		min-width: 0;
		margin: 0;
		padding: 0;
		color: #161b20;
		font-family: "Sora", sans-serif;
		font-size: 32px;
		font-weight: 600;
		line-height: 40px;
	}
	#lp-sticky-cta-modal .modal-header .btn-close {
		position: static !important;
		flex: 0 0 24px;
		width: 24px !important;
		height: 24px !important;
		min-width: 44px;
		min-height: 44px;
		padding: 10px !important;
		margin: 0 !important;
		opacity: 1;
		background: transparent url("../../../../../images/marketing-lp/close.svg") center/24px no-repeat !important;
		box-sizing: content-box;
	}
	#lp-sticky-cta-modal .modal-body {
		padding: 0 !important;
	}
	#lp-sticky-cta-modal form .form-title {
		display: none !important;
	}
	#lp-sticky-cta-modal form.register-form .form-sec {
		padding: 24px 12px 32px !important;
	}
	#lp-sticky-cta-modal form.register-form .lp-form-footer {
		padding: 0 24px 24px;
		border-top: 0;
	}
	#lp-sticky-cta-modal .lp-form-footer .cta-submit button,
	#lp-sticky-cta-modal .lp-form-footer .cta {
		white-space: nowrap !important;
		width: auto !important;
		min-width: 0;
	}
	#lp-sticky-cta-modal .lp-form-footer .cta span {
		display: inline !important;
		white-space: nowrap;
	}
	#lp-sticky-cta-modal .lead-form-thankyou-inline .lp-form-body {
		padding: 24px !important;
	}
	#lp-sticky-cta-modal .lead-form-thankyou-inline .lp-form-footer {
		padding: 0 24px 24px;
		border-top: 0;
	}
}
@media (max-width: 767.98px) {
	.modal-program-duration-details .modal-program-duration { min-width: inherit; }
	#register-form-popup .modal-left { width: 100%; padding: 0 24px 24px; }
	#register-form-popup .modal-program > img { display: none; }
	#register-form-popup .modal-right { width: 100%; }
	.register-form-popup .register-lp-form .lp-form-body { padding: 24px 12px 32px; }
	.register-form-popup .register-lp-form .lp-form-footer { padding: 0 24px 24px; }
	.read-more-btn { margin-top: -24px; }
	.lp-sticky-cta-dialog {
		margin: 24px !important;
		max-width: calc(100% - 48px) !important;
	}
	#lp-sticky-cta-modal .modal-content {
		max-height: calc(100dvh - 48px);
		border-radius: 0 !important;
	}
	#lp-sticky-cta-modal .modal-header {
		padding: 20px !important;
	}
	#lp-sticky-cta-modal .modal-title {
		font-size: 24px;
		line-height: 32px;
	}
}
