:root {
	--psb-primary-color: #fcdb32;
	--psb-secondary-color: #00b9f2;
	--psb-primary-light: rgba(252, 219, 50, 0.102);
	--psb-secondary-light: rgba(0, 185, 242, 0.1);
	--psb-dark-text: #333333;
	--psb-light-text: #ffffff;
}
/* body {
	background-color: #f8f9fa;
} */
p {
	margin-bottom: 10px !important;
}
.para-justify {
	text-align: justify;
}
@media (min-width: 1200px) {
	.container {
		max-width: 1300px;
		/* padding: 0px 15px; */
	}
}
.top-header {
	z-index: 99 !important;
}
.navbar {
	/* background: #fcdb32 !important; */
	/* background: #fcdb32 !important;
	background: -webkit-linear-gradient(to right, #fcdb32, #00b9f2) !important;
	background: linear-gradient(to right, #fcdb32, #00b9f2) !important; */

	background: linear-gradient(125deg, #fcdb32 20%, #00b9f2) !important;
}
.navbar-nav .nav-link {
	font-weight: 700;
	gap: unset;
	color: #141d38 !important;
}

.nav-icon {
	margin-right: 0.5rem;
	font-size: 14px;
}
i.arrow-down {
	margin-left: 0.5rem !important;
	font-size: 0.8rem;
}

.navbar-nav .nav-link.active i.arrow-down {
	rotate: 180deg;
	-webkit-transition: all 500ms ease;
	transition: all 500ms ease;
}

.navbar-nav .nav-link:hover {
	color: #ffffff !important;
	font-weight: 900;
	-webkit-transition: all 500ms ease;
	transition: all 500ms ease;
}
.navbar-nav .nav-link.active {
	color: #ffffff !important;
	font-weight: 900;
	-webkit-transition: all 500ms ease;
	transition: all 500ms ease;
	/* transition: all 0.8s; */
}

.latest-news-indicator {
	display: none;
}
.news-item {
	color: #00b9f2;
	font-weight: 600;
}

/* product card  */
.service-style-three.service-page-2 {
	background: #f8f9fa;
}
.service-block-one .inner-box {
	padding: 35px 35px 35px;
}
.service-block-one .inner-box h3 {
	font-size: 26px;
	color: #000166;
	font-weight: 400;
	margin: 0 0 20px 0;
	padding: 0;
	display: inline-block;
	width: 100%;
	vertical-align: top;
}
.service-block-one .inner-box h3 {
	min-height: 30px;
}
.service-block-one .inner-box h3 a {
	color: #212529;
}
.service-block-one .inner-box p {
	min-height: 90px;
}

.three-line-ellipsis {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
.theme-btn.apply-now-btn {
	background: #fcdb32;
	border: 1px solid #ffffff;
	border-radius: 4px;
	color: #ffffff !important;
	line-height: 12px;
	transition: 400ms ease all;
	cursor: pointer;
	background: linear-gradient(125deg, #fcdb32 20%, #00b9f2) !important;
}
.theme-btn.apply-now-btn:hover,
.theme-btn.apply-now-btn:before,
.theme-btn.apply-now-btn:after {
	background: #00b9f2 !important;
	border: 1px solid #ffffff !important;
	color: #fcdb32 !important;
	transition: 400ms ease all;
}

.bankingServices {
	background-color: #fcdb322e;
}
.banking-rightBox {
	padding: 80px 80px 80px 125px;
}
.bank-icon {
	color: #fcdb32;
}
.bankingServices-img {
	background: url(/assets/psb-img/BankingServices-img-3.jpg) center
		center/cover no-repeat;
	height: auto;
	margin: 0;
}

.rates-header-bg {
	position: relative;
	background: linear-gradient(rgb(252 219 50 / 80%), rgb(252 219 50 / 80%)),
		url(../pb-img/video-bg.png) no-repeat center center;
}
.rates-header-bg .container p {
	color: #212529;
	font-weight: 400;
}
.apps-section .inner-container {
	background: #cfe7d9;
}
.apps-section .content-box .sec-title h2,
.sec-title h6,
.content-box .text-box p {
	color: #141d38 !important;
}
.apps-section .content-box .btn-box a:hover {
	background: #fcdb32 !important;
}

.main-footer {
	background: #00b9f2;
	background: linear-gradient(117deg, #fcdb32 -20%, #00b9f2) !important;
	/* background-image: linear-gradient(90deg, rgb(252 219 50 / 48%), #fcdb32e3), linear-gradient(rgba(0, 0, 0, 0.33), rgba(0, 0, 0, 0.33)), url(../govt-bg-img-4.jpg) */
	/* background: linear-gradient(to bottom, #f6ad19, #fcdb32),
    url(../govt-bg-img-4.jpg) !important; */
}
.footer-bottom {
	border-top: 1px solid #dddddd99;
}

/* top-headerr  */

.top-header {
	padding: 0;
	background: #ffffff;
	box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1), 0 3px 5px 0 rgba(0, 0, 0, 0.1);
}
.pdl-logo {
	padding-left: 0;
}
.logo {
	/* text-align: start; */
	position: relative;
	/* left: 130px; */
	float: left;
	margin-left: 140px;
}
.logo img {
	max-height: 80px;
	width: auto;
}
/* .years-logo-outer a img {
    margin-top: 15px;
  } */
.logo-years {
	/* text-align: end; */
	/* right: 150px; */
	position: relative;
	float: right;
	margin-right: 145px;
}
.pdr-logo {
	/* background-color: crimson; */
	padding: 12px 0;
	background: url(/assets/header-logo/shap-bg-3.png) center
		center/cover no-repeat;
	background-position-x: inherit;
}
.shap {
	position: relative;
	float: left;
	right: 150px;
	background: #ffffff;
	padding: 0px;
	margin: 0px;
	border-style: none !important;
	border: none !important;
	outline: none;
	border: inherit;
	border: initial;
	border: unset;
}
.shap img {
}

/* .mega-menu-links li:hover {
	background-color: #fcdb3212;
	transition: all 0.5s;
} */
.mega-menu {
	border-top: 3px solid #fcdb32;
}
.main-footer a:hover {
	color: #fcdb32 !important;
}
.main-footer .links-widget .links-list li a:hover::before {
	background-color: #fcdb32 !important;
}

/*
 ------------------------------
  * loan product pages swiper slider css
 ------------------------------
 */

.auto-container.loan-container {
	overflow: hidden;
}
/* .swiper {
	overflow: visible !important;
} */
/* Swiper Navigation Buttons */
.loan-products-swiper .swiper-button-next,
.loan-products-swiper .swiper-button-prev {
	color: #007bff;
	top: 50%;
	transform: translateY(-50%);
}

.loan-products-swiper .swiper-button-next:hover,
.loan-products-swiper .swiper-button-prev:hover {
	color: #0056b3;
}

/* Swiper Pagination Dots */
.loan-products-swiper .swiper-pagination-bullet {
	background-color: #007bff;
	opacity: 0.5;
}

.loan-products-swiper .swiper-pagination-bullet-active {
	background-color: #007bff;
	opacity: 1;
}
.swiper-pagination.loan-products-pagination {
	position: absolute;
	bottom: -8px !important;
}

/*
 ------------------------------
  * Deposit Schemes css
 ------------------------------
 */

.modern-rate-container {
	margin: 30px auto;
	/* max-width: 1140px; */
	/* box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1); */
	border-radius: 12px;
	overflow: hidden;
}

.modern-table-header {
	background: linear-gradient(135deg, #00b9f2 0%, #0085c7 100%);
	color: white;
	text-align: center;
	padding: 25px 15px;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.5px;
	position: relative;
	overflow: hidden;
}

.modern-table-header::before {
	content: "";
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: linear-gradient(
		45deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.1) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: rotate(45deg);
	animation: shine 3s infinite;
}

@keyframes shine {
	0% {
		left: -100%;
	}
	100% {
		left: 100%;
	}
}

/* .modern-table {
	background-color: #fff;
} */

.modern-table th {
	background: linear-gradient(
		135deg,
		rgba(252, 219, 50, 0.15) 0%,
		rgba(249, 196, 21, 0.15) 100%
	);
	color: #333;
	font-weight: 700;
	vertical-align: middle;
	padding: 15px;
	border: none;
	position: relative;
}

.modern-table th:first-child {
	border-top-left-radius: 6px;
}

.modern-table th:last-child {
	border-top-right-radius: 6px;
}

/* .modern-table th:not(:first-child) {
	background: linear-gradient(to bottom, #00b9f2 0%, #0097c7 100%);
	background: linear-gradient(135deg, rgba(252, 219, 50, 0.15) 0%, rgba(249, 196, 21, 0.15) 100%);
	color: rgb(0, 0, 0);
} */

.modern-table td {
	padding: 15px;
	vertical-align: middle;
	border: none;
	border-bottom: 1px solid #f0f0f0;
	font-size: 15px;
	transition: all 0.2s ease;
}

.modern-table tr:last-child td {
	border-bottom: none;
}

/* .modern-table tr td:first-child {
	font-weight: 500;
	color: #333;
} */

.modern-table tr:hover td {
	background-color: rgba(0, 185, 242, 0.05);
	transform: translateY(-1px);
}

.rate-highlight {
	font-weight: 600;
	display: inline-block;
	padding: 5px 12px;
	border-radius: 20px;
	background: linear-gradient(
		135deg,
		rgba(252, 219, 50, 0.15) 0%,
		rgba(249, 196, 21, 0.15) 100%
	);
}

.senior-highlight {
	background: linear-gradient(
		135deg,
		rgba(0, 185, 242, 0.15) 0%,
		rgba(0, 151, 199, 0.15) 100%
	);
}

.coop-highlight {
	background: linear-gradient(
		135deg,
		rgba(130, 215, 247, 0.15) 0%,
		rgba(0, 185, 242, 0.15) 100%
	);
}

/*
 ------------------------------
  * Current account css
 ------------------------------
 */
.features-bullet-point {
	list-style: none;
	padding-left: 0;
}
.features-bullet-point li {
	margin-bottom: 0.5rem;
	padding-left: 1.5rem;
	position: relative;
}
.features-bullet-point li::before {
	content: "•";
	color: #000;
	position: absolute;
	left: 12px;
	font-size: 22px;
}

/*
 ------------------------------
  * BOM css
 ------------------------------
 */

.team-section {
	padding: 80px 0 0;
	position: relative;
	overflow: hidden;
	/* background-color: #f8f9fa; */
}

.team-card {
	border-radius: 15px;
	overflow: hidden;
	/* box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); */
	margin-bottom: 40px;
	transition: all 0.4s ease;
	background-color: white;
	position: relative;
	border: 1px solid #fcdb32;
	height: 410px;
	max-height: 420px;
}
.team-card.team-card-box-h {
	height: 100%;
	max-height: 100%;
}

.team-card.senior-m-card {
	height: 100%;
	max-height: 95%;
}

.team-card:hover {
	transform: translateY(-10px);
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
}

.team-card:hover .team-img-container::before {
	opacity: 0.7;
}

.team-img-container {
	position: relative;
	overflow: hidden;
	height: 260px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.team-img-container::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(
		45deg,
		var(--psb-primary-color),
		var(--psb-secondary-color)
	);
	opacity: 0;
	transition: opacity 0.4s ease;
	z-index: 1;
}

.team-img {
	width: 100%;
	height: 100%;
	/* object-fit: cover; */
	/* object-position: center top; */
	transition: transform 0.6s ease;
}

.team-card:hover .team-img {
	transform: scale(1.1);
}

.team-card::before {
	content: "";
	position: absolute;
	top: -2px;
	left: -2px;
	right: -2px;
	bottom: -2px;
	background: linear-gradient(
		45deg,
		var(--psb-primary-color),
		var(--psb-secondary-color),
		var(--psb-primary-color)
	);
	z-index: -1;
	border-radius: 15px;
	opacity: 0;
	transition: opacity 0.4s ease;
}

.team-card:hover::before {
	opacity: 1;
}

.team-info {
	padding: 25px 20px;
	text-align: center;
	position: relative;
	background: white;
	height: 100%; /* new add  */
}
.team-info.team-info-box-p {
	/* height: 100%; */
	padding: 93px 20px;
}

.team-name {
	font-size: 1.2rem;
	font-weight: 600;
	margin-bottom: 5px;
	color: var(--psb-dark-text);
	transition: color 0.3s ease;
}
.team-name.senior-m-font {
	font-size: 16px;
}
.team-card:hover .team-name {
	color: var(--psb-secondary-color);
}

.team-position {
	display: inline-block;
	color: white;
	font-size: 0.9rem;
	font-weight: 500;
	padding: 5px 15px;
	border-radius: 20px;
	background: linear-gradient(
		to right,
		var(--psb-primary-color),
		var(--psb-secondary-color)
	);
	margin-top: 8px;
}

.top-row {
	display: flex;
	justify-content: center;
	margin-bottom: 50px;
}

.top-row .team-card {
	/* max-width: 320px; */
	display: flex; /* add new */
	flex-wrap: wrap;
	align-items: center; /* add new */
	margin: 0 20px;
	border-top: 5px solid var(--psb-primary-color);
}

.top-row .team-card:nth-child(2) {
	border-top: 5px solid var(--psb-secondary-color);
}

.bottom-row .team-card:nth-child(odd) {
	border-top: 5px solid var(--psb-primary-color);
}

.bottom-row .team-card:nth-child(even) {
	border-top: 5px solid var(--psb-secondary-color);
}

.bg-shape {
	position: absolute;
	opacity: 0.05;
	z-index: -1;
}

.shape-1 {
	width: 300px;
	height: 300px;
	border-radius: 50%;
	background-color: var(--psb-primary-color);
	top: -150px;
	left: -150px;
}

.shape-2 {
	width: 200px;
	height: 200px;
	border-radius: 50%;
	background-color: var(--psb-secondary-color);
	bottom: -100px;
	right: -100px;
}

/*
 ------------------------------
  * RTGS css
 ------------------------------
 */
.ol-list > li {
	list-style: unset;
}
.ol-list {
	padding-left: 15px;
}

/*
 ------------------------------
  * Pradhan Mantri Yojana css
 ------------------------------
 */
.service-block-one .inner-box.pm-jd-inner-box {
	height: 305px;
}
.contact-banner {
	background: linear-gradient(135deg, #4b6cb7, #182848);
	color: white;
	padding: 30px;
	border-radius: 15px;
	margin-top: 20px;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
	position: relative;
	overflow: hidden;
}
.contact-banner::before {
	content: "";
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: rgba(255, 255, 255, 0.1);
	transform: rotate(45deg);
	pointer-events: none;
	/* animation: shine 3s infinite; */
}
.bank-highlight {
	font-weight: 700;
	color: var(--psb-primary-color);
}
.toll-free {
	font-size: 1.1rem;
	margin-top: 15px;
}
.quote-btn {
	background-color: var(--psb-primary-color);
	border: none;
	color: #141d38;
	padding: 10px 25px;
	border-radius: 30px;
	font-weight: 600;
	margin-top: 20px;
	transition: all 0.3s ease;
}
.quote-btn:hover {
	background-color: #e9c200;
	transform: scale(1.05);
	color: #141d38;
}
.contact-icon {
	margin-right: 10px;
}

#wow-debit-slider .swiper-slide > img {
	border-radius: 22px;
}

/*
 ------------------------------
  * Mobile Banking css
 ------------------------------
 */

/* Custom FAQ Accordion Styling */
.custom-faq-accordion {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
}

.faq-item {
	border-bottom: 1px solid #e0e0e0;
}

.faq-question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1em 0;
	cursor: pointer;
	background-color: #fff;
}

.faq-question h3 {
	margin: 0;
	font-size: 1.15rem;
	color: #333;
	font-weight: 400;
}

.icon-container {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	border: 1px solid #333333;
	color: #333333;
	font-size: 0.9rem;
	line-height: 1;
	flex-shrink: 0;
	margin-left: 15px;
}

.faq-answer {
	/* padding: 0 0 20px 0; */
	padding: 20px 20px;
	background: #f5f5f5;
}

.faq-answer p {
	margin: 0;
	color: #6c757d;
}

/* Hide elements with d-none class */
.d-none {
	display: none !important;
}

/*
 ------------------------------
  * Annual Report css
 ------------------------------
 */

.psb-annual-report-item {
	position: relative;
	/* margin-bottom: 30px; */
	overflow: hidden;
	border-radius: 4px;
	/* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
}
.psb-annual-report-img:first-child {
	height: 350px;
}

.psb-annual-report-img {
	width: 100%;
	height: auto;
	border-radius: 5px;
	transition: transform 0.3s ease;
}

.psb-annual-report-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(252, 219, 50, 0.7);
	opacity: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: opacity 0.3s ease;
}

.psb-annual-report-icon {
	color: white;
	font-size: 32px;
	transform: scale(0.5);
	transition: transform 0.3s ease;
}

.psb-annual-report-item:hover .psb-annual-report-overlay {
	opacity: 1;
}

.psb-annual-report-item:hover .psb-annual-report-icon {
	transform: scale(1);
}

.psb-annual-report-item:hover .psb-annual-report-img {
	transform: scale(1.05);
}

.psb-annual-report-caption {
	text-align: center;
	padding: 20px 10px 10px 10px;
	background-color: rgb(255, 255, 255);
}
.psb-annual-report-caption a:hover h5 {
	color: var(--psb-primary-color);
	transition: all 0.3s ease;
}
.annual-report-card {
	border: 1px solid #ddd;
	padding: 12px;
	border-radius: 6px;
	/* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
	transition: transform 0.3s ease;
	margin-bottom: 25px !important;
}

.annual-report-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/*
 ------------------------------
  * Photo Gallery css
 ------------------------------
 */
.date-filter {
	display: flex;
	overflow-x: auto;
	margin-bottom: 20px;
}

.date-filter .btn {
	flex: 0 0 auto;
	margin-right: 5px;
	min-width: 80px;
}

.btn-custom-active {
	background-color: #068dcd !important;
	color: rgb(255, 255, 255) !important;
}

.image-gallery {
	margin-top: 30px;
}

.gallery-item {
	margin-bottom: 20px;
	overflow: hidden;
	border-radius: 5px;
	transition: all 0.3s ease;
}

.gallery-item img {
	width: 100%;
	/* height: 200px; */
	object-fit: cover;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.gallery-item:not(.focused) img {
	/* opacity: 0.7; */
	opacity: 1;
}

.gallery-item:hover img {
	transform: scale(1.05);
	opacity: 1;
	opacity: 0.7;
}

.gallery-item-wrapper {
	position: relative;
	cursor: pointer;
}

.gallery-item-wrapper .overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.7);
	color: white;
	padding: 10px;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.gallery-item:hover .overlay {
	opacity: 1;
}

/* Animations for Isotope */
.gallery-item {
	/* opacity: 0; */
	transform: scale(0.8);
}

.gallery-item.show {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.5s ease, transform 0.5s ease;
}
.photoGallery-nav,
.home-nav {
	font-size: 14px;
	white-space: nowrap;
	padding: 0.5rem 1rem;
	font-weight: 700;
	gap: unset;
	color: #141d38 !important;
}
.photoGallery-nav:hover,
.home-nav:hover {
	color: #ffffff !important;
	font-weight: 900;
	-webkit-transition: all 500ms ease;
	transition: all 500ms ease;
}

/*
 ------------------------------
  * Download Form css
 ------------------------------
 */

.bank-forms-section {
	/* padding: 30px 0; */
}

.bank-form-card {
	border: 1px solid #e9ecef;
	border-radius: 8px;
	padding: 20px;
	margin-bottom: 20px;
	transition: all 0.3s ease;
	background-color: #fff;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

.bank-form-card:hover {
	border-color: #fcdb32;
	box-shadow: 0 5px 15px rgba(2, 117, 216, 0.1);
	transform: translateY(-2px);
}

.bank-form-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
}

.bank-form-name {
	display: flex;
	align-items: center;
	color: #141d38;
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: 0;
	/* word-break: break-all */
}

.bank-form-icon {
	background-color: rgb(244 15 2 / 14%);
	color: #f40f02;
	width: 40px;
	height: 40px;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 15px;
	font-size: 1.2rem;
}

.bank-action-buttons {
	display: flex;
	gap: 10px;
}

.bank-view-btn,
.bank-download-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.25rem 0.75rem;
	border-radius: 6px;
	/* color: #0276bb; */
	/* background-color: rgb(2 118 187 / 10%); */
	text-decoration: none;
	transition: all 0.3s ease;
	border: none;
	cursor: pointer;
	font-size: 0.75rem;
}

.bank-view-btn {
	/* background-color: #fcdb322e; */
	border: 1px solid #fcdb32;
	color: #141d38;
	font-weight: 600;
	/* border: none; */
}

.bank-view-btn:hover {
	background-color: #fcdb32;
	color: #141d38;
	border: 1px solid #fcdb32;
	transition: all 0.3s ease;
}

.bank-download-btn {
	/* background-color: #fcdb32;
    color: #141d38; */
	font-weight: 600;
	border: none;
	background: linear-gradient(125deg, #fcdb32 20%, #00b9f2) !important;
	color: #fff;
}

.bank-download-btn:hover {
	background: linear-gradient(125deg, #00b9f2 20%, #fcdb32) !important;
	color: #fff;
}

.bank-btn-icon {
	margin-right: 8px;
}

/*
 ------------------------------
  * GST Form css
 ------------------------------
 */

.gst-form-container {
	/* max-width: 1200px; */
	margin: 0 auto;
	padding: 2rem;
	background-color: #f8f9fa;
	border-radius: 10px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.form-title {
	margin-bottom: 2rem;
	color: #2c3e50;
	text-align: center;
}

.form-control {
	border-radius: 5px;
	padding: 10px 15px;
	border: 1px solid #ddd;
}
.form-control {
	display: block;
	width: 100%;
	padding: 0.75rem;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #ced4da;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0.375rem;
	transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus {
	border-color: var(--psb-primary-color);
	box-shadow: 0 0 0 0.2rem rgba(252, 219, 50, 0.25);
}

.captcha-container {
	display: flex;
	align-items: center;
	gap: 20px;
}

.captcha-box {
	display: inline-block;
	padding: 10px 15px;
	border: 1px solid #ddd;
	border-radius: 5px;
	background-color: #f1f1f1;
	letter-spacing: 5px;
	font-size: 1.2rem;
	font-weight: bold;
	font-family: "Courier New", monospace;
	min-width: 150px;
	text-align: center;
	margin-right: 10px;
	color: #333;
}

.refresh-captcha {
	cursor: pointer;
	font-size: 1.5rem;
	color: #3498db;
	margin-right: 10px;
}

.submit-btn {
	background: linear-gradient(125deg, #fcdb32 20%, #00b9f2) !important;
	border-color: unset;
	padding: 10px 25px;
	font-weight: 600;
	margin-top: 1rem;
}

.submit-btn:hover {
	background: linear-gradient(125deg, #00b9f2 20%, #fcdb32) !important;
	border-color: unset;
}

/* Required indicator */
.required-placeholder::placeholder {
	position: relative;
}

.required-placeholder::after {
	content: " *";
	color: #e74c3c;
}

/* Loading state */
.loading {
	position: relative;
	opacity: 0.8;
}

.loading::after {
	content: "";
	display: inline-block;
	width: 1rem;
	height: 1rem;
	border: 2px solid #fff;
	border-radius: 50%;
	border-top-color: transparent;
	margin-left: 10px;
	vertical-align: middle;
	animation: spinner 1s linear infinite;
}

@keyframes spinner {
	to {
		transform: rotate(360deg);
	}
}

/* Mobile optimization */
@media (max-width: 768px) {
	.captcha-container {
		flex-direction: column;
		align-items: flex-start;
	}

	.captcha-box {
		margin-bottom: 10px;
	}
}

/* Captcha styling */
.captcha-wrapper {
	margin-bottom: 15px;
}

.captcha-label {
	display: block;
	margin-bottom: 8px;
	font-weight: 500;
}

.captcha-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.captcha-display {
	background-color: #f0f0f0;
	border: 1px solid #ddd;
	padding: 8px 15px;
	border-radius: 4px;
	font-family: "Courier New", monospace;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 5px;
	margin-right: 10px;
	min-width: 120px;
	text-align: center;
	color: #333;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}

.captcha-asterisk {
	color: #e74c3c;
	margin-left: 4px;
}

/*
 ------------------------------
  * contact css
 ------------------------------
 */

.contact-container {
	background-color: white;
	border-radius: 10px;
	/* box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); */
	overflow: hidden;
}

.contact-info {
	padding: 0 1rem 0 0;
	height: 100%;
	border-right: 3px solid #fcdb32;
}

.contact-title {
	color: #0097c7;
	font-weight: bold;
	position: relative;
	padding-bottom: 15px;
	margin-bottom: 20px;
}

.contact-title:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 70px;
	height: 4px;
	background-color: #fcdb32;
}

.contact-item {
	display: flex;
	align-items: flex-start;
	margin-bottom: 1.2rem;
}

.contact-icon {
	color: #0097c7;
	min-width: 35px;
	font-size: 1.1rem;
	margin-top: 3px;
}

.contact-text {
	flex: 1;
}

.contact-label {
	font-weight: 600;
	display: block;
	margin-bottom: 3px;
	color: #333;
}

.contact-value {
	color: #555;
}

.hours-section {
	background-color: #f7f7f7;
	padding: 15px;
	border-radius: 8px;
	margin-top: 20px;
	border-left: 4px solid #fcdb32;
}

.hours-title {
	color: #0097c7;
	font-weight: 600;
	margin-bottom: 10px;
}

.hours-item {
	display: flex;
	justify-content: space-between;
	margin-bottom: 8px;
}

.hours-label {
	font-weight: 500;
}

.hours-value {
	background-color: #fcdb32;
	padding: 2px 8px;
	border-radius: 4px;
	font-weight: 500;
	color: #333;
}

.map-container {
	height: 100%;
	min-height: 450px;
}

.map-container iframe {
	width: 100%;
	height: 100%;
	border: none;
}

.psb-social-link {
	display: inline-block;
	color: #0097c7;
	margin-right: 10px;
}

.psb-social-link i {
	font-size: 1.5rem;
	transition: all 0.3s ease;
}

.psb-social-link:hover i {
	color: #fcdb32;
	transform: scale(1.1);
}

@media (max-width: 991px) {
	.contact-info {
		border-right: none;
		border-bottom: 3px solid #fcdb32;
	}

	.map-container {
		min-height: 350px;
	}
}

/*
 ------------------------------
  * Branch Locator css
 ------------------------------
 */
/* .branch-info-container {
	font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px;
} */

.branch-card-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
	gap: 20px;
}

.branch-card {
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 10px 30px #1a2c711a;
	/* box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12); */
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.branch-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
}

.branch-header {
	background: linear-gradient(135deg, #00b9f2, #0084ab);
	color: white;
	padding: 15px 20px;
	position: relative;
}

.branch-name {
	color: #fff;
	font-size: 1.4rem;
	font-weight: 600;
	margin: 0;
	padding-bottom: 8px;
}

.branch-underline {
	display: block;
	width: 50px;
	height: 4px;
	background-color: #fcdb32;
	border-radius: 2px;
}

.branch-content {
	padding: 20px;
	background-color: white;
}

.branch-info-item {
	display: flex;
	margin-bottom: 15px;
	align-items: flex-start;
}

.branch-info-icon {
	flex: 0 0 20px;
	color: #00b9f2;
	margin-right: 12px;
	margin-top: 4px;
}

.branch-info-text {
	flex: 1;
	line-height: 1.5;
}

.branch-info-label {
	font-weight: 600;
	color: #555;
	display: block;
}

.branch-info-value {
	color: #333;
}

.branch-badge {
	display: inline-block;
	background-color: #fcdb32;
	color: #333;
	font-size: 0.85rem;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 15px;
	margin-top: 5px;
}

/*
 ------------------------------
  * Services  css
 ------------------------------
 */

.s-service-card {
	border: 2px solid #e9c200;
	border-radius: 8px;
	transition: all 0.3s ease;
	height: 100%;
	background-color: white;
}

.s-service-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.s-service-header {
	background-color: #e9c200;
	color: #333;
	padding: 15px;
	/* text-align: center; */
	font-size: 1.2rem;
	font-weight: bold;
	border-radius: 6px 6px 0 0;
}

.s-service-list {
	padding: 20px;
}

.s-service-item {
	padding: 10px 0;
	border-bottom: 1px solid #f0f0f0;
	display: flex;
	align-items: center;
}

.s-service-item:last-child {
	border-bottom: none;
}

.s-service-item i {
	color: #00b9f2;
	margin-right: 10px;
}

.s-deposit-card {
	border: 2px solid #00b9f2;
	border-radius: 8px;
	height: 100%;
	transition: all 0.3s ease;
	background-color: white;
}

.s-deposit-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.s-deposit-header {
	background-color: #00b9f2;
	color: white;
	padding: 15px;
	/* text-align: center; */
	font-size: 1.2rem;
	font-weight: bold;
	border-radius: 6px 6px 0 0;
}

.s-deposit-body {
	padding: 20px;
}

.s-deposit-feature {
	padding: 8px 0;
	color: #555;
}

.s-period {
	margin-top: 15px;
	font-weight: bold;
	color: #e9c200;
}

.s-section-title {
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 15px;
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
}

.s-section-title:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100px;
	height: 3px;
	background: linear-gradient(to right, #e9c200, #00b9f2);
}

/*
 ------------------------------
  * emi calculator  css
 ------------------------------
 */
.calculator-container {
	background-color: #fef9da;
	/* border-radius: 10px; */
	padding: 50px;
	/* border-right: 1px solid #e9e9e9; */
}
.result-container {
	background-color: #fef9da;
	/* border-radius: 10px; */
	padding: 40px 100px 30px 50px;
}
.slider-label {
	font-weight: bold;
	color: #495057;
	display: block;
}
.custom-range-w {
	width: 100%;
}
.month-yearly-d {
	display: flex;
	gap: 30px;
}
.slider-value {
	background-color: #e8f5ff;
	border-radius: 5px;
	padding: 5px 10px;
}
.result-label {
	color: #3b403e;
}
.result-value {
	font-weight: bold;
	color: #141d38;
	font-size: 22px;
}
.monthly-payment {
	font-size: 1.5rem;
	font-weight: bold;
	color: #141d38;
	margin-bottom: 0;
}
#emi {
	font-size: 34px;
	margin-bottom: 5px;
}

/*
 ------------------------------
  * awards and achievements  css
 ------------------------------
 */

.award-container {
	margin-bottom: 30px;
	padding: 0;
	border: 1px solid #e0e0e0;
	border-radius: 4px;
	overflow: hidden;
	background-color: #fff;
	justify-content: center;
	align-items: center;
}

.award-image {
	width: 100%;
	height: 350px;
	max-height: 100%;
	object-fit: cover;
}

.award-text {
	padding: 15px 20px;
	text-align: center;
}

.award-title {
	color: #333;
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 10px;
	line-height: 1.3;
}

.award-subtitle {
	color: #555;
	font-size: 1rem;
	margin-bottom: 5px;
}
.awards-acheivements-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

/*
 ------------------------------
  * Rupay Debit Cards css
 ------------------------------
*/
.promo-section {
	padding: 30px 0;
	/* background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); */
}

.deal-container {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	/* box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08); */
	border: 1px solid #e3e3e7;
	margin-bottom: 5px;
	background: #fff;
	height: 500px;
	transition: all 0.3s ease;
}

.deal-container:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}

.brand-logo {
	position: absolute;
	top: 0;
	right: 0;
	background: rgba(255, 255, 255, 0.9);
	padding: 10px;
	border-radius: 0 0 0 12px;
	z-index: 2;
}

.brand-name {
	font-size: 1.8rem;
	font-weight: 700;
	margin: 0 0 15px 0;
	padding: 20px 20px 0;
}

.promo-badge {
	position: absolute;
	top: 20px;
	left: -35px;
	background: #e9c200;
	color: #000;
	padding: 8px 40px;
	font-weight: 700;
	transform: rotate(-45deg);
	z-index: 2;
	font-size: 0.85rem;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.promo-image {
	width: 100%;
	height: 180px;
	overflow: hidden;
	margin-bottom: 15px;
	position: relative;
}

.promo-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.deal-container:hover .promo-image img {
	transform: scale(1.1);
}

.promo-details {
	padding: 0 20px 20px;
}

.promo-description {
	font-size: 1.1rem;
	color: #555;
	margin-bottom: 20px;
	min-height: 50px;
}

.promo-code-box {
	display: flex;
	align-items: center;
	background: #f7f7f7;
	border-radius: 6px;
	padding: 0;
	margin-bottom: 15px;
	overflow: hidden;
	border: 1px dashed #ccc;
}

.code-text {
	flex-grow: 1;
	padding: 12px 15px;
	font-family: monospace;
	font-size: 1.1rem;
	font-weight: 600;
	color: #333;
}

.copy-btn {
	background: #00b9f2;
	color: white;
	border: none;
	padding: 12px 15px;
	cursor: pointer;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
}

.copy-btn:hover {
	background: #0099cc;
}

.expires-text {
	font-size: 0.85rem;
	color: #999;
	text-align: center;
	margin-top: 10px;
}

.save-label {
	display: inline-block;
	background: #e9f7fc;
	color: #00b9f2;
	padding: 3px 10px;
	border-radius: 20px;
	font-weight: 600;
	font-size: 0.9rem;
	margin-right: 5px;
}

.copy-btn-container {
	position: relative;
}

/*
 ------------------------------
  * about us css
 ------------------------------
*/
.award-image.our-vision-img {
	mask-image: linear-gradient(to left, rgba(0, 0, 0, 1) 50%, transparent 100%);
}
.award-image.our-mission-img {
	mask-image: linear-gradient(to right, rgba(0, 0, 0, 1) 50%, transparent 100%);
}
