
/* Fonts */
@font-face { font-family: 'Instrument Sans'; src: url('../Design_CSS/fonts/InstrumentSans-Regular.woff2') format('woff2'), url('../Design_CSS/fonts/InstrumentSans-Regular.woff') format('woff'); font-weight: normal; font-style: normal; font-display: swap; }
@font-face { font-family: 'Instrument Sans'; src: url('../Design_CSS/fonts/InstrumentSans-Medium.woff2') format('woff2'), url('../Design_CSS/fonts/InstrumentSans-Medium.woff') format('woff'); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Instrument Sans'; src: url('../Design_CSS/fonts/InstrumentSans-SemiBold.woff2') format('woff2'), url('../Design_CSS/fonts/InstrumentSans-SemiBold.woff') format('woff'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Instrument Sans'; src: url('../Design_CSS/fonts/InstrumentSans-Bold.woff2') format('woff2'), url('../Design_CSS/fonts/InstrumentSans-Bold.woff') format('woff'); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Noto Sans Gujarati'; src: url('../Design_CSS/fonts/NotoSansGujarati-Regular.woff2') format('woff2'), url('../Design_CSS/fonts/NotoSansGujarati-Regular.woff') format('woff'); font-weight: normal; font-style: normal; font-display: swap; }
@font-face { font-family: 'Noto Sans Gujarati'; src: url('../Design_CSS/fonts/NotoSansGujarati-Medium.woff2') format('woff2'), url('../Design_CSS/fonts/NotoSansGujarati-Medium.woff') format('woff'); font-weight: 500; font-style: normal; font-display: swap; }


/* Custom Scrollbar */
::-webkit-scrollbar { width: 5px; height: 2px; }
::-webkit-scrollbar-track { background: #f2f2f2; border-radius: 0px; }
::-webkit-scrollbar-thumb { background: var(--primaryColor); border-radius: 0px; }
::-webkit-scrollbar-thumb:hover { background: #769aff; }
:root { --textColor: #2B2118; --whiteColor: #fff; --primaryColor: #0D3857; --secondaryColor: #0e2136; }
:root {
  --font-base: 'Instrument Sans', sans-serif;
--white:#fff;
  --c-heading: #0D3857;
  --c-body-text: #323232;
  --c-muted: #666666;
  --c-placeholder: #94a6ba;
  --c-border: #e5ecf4;
  --c-link-blue: #0073c4;

  --c-hero-1: #1a76cf;
  --c-hero-2: #1360af;
  --c-hero-3: #0b4a8f;
  --c-hero-4: #083a73;
  --c-hero-5: #062a54;

  --c-green-1: #2fa84a;
  --c-green-2: #7cc95a;
  --c-green-dark: #279a41;
  --c-login-1: #3f8908;
  --c-login-2: #90bf1d;

  --c-orange-1: #f48402;
  --c-orange-2: #d49015;
  --c-gujarat-gold: #fbb040;

  --shadow-card: 0 2px 6px rgba(8,58,115,.08), 0 18px 40px rgba(8,58,115,.1);
  --shadow-card-sm: 0 1px 1px rgba(8,58,115,.06), 0 6px 8px rgba(8,58,115,.06);
  --shadow-app-card: 0 2px 3px rgba(8,58,115,.08), 0 18px 20px rgba(8,58,115,.1);
   --Font-12: 0.75em;
    --Font-13: 0.8125em;
    --Font-14: 0.875em;
    --Font-16: 1em;
    --Font-18: 1.125em;
    --Font-20: 1.25em;
    --Font-22: 1.375em;
    --Font-24: 1.5em;
    --Font-26: 1.625em;
    --Font-28: 1.75em;
    --Font-30: 1.875em;
    --Font-32: 2em;
    --Font-34: 2.125em;
    --Font-36: 2.25em;
    --Font-38: 2.375em;
    --Font-40: 2.5em;
    --Font-42: 2.625em;
    --Font-44: 2.75em;
    --Font-300: 300;
    --Font-400: 400;
    --Font-500: 500;
    --Font-600: 600;
    --Font-700: 700;
    --Font-800: 800;
    --Font-900: 900;
}

/* common style */
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; margin: 0; }
input:focus, textarea:focus, select:focus { outline: none; }
input::placeholder { color: #5C5C5C; }
body { font-family: var(--font-base); color: var(--textColor) }
a { text-decoration: none; color: var(--textColor); }
h2.titleText { font-size: var(--Font-32);  }
.linkText { color: var(--primaryColor); font-weight: 400; position: relative; display: block; text-decoration: none; --transition-duration: 0.5s; }
.linkText:before { position: absolute; top: 0; left: 0; overflow: hidden; max-width: 0; border-bottom: 1px solid #162F6A; color: #162F6A; content: attr(data-hover); white-space: nowrap; -webkit-transition: max-width var(--transition-duration); -moz-transition: max-width var(--transition-duration); transition: max-width var(--transition-duration); }
.linkText:hover:before, .linkText:focus:before { max-width: 100%; }
.h2, h2 { font-size: 48px !important; font-weight: 800; }

/* Button Hover */
.btnHover { position: relative; overflow: hidden; }
.btnHover:before { position: absolute; top: 0; content: ""; width: 100%; height: 100%; background-color: #A64F22; transition: all 0.3s ease; transform: translateX(-100%); left: 0; z-index: -1; }
.btnHover:hover { color: #fff; }
.btnHover:hover, .btnHover:hover svg path { color: #e8f0ef; fill: #e8f0ef !important; transition: 0.2s all ease-in-out; }
.btnHover img { transition: 0.3s all ease-in-out; }
.btnHover:hover img { filter: brightness(0) invert(1); position: relative; z-index: 1; }
.btnHover:hover:before { transform: translateX(0); }
.btnFilled { color: #fff; border: 1px solid; padding: 7px 25px; margin-top: 10px; display: inline-block; position: relative; overflow: hidden; transition: 0.3s all ease-in-out; }
.btnFilled::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--primaryColor); opacity: 1; transition: all 0.3s ease-in-out; z-index: 1; }
.btnFilled:hover { border-color: var(--primaryColor); color: var(--primaryColor); }
.btnFilled:hover:before { transform: translateX(-100%); }

/* Header Top*/
/*header { position: fixed; z-index: 999; }*/
header .parent-trigger{cursor: pointer;}
.headerTop { padding: 20px 0px; transition: 0.3s all ease-in-out; }
header.stickyHeader .logo svg { transition: 0.3s all ease-in-out; }
.headerRight { display: flex; align-items: center; justify-content: end; gap: 10px; }
.headerRight .searchBox { position: relative; }
.headerRight .searchBox input { border: 1px solid #939393; padding: 12px 35px 12px 16px; font-size: var(--Font-14); line-height: 16px; width: 324px; background-color: transparent; border-radius: 10px; }
.headerRight .searchBox button { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); background: transparent; height: 18px; width: 18px; display: flex; align-items: center; justify-content: center; }
.languageBox { border: 1px solid #005ca6; height: 42px; display: flex; align-items: center; justify-content: center; width: 42px; cursor: pointer; min-width: 42px;  border-radius: 50%; }
.accessibility { border: 1px solid var(--primaryColor); width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; pointer-events: none; min-width: 42px; }
.headerMenu ul { list-style: none; padding: 0px; margin-bottom: 0px; border-top: 1px solid var(--primaryColor); }
.headerMenu>ul { border-top: 0 }
.headerMenu ul li { position: relative; padding-left: 0px; margin-bottom: 0px; }
.headerMenu ul li.parent { padding-right: 3px; }
.headerMenu ul li a { display: inline-block; text-decoration: none; }
header {padding: 8px 0; z-index: 999; background-color: var(--whiteColor); left: 0; top: 0; width: 100%; transition: 0.3s all ease-in-out; }
header.stickyHeader { background-color: #fff; box-shadow: 0 0 10px #0000001a; }
header.stickyHeader .logo svg { width: 250px; height: 50px; transition: 0.3s all ease-in-out; }
header.stickyHeader .headerTop { padding: 10px 0; transition: 0.3s all ease-in-out; }
header.stickyHeader .headerMenu>ul { border-bottom: 0; }
/*.languageBox svg {filter: brightness(0) saturate(100%) invert(29%) sepia(95%) saturate(1302%) hue-rotate(183deg) brightness(98%) contrast(105%);}*/
/*.searchBox svg{filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7457%) hue-rotate(68deg) brightness(107%) contrast(99%);}*/
.top-utility {
	padding: 0 0 8px 0;
	margin-bottom: 8px;
}
/* Minister section */
.leaders-section { background: #f3f3f3; padding: 75px 0 35px 0; }
.leader-card { display: flex; align-items: center; gap: 15px; height: 100%; }
.leader-img { width: 105px; height: 105px; min-width: 105px; border-radius: 50%; overflow: hidden; background: #f2c27b; display: flex; align-items: center; justify-content: center; }
.leader-img img { width: 100%; height: 100%; object-fit: cover; }
.leader-info .leader-name { font-size: 16px; font-weight: 700; color: #333; margin-bottom: 5px; line-height: 1.3; }
.leader-info p { margin: 0; color: #666; font-size: 15px; line-height: 1.5; }
@media (max-width:991px) {
	.leader-card { margin-bottom: 30px; }
}
@media (max-width:575px) {
	.leader-card { flex-direction: column; text-align: center; }
	.leader-img { width: 90px; height: 90px; min-width: 90px; }
}





/* Optional custom styling for Gujarati Text clarity */
.lang-gu { font-family: 'Shruti', 'Nirmala UI', sans-serif; }

/* Back to Top Button */
.back-to-top { position: fixed; bottom: 15px; right: 15px; width: 50px; height: 50px; background-color: var(--primaryColor); color: #fff; border: none; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transform: translateY(20px); transition: all 0.3s ease-in-out; z-index: 998; box-shadow: 0 4px 12px rgba(22, 47, 106, 0.3); border: 1px solid var(--primaryColor); }
.back-to-top:hover { background-color: var(--secondary); transform: translateY(0) scale(1.1); box-shadow: 0 6px 20px rgba(22, 47, 106, 0.4); }
.back-to-top.show { opacity: 0; visibility: visible; transform: translateY(0); }
.back-to-top svg { width: 20px; height: 20px; transition: all 0.3s ease-in-out;}
.back-to-top:hover svg { transform: translateY(-2px); color: var(--primaryColor); }

/* Inner Banner */
section.innerBanner { background: var(--secondaryColor); padding: 40px 0; margin-bottom: 80px; }
.innerBannerHeading { display: flex; flex-direction: column; justify-content: space-between; height: 100%; }
.innerBannerHeading h1 { font-family: Manrope; font-size: 36px; line-height: 42px; }
ul.breadcrumb { margin-bottom: 0; }
ul.breadcrumb li { position: relative; padding: 0 12px; color: #646464; font-size: var(--Font-14); }
ul.breadcrumb li:before { content: ""; width: 7px; height: 7px; display: inline-block; border: 2px solid var(--textColor); border-top: none; border-right: none; transform: rotate(-135deg); position: absolute; border-radius: 2px; right: 0; top: 9px; }
ul.breadcrumb li:first-child { padding-left: 0; }
ul.breadcrumb li:last-child { padding-right: 0; }
ul.breadcrumb li:last-child:before { display: none; }

/* Accessibility  */
#uw-widget-custom-trigger img { width: 24px; left: -14px; position: relative; height: 24px; margin-top: 0px; }
.uw-widget-custom-trigger { position: static !important; width: 42px !important; height: 42px !important; background: var(--primaryColor) !important; padding: 6px !important; }
/*.uw-widget-custom-trigger svg{filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7457%) hue-rotate(68deg) brightness(107%) contrast(99%);}*/
.second-panel h2 {  font-size: 16px !important;}
.uw-widget-custom-trigger{display: none !important;}
.uw-widget-custom-trigger.show{display: block !important;}



header .logo img, header .logo a span .logo a p{transition: all 0.3s ease;}
.headerTop .logo{margin-right:15px; }
.headerTop .logo_text h1.eng{font-size:18px !important; font-family:inherit !important; font-weight: 600;}
.headerTop .logo_text p {font-size: 13.7px;	color: var(--primaryColor);}
.headerTop .logo h1.gujLang {font-family: "Noto Sans Gujarati", sans-serif !important; font-weight:500; margin-bottom:0; font-size:22.6px !important;}
.headerTop .logo_text p span{position:relative; padding-right: 18px;}
.headerTop .logo_text p span:before {
	position: absolute;
	top: 50%;
	right: 6px;
	height: 14px;
	margin-top: -6px;
	width: 2px;
	background-color: var(--primaryColor);
	content: "";
}
.stickyHeader .headerTop .logo img {
	height: 60px;
	width: 38px;
}
.stickyHeader .headerTop .logo_text p{font-size: 12.2px;}
.stickyHeader .headerTop .logo_text h1.eng{font-size: 16px !important;}
.stickyHeader .headerTop .logo h1.gujLang{font-size: 20px !important;}
.stickyHeader .headerTop .logo_text p span:before{height: 11px;}


/* ==========================================================================
   HEADER  — x:0 y:0 w:1600 h:161
   ========================================================================== */
.fx-header {
  position: absolute;
  top: 0; left: 0;
  width: 1600px; height: 161px;
  background: #ffffff;
}
.fx-header__utility {
	display: flex;
 justify-content: end;
  margin: 0;
  font: 400 14px/18px var(--font-base);
  letter-spacing: -0.15px;
  color: var(--c-body-text);
  white-space: nowrap;
}

.fx-header__logo {
  width: 129px; height: 130px;
  display: block;
}
.fx-header__logo img { width: 100%; height: 100%; object-fit: contain; }


.fx-btn-registration {
  width: 127px; height: 40px;
  border: 1.5px solid var(--c-link-blue);
  color: var(--c-link-blue);
  border-radius: 999px;
  display: flex; align-items: center; justify-content: center;
  font: 600 15px/23px var(--font-base);
  transition: background .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.fx-btn-registration:hover {
  background: var(--c-link-blue);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(0,115,196,.32);
}
.fx-btn-login {
  width: auto; height: 40px;
  border-radius: 999px;
  display: flex; align-items: center; justify-content: center;
  color: #fff;
  font: 600 15px/23px var(--font-base);
  background: linear-gradient(132deg, var(--c-login-1) 0%, var(--c-login-2) 100%);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.fx-btn-login:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(63,137,8,.35);
  filter: brightness(1.06);
}
.fx-icon-circle {
  width: 40px; height: 40px;
  border-radius: 50%;
  background: var(--c-link-blue);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  transition: transform .22s ease, box-shadow .22s ease;
}
.fx-icon-circle:hover {
  transform: translateY(-2px) scale(1.06);
  box-shadow: 0 8px 16px rgba(0,115,196,.35);
}
.fx-icon-circle img { width: 20px; height: 20px; }

.header-logo {
	padding-right: 70px;
}

/* Utility Text Style */
.fx-header__utility {
  font-size: 14px;
  color: #333333;
  margin: 10px 0;
}

.fx-qp-card__icon {
	width: 48px;
}
.fx-search-btn{width: 131px;
  height: 52px;
  flex-shrink: 0;
  border: none;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #fff;
  font: 600 16px/20px var(--font-base);
  background: linear-gradient(135deg, var(--c-green-1) 0%, var(--c-green-2) 100%);
  box-shadow: 0 8px 10px rgba(47,168,74,.4);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;}


  .fx-search-input{flex: 1 1 auto;
    flex-grow: 1;
  height: 52px;
  background: #fff;
    background-color: rgb(255, 255, 255);
  border: 1px solid var(--c-border);
  border-radius: 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 16px;}

  .fx-categories-btn {
	width: 210px;
	height: 52px;
	flex-shrink: 0;
	background: #fff;
	border: 1px solid var(--c-border);
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 17px;
	font: 600 15px/18px var(--font-base);
	color: var(--c-heading);
	transition: border-color .2s ease, box-shadow .2s ease;
}
/* Registration Button Custom Color Matching Image */
.fx-btn-registration {
  border-color: #0076ce !important;
  color: #0076ce !important;
  font-size: 15px;
}

.fx-btn-registration:hover {
  background-color: #0076ce !important;
  color: #ffffff !important;
}

/* Login Button Custom Green Color Matching Image */
.fx-btn-login {
  background-color: #72b01d !important;
  border-color: #72b01d !important;
  color: #ffffff !important;
  font-size: 15px;
}

.fx-btn-login:hover {
  background-color: #619717 !important;
  border-color: #619717 !important;
}

/* Round Action Buttons (Language & Accessibility) */
.icon-circle-btn {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #0076ce !important;
  border: none !important;
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.icon-circle-btn:hover {
  background-color: #005ca6 !important;
  transform: scale(1.05);
}

.icon-circle-btn img {
  width: 22px;
  height: 22px;
  filter: brightness(0) invert(1); /* SVG Icons ne White karva mate (જો SVG કલર વગરનું હોય તો) */
}

/* Responsive adjustments */
@media (max-width: 991.98px) {
  .top-utility {
    border-bottom: 1px solid #eee;
  }
  
  .fx-header__utility {
    font-size: 12px;
    line-height: 1.5;
  }
}


/* Custom Blue Hero Background */
.fx-hero {
  background-image: url('../../../../images/Hero-Background.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  padding:50px 0;
background-color: #195496;
}

/* Semi-transparent Glassmorphism helper class */
.bg-white-10 {
  background-color: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.backdrop-blur {
  backdrop-filter: blur(8px);
}

/* Custom icon pill wrapper for sidebar list */
.bg-light-blue {
  background-color: #eaf3fa;
}



/* Quick Pay card hover transition */
.fx-qp-card {
  transition: transform 0.2s all, background-color 0.2s ease;
  cursor: pointer;
  backdrop-filter: blur(7px);
  border: 1px solid rgba(255,255,255,.24) !important;
  box-shadow: 0 12px 30px rgba(6,42,84,.28);
}

.fx-qp-card:hover {
  background-color: rgba(255, 255, 255, 0.18);
}

.fx-qp-card:hover .fx-qp-card__icon {transform: scale(1.1) rotate(-4deg);}
.fx-qp-card__icon {transition: transform .28s ease;}
  
  /* Custom soft blue view all button */
.btn-soft-primary {
  background-color: #e0f0fe;
  color: #1e70bf;
  font-weight: 500;
  font-size: 0.85rem;
}

.btn-soft-primary:hover {
  background-color: #cde6fe;
  color: #155594;
}


/* Officials Section Styling */
.fx-officials {
  width: 100%;
  background: #F2F7FC;
}

/* Individual Official Card */
.fx-official {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.fx-official:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}

/* Avatar Image */
.fx-official__avatar {
  width: 90px;
  height: 90px;
  border: 3px solid #eaf3fa;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
}

/* Name & Role Text */
.fx-official__name {
  color: #0e2136;
  line-height: 1.3;
}

.fx-official__role {
  color: #64748b;
  line-height: 1.4;
  font-size: 0.825rem;
}

/* Vertical Divider for Desktop Views (Large screens) */
@media (min-width: 992px) {
  .fx-officials .col:not(:last-child) .fx-official {
    position: relative;
  }

  .fx-officials .col:not(:last-child) .fx-official::after {
    content: "";
    position: absolute;
    right: -12px;
    top: 20%;
    height: 60%;
    width: 1px;
    background-color: rgba(0, 0, 0, 0.08);
    pointer-events: none;
  }
}


/* Support Section Wrapper */
.fx-support {
  width: 100%;
  background: #F2F7FC;
}

/* Help Item Links */
.fx-help-item {
  background-color: #ffffff;
  border-color: #e2e8f0 !important;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.fx-help-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 22px rgba(8,58,115,.14)
}

.fx-help-item__icon {
  background: rgba(245,130,31,.1) !important;
  width: 42px;
  height: 42px;
}
.selectSea {
	width: 210px;
	height: 52px;
	flex-shrink: 0;
	background: #fff;
	border: 1px solid var(--c-border);
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 17px;
	font: 600 15px/18px var(--font-base);
	color: var(--c-heading);
	transition: border-color .2s ease, box-shadow .2s ease;
}

.fx-help-item__arrow {
width: 18px;
  height: 18px;
  flex-shrink: 0;
  transition: transform .25s ease;
}

.fx-qp-card__pay svg {
	width: 18px;
	height: 18px;
	position: relative;
	top: 2px;
}
.fx-qp-card__pay {
	font-size: 18px;
}

.fx-help-item:hover .fx-help-item__arrow {
  opacity: 1;
  transform: translate(2px, -2px);
}

/* Mobile App Banner Card */
.fx-app-card {
border-radius: 24px;
  overflow: hidden;
  box-shadow: var(--shadow-app-card);
  background: radial-gradient(circle at 92% 8%, rgba(124,201,90,.3) 0%, rgba(124,201,90,0) 60%), radial-gradient(circle at 4% 100%, rgba(35,186,214,.35) 0%, rgba(35,186,214,0) 60%), radial-gradient(circle at 88% 10%, #23bad6 0%, #1f98d3 22.5%, #1a76cf 45%, #1360af 72.5%, #0b4a8f 100%);	content: "";
  min-height: 280px;

}

.fx-app-card::after {
	animation: gradient 3s ease infinite;
background: radial-gradient(circle at 92% 8%, rgba(124,201,90,.3) 0%, rgba(124,201,90,0) 60%), radial-gradient(circle at 4% 100%, rgba(35,186,214,.35) 0%, rgba(35,186,214,0) 60%), radial-gradient(circle at 20% 78%, #1f98d3 0%, #23bad6 22.5%, #1360af 45%, #1a76cf 72.5%, #0b4a8f 100%);  content: "";
  position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
  
}
@keyframes gradient {
	0% { opacity: 0; }
	50% { opacity: 1; }
	100% { opacity: 0; }
}

.fx-app-card__eyebrow {
  color: #38bdf8;
  font-size: 0.85rem;
  letter-spacing: 0.5px;
}

.fx-app-card__gujarat {
  color: #FBB040;
  letter-spacing: 1px;
}

.fx-app-card__heading {
  line-height: 1.3;
}

.fx-app-card__btn {
  color: #0e2136;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.fx-app-card__btn:hover {
  background-color: #f8fafc;
  transform: translateY(-2px);
}

/* Responsive Image Positioning for App Mockup */
.fx-app-card__mockup-wrapper {
  margin-top: 1.5rem;
}

@media (min-width: 992px) {
  .fx-app-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .fx-app-card__mockup-wrapper {
    position: absolute;
    right: 20px;
    bottom: 0;
    margin-top: 0;
    max-width: 55%;
    z-index: 2;
  }

  .fx-app-card__mockup {
    max-height: 260px;
    object-fit: contain;
  }

  .fx-app-card__content {
    max-width: 65%;
  }
}


/* Dark Footer Theme */
.fx-footer {
  background-color: #0c385c; /* Deep blue background matching image */
  padding: 30px 0;
  font-size: 0.85rem;
}

/* Footer Links & Pipe Dividers */
.fx-footer__links {
  gap: 0.25rem 0;
}

.fx-footer__links .list-inline-item {
  margin-right: 0;
  display: inline-flex;
  align-items: center;
}
.catName{
font: 600 16px/20px var(--font-base);
  color: var(--c-heading);
  transition: color .2s ease;

}
.fx-footer__links a {
  color: #ffffff;
  text-decoration: none;
  opacity: 0.9;
  transition: opacity 0.2s ease, text-decoration 0.2s ease;
}

.fx-footer__links a:hover {
  opacity: 1;
  text-decoration: underline;
}

/* Pipe Divider via CSS ::after */
.fx-footer__links .list-inline-item:not(:last-child)::after {
  content: "|";
  color: #ffffff;
  opacity: 0.4;
  margin: 0 0.6rem;
  font-weight: 300;
  pointer-events: none;
}

/* Copyright & Metadata Styles */
.fx-footer__copyright {
  color: #ffffff;
  opacity: 0.85;
  font-size: 0.825rem;
}

.fx-footer__meta-item {
  color: #ffffff;
  opacity: 0.9;
  font-size: 0.825rem;
  white-space: nowrap;
}



.fx-services__list li { border-bottom: 1px solid var(--c-border);  padding: 3px 0;}
.fx-services__list li:last-child { border-bottom: none; }
.fx-services__list a {
  display: flex; align-items: center; gap: 12px; padding: 15px 0;
  transition: transform .2s ease;
}
.fx-services__list a:hover { transform: translateX(5px); }
.fx-services__list li:first-child a { padding-top: 0; }
.fx-services__list li:last-child a { padding-bottom: 0; }
.fx-sv-icon {
  width: 40px; height: 40px;
  flex-shrink: 0;
  border-radius: 11px;
  background: linear-gradient(135deg, rgba(46,155,224,.12), rgba(35,186,214,.12));
  display: flex; align-items: center; justify-content: center;
  transition: transform .2s ease;
}
.fx-services__list a:hover .fx-sv-icon { transform: scale(1.1); }
.fx-sv-icon img { width: 20px; height: 20px; }
.fx-services__list span { flex: 1 1 auto; font: 600 16px/20px var(--font-base); color: var(--c-heading); transition: color .2s ease; }
.fx-services__list a:hover span { color: #1160b4; }
.fx-services__list svg { flex-shrink: 0; opacity: .6; transition: opacity .2s ease, stroke .2s ease; }
.fx-services__list a:hover svg { opacity: 1; }



/* Inner Banner */
.innerBanner { display: flex; flex-direction: column; justify-content: center; height: 100%; background: var(--secondaryColor); padding: 40px 0;  }
.innerBanner {
	position: relative;
	z-index: 1;
	background-repeat: no-repeat;
	background-position: right center;
	background-size: cover;
	height: 140px;
  background: linear-gradient(281deg, rgba(33, 128, 171, 1) 0%, rgba(6, 42, 84, 1) 67%);
}


.innerBanner h2 { color: #fff !important; line-height: 36px; margin-bottom: 0px; font-size:36px !important;}
ul.breadcrumb { margin-bottom: 0; }
ul.breadcrumb li { position: relative; padding: 0 12px; color: #fff; font-size: var(--Font-14); }
ul.breadcrumb li::before {
	content: "" !important;
	width: 7px;
	height: 7px;
	display: inline-block;
	border: 2px solid #fff;
	border-top: none;
	border-right: none;
	transform: rotate(-135deg);
	position: absolute;
	border-radius: 2px;
	right: 0;
	top: 7px;
	float: none !important;
	padding: unset !important;
}
ul.breadcrumb li:first-child { padding-left: 0; }
ul.breadcrumb li:last-child { padding-right: 0; }
ul.breadcrumb li:last-child:before { display: none; }
.innerContent {min-height: 700px; padding: 50px 0;}
.breadcrumb li a, .breadcrumb li {
	color: #fff !important;
}
.breadcrumb{display:none;}


.iframe-conatiner iframe {
	min-height: 700px;
	width: 100%;
}

.headerMenu ul li a:before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height:1px;
  background: #fff;
  -webkit-transform: scale3d(0, 2, 1);
  transform: scale3d(0, 2, 1);
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  -webkit-transition-timing-function: cubic-bezier(1, 0.68, 0.16, 0.9);
  transition-timing-function: cubic-bezier(1, 0.68, 0.16, 0.9);
}
.headerMenu ul a:hover:before {
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}


/* service main page css */
  .sidebar-card {
	background: #fff;
	border-radius: 4px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	padding: 0;
}
.custom-tab-item {
	/* 1. Reserve the space for the border initially so it doesn't jump */
            border: none;
	border-left: 5px solid transparent;
	/* 2. Consistent Padding */
            padding: 16px 15px;
	/* 3. Smooth Transition for color and background */
            transition: all 0.3s ease;
	color: #6c757d;
	display: flex;
	align-items: center;
	font-size: 0.95rem;
	background-color: #fff;
	width: 100%;
	text-align: left;
	cursor: pointer;
	border-radius: 0 !important;
}
.custom-tab-item:last-child {
	border-bottom: none;
}
.custom-tab-item i {
	margin-right: 15px;
	font-size: 1.2rem;
	width: 24px;
	text-align: center;
	transition: transform 0.2s ease; /* Icon animation */
}
/* Hover State */
        .custom-tab-item:hover {
	background-color: #f8f9fa;
	color: #2c5aa0;
}
/* Slight movement on hover without affecting layout */
        .custom-tab-item:hover i {
	transform: translateX(3px);
}
/* Active State */
        .custom-tab-item.active {
	/* 4. Only change the COLOR of the border, not the width */
            border-left-color: #2c5aa0;
	background-color: #fff !important;
	color: #2c5aa0 !important;
	font-weight: 600;
}
/* --- Content & Button Styling --- */
        .content-card {
	background: #fff;
	border: none;
	border-radius: 4px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	margin-bottom: 20px;
}
.info-text {
	color: #555;
	font-size: 0.95rem;
	line-height: 1.6;
}
.service-list-header {
	padding: 20px 25px;
	border-bottom: 1px solid #eee;

	font-weight: 500;
	font-size: 1.05rem;
	color: #333;
}
.service-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 15px 25px;
	border-bottom: 1px solid #eee;
	transition: background-color 0.2s ease;
}
.service-row:hover {
	background-color: #fafafa; /* Subtle hover effect on rows */
}
.service-row:last-child {
	border-bottom: none;
}
.service-title {
	color: #444;
	font-weight: 400;
}
/* Smooth Buttons */
        .btn-outline-custom a, .service-row .btn-outline-custom {
text-decoration: none;
	background-color: #72b01d;
	font-size: var(--Font-16);
	line-height: 22px;
	color: #fff;
	padding: 8px 20px;
	border-radius: 50px;
	transition: all 0.3s ease; /* Smooth hover transition */
	border: 1px solid #72b01d;
}
.btn-outline-custom a:hover, .service-row .btn-outline-custom:hover {
transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(63,137,8,.35);
  filter: brightness(1.06);
}
.btn-solid-custom {
	background-color: #4a8a32;
	border: 1px solid #4a8a32;
	color: white;
	border-radius: 50px;
	padding: 5px 20px;
	font-size: 0.9rem;
	font-weight: 500;
	transition: all 0.3s ease;
}



.btn-solid-custom:hover {
	background-color: #3d7229;
	border-color: #3d7229;
	color: white;
	transform: translateY(-1px);
	box-shadow: 0 2px 5px rgba(74, 138, 50, 0.3);
}
.view-details-link {
	color: #2c5aa0;
	text-decoration: none;
	font-size: 0.9rem;
	margin-right: 15px;
	transition: color 0.2s;
}
.view-details-link:hover {
	text-decoration: underline;
	color: #1a3a70;
}
/* Fade animation for tab switching */
        .tab-pane {
	transition: opacity 0.3s ease-in-out;
}
.service-row p {
	margin-bottom: 0;
}
.servicesBoxTitle {
	background: #eef1fa;
	padding: 30px;
	text-align: left;
	position: relative;
margin-bottom: 50px;
}
.servicesBoxTitle button, .servicesBoxTitle span {
	position: absolute;
	right: 30px;
	top: 50px;
}

.servicesBoxTitle p {
	margin-bottom: 0;
}
.HeaderMenu h2 {
	background: #fff;
}
.displayNone {
	display: none;
}


.servicesBoxTitle h2 {
	font-size: 28px !important;
}


/********Module Search***********/
.moduleSearch {
	padding: 0;
	margin-bottom: 20px;
	width: 100%;
}
.moduleSearch li {
	float: left;
	width: 25%;
	list-style: none;
	padding-right: 15px;
}
.moduleSearch li:last-child {
	width: auto;
}
.moduleSearch li label, .moduleSearch li .label {
	padding: 0 15px 5px 3px;
	display: block;
	vertical-align: middle;
	font-size: 15px;
}
.moduleSearch li .inputCol {
	position: relative;
	vertical-align: middle;
}
.moduleSearch li .inputCol .note {
	position: absolute;
	left: 0;
	bottom: 0;
}
.moduleSearch li .btnSearchReset {
	margin-top: 25px;
}
.moduleSearch li input[type="text"], .moduleSearch li .customSelectOuter {
	width: 100%;
	background: var(--white);
	border: 1px solid #e5e5e5;
	font-size: 1em;
    border-radius: 0 !important;
}
.moduleSearch li .customSelectOuter {
	cursor: pointer;
	border-radius: 5px;
}
.moduleSearch li .customSelect {
	height: 40px !important;
	line-height: 18px;
	font-size: 13px;
	border-width: 0;
}
.moduleSearch li .btnSearchReset input {
	line-height: 38px;
	padding: 0 15px;
}
.cf::after, .container::after, .row::after, ul::after, .boxs::after, .radioList::after {
clear: both;
}
.moduleSearchOuter {
	display: flex;
}
input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="url"], input[type="password"], input[type="search"], textarea {
	border: 1px solid #e5e5e5;
	width: 100%;
	height: 40px;
	padding: 5px 10px;
	background-color: var(--white);
	border-radius: 8px;
}
select {
	border: 1px solid #e5e5e5;
	width: 100%;
	height: 40px;
	padding: 5px 10px;
	background-color: var(--white);
	border-radius: 8px;
	appearance: none;
	background: var(--white) url(../../../../images/down-chevron.png) 98% center no-repeat !important;
    border-radius: 0 !important;
}
input[type="submit"], input[type="reset"], .button {
	background-color: var(--secondaryColor);
	color: var(--white);
	border: 1px solid var(--secondaryColor);
	transition: all 0.3s ease-out;
    border-radius: 0 !important;
}
input[type="submit"]:hover, input[type="reset"]:hover, .button:hover, :not(.btn-check)+.btn:active, input[type="submit"]:focus, input[type="reset"]:focus, .button:focus {
background-color: var(--primaryColor);
color: var(--white) !important;
border: 2px solid var(--primaryColor);
}
.moduleSearchOuter #btnSearch {
	border: 2px solid #dfdcdc;
    color: #fff;
}

.moduleSearchOuter #btnReset {
	background-color: var(--white);
	color: #404346;
	box-shadow: none;
	border: none;

	border: 2px solid #dfdcdc;
	margin-left: 10px;
    transition: all 0.3s ease-out;
}

.moduleSearchOuter #btnReset:hover{background-color: #404346; color: #fff;}

 /*************Advanced Search*************/
.advancedSearch {
	text-align: left;
	margin: 0 auto;
    width: 100%;
    margin-top: 15px;;
}
.advancedSearch h3 {
	font-size: 1.5em;
	font-weight: 600;
	margin-bottom: 10px;
}
.advancedSearch ul.bulletText {
	margin: 10px 0 0 0;
	padding-left: 0 !important;
}
.advancedSearch ul.bulletText a:hover {
	text-decoration: none;
}
.advancedSearch .totalResult {
	margin-bottom: 10px;
}
.advancedSearch input[type="text"] {
	width: 320px;
	background: var(--white);
}
.advancedSearch table td input, .advancedSearch table td label {
	float: left;
	font-weight: normal;
	padding: 0;
	background: none;
	line-height: 14px;
}
.advancedSearch table tr td {
	background: none !important;
	padding: 0 10px 0 0;
}
.advancedSearch table, .advancedSearch table tr td {
	border: 0;
	width: auto;
	margin: 0;
}
.advancedSearch table td label {
	margin-right: 5px;
	line-height: 23px;
}
.advancedSearch h4 {
	font-size: 1.000em;
	margin-bottom: 10px;
	color: inherit;
	display: inline-block;
}
.advancedSearch label {
	margin-right: 5px;
	font-size: 0.967em;
}
.advancedSearch hr {
	margin: 0 0 10px 0;
	border-color: #575757;
}
.advancedSearch #divDateRange {
	margin-bottom: 20px;
}
.advancedSearch .dateRange {
	margin-bottom: 20px;
}
.advancedSearch .dateRange .formGroup {
	width: 50%;
	float: left;
}
.advancedSearch .dateBlock {
	position: relative;
	display: inline-block;
}
.advancedSearch fieldset {
	display: inline-block;
	position: relative;
	top: 7px;
}
.advancedSearch .keyword {
	padding-bottom: 10px;
}
.advancedSearch p {
	margin: 0;
}
.advancedSearch ul.bulletText a {
	text-decoration: none;
}
input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
	margin: 5px;
}
.mobileNavNew {
	display: none;
}
.deskNav {
	display: block
}
.playPause.stop {
	display: none;
}
.child-trigger {
	width: 53px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: var(--Font-22);
	color: var(--white);
} 



.tableData {
	width:100%;
	border:1px solid #d4d4d4;
	margin-bottom:25px
}

.tableData th {
	background: #062a54;
	padding: 15px 20px;
	text-align: left;
	font-weight: 600;
	border-bottom: 1px solid;
	color: #fff;
}
.tableData td {
	padding:15px 20px;
	border-bottom:1px solid #d4d4d4;
	background:#fff
}
.tableData tbody tr:last-child td {
	border-bottom:none
}

.moduleSearchOuter #btnSearch:hover {
	background-color: #72b01d !important;
}


.grayBG {  background: #F7F9FC; }
.aboutContentBlock {
	padding: 50px 0;
}

.objectBox {
	background: #fff;
	padding: 30px;
	margin: 40px 0;
	border-radius: 8px;
}
.objectBox ul li {
	margin-bottom: 15px;
}

.objectBox h3 {
	margin-bottom: 20px;
}


.objectSection {
	background: url(../../../images/Objectives-bg.jpg) no-repeat;
	position: relative;
	background-size: cover;
	padding: 1px 0;
}

.innerContent.innerContentFull {
	padding: 0;
}


/******** Head Contact page css Star****************/
.contact-us-page .contant-info-box { display: flex; justify-content: start; align-items: center; }
.contact-us-page { padding: 30px; background: #ffff; border-radius: 10px; box-shadow: 0px 5px 20px #44498b3d; }
.contact-us-page h3.heading { color: var(--bg-color); font-size: 30px; font-weight: 700; }
.contant-inf { width: 94%; }
.contant-info-box .icon i { font-size: 22px; transition: all 0.3s linear; }
.contact-us-page .contant-info-box:not(last-child) { margin-bottom: 25px; }
.contact-us-page .main-text { margin-bottom: 25px; display: none; }
.contant-info-box .contant-inf .contant-inf-heading span { font-weight: 600; font-size: 24px; color: var(--bg-color); }
.contact-us-page .contant-info-box .icon { background: rgba(35, 35, 71, 0.1); color: var(--bg-color); width: 80px; height: 70px; text-align: center; line-height: 70px; border-radius: 50%; display: inline-block; margin-right: 18px; transition: all 0.3s linear; }

.contact-us-page .main-text p { font-size: 17px; font-weight: 500; }
.contact-us-page h3.heading { color: var(--bg-color); font-size: 30px; font-weight: 700; display: inline-block; padding: 10px 19px; background: var(--bg-color); border-radius: 0 30px 30px 0px; margin-left: -30px; background: rgba(223, 55, 76, 0.14); box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1); backdrop-filter: blur(9.9px); -webkit-backdrop-filter: blur(9.9px); border: 1px solid rgba(223, 55, 76, 0.3); border-left: none; }
.contact-us-page .contant-info-box:hover .icon {background:var(--secondaryColor);}
/*.contact-us-page .contant-info-box:hover .icon svg {filter: brightness(0) saturate(100%) invert(96%) sepia(97%) saturate(12%) hue-rotate(237deg) brightness(103%) contrast(103%);}*/
.contant-inf span {color: #4d4d4d;}
.mapimg {border-radius: 10px;}
.ListOfficersSection {	margin-top: 30px;}


.fx-searchbar .selectSea {
	background: #fff !important;
	border-radius: 8px !important;
}



/* --- 3. Hero / Header --- */
        .hero-section {
            background-color: var(--primaryColor);
            color: white;
            padding: 4rem 0;
            text-align: center;
            margin-bottom: 2rem;
        }

        /* --- 4. Service Cards --- */
        .service-card {
            background: #fff;
            border: none;
            border-radius: 16px;
            padding: 2.5rem 1.5rem;
            text-align: center;
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
            transition: transform 0.3s ease, box-shadow 0.3s ease; /* FIXED: Specific transitions only */
            height: 100%;
            position: relative;
            overflow: hidden;
        }

        .service-card::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 4px;
            background: var(--primaryColor);
            transform: scaleX(0);
            transition: transform 0.3s ease;
        }

        .service-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 15px 35px rgba(52, 84, 187, 0.15);
        }

        .service-card:hover::after { transform: scaleX(1); }

        .icon-circle {
            width: 70px;
            height: 70px;
            background-color: var(--brand-blue-light);
            color: var(--primaryColor);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 2rem;
            margin: 0 auto 1.5rem auto;
            transition: background-color 0.3s ease, color 0.3s ease;
        }

        .service-card:hover .icon-circle {
            background-color: var(--primaryColor);
            color: #fff;
        }

        /* --- 5. Process Flow --- */
        .process-wrapper { position: relative; padding-top: 20px; }

        .progress-line {
            position: absolute;
            top: 50px;
            left: 10%;
            width: 80%;
            height: 3px;
            background: #e9ecef;
            z-index: 0;
        }
        
        .progress-line::after {
            content: '';
            position: absolute;
            top: 0; left: 0; height: 100%; width: 100%;
            background: linear-gradient(90deg, var(--primaryColor) 0%, rgba(255,255,255,0) 100%);
            opacity: 0.5;
        }

        .process-step {
            position: relative;
            z-index: 1;
            text-align: center;
            padding: 1rem;
        }

        .step-icon-box {
            width: 100px;
            height: 100px;
            background: white;
            border: 3px solid var(--primaryColor);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 1.5rem auto;
            font-size: 2.5rem;
            color: var(--primaryColor);
            box-shadow: 0 0 0 8px #f8f9fa;
            transition: all 0.8s ease-in-out;
			transform: translateY(-15px) scale(1.1);
        }

        .process-step:hover .step-icon-box {
            background-color: var(--primaryColor);
            color: white;
            transform: translateY(-15px) scale(1.1);
            box-shadow: 0 10px 20px rgba(52, 84, 187, 0.3);
        }

        .step-badge {
            position: absolute;
            top: 0; right: 0;
            width: 32px; height: 32px;
            background: var(--secondaryColor);
            color: white;
            border-radius: 50%;
            font-size: 0.9rem;
            font-weight: bold;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 3px solid white;
        }

        /* --- 6. Documents Grid --- */
        .doc-card {
            background: white;
            padding: 1.5rem;
            border-radius: 12px;
            border-bottom: 3px solid var(--primaryColor);
            box-shadow: 0 4px 10px rgba(0,0,0,0.03);
            height: 100%;
        }
        .doc-card h5 { color: var(--primaryColor); font-weight: 600; margin-bottom: 1rem; }
        
        .list-check { list-style: none; padding: 0; margin: 0; }
        .list-check li {
            position: relative;
            padding-left: 1.8rem;
            margin-bottom: 0.8rem;
            color: #555;
        }
        .list-check li::before {
            content: '\F26B'; 
            font-family: 'bootstrap-icons';
            position: absolute;
            left: 0;
            color: var(--secondaryColor);
            font-weight: bold;
        }
		.servicesBox h2{
			color:var(--primaryColor);
			font-weight: 600;
  margin-bottom: 0.5rem;
font-size: 32px !important;
}
  .servicesBox .accordion-button {
	padding: 26px 15px;
}

.section-padding {
	padding: 0 0 50px 0;
}

.quickPaySlider h3 a {
	color: #fff !important;
	font-size: 18px;
}
.quickPaySlider a {
	color: #fff !important;
	color: rgba(255,255,255,.5) !important;
}
.quickPaySlider a:hover {
	color: rgba(255,255,255,1) !important;
}

.fx-qp-card__pay svg {
	width: 22px;
	height: 22px;
	position: relative;
	top: 0px;
}

/*.fx-qp-card__icon svg {
	filter: brightness(0) saturate(100%) invert(46%) sepia(94%) saturate(1610%) hue-rotate(6deg) brightness(103%) contrast(99%);
}*/



/****************Feedback Form****************/
.mandatory, .asterix, .error, .red {
	color: #e90000;
}
.feedbackForm {
	max-width: 100%;
	width: 100%;
	padding: 25px;
	margin: 0 auto;
	box-shadow: 0 0 46px rgba(0, 0, 0, 0.1);
	border-radius: 8px;
	background:#fff;
}
.fieldsRequired {
	text-align: right;
	font-size: 15px !important;
}
.feedbackForm ul {
	padding: 0;
	margin: 0 -10px;
}
.feedbackForm ul li {
	float: left;
	list-style: outside none none;
	width: 100%;
}
.feedbackForm .fieldCol {
	float: left;
	margin: 0;
	padding: 0 10px;
	width: 33.33%;
}
.feedbackForm .fieldTowCol {
	width: 50%;
}
.feedbackForm .fieldInput {
	margin-bottom: 25px;
	position: relative;
}
.feedbackForm .error {
	position: absolute;
	left: 0;
	background: #ff0000;
	color: #fff;
	border-radius: 3px;

	padding: 1px 10px;
	font-size: 13px;
	z-index: 1;
	bottom: -28px;
}
.feedbackForm .error:after {
	width: 0;
	height: 0;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-bottom: 6px solid #f00;
	position: absolute;
	content: "";
	left: 15px;
	top: -6px;
}
.feedbackForm .fieldCol.fieldColWide {
	width: 100%;
}
.feedbackForm select {
	font-size: 1em;
	background: none !important;
}
.feedbackForm input[type="text"], .feedbackForm input[type="email"], .feedbackForm input[type="tel"], .feedbackForm input[type="number"], .feedbackForm input[type="url"], .feedbackForm input[type="password"], .feedbackForm input[type="search"], .feedbackForm select, .feedbackForm textarea {
	background: #fff;
}
.feedbackForm select {
	border: 1px solid #e5e5e5;
	width: 100%;
	height: 40px;
	padding: 5px 10px;
	background-color: var(--white);
	border-radius: 8px;
	appearance: none;
}
.feedbackForm input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="url"], input[type="password"], input[type="search"], textarea {
	border: 1px solid #e5e5e5;
	width: 100%;
	height: 40px;
	padding: 5px 10px;
	background-color: #fff;
	border-radius: 8px;
}
.successMsg {
	text-transform: uppercase;
	word-spacing: 5px;
	letter-spacing: 1px;
	color: #219393;
	font-size: 20px;
	text-align: center;
	border: 1px solid #ccc;
	padding: 50px 10px 50px 10px;
	font-weight: 500;
}
.feedbackForm .feedbackButtton {
	margin-top: 30px;
}
label {
	font-size: 1.0625em;
}
.feedbackColRow .label {
	display: block;
	padding-bottom: 5px;
}
.feedbackColRow .customSelectWrap:before {
	top: 4px;
}
.feedbackColRow .textarea122 {
	height: 40px;
}
.feedbackColRow .Formfield {
	margin-bottom: 25px;
}
.captchaImg img {
	height: 40px;
	border: 1px solid #7b7b7b;
}
.fa.fa-refresh {
	color: var(--primaryColor);
}
.captchaBox {
	padding-right: 150px;
}
.captchaImgBox {
	position: absolute;
	right: 0;
	top: 0;
}
.captchaImgBox .captchaImg, .captchaImgBox .refreshCaptcha {
	display: inline-block;
	vertical-align: middle;
}
#btnSubmitFb {
	background-color: var(--secondaryColor);
	color: #fff;
	font-size: 1em;
	padding: 10px 14px;
	display: inline-block;
	border-radius: 4px;
	line-height: 1;
	transition: .3s all linear;
    border: 1px solid var(--primaryColor);
}
#btnSubmitFb:hover {
	background-color: var(--primaryColor);
	color: var(--white);
	border: 1px solid var(--primaryColor);
}
.highlightText a {
	text-decoration: none;
	font-size: 20px;
	color: var(--primaryColor);
	font-weight: 600;
}
/**********Sitemap**********/
.sitemap {
	padding: 0 0 0 30px;
	margin: 0;
	position: relative;
}
.sitemap:before {
	position: absolute;
	top: 0;
	bottom: 0;
	content: "";
	width: 3px;
	background-color:var(--primaryColor);
	display: block;
	left: 0;
}
.sitemap:after {
	content: "";
	height: 11px;
	left: -4px;
	position: absolute;
	bottom: 0;
	width: 11px;
	background: var(--primaryColor);
	border-radius: 50%;
}
.sitemap ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.sitemap ul li {
	margin-bottom: 10px;
}
.sitemap ul li a.menuFirstNode.menuParent, .sitemap ul li a.menuFirstNode, .sitemap ul li a.menuExt {
	color: #000;
	font-size: 1.063em;
	line-height: 25px;
	text-decoration: none;
	padding: 7px 20px;
	transition: 500ms all;
	background: var(--secondaryColor);
	border: 1px solid var(--primaryColor);
	display: inline-block;
	margin-left: 0;
	position: relative;
	border-radius: 6px;
	color: #FFF;
}
.sitemap ul li a.menuFirstNode.menuParent:hover, .sitemap ul li a.menuFirstNode:hover, .sitemap ul li a.menuExt:hover {
	background-color: var(--primaryColor);
	color: #fff;
	border: 1px solid var(--secondaryColor);
	padding-left: 25px;
}
.sitemap ul li a.menuFirstNode.menuParent:before {
	position: absolute;
	left: -30px;
	top: 50%;
	margin-top: -1px;
	content: "";
	background-color:var(--primaryColor);
	width: 29px;
	height: 2px;
}
.sitemap ul li a.menuFirstNode, .sitemap ul li a.menuExt {
	transition: 500ms all;
	background: var(--white);
	padding: 5px 10px;
	margin-left: 30px;
	font-size: 1.000em;
    font-weight: 600;
	color: #0e2136;
}
.sitemap ul li a.menuFirstNode:hover, .sitemap ul li a.menuExt:hover {
	padding-left: 15px;
	background-color: #f1f1f1;
	border-color: #f1f1f1;
	color: #000;
}
.uwaw-close {
	width: 20px !important;
	height: 20px !important;
}




.searchBox button {
	width: 131px;
	height: 52px;
	flex-shrink: 0;
	border: none;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	color: #fff;
	font: 600 16px/20px var(--font-base);
	background: linear-gradient(135deg, var(--c-green-1) 0%, var(--c-green-2) 100%);
	box-shadow: 0 8px 10px rgba(47,168,74,.4);
	transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.searchBox {
	display: flex;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.15);
	backdrop-filter: blur(8px);
	padding: 10px;
	border-radius: 15px;
}
.searchBox #searchQueryInput {
	flex: 1 1 auto;
	flex-grow: 1;
	height: 52px;
	background: #fff;
	background-color: rgb(255, 255, 255);
	border: 1px solid var(--c-border);
	border-radius: 14px;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 0 16px;
	margin-right: 10px;
}


/*.fx-quickpay__nav .btn:hover svg {
	filter: brightness(0) saturate(100%) invert(15%) sepia(62%) saturate(1496%) hue-rotate(183deg) brightness(93%) contrast(94%);
}*/




.dropdown-content {
	display: none;
	position: absolute;
	background-color: #ffffff;
	min-width: 190px;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index: 2;
	border-radius: 4px;
	margin-top: 5px;
z-index: 9999;
right: 0;
}

.dropdown-content .sub-btn:nth-child(1) {
	border-bottom: 2px solid #6a6868;
}

.dropdown-content .sub-btn {
	color: #333;
	padding: 12px 16px;
	text-decoration: none;
	display: block;
	font-family: sans-serif;
}
.dropdown-content .sub-btn:hover {
	background-color: #f1f1f1;
} 

.show {
	display: block;
}


button.outline-btn {
	display: block;
	border: 1px solid var(--primaryColor);
	padding: 8px 22px;
	border-radius: 22px;
	font-size: var(--Font-16);
	line-height: 22px;
	text-decoration: none;
	color: var(--primaryColor);
	transition: .3s all ease-in-out;
	background: #fff;
}
button.outline-btn::after {
	content: "";
	width: 8px;
	height: 8px;
	display: inline-block;
	margin-left: 8px;
	border: 2px solid #fff;
	border-top: none;
	border-right: none;
	transform: rotate(-45deg);
	top: -3px;
	position: relative;
}



        /* Wrapper Positioning */
.login-dropdown-wrapper {
  position: relative;
  display: inline-block;
}

/* Dropdown Menu Container */
.login-dropdown-wrapper .login-dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 1050;
  min-width: 200px;
  margin-top: 8px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  overflow: hidden;
}

/* Dropdown Menu Items */
.login-dropdown-wrapper .login-dropdown-item {
  display: block;
  padding: 12px 20px;
  color: #333;
  text-decoration: none;
  font-weight: 500;
  transition: background-color 0.2s ease;
}

/* Adds the border only between items, not at the bottom of the list */
.login-dropdown-wrapper .login-dropdown-item:not(:last-child) {
  border-bottom: 1px solid #eee;
}

/* Added a hover effect to utilize your 0.2s transition */
.login-dropdown-wrapper .login-dropdown-item:hover {
  background-color: #f8f9fa; 
  color: #000;
}


.listingBox .fileSize {
	font-size: 14px;
	font-weight: 500;
}


.userBox .firstTh {
	text-align: center !important;
}


#gudm-chatbot-container {
	position: fixed;
	bottom: 24px;
	right: 24px;
	z-index: 9999;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 12px;
	display:none;
}


#searchError {
	position: absolute;
	bottom: -27px;
	color: red;
	background: #fff;
	padding: 5px 15px;
	border-radius: 9px;
}


.ismobiletrue .innerBanner {
	display: none;
}


/* ChatBot CSS Start */
#cbToggle {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: linear-gradient(135deg,#3B82F6,#6366F1);
	border: none;
	cursor: pointer;
	box-shadow: 0 4px 20px rgba(59,130,246,0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.2s;
	position: relative;
}

#gudm-chatbot-container {
	position: fixed;
	bottom: 24px;
	right: 24px;
	z-index: 9999;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 12px;
}

#gudm-chatbot-panel {
	display: none;
	width: 400px;
	height: 600px;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 20px 60px rgba(0,0,0,0.3);
	border: 1px solid #E2E8F0;
	background: #fff;
	flex-direction: column;
}
/* ChatBot CSS End*/


#bhashiniLanguageDropdown {
	margin-top: 5px;
}


.greenBtn {
	background: #207ea9;
	color: #fff;
	border: 2px solid var(--primaryColor) !important;
	border-radius: 0 !important;
}

.greenBtn:hover {
	background: #062a54;
color: #fff;
}



.bulletText {
	padding-left: 0;
}


ul.bulletText li, .tab-pane ul li {
	width:100%;
	padding:0 0 10px 20px;
	list-style:none;
	list-style-position:outside;
	position:relative
}
ul.bulletText li a:hover {
	text-decoration:underline
}
ul.bulletText li:before , .tab-pane ul li:before {
	content:"";
	width:6px;
	height:6px;
	display:inline-block;
	border:1px solid #323232;
	border-top:none;
	border-right:none;
	transform:rotate(225deg);
	position:absolute;
	top:9px;
	left:0
}
ul.bulletText ul {
	padding-bottom:0
}
ul.bulletText ul li {
	padding-bottom:0!important
}


.accordion-button:focus{box-shadow: none !important;}

.listingBox {
  list-style: none;
  margin: 0;
  padding: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.listingBox li {
  margin: 0;
  padding: 0;
}

.listingBox li a {
  position: relative;
  display: flex;
  align-items: center;
  padding: 26px 50px 26px 22px;
  background: #fff;
  color: var(--secondaryColor);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  border: 1px solid #e3e8ef;
  border-left: 4px solid var(--primaryColor);
  border-radius: 10px;
  box-shadow: 0 2px 6px rgba(14, 33, 54, 0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease,
              background 0.2s ease, color 0.2s ease;
}

/* Arrow on the right */
.listingBox li a::after {
  font-family: "bootstrap-icons" !important;
  content: "\f285"; /* chevron-right */
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  color: #98a2b3;
  transition: all 0.2s ease;
}

/* Hover */
.listingBox li a:hover {
  transform: translateY(-2px);
  background: linear-gradient(135deg, var(--primaryColor), var(--secondaryColor));
  color: #fff;
  box-shadow: 0 8px 18px rgba(13, 56, 87, 0.3);
}

.listingBox li a:hover::after {
  color: #fff;
  right: 16px;
}

.listingBox li a:focus-visible {
  outline: 3px solid rgba(13, 56, 87, 0.4);
  outline-offset: 2px;
}

/* Mobile */
@media (max-width: 576px) {
  .listingBox li a {
    padding: 20px 44px 20px 16px;
    font-size: 15px;
  }
}

.table-responsive {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.table-responsive .tableData {
	min-width: 1000px;
}
.servicesBox .table-responsive .tableData {
	min-width: auto !important;
}
.fx-officials .row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; /* Niche aaveli items center ma rakhva mate */
}
.uw-widget-custom-trigger {
  z-index: 99 !important;
}

.servicesBoxTitle > p {
	padding-right: 100px;
	margin-bottom: 18px;
}

.aboutContentBlock .image {
	text-align: center;
}
.ulb-wrapper .btn-apply{
background: #72b01d;
font-weight: 600;
}

.ulb-wrapper .btn-apply:hover {
	background: #0076ce;
}


:root {
  --primaryColor: #0D3857;
  --secondaryColor: #0e2136;
  --surfaceColor: #ffffff;
  --borderColor: #d9e2ea;
  --textColor: #4a5b6b;
}

/* Animatable fill value for the progress line (100% = fully filled) */
@property --fill {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

.process-wrapper {
  padding: 40px 0;
}

/* ---------- Layout (replaces Bootstrap cols) ---------- */
.process-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px 24px;
}

@media (max-width: 991.98px) {
  .process-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ---------- Step card ---------- */
.process-step {
  position: relative;
  height: 100%;
  padding: 28px 20px;
  text-align: center;
  background: var(--surfaceColor);
  border: 1px solid var(--borderColor);
  border-radius: 12px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.process-step:hover {
  border-color: var(--primaryColor);
  box-shadow: 0 8px 24px rgba(13, 56, 87, 0.12);
}

.step-icon-box {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 76px;
  height: 76px;
  margin: 0 auto 18px;
  background: linear-gradient(135deg, var(--primaryColor), var(--secondaryColor));
  border-radius: 50%;
}

.process-wrapper .step-icon-box i {
  display: inline-block;
  font-size: 34px;
  line-height: 1;
  color: #ffffff !important;
  opacity: 1 !important;
}

.step-badge {
  position: absolute;
  top: -4px;
  right: -4px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  font-size: 13px;
  font-weight: 700;
  color: var(--primaryColor);
  background: #ffffff;
  border: 2px solid var(--primaryColor);
  border-radius: 50%;
}

.process-step h5 {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 600;
  color: var(--secondaryColor);
}

.process-step p {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--textColor);
}

/* ---------- Progress line between steps ---------- */
.process-step::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 65px;
  left: calc(50% + 38px);
  width: calc(100% - 52px);
  height: 3px;
  border-radius: 3px;
  background:
    linear-gradient(var(--primaryColor), var(--primaryColor)) left center / var(--fill) 100% no-repeat,
    var(--borderColor);
  pointer-events: none;
}

/* no line after the last item of each row */
.process-step:nth-child(4n)::after,
.process-step:last-child::after {
  display: none;
}

@media (max-width: 991.98px) {
  .process-step:nth-child(4n)::after { display: block; }
  .process-step:nth-child(3n)::after,
  .process-step:last-child::after { display: none; }
}

/* ---------- Scroll-driven animation (pure CSS) ----------
   Browsers without support simply show every step in its final, active state. */
@keyframes fillLine {
  from { --fill: 0%; }
  to   { --fill: 100%; }
}

@keyframes lightUp {
  from { filter: grayscale(1); opacity: 0.4; transform: scale(0.9); }
  to   { filter: grayscale(0); opacity: 1;   transform: scale(1); }
}

@keyframes activeBorder {
  from { border-color: var(--borderColor); }
  to   { border-color: var(--primaryColor); }
}

@media (prefers-reduced-motion: no-preference) {
  @supports (animation-timeline: view()) {

    /* position in the row sets the stagger: left to right */
    .process-step                 { --o: 0; }
    .process-step:nth-child(4n+2) { --o: 10; }
    .process-step:nth-child(4n+3) { --o: 20; }
    .process-step:nth-child(4n)   { --o: 30; }

    .process-step {
      animation: activeBorder linear both;
      animation-timeline: view();
      animation-range: entry calc(var(--o) * 1%) entry calc(50% + var(--o) * 1%);
    }

    .process-step .step-icon-box {
      animation: lightUp linear both;
      animation-timeline: view();
      animation-range: entry calc(var(--o) * 1%) entry calc(50% + var(--o) * 1%);
    }

    .process-step::after {
      animation: fillLine linear both;
      animation-timeline: view();
      animation-range: entry calc(30% + var(--o) * 1%) entry calc(75% + var(--o) * 1%);
    }

    @media (max-width: 991.98px) {
      .process-step                 { --o: 0; }
      .process-step:nth-child(3n+2) { --o: 12; }
      .process-step:nth-child(3n)   { --o: 24; }
    }

    @media (max-width: 767.98px) {
      .process-step,
      .process-step:nth-child(n) { --o: 0; }
    }
  }
}

/* ---------- Mobile: compact vertical timeline ---------- */
@media (max-width: 767.98px) {
  .process-wrapper {
    padding: 16px 0;
  }

  .process-grid {
    display: block;
  }

  .process-step {
    display: grid;
    grid-template-columns: 48px 1fr;
    column-gap: 14px;
    align-items: start;
    height: auto;
    padding: 0 0 22px;
    text-align: left;
    background: none;
    border: 0;
    border-radius: 0;
    animation: none;
  }

  .process-step:hover {
    box-shadow: none;
  }

  /* vertical progress line */
  .process-step::after,
  .process-step:nth-child(4n)::after,
  .process-step:nth-child(3n)::after {
    display: block;
    top: 48px;
    bottom: 0;
    left: 23px;
    width: 2px;
    height: auto;
    background:
      linear-gradient(var(--primaryColor), var(--primaryColor)) center top / 100% var(--fill) no-repeat,
      var(--borderColor);
  }

  .process-step:last-child {
    padding-bottom: 0;
  }

  .process-step:last-child::after {
    display: none;
  }

  .step-icon-box {
    grid-row: 1 / span 2;
    width: 48px;
    height: 48px;
    margin: 0;
  }

  .process-wrapper .step-icon-box i {
    font-size: 22px;
  }

  .step-badge {
    top: -5px;
    right: -5px;
    width: 18px;
    height: 18px;
    font-size: 10px;
    border-width: 1.5px;
  }

  .process-step h5 {
    margin: 2px 0 4px;
    font-size: 16px;
  }

  .process-step p {
    font-size: 13px;
    line-height: 1.5;
  }
}

.contrastChanger.noJS.Normal.ux4g-accessibility-dark-mode .fx-sv-icon, .contrastChanger.noJS.Normal.ux4g-accessibility-dark-mode .fx-services__list svg {
	background: #fff !important;
}

.ux4g-accessibility-dark-mode .headerMenu > ul > li.parent > a::after {
	border: 2px solid #FFF;
	content: "";
	width: 8px;
	height: 8px;
	display: inline-block;
	margin-left: 8px;
	border: 2px solid #FFF;
	border-top: none;
	border-right: none;
	transform: rotate(-45deg);
	top: -3px;
	position: relative;
	border-radius: 2px;
}
.swiper-button-next, .swiper-button-prev {
	color: #000 !important;
	background: #f5e7d4;
	padding: 10px;
	border-radius: 50%;
}
