.hover-input-popup {
	position: relative;
}

.input-popup {
	display: none;
}

.hover-input-popup .input-popup {
	display: block;
	position: absolute;
	bottom: 70%;
	left: 50%;
	width: 280px;
	background-color: #1a1a1a;
	color: #fff;
	padding: 20px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.input-popup::after {
	position: absolute;
	content: '';
	bottom: -19px;
	left: 50%;
	margin-left: -5px;
	border-width: 10px 10px 10px 10px;
	border-style: solid;
	border-color: transparent transparent #1a1a1a transparent;
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
}

.input-popup p {
	padding-left: 20px;
	position: relative;
}

.input-popup p::before {
	position: absolute;
	content: '';
	font-family: 'Line Awesome Free';
	font-weight: 900;
	left: 0;
	top: 4px;
	line-height: 1;
	font-size: 18px;
}

.input-popup p.error {
	text-decoration: line-through;
}

.input-popup p.error::before {
	content: "\f057";
	color: #ea5455;
}

.input-popup p.success::before {
	content: "\f058";
	color: #28c76f;
}

.copyInput {
	display: inline-block;
	line-height: 50px;
	position: absolute;
	top: 0;
	right: 0;
	width: 40px;
	text-align: center;
	font-size: 14px;
	cursor: pointer;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
}

.copied::after {
	position: absolute;
	top: 8px;
	right: 12%;
	width: 100px;
	display: block;
	content: "COPIED";
	font-size: 1em;
	padding: 5px 5px;
	color: #fff;
	background-color: #FF7000;
	border-radius: 3px;
	opacity: 0;
	will-change: opacity, transform;
	animation: showcopied 1.5s ease;
}

@keyframes showcopied {
	0% {
		opacity: 0;
		transform: translateX(100%);
	}

	50% {
		opacity: 0.7;
		transform: translateX(40%);
	}

	70% {
		opacity: 1;
		transform: translateX(0);
	}

	100% {
		opacity: 0;
	}
}

.cookies-card {
	width: 520px;
	padding: 30px;
	color: #1E2337;
	position: fixed;
	bottom: 15px;
	left: 15px;
	z-index: 999999;
	transition: all .5s;
	background: #d1d1d1;
	border-radius: 5px;
}

.cookies-card.hide {
	bottom: -500px !important;
}

.radius--10px {
	border-radius: 10px;
}

.cookies-card__icon {
	width: 55px;
	height: 55px;
	border-radius: 50%;
	background-color: #6e6f70;
	color: #fff;
	font-size: 32px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
}

.cookies-card__content {
	margin-bottom: 0;
}

.cookies-btn {
	color: #363636;
	text-decoration: none;
	padding: 10px 35px;
	margin: 3px 5px;
	display: inline-block;
	border-radius: 999px;
}

.cookies-btn:hover {
	color: #363636;
}


@media (max-width: 767px) {
	.cookies-card {
		width: 100%;
		left: 0;
		bottom: 0;
		font-size: 14px;
		padding: 15px;
	}
}




.hover-input-popup {
	position: relative;
}

.input-popup {
	display: none;
}

.hover-input-popup .input-popup {
	display: block;
	position: absolute;
	bottom: 130%;
	left: 50%;
	width: 280px;
	background-color: #1a1a1a;
	color: #fff;
	padding: 20px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.input-popup::after {
	position: absolute;
	content: '';
	bottom: -19px;
	left: 50%;
	margin-left: -5px;
	border-width: 10px 10px 10px 10px;
	border-style: solid;
	border-color: transparent transparent #1a1a1a transparent;
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
}

.input-popup p {
	padding-left: 20px;
	position: relative;
}

.input-popup p::before {
	position: absolute;
	content: '';
	font-family: 'Line Awesome Free';
	font-weight: 900;
	left: 0;
	top: 4px;
	line-height: 1;
	font-size: 18px;
}

.input-popup p.error {
	text-decoration: line-through;
}

.input-popup p.error::before {
	content: "\f057";
	color: #ea5455;
}

.input-popup p.success::before {
	content: "\f058";
	color: #28c76f;
}



.show-filter {
	display: none;
}

@media(max-width:767px) {
	.responsive-filter-card {
		display: none;
		transition: none;
	}

	.show-filter {
		display: block;
	}
}



/* ////////////////// select 2 css //////////////// */
.select2-dropdown {
	border: 0 !important;
	margin-top: 8px !important;
	border-radius: 5px !important;
	box-shadow: 0 3px 9px rgba(50, 50, 9, 0.05), 6px 4px 19px rgb(115 103 240 / 20%)
}

.select2-search--dropdown {
	padding: 10px 10px !important;
	border-color: #ced4da !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
	border:1px solid #eaeaea !important;
	padding: 10px 20px;
}

.select2-results__option.select2-results__option--selected,
.select2-results__option--selectable,
.select2-container--default .select2-results__option--disabled {
	padding: 12px 14px !important;
	border-bottom: 1px solid #eee;
}

.select2-results__option.select2-results__message {
	text-align: center !important;
	padding: 12px 14px !important;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar {
	width: 8px;
	border-radius: 5px;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius: 5px;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-thumb {
	background: #ddd;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-thumb:hover {
	background: #ddd;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
	display: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow:after {
	position: absolute;
	right: 10px;
	top: 0;
	content: "\f107";
	font-family: "Line Awesome Free";
	font-weight: 900;
	transition: .3s;
}

.select2-container--default .select2-selection--single {
	border-color: #eaeaea !important;
	border-width: 1px !important;
	border-radius: .375rem !important;
	padding: .375rem .75rem !important;
	height: 100% !important;
}


.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow:after {
	content: "\f106";
}

.select2-results__option:last-child {
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}

.select2-results__option:first-child {
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

.select2-results__option.select2-results__option--selected,
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
	background-color: #f1f1f1 !important;
	color: #000 !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
	border-color: #eaeaea !important;
	box-shadow: 0 0 25px rgba(115, 103, 240 0.071) !important;
	outline: 0 !important;
}

.select2-dropdown .country-flag {
	width: 25px;
	height: 25px;
	border-radius: 8px;
}

.select2-dropdown .gateway-title {
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 0px !important;
}

.select2-dropdown .gateway-subtitle {
	font-size: 12px;
	margin-bottom: 0px !important;
}

.select2-container--open .select2-selection.select2-selection--single,
.select2-container--open .select2-selection.select2-selection--multiple {
	border-color: hsl(var(--base)) !important;
	border-radius: .375rem !important;
}


.gateway-card {
	padding: 15px;
}

@media (max-width: 575px) {
	.gateway-card {
		padding: 0px;
	}

	.payment-item {
		padding: 8px !important;
	}

	.payment-item__name {
		font-size: 0.875rem;
	}
}

.payment-card-title {
	padding: 13px 25px;
	text-align: center;
	background-color: #FF5851;
	border-radius: 5px;
	border: 0;
	margin-bottom: 0px;
	color: #fff;
}

.payment-system-list {
	--thumb-width: 100px;
	--thumb-height: 40px;
	--radio-size: 12px;
	--border-color: #cccccf59;
	--hover-border-color: rgb(var(--main));
	background-color: #fff;
	border-radius: 5px;
	height: 100%;

}


.payment-system-list.is-scrollable {
	max-height: min(388px, 70vh);
	overflow-x: auto;
	padding-block: 4px;
}

.payment-system-list.is-scrollable::-webkit-scrollbar {
	width: 5px;
}

.payment-system-list.is-scrollable::-webkit-scrollbar {
	width: 5px;

}

.payment-system-list.is-scrollable::-webkit-scrollbar-thumb {
	background-color: rgb(var(--main));
	border-radius: 10px;
}

.payment-item {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	padding: 10px 18px;
	border: 1px solid #fff;
	border-top-color: var(--border-color);
	transition: all 0.3s;
	border-left: 3px solid transparent;
}

.payment-item:first-child {
	border-top-color: #fff;
	border-radius: 5px 5px 0 0;
}

.payment-item:has(.payment-item__radio:checked) {
	border-left: 3px solid #FF5851;
	border-radius: 0px;
}

.payment-item__check {
	border: 3px solid transparent;
}

.payment-item:has(.payment-item__radio:checked) .payment-item__check {
	border: 3px solid #FF5851;
}

.payment-item__info {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	max-width: calc(100% - var(--thumb-width))
}

.payment-item__check {
	width: var(--radio-size);
	height: var(--radio-size);
	border: 1px solid #a9a9a9;
	display: inline-block;
	border-radius: 100%;

}

.payment-item__name {
	padding-left: 10px;
	width: calc(100% - var(--radio-size));
	transition: all 0.3s;
}

.payment-item__thumb {
	width: var(--thumb-width);
	height: var(--thumb-height);
	text-align: right;
	padding-left: 10px;

	&:has(.text) {
		width: fit-content;
	}
}

.payment-item__thumb img {
	max-width: var(--thumb-width);
	max-height: var(--thumb-height);
	object-fit: cover;
}


.deposit-info {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 6px;
}

.deposit-info__title {
	max-width: 50%;
	margin-bottom: 0px;
	text-align: left;
}

.deposit-info__input {
	max-width: 50%;
	text-align: right;
	width: 100%;
}

.deposit-info__input-select {
	border: 1px solid var(--border-color);
	width: 100%;
	border-radius: 5px;
	padding-block: 6px;
}

.deposit-info__input-group {
	border: 1px solid var(--border-color);
	border-radius: 5px;
}

.deposit-info__input-group-text {
	align-self: center;
	padding-left: 5px;
}

.deposit-info__input-group .form--control {
	padding: 5px;
	border: 0;
	height: 35px;
	text-align: right;
}

.deposit-info__input-group .form--control:focus {
	box-shadow: unset;
}

.info-text .text,
.deposit-info__input .text {
	font-size: 14px;

}

.deposit-info__title .text.has-icon {
	display: flex;
	align-items: center;
	gap: 5px
}

.total-amount {
	border-top: 1px solid var(--border-color);
}

.total-amount .deposit-info__title {
	font-weight: 600;
}

.payment-item__btn {
	border: 0;
	border-block: 1px solid #f3f3f3;
	border-bottom: 0;
	background: #fff;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 13px 15px;
	font-weight: 500;
}

.payment-item:hover+.payment-item__btn {
	border-top-color: #fff;
}

button .spinner-border {
	--bs-spinner-width: 1.5rem;
	--bs-spinner-height: 1.5rem;
}








/* ////////////////// select 2 css //////////////// */
.select2-dropdown {
	border: 0 !important;
	margin-top: 8px !important;
	border-radius: 5px !important;
	box-shadow: 0 3px 9px rgba(50, 50, 9, 0.05), 6px 4px 19px rgb(115 103 240 / 20%)
}

.select2-search--dropdown {
	padding: 10px 10px !important;
	border-color: #ced4da !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
	border-color: #eaeaea !important;
	padding: 10px 20px;
	background: transparent !important;
	color: hsl(var(--white)) !important;
	border-radius: 4px;
}

.select2-results__option.select2-results__option--selected,
.select2-results__option--selectable,
.select2-container--default .select2-results__option--disabled {
	padding: 12px 14px !important;
	border-bottom: 1px solid #eee;
}

.select2-results__option.select2-results__message {
	text-align: center !important;
	padding: 12px 14px !important;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar {
	width: 8px;
	border-radius: 5px;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius: 5px;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-thumb {
	background: #ddd;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-thumb:hover {
	background: #ddd;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
	display: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow:after {
	position: absolute;
	right: 10px;
	top: 50%;
	content: "\f107";
	font-family: "Line Awesome Free";
	font-weight: 900;
	transition: .3s;
	transform: translateY(-50%);
}

.selection {
	width: 100%;
}

.select2-selection.select2-selection--single {
	background: hsl(var(--base-two));
	border-color: #eaeaea !important;
	color: hsl(var(--white));
	padding: 10px 24px !important;
	line-height: 1.2;
	height: 50px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 53px !important;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow:after {
	content: "\f106";
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: hsl(var(--white)/.7) !important;
	line-height: 32px !important;
}

.select2-results__option:last-child {
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}

.select2-results__option:first-child {
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

.select2-results__option.select2-results__option--selected,
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
	background-color: #f1f1f1 !important;
	color: #000 !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
	box-shadow: 0 0 25px rgba(115, 103, 240 0.071) !important;
	outline: 0 !important;
}

.select2-dropdown .country-flag {
	width: 25px;
	height: 25px;
	border-radius: 8px;
}

.select2-dropdown {
	background-color: #fff !important;
}

.select2-dropdown .gateway-title {
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 0px !important;
}

.select2-dropdown .gateway-subtitle {
	font-size: 12px;
	margin-bottom: 0px !important;
}

.select2-container--open .select2-selection.select2-selection--single,
.select2-container--open .select2-selection.select2-selection--multiple {
	border-color: rgba(255, 88, 81, 0.7) !important;
	border-radius: .375rem !important;
	box-shadow: 1px 1px 15px 3px #FF585114 !important;
}

.select2-results__option.select2-results__option--selected,
.select2-results__option--selectable,
.select2-container--default .select2-results__option--disabled {
	border: 1px solid hsl(var(--white)/.1) !important;
}

.select2 .dropdown-wrapper {
	display: none;
}

.select2-container:has(.select2-selection--single) {
	width: 100% !important;
}

/* ==========================================================
   DIRTASK MODERN SAAS AGENCY THEME (CYAN/GREEN)
   ========================================================== */

:root {
  --base-color: #10C9D9 !important; /* Cyan from logo */
  --base-light: rgba(16, 201, 217, 0.1);
  --accent-color: #32E070 !important; /* Green from logo */
  
  /* Backgrounds */
  --bg-gradient: #F4F7FB !important; /* Pure white base */
  
  /* Solid Cards */
  --card-bg: #FFFFFF !important; /* Pure white */
  --card-hover: #FFFFFF !important;
  --card-border: transparent !important;
  --card-shadow: 0 10px 40px rgba(0, 0, 0, 0.05) !important; /* Soft, large shadow */
  
  /* Text */
  --text-title: #0F172A !important; /* Slate Dark */
  --text-body: #475569 !important;  /* Muted Slate */
  
  /* Accents */
  --success-color: #10B981 !important; /* Success Green */
  --success-bg: rgba(16, 185, 129, 0.1) !important;
}

/* Global Canvas */
body, .bodywrapper, .page-wrapper {
  background: var(--bg-gradient) !important;
  color: var(--text-body) !important;
  min-height: 100vh;
  position: relative;
}

/* Ambient Cyan Blobs for Body Background */
body::before, body::after {
  content: '';
  position: fixed;
  width: 50vw;
  height: 50vw;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(16, 201, 217, 0.05) 0%, transparent 70%);
  z-index: -1;
  pointer-events: none;
}
body::before {
  top: -20vh;
  left: -20vw;
}
body::after {
  bottom: -20vh;
  right: -20vw;
  background: radial-gradient(circle, rgba(16, 201, 217, 0.03) 0%, transparent 70%);
}

/* Enhanced Typography & Spacious Paragraph Line Height */
h1, h2, h3, h4, h5, h6, .title, .widget-title, .section__header-title, .section-title {
  color: var(--text-title) !important;
  font-weight: 700;
  line-height: 1.45 !important;
  letter-spacing: 0.01em !important;
  margin-bottom: 1.25rem !important;
}

h1 { line-height: 1.4 !important; }
h2 { line-height: 1.42 !important; }
h3 { line-height: 1.45 !important; }

p, .lead, .description, .card-text, .text-muted {
  color: var(--text-body) !important;
  line-height: 1.85 !important; /* Generous, elegant paragraph line height */
  margin-bottom: 1.5rem !important;
  word-spacing: 0.04em !important;
}

span, label, .info-text, li, .list-item {
  line-height: 1.7 !important;
}

/* Section Header Spacing */
.section__header, .section-header {
  margin-bottom: 3rem !important;
}

/* Card & Content Text Spacing */
.step-card p, .category-card-pro p, .job-item-card p, .overview__content p {
  line-height: 1.85 !important;
  margin-bottom: 1rem !important;
}

/* Links */
a:not(.btn) { color: var(--base-color); transition: 0.2s ease; font-weight: 500; }
a:not(.btn):hover { color: var(--text-title); text-decoration: none; }

/* Surface Cards & Containers */
.card, .bg-white, .job__item, .category__item, .dashboard__card, .widget, .input-popup, .cookies-card, .modal-content, .bg--light {
  background: var(--card-bg) !important;
  border: 1px solid rgba(0,0,0,0.02) !important;
  box-shadow: var(--card-shadow) !important;
  border-radius: 12px !important; 
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.card-header, .card-footer, .modal-header, .modal-footer {
  background: rgba(0, 0, 0, 0.01) !important;
  border-color: rgba(0,0,0,0.03) !important;
  border-radius: 12px 12px 0 0 !important;
}
.card-footer, .modal-footer { border-radius: 0 0 12px 12px !important; }

/* Interactive Cards Hover */
.job__item:hover, .category__item:hover, .dashboard__card:hover {
  background: var(--card-hover) !important;
  transform: translateY(-4px);
  box-shadow: 0 20px 50px rgba(249, 115, 22, 0.08) !important;
}

/* Headers & Navigation */
.header-bottom, .header-top {
  background: transparent !important;
  border-bottom: none !important;
}

/* Desktop Navigation */
@media (min-width: 992px) {
  .menu li a { color: var(--text-title) !important; font-weight: 600; font-size: 15px; }
  .menu li a:hover { color: var(--base-color) !important; }
  .menu li a.active { color: var(--base-color) !important; }
}

/* Mobile Drawer Navigation (Fix dark-on-dark text contrast) */
@media (max-width: 991px) {
  .menu {
    background: linear-gradient(180deg, #0B132B 0%, #1C2541 100%) !important;
    border-radius: 0 0 20px 20px !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4) !important;
    padding: 25px 20px !important;
    z-index: 9999 !important;
  }
  
  .menu li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding: 8px 0 !important;
  }
  
  .menu li:last-child {
    border-bottom: none !important;
  }
  
  .menu li a {
    color: rgba(255, 255, 255, 0.9) !important;
    font-weight: 600 !important;
    font-size: 1.05rem !important;
    padding: 8px 0 !important;
    display: block !important;
    transition: all 0.2s ease !important;
  }
  
  .menu li a:hover, .menu li a:focus {
    color: #10C9D9 !important;
  }
  
  .menu li a.active {
    color: #10C9D9 !important;
    font-weight: 700 !important;
  }
  
  /* Mobile Drawer Buttons */
  .menu li.p-0 {
    margin-top: 15px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }
  
  .menu li.p-0 a.btn {
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
    border-radius: 50px !important;
    padding: 12px 20px !important;
    font-weight: 600 !important;
    display: block !important;
  }
  
  .menu li.p-0 a.btn:first-child {
    background: #10C9D9 !important;
    color: #FFFFFF !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(16, 201, 217, 0.35) !important;
  }
  
  .menu li.p-0 a.btn:last-child {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.25) !important;
  }

  /* Hamburger & Close Icons */
  .header-trigger span,
  .header-trigger span::before,
  .header-trigger span::after {
    background: var(--text-title) !important;
  }

  .header-trigger.active span::before,
  .header-trigger.active span::after {
    background: #FFFFFF !important;
  }
}

/* Fix Top Header Text Colors */
.header-top .info-list li, .header-top .info-list li a, .header-top .info-list li i {
  color: var(--text-title) !important;
}
.header-top .social-links li a {
  color: var(--text-title) !important;
}

/* Fix the Main Banner Section Background Image */
.banner-section {
    position: relative;
    background-color: transparent !important;
}
.banner-section::before {
    content: none !important;
}
.banner__content-title {
    color: var(--text-title) !important;
    font-size: 3.2rem !important;
    line-height: 1.35 !important;
    margin-bottom: 1.75rem !important;
}
.banner__content-title span {
    color: var(--base-color);
    display: inline-block;
}

@media (max-width: 1199px) {
  .banner__content-title {
    font-size: 2.6rem !important;
    line-height: 1.35 !important;
  }
}

@media (max-width: 767px) {
  .banner-section {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .banner__content {
    text-align: center !important;
  }
  .banner__content-title {
    font-size: 2rem !important;
    line-height: 1.42 !important;
    margin-bottom: 1.5rem !important;
  }
  .banner__content p.lead {
    font-size: 1rem !important;
    line-height: 1.8 !important;
    margin-bottom: 2rem !important;
    max-width: 100% !important;
  }
  .banner__content .d-flex {
    flex-direction: column !important;
    width: 100% !important;
    gap: 14px !important;
  }
  .banner__content .btn {
    width: 100% !important;
    justify-content: center !important;
    padding: 0.85rem 1.5rem !important;
  }
}

/* Inputs & Forms */
.form-control, .form--control, select, input, textarea {
  background: #FFFFFF !important;
  border: 1px solid rgba(0,0,0,0.1) !important;
  color: var(--text-title) !important;
  border-radius: 8px !important;
  transition: all 0.2s ease;
  padding: 0.85rem 1.2rem !important;
}
.form-control:focus, .form--control:focus, .form-control:active {
  border-color: var(--base-color) !important;
  box-shadow: 0 0 0 3px var(--base-light) !important;
  background: #FFFFFF !important;
  outline: none !important;
}
.input-group-text {
  background: #F8FAFC !important;
  border-color: rgba(0,0,0,0.1) !important;
  color: var(--text-title) !important;
}

/* Success & Earnings */
.text--success, .badge--success, .job-price, .wallet-balance, .amount, .price {
  color: var(--success-color) !important;
}
.bg--success {
  background: var(--success-bg) !important;
  color: var(--success-color) !important;
  border: 1px solid rgba(16, 185, 129, 0.2) !important;
}

/* Buttons */
.btn--base, .btn-primary { 
  background: var(--base-color) !important;
  color: #FFFFFF !important; 
  border: none !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  font-weight: 600;
  padding: 0.75rem 1.5rem !important;
  box-shadow: 0 4px 14px rgba(16, 201, 217, 0.3) !important;
}
.btn--base:hover, .btn-primary:hover {
  background: #0EA5E9 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(16, 201, 217, 0.4) !important;
}
.btn--base:active, .btn-primary:active {
  transform: translateY(0);
}

.btn-outline-primary {
  background: transparent !important;
  color: var(--base-color) !important;
  border: none !important;
  font-weight: 600;
  box-shadow: none !important;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.btn-outline-primary:hover {
  color: #0EA5E9 !important;
  background: var(--base-light) !important;
  transform: translateY(-2px);
}

/* Feedback States Directive (Disabled) */
.btn:disabled, button:disabled, input:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
  pointer-events: none;
}

/* Job & Category specific adjustments */
.job__item-price {
  background: var(--success-bg) !important;
  color: var(--success-color) !important;
  border: 1px solid rgba(16, 185, 129, 0.2);
  border-radius: 6px;
  padding: 6px 12px;
  font-weight: 600;
  font-size: 0.875rem;
}
.category__item-icon {
  background: transparent !important;
  border: none !important;
  font-size: 2.5rem;
  margin-bottom: 1rem;
}
.job-count {
  background: #F8FAFC !important;
  color: var(--text-title) !important;
  border: 1px solid rgba(0,0,0,0.05);
}

/* Select2 Light */
.select2-container--default .select2-selection--single {
  background: #FFFFFF !important;
  border: 1px solid rgba(0,0,0,0.1) !important;
  border-radius: 8px !important;
}
.select2-dropdown {
  background: #FFFFFF !important;
  border: 1px solid rgba(0,0,0,0.1) !important;
  border-radius: 8px !important;
  box-shadow: var(--card-shadow) !important;
}
.select2-results__option.select2-results__option--selected,
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background: #F8FAFC !important;
  color: var(--base-color) !important;
}

/* Tables */
table, .table {
  color: var(--text-title) !important;
  border-color: rgba(0,0,0,0.05) !important;
}
thead th {
  background: #F8FAFC !important;
  border-bottom: 1px solid rgba(0,0,0,0.05) !important;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  color: var(--text-body) !important;
}
tbody td {
  background: transparent !important;
  border-bottom: 1px solid rgba(0,0,0,0.05) !important;
}

/* Hero Animations */
@keyframes float {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-15px); }
  100% { transform: translateY(0px); }
}
.hero-float-animation {
  animation: float 6s ease-in-out infinite;
}

/* Footer override removed to restore default dark footer readability */

/* Utilities */
.text--dark { color: var(--text-title) !important; }
.bg--white { background: var(--card-bg) !important; }
.bg--light { background: transparent !important; }

/* Custom Logo Size */
.logo img {
  max-width: 300px !important;
  max-height: 100px !important;
  object-fit: contain;
}
@media (max-width: 1199px) { .logo img { max-width: 260px !important; } }
@media (max-width: 767px) { .logo img { max-width: 220px !important; } }
@media (max-width: 575px) { .logo img { max-width: 180px !important; max-height: 80px !important; } }

/* ==========================================================
   DYNAMICS & MODERN ANIMATIONS (CYAN/GREEN)
   ========================================================== */

/* 1. Pulse Glow Animation for Primary Buttons */
@keyframes pulse-cyan {
  0% {
    box-shadow: 0 0 0 0 rgba(16, 201, 217, 0.4);
  }
  70% {
    box-shadow: 0 0 0 14px rgba(16, 201, 217, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(16, 201, 217, 0);
  }
}

.btn-primary, .btn--base {
  position: relative;
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

.btn-primary:hover, .btn--base:hover {
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 10px 25px rgba(16, 201, 217, 0.4) !important;
}

/* 2. Rocket Scroll To Top Button Glow & Lift */
.scrollToTop, .scroll-to-top, .scroll-to-top-btn {
  border-radius: 50% !important;
  background: linear-gradient(135deg, #10C9D9 0%, #32E070 100%) !important;
  box-shadow: 0 8px 25px rgba(16, 201, 217, 0.35) !important;
  transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
  border: none !important;
}

.scrollToTop:hover, .scroll-to-top:hover, .scroll-to-top-btn:hover {
  transform: translateY(-6px) scale(1.12) !important;
  box-shadow: 0 15px 35px rgba(16, 201, 217, 0.55) !important;
}

.scrollToTop i, .scroll-to-top i, .scroll-to-top-btn i {
  transition: transform 0.3s ease !important;
}

.scrollToTop:hover i, .scroll-to-top:hover i, .scroll-to-top-btn:hover i {
  transform: translateY(-4px) scale(1.1) !important;
}

/* 3. Shimmer Gradient Animation for Badges */
@keyframes gradient-shift {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.gradient-badge {
  background: linear-gradient(-45deg, #10C9D9, #32E070, #0EA5E9, #10B981) !important;
  background-size: 200% 200% !important;
  animation: gradient-shift 5s ease infinite !important;
  color: #ffffff !important;
}

/* 4. Smooth Micro-Interactions for Cards & Icons */
.category-card-pro, .step-card, .job-item-card {
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.category-card-pro:hover, .step-card:hover {
  transform: translateY(-8px) !important;
}

.category-card-pro:hover .icon-ring,
.step-card:hover .step-icon-wrapper {
  transform: scale(1.12) rotate(4deg) !important;
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

/* 5. Fade In Up Smooth Entrance */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(25px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-fade-in {
  animation: fadeInUp 0.7s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* ==========================================================
   MOBILE TYPOGRAPHY ENHANCEMENT (LARGER & CLEARER FONTS)
   ========================================================== */
@media (max-width: 767px) {
  body {
    font-size: 1.05rem !important;
  }

  p, .description, .card-text, .text-muted {
    font-size: 1.08rem !important;
    line-height: 1.85 !important;
  }

  .banner__content p.lead {
    font-size: 1.15rem !important;
    line-height: 1.8 !important;
  }

  h1, .banner__content-title {
    font-size: 2.25rem !important;
    line-height: 1.4 !important;
  }

  h2, .display-6, .section__header-title {
    font-size: 1.85rem !important;
    line-height: 1.4 !important;
  }

  h3, h4 {
    font-size: 1.4rem !important;
    line-height: 1.45 !important;
  }

  h5, h6 {
    font-size: 1.2rem !important;
  }

  .btn, .btn-primary, .btn--base {
    font-size: 1.05rem !important;
    padding: 0.9rem 1.6rem !important;
  }

  .step-card h4, .category-card-pro h4 {
    font-size: 1.35rem !important;
  }

  .step-card p, .category-card-pro p {
    font-size: 1.05rem !important;
    line-height: 1.8 !important;
  }

  .menu li a {
    font-size: 1.15rem !important;
  }

  .badge {
    font-size: 0.95rem !important;
    padding: 0.5rem 1rem !important;
  }
}