/*
|--------------------------------------------------------------------------
| Translation CSS
|--------------------------------------------------------------------------
*/

.translate-btn {
	position: fixed;
	bottom: 12px;
	right: 20px;
	background: #007bff;
	color: #fff;
	padding: 10px 15px;
	border-radius: 50px;
	font-size: 16px;
	cursor: pointer;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
	transition: 0.3s ease-in-out;
	z-index: 9999;
}

.translate-btn:hover {
	background: #0056b3;
}

.translate-container {
	position: fixed;
	background: #fff;
	padding: 10px;
	border-radius: 8px;
	box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.2);
	display: none;
	z-index: 10000 !important;
	min-width: 200px;
}

.goog-te-banner-frame.skiptranslate,
.goog-tooltip,
.goog-tooltip:hover,
.goog-te-balloon-frame {
	display: none !important;
}


/*
|--------------------------------------------------------------------------
| Master CSS
|--------------------------------------------------------------------------
*/

/* Placeholder grey – site-wide */
.form-control::placeholder,
input::placeholder,
textarea::placeholder {
    color: #9ca3af !important;
    opacity: 0.8;
}

.custom-badge {
	display: inline-block;
	padding: 5px 10px;
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	background-color: var(--primary-color);
	border-radius: 12px;
	text-transform: uppercase;
}

.btn {
	background: linear-gradient(45deg, var(--yellow-color), var(--green-color), var(--primary-color), var(--coral-color));
	background-size: 300% 300%;
	animation: gradientAnimation 12s ease-in-out infinite;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
	transition: transform 0.6s ease;
}

.btn:hover {
	transform: scale(1.05);
}

@keyframes gradientAnimation {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

/*
|--------------------------------------------------------------------------
| Sidebar CSS
|--------------------------------------------------------------------------
*/

.sticky-sidebar {
	position: sticky;
	top: 100px;
}


/*
|--------------------------------------------------------------------------
| News Event CSS
|--------------------------------------------------------------------------
*/

.news-event {
    border: 1px solid #ddd;
    padding: 15px;
    border-radius: 10px;
    background: #e977421f;
    height: 500px;
    overflow: hidden;
    position: relative;
}

.scroll-wrapper {
    height: 100%;
    overflow: hidden;
    position: relative;
}

.scrolling-news {
    display: flex;
    flex-direction: column;
    animation: scrollUpLinear 15s linear infinite;
}

.scrolling-news ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.scrolling-news li {
    display: flex;
    align-items: flex-start;
    padding: 10px;
    border-bottom: 2px dotted var(--thm-topbar-bg-color, #007bff);;
    width: 100%;
}

.news-date {
    background-color: var(--thm-topbar-bg-color, #007bff);
    color: #fff;
    padding: 5px 10px;
    font-size: 16px;
    font-weight: 600;
    border-radius: 5px;
    margin-right: 10px;
    width: 50px;
    text-align: center;
    flex-shrink: 0;
}

.news-date small {
    display: block;
    font-size: 12px;
    font-weight: 400;
}

.news-text a {
    color: #000;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.4;
}

@keyframes scrollUpLinear {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-50%);
    }
}

/*
|--------------------------------------------------------------------------
| Read More Link CSS
|--------------------------------------------------------------------------
*/

.read-more-link {
    color: var(--oxpins-base) !important;
    text-decoration: underline !important;
    font-weight: bold !important;
    transition: all 0.3s ease;
}

.read-more-link:hover {
    color: var(--oxpins-primary) !important;
    text-decoration: none !important;
}

/*
|--------------------------------------------------------------------------
| Campaign Card CSS
|--------------------------------------------------------------------------
*/

.causes-one__img {
    height: 250px;
}

/*
|--------------------------------------------------------------------------
| Pagination CSS
|--------------------------------------------------------------------------
*/
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.pagination .page-item {
    margin: 0 2px;
}

.pagination .page-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    color: var(--oxpins-black);
    background-color: #ffffff;
    border: 2px solid #e9ecef;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 500;
    font-size: 14px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.pagination .page-link:hover {
    color: #ffffff;
    background-color: var(--oxpins-base);
    border-color: var(--oxpins-base);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.pagination .page-item.active .page-link {
    color: #ffffff;
    background-color: var(--oxpins-base);
    border-color: var(--oxpins-base);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.pagination .page-item.disabled .page-link {
    color: #6c757d;
    background-color: #f8f9fa;
    border-color: #e9ecef;
    cursor: not-allowed;
    opacity: 0.6;
}

.pagination .page-item.disabled .page-link:hover {
    color: #6c757d;
    background-color: #f8f9fa;
    border-color: #e9ecef;
    transform: none;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Pagination arrows styling */
.pagination .page-link[rel="prev"],
.pagination .page-link[rel="next"] {
    font-weight: bold;
    font-size: 16px;
}

/* Pagination container styling */
.pagination-container {
    padding: 20px;
    margin-top: 30px;
}

/* Responsive pagination */
@media (max-width: 768px) {
    .pagination .page-link {
        min-width: 35px;
        height: 35px;
        padding: 0 8px;
        font-size: 12px;
    }
    
    .pagination-container {
        padding: 15px;
        margin-top: 20px;
    }
}

/*
|--------------------------------------------------------------------------
| Campaign CSS
|--------------------------------------------------------------------------
*/

/* Campaign Donation Widget */
.campaign-donation-widget {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
    padding: 25px;
    position: relative;
    overflow: hidden;
}

.donation-widget-header {
    margin-bottom: 20px;
}



/* Countdown Timer */
.countdown-timer {
    display: flex;
    justify-content: space-between;
    gap: 6px;
    margin-bottom: 20px;
}

.countdown-item {
    flex: 1;
    background: linear-gradient(135deg, var(--oxpins-base), var(--oxpins-primary));
    border-radius: 6px;
    padding: 8px 4px;
    text-align: center;
    position: relative;
    overflow: hidden;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.countdown-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.1), rgba(255,255,255,0.05));
    border-radius: 8px;
}

.countdown-number {
    display: inline;
    font-size: 1.0rem;
    font-weight: 700;
    color: #ffffff;
    line-height: 1;
    margin-right: 2px;
    position: relative;
    z-index: 1;
}

.countdown-label {
    display: inline;
    font-size: 1.0rem;
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    position: relative;
    z-index: 1;
}



/* Financial Details */
.donation-financial-details {
    margin-bottom: 25px;
    display: flex;
    gap: 30px;
    justify-content: space-between;
}

.financial-item {
    display: flex;
    align-items: center;
    flex: 1;
    padding: 0;
    background: none;
    border-radius: 0;
    transition: none;
}

.financial-item:hover {
    background: none;
    transform: none;
}

.financial-icon {
    width: 24px;
    height: 24px;
    background: none;
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    flex-shrink: 0;
}

.financial-icon i {
    font-size: 20px;
    color: #6c757d;
}

.financial-text {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 5px;
}

.financial-label {
    display: inline;
    font-size: 1rem;
    color: #6c757d;
    font-weight: 600;
    margin: 0;
}

.financial-amount {
    font-size: 1rem;
    font-weight: 600;
    color: #6c757d;
    margin: 0;
}

.financial-amount::before {
    content: '₹';
    margin-right: 2px;
}

.raised-amount {
    color: #28a745;
    font-weight: 600;
    border: 1px solid #28a745;
    border-radius: 4px;
    padding: 2px 6px;
    background: rgba(40, 167, 69, 0.1);
}

/* Organizer Widget Card */
.organizer-widget-card {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
    padding: 25px;
    position: relative;
    overflow: hidden;
}

.organizer-widget-header {
    margin-bottom: 20px;
}

.organizer-widget-title {
    font-size: 1.4rem;
    font-weight: 700;
    color: #2c3e50;
    margin: 0 0 15px 0;
    text-align: left;
}

.organizer-widget-divider {
    height: 2px;
    background: #e9ecef;
    border-radius: 1px;
    margin: 0 0 20px 0;
    width: 100%;
}

.organizer-widget-content {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    text-align: left;
    gap: 15px;
}

.organizer-widget-logo {
    flex-shrink: 0;
}

.organizer-widget-img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid var(--oxpins-base);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.organizer-widget-info {
    flex: 1;
    width: 100%;
}

.organizer-widget-name {
    font-size: 1.3rem;
    color: var(--oxpins-base);
    font-weight: 700;
    margin-bottom: 8px;
    text-transform: uppercase;
    line-height: 1.2;
}

.organizer-widget-location {
    font-size: 0.85rem;
    color: #6c757d;
    margin: 5px 0;
    display: flex;
    align-items: center;
    gap: 5px;
}

.organizer-widget-location i {
    color: var(--oxpins-base);
    font-size: 0.8rem;
}

.organizer-widget-date {
    font-size: 0.9rem;
    color: #6c757d;
    font-style: italic;
    margin: 0;
}

/* Responsive Design for Organizer Widget */
@media (max-width: 768px) {
    .organizer-widget-card {
        padding: 20px;
        margin-bottom: 25px;
    }
    
    .organizer-widget-title {
        font-size: 1.2rem;
    }
    
    .organizer-widget-content {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    
    .organizer-widget-img {
        width: 70px;
        height: 70px;
    }
    
    .organizer-widget-name {
        font-size: 1.1rem;
    }
    
    .organizer-widget-location {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .organizer-widget-card {
        padding: 15px;
    }
    
    .organizer-widget-content {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 10px;
    }
    
    .organizer-widget-img {
        width: 60px;
        height: 60px;
    }
    
    .organizer-widget-name {
        font-size: 1rem;
    }
    
    .organizer-widget-location {
        justify-content: center;
        font-size: 0.8rem;
    }
    
    .organizer-widget-date {
        font-size: 0.8rem;
    }
}

/* Share Campaign Card */
.share-campaign-card {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
    padding: 25px;
    position: relative;
    overflow: hidden;
}

.share-campaign-title {
    font-size: 1.4rem;
    font-weight: 700;
    color: #2c3e50;
    margin: 0 0 15px 0;
    text-align: left;
}

.share-campaign-divider {
    height: 2px;
    background: #e9ecef;
    border-radius: 1px;
    margin: 0 0 20px 0;
    width: 100%;
}

.share-url-section {
    margin-bottom: 20px;
}

.url-input-group {
    display: flex;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    overflow: hidden;
    background: #ffffff;
}

.url-input {
    flex: 1;
    border: none;
    padding: 12px 15px;
    font-size: 14px;
    color: #6c757d;
    background: #f6f6f6;
    outline: none;
}

.url-input:focus {
    outline: none;
    box-shadow: none;
}

.copy-url-btn {
    background: var(--oxpins-base);
    color: #ffffff;
    border: none;
    padding: 12px 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    min-width: 50px;
}

.copy-url-btn:hover {
    background: var(--oxpins-primary);
    transform: translateY(-1px);
}

.copy-url-btn i {
    font-size: 16px;
}

.social-share-icons {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}

.social-icon {
    width: 45px;
    height: 45px;
    border: 2px solid var(--oxpins-base);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color:  var(--oxpins-base);
    transition: all 0.3s ease;
}

.social-icon:hover {
    background:  var(--oxpins-base);
    border-color:  var(--oxpins-base);
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.social-icon i {
    font-size: 18px;
}

/* Fallback for Twitter X icon if Tabler Icons don't load */
.social-icon.twitter i.ti-brand-x:before {
    content: "✕";
    font-family: Arial, sans-serif;
    font-weight: bold;
    font-size: 20px;
}

/* Responsive Design for Share Card */
@media (max-width: 768px) {
    .share-campaign-card {
        padding: 20px;
        margin-bottom: 25px;
    }
    
    .share-campaign-title {
        font-size: 1.2rem;
    }
    
    .url-input {
        padding: 10px 12px;
        font-size: 13px;
    }
    
    .copy-url-btn {
        padding: 10px 14px;
        min-width: 45px;
    }
    
    .social-share-icons {
        gap: 8px;
    }
    
    .social-icon {
        width: 40px;
        height: 40px;
    }
    
    .social-icon i {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .share-campaign-card {
        padding: 15px;
    }
    
    .social-share-icons {
        gap: 6px;
    }
    
    .social-icon {
        width: 35px;
        height: 35px;
    }
    
    .social-icon i {
        font-size: 14px;
    }
}

/* Donation Footer */
.donation-widget-footer {
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid #e9ecef;
}

.donate-title {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2c3e50;
    margin: 0 0 15px 0;
}

.donate-button {
    display: inline-block;
    padding: 12px 20px;
    border: 2px solid #E5AC1B;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.3s ease;
    background: #ffffff;
}

.donate-button:hover {
    background: #E5AC1B;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(229, 172, 27, 0.3);
}

.donate-button img {
    height: 35px;
    display: block;
}

/* Responsive Design */
@media (max-width: 768px) {
    .campaign-donation-widget {
        padding: 20px;
        margin-bottom: 25px;
    }
    
    .countdown-timer {
        gap: 6px;
    }
    
    .countdown-item {
        padding: 6px 3px;
        min-height: 35px;
    }
    
    .countdown-number {
        font-size: 0.9rem;
    }
    
    .countdown-label {
        font-size: 0.9rem;
    }
    
    .donation-financial-details {
        flex-direction: column;
        gap: 15px;
    }
    
    .financial-item {
        padding: 0;
    }
    
    .financial-icon {
        width: 20px;
        height: 20px;
        margin-right: 8px;
    }
    
    .financial-icon i {
        font-size: 18px;
    }
    
    .donate-button {
        padding: 10px 16px;
    }
    
    .donate-button img {
        height: 30px;
    }
}

@media (max-width: 480px) {
    .campaign-donation-widget {
        padding: 15px;
    }
    
   
    
    .countdown-timer {
        gap: 4px;
    }
    
    .countdown-item {
        padding: 6px 2px;
        min-height: 32px;
    }
    
    .countdown-number {
        font-size: 0.8rem;
    }
    
    .countdown-label {
        font-size: 0.8rem;
    }
    
    .donation-financial-details {
        flex-direction: column;
        gap: 12px;
    }
    
    .financial-item {
        padding: 0;
    }
    
    .financial-icon {
        width: 18px;
        height: 18px;
        margin-right: 6px;
    }
    
    .financial-icon i {
        font-size: 16px;
    }
    
    .financial-amount {
        font-size: 0.9rem;
    }
}

.campaign-title {
    font-size: 2rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 15px;
    line-height: 1.2;
}

.campaign-description-text {
    text-align: justify;
}

.campaign-main-image {
    width: 100%;
    height: 400px;
    object-fit: cover;
    object-position: center;
}

/* Campaign Organizer Card */
.campaign-organizer-card {
    background: #f8f9fa;
    border-radius: 12px;
    padding: 20px;
    margin: 20px 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.organizer-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
}

.organizer-left {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    flex: 1;
}

.organizer-logo {
    flex-shrink: 0;
}

.organizer-img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--oxpins-base);
}

.organizer-info {
    flex: 1;
}

.organizer-title {
    font-size: 0.9rem;
    color: #2c3e50;
    font-weight: 600;
    margin-bottom: 5px;
}

.organizer-name {
    font-size: 1.2rem;
    color: var(--oxpins-base);
    font-weight: 700;
    margin-bottom: 0;
    text-transform: uppercase;
}

.organizer-right {
    flex-shrink: 0;
    text-align: right;
}

.organizer-date {
    font-size: 0.9rem;
    color: #6c757d;
    font-style: italic;
    margin: 0;
}

/* Responsive Design for Organizer Card */
@media (max-width: 768px) {
    .campaign-organizer-card {
        padding: 15px;
        margin: 15px 0;
    }
    
    .organizer-header {
        flex-direction: column;
        gap: 12px;
    }
    
    .organizer-left {
        gap: 12px;
    }
    
    .organizer-img {
        width: 50px;
        height: 50px;
    }
    
    .organizer-name {
        font-size: 1.1rem;
    }
    
    .organizer-right {
        text-align: left;
    }
}

@media (max-width: 480px) {
    .campaign-organizer-card {
        padding: 12px;
        margin: 12px 0;
    }
    
    .organizer-header {
        flex-direction: column;
        gap: 10px;
    }
    
    .organizer-left {
        flex-direction: column;
        text-align: center;
        gap: 10px;
    }
    
    .organizer-img {
        width: 45px;
        height: 45px;
        margin: 0 auto;
    }
    
    .organizer-name {
        font-size: 1rem;
    }
    
    .organizer-right {
        text-align: center;
    }
}
.campaign-details-tabs {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    margin-top: 30px;
    padding: 20px;
}

.tab-navigation {
    display: flex;
    gap: 6px;
    margin-bottom: 0;
    overflow-x: auto;
    padding-bottom: 5px;
}

/* Campaign detail page tabs only (see campaigns_detail.blade.php) */
.campaign-details-tabs .tab-button {
    font-weight: 700;
}

.tab-button {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 12px;
    background: #ffffff;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 500;
    color: #6c757d;
    transition: all 0.3s ease;
    text-align: center;
    white-space: nowrap;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tab-button i {
    font-size: 1.1em;
    flex-shrink: 0;
}

.tab-button:hover {
    color: var(--oxpins-base);
    border-color: var(--oxpins-base);
}

.tab-button.active {
    color: #ffffff;
    background: var(--oxpins-base);
    border-color: var(--oxpins-base);
    font-weight: 600;
}

.campaign-details-tabs .tab-button.active {
    font-weight: 700;
}

.tab-content {
    position: relative;
}

.tab-pane {
    display: none;
    padding: 0;
}

.tab-pane.active {
    display: block;
}

.tab-content-inner {
    padding: 30px;
}

.tab-title {
    color: var(--oxpins-black);
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--oxpins-base);
    display: inline-block;
}

.campaign-gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 20px;
    margin-top: 20px;
}

.gallery-item {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.gallery-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.gallery-image {
    width: 100%;
    height: 200px;
    object-fit: cover;
    object-position: center;
}

.documents-list {
    margin-top: 20px;
}

/* Campaign Updates (Updates tab) */
.campaign-updates-list {
    margin-top: 10px;
}
.campaign-update-item {
    display: flex;
    align-items: flex-start;
    padding: 1rem 0;
    border-bottom: 1px solid #eee;
}
.campaign-update-item:last-child {
    border-bottom: none;
}
.campaign-update-avatar {
    flex-shrink: 0;
    margin-right: 1rem;
}
.campaign-update-avatar img {
    width: 48px;
    height: 48px;
    object-fit: cover;
}
.campaign-update-body {
    flex: 1;
    min-width: 0;
}
.campaign-update-meta {
    margin-bottom: 0.35rem;
}
.campaign-update-name {
    font-size: 1rem;
    color: #1a1a1a;
}
.campaign-update-date {
    font-size: 0.8rem;
    color: #6c757d;
    margin-left: 0.5rem;
}
.campaign-update-description {
    font-size: 0.95rem;
    color: #444;
    line-height: 1.5;
}

.document-item {
    display: flex;
    align-items: center;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
    margin-bottom: 15px;
    transition: all 0.3s ease;
    border-left: 4px solid var(--oxpins-base);
}

.document-item:hover {
    background: #e9ecef;
    transform: translateX(5px);
}

.document-icon {
    width: 60px;
    height: 60px;
    background: var(--oxpins-base);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
    flex-shrink: 0;
}

.document-icon i {
    font-size: 24px;
    color: #ffffff;
}

.document-info {
    flex: 1;
}

.document-info h5 {
    color: var(--oxpins-black);
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 5px 0;
}

.document-info p {
    color: #6c757d;
    font-size: 14px;
    margin: 0 0 10px 0;
}

.download-btn {
    display: inline-block;
    padding: 8px 16px;
    background: var(--oxpins-base);
    color: #ffffff;
    text-decoration: none;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
}

.download-btn:hover {
    background: var(--oxpins-primary);
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-2px);
}

.no-content {
    text-align: center;
    padding: 40px;
    color: #6c757d;
    font-style: italic;
}

/* Donors Carousel */
.donors-carousel-container {
    position: relative;
    overflow: hidden;
    margin-top: 20px;
}

.donors-carousel {
    display: flex;
    transition: transform 0.5s ease-in-out;
    width: 100%;
    gap: 8px;
}

.donor-item {
    flex: 0 0 22%;
    min-width: 0;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border-radius: 8px;
    border: 1px solid #e9ecef;
    padding: 12px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
    position: relative;
    overflow: hidden;
}

.donor-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--oxpins-base), var(--oxpins-primary));
}

.donor-item:hover {
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
    transform: translateY(-3px);
}

.donor-item .donor-image {
    width: 100%;
    text-align: center;
    margin-bottom: 8px;
    position: relative;
}

.donor-img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #ffffff;
    transition: transform 0.3s ease;
    background-color: #f8f9fa;
    margin: 0 auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.donor-img:hover {
    transform: scale(1.05);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}


.donor-info {
    width: 100%;
    text-align: center;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
}

.donor-info:hover {
    background: transparent;
    box-shadow: none;
    transform: none;
}

.donor-name {
    color: #2c3e50;
    font-size: 12px;
    font-weight: 600;
    margin: 0 0 4px 0;
    line-height: 1.2;
    text-align: center;
    text-transform: capitalize;
}

.donor-amount {
    color: var(--oxpins-base);
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 4px 0;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
}

.donor-amount::before {
    content: '₹';
    font-size: 12px;
    opacity: 0.8;
}

.donor-date {
    color: #6c757d;
    font-size: 10px;
    font-weight: 500;
    text-align: center;
    background: #f8f9fa;
    padding: 2px 6px;
    border-radius: 4px;
    display: inline-block;
}

.carousel-controls {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    display: flex;
    justify-content: space-between;
    pointer-events: none;
}

.carousel-btn {
    background: var(--oxpins-base);
    color: #ffffff;
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    transition: all 0.3s ease;
    pointer-events: all;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.carousel-btn:hover {
    background: var(--oxpins-primary);
    transform: scale(1.1);
}

.prev-btn {
    left: -20px;
}

.next-btn {
    right: -20px;
}

/* Responsive Donors Carousel */
@media (max-width: 1200px) {
    .donor-item {
        flex: 0 0 22%;
    }
}

@media (max-width: 1024px) {
    .donor-item {
        flex: 0 0 30%;
    }
    
    .donor-img {
        width: 70px;
        height: 70px;
    }
    
    .donor-name {
        font-size: 12px;
    }
    
    .donor-amount {
        font-size: 14px;
    }
    
    .donor-date {
        font-size: 10px;
        padding: 2px 5px;
    }
}

@media (max-width: 992px) {
    .donor-item {
        flex: 0 0 30%;
    }
    
    .donor-img {
        width: 45px;
        height: 45px;
    }
    
    .donor-name {
        font-size: 11px;
    }
    
    .donor-amount {
        font-size: 13px;
    }
    
    .donor-date {
        font-size: 9px;
        padding: 2px 4px;
    }
}

@media (max-width: 768px) {
    .donors-carousel {
        gap: 6px;
    }
    
    .donor-item {
        flex: 0 0 30%;
        padding: 10px;
    }
    
    .donor-img {
        width: 45px;
        height: 45px;
    }
    
    .donor-name {
        font-size: 11px;
    }
    
    .donor-amount {
        font-size: 13px;
    }
    
    .donor-date {
        font-size: 9px;
        padding: 2px 4px;
    }
    
    .carousel-btn {
        width: 35px;
        height: 35px;
        font-size: 14px;
    }
    
    .prev-btn {
        left: -15px;
    }
    
    .next-btn {
        right: -15px;
    }
}

@media (max-width: 480px) {
    .donors-carousel {
        gap: 4px;
    }
    
    .donor-item {
        flex: 0 0 45%;
        padding: 10px;
    }
    
    .donor-img {
        width: 40px;
        height: 40px;
    }
    
    .donor-name {
        font-size: 10px;
    }
    
    .donor-amount {
        font-size: 12px;
    }
    
    .donor-date {
        font-size: 8px;
        padding: 2px 4px;
    }
    
    .donors-carousel {
        flex-direction: row;
    }
    
    .carousel-controls {
        display: none;
    }
}
/* Related Campaigns Widget Card */
.related-campaigns-widget-card {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
    padding: 25px;
    position: relative;
    overflow: hidden;
}

.related-campaigns-widget-header {
    margin-bottom: 20px;
}

.related-campaigns-widget-title {
    font-size: 1.4rem;
    font-weight: 700;
    color: #2c3e50;
    margin: 0 0 15px 0;
    text-align: left;
}

.related-campaigns-widget-divider {
    height: 2px;
    background: #e9ecef;
    border-radius: 1px;
    margin: 0 0 20px 0;
    width: 100%;
}

/* Responsive Design for Related Campaigns Widget */
@media (max-width: 768px) {
    .related-campaigns-widget-card {
        padding: 20px;
        margin-bottom: 25px;
    }
    
    .related-campaigns-widget-title {
        font-size: 1.2rem;
    }
}

@media (max-width: 480px) {
    .related-campaigns-widget-card {
        padding: 15px;
    }
    
    .related-campaigns-widget-title {
        font-size: 1.1rem;
    }
}

/* Sticky Right Sidebar for Campaign Detail */
.donation-details__sidebar {
    position: sticky;
    top: 20px;
    z-index: 10;
    height: fit-content;
}

/* Make ONLY the description text scrollable without visible scrollbar */
.campaign-description-text {
    max-height: 80vh;
    overflow-y: auto;
    padding-right: 10px;
    /* Hide scrollbar for Chrome, Safari and Opera */
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* Internet Explorer 10+ */
}

/* Hide scrollbar for WebKit browsers (Chrome, Safari, Edge) */
.campaign-description-text::-webkit-scrollbar {
    display: none;
}

/* Enhanced Comment Section Design */
.comment-one {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    padding: 30px;
    margin: 30px 0;
    position: relative;
    overflow: hidden;
}

.comment-one::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--oxpins-base), var(--oxpins-primary));
}

.comment-one__title {
    font-size: 1.8rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 25px;
    position: relative;
    padding-left: 20px;
}

.comment-one__title::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 30px;
    background: var(--oxpins-base);
    border-radius: 2px;
}

.comment-form {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    padding: 30px;
    margin-top: 20px;
    position: relative;
    overflow: hidden;
}

.comment-form::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--oxpins-base), var(--oxpins-primary));
}

.comment-form__title {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.comment-form__title::before {
    content: '💬';
    font-size: 1.2rem;
}



/* Individual Comment Items */
.comment-one__single {
    background: #ffffff;
    border-radius: 12px;
    padding: 25px;
    margin-bottom: 20px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    border-left: 4px solid var(--oxpins-base);
    transition: all 0.3s ease;
    display: flex;
    gap: 15px;
    align-items: flex-start;
}

.comment-one__single:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
}

.comment-one__image {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid var(--oxpins-base);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    flex-shrink: 0;
}

.comment-one__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.comment-one__image::before {
    content: none !important;
}

.comment-one__content {
    flex: 1;
    min-width: 0;
}

.comment-one__content h3 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.comment-one__content p {
    color: #6c757d;
    line-height: 1.6;
    margin-bottom: 15px;
}

.comment-one__btn {
    background: var(--oxpins-base);
    color: #ffffff;
    border: none;
    border-radius: 6px;
    padding: 8px 16px;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
    text-transform: uppercase;
}

.comment-one__btn:hover {
    background: var(--oxpins-primary);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(40, 167, 69, 0.3);
}

/* Reply Comments */
.comment-one__single .comment-one__single {
    background: transparent;
    border: none;
    margin-left: 40px;
    margin-top: 15px;
    padding: 0;
    box-shadow: none;
}

.comment-one__single .comment-one__single:hover {
    background: transparent;
    transform: none;
    box-shadow: none;
}

.comment-one__single .comment-one__single .comment-one__image {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid #6c757d;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
}

.comment-one__single .comment-one__single .comment-one__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.comment-one__single .comment-one__single .comment-one__content h3 {
    font-size: 1rem;
    color: #495057;
}

/* Error Messages */
.invalid-feedback {
    color: #dc3545;
    font-size: 12px;
    margin-top: 5px;
    font-weight: 500;
}

.form-control.is-invalid {
    border-color: #dc3545;
}

.form-control.is-invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

/* Responsive Design for Comments */
@media (max-width: 768px) {
    .comment-one {
        padding: 20px;
        margin: 20px 0;
    }
    
    .comment-form {
        padding: 20px;
    }
    
    .comment-one__title {
        font-size: 1.5rem;
    }
    
    .comment-form__title {
        font-size: 1.3rem;
    }
    
    .comment-one__single {
        padding: 20px;
    }
    
    .comment-one__single .comment-one__single {
        margin-left: 20px;
    }
}

@media (max-width: 480px) {
    .comment-one {
        padding: 15px;
        margin: 15px 0;
    }
    
    .comment-form {
        padding: 15px;
    }
    
    .comment-one__title {
        font-size: 1.3rem;
        padding-left: 15px;
    }
    
    .comment-one__title::before {
        width: 3px;
        height: 25px;
    }
    
    .comment-form__title {
        font-size: 1.2rem;
    }
    
    .comment-one__single {
        padding: 15px;
    }
    
    .comment-one__single .comment-one__single {
        margin-left: 10px;
    }
}

/* Payment Method Selector */
.payment-method-selector {
    margin-top: 15px;
}

.payment-select {
    width: 100%;
    padding: 12px 15px;
    border: 2px solid #e9ecef;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    color: #2c3e50;
    background: #ffffff;
    transition: all 0.3s ease;
    cursor: pointer;
}

.payment-select:focus {
    border-color: var(--oxpins-base);
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
    outline: none;
}

.payment-select:hover {
    border-color: var(--oxpins-base);
}

.payment-select option {
    padding: 10px;
    font-weight: 500;
}


/* Responsive Payment Selector */
@media (max-width: 768px) {
    .payment-select {
        padding: 10px 12px;
        font-size: 13px;
    }

}

@media (max-width: 480px) {
    .payment-select {
        padding: 8px 10px;
        font-size: 12px;
    }
 
}

/* Enhanced Donation Form */
.donation-form-container {
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    margin: 30px 0;
    position: relative;
}

.donation-form-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    background: linear-gradient(90deg, var(--oxpins-base), var(--oxpins-primary));
}

.donation-form-header {
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    padding: 40px 40px 30px;
    text-align: center;
    border-bottom: 1px solid #e9ecef;
}

.donation-form-title {
    font-size: 2rem;
    font-weight: 700;
    color: #2c3e50;
    margin: 0 0 10px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.donation-form-title i {
    color: var(--oxpins-base);
    font-size: 1.8rem;
}

.donation-form-subtitle {
    color: #6c757d;
    font-size: 1.1rem;
    margin: 0;
    font-weight: 400;
}

.donation-form-body {
    padding: 40px;
}

.donation-form .form-group {
    margin-bottom: 25px;
}

.donation-form .form-label {
    font-size: 1rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.donation-form .form-label i {
    color: var(--oxpins-base);
    font-size: 0.9rem;
    width: 16px;
}

.donation-form .required {
    color: #dc3545;
    font-weight: 700;
}

.donation-form .form-control {
    border: 2px solid #e9ecef;
    border-radius: 12px;
    padding: 15px 20px;
    font-size: 1rem;
    font-weight: 500;
    color: #2c3e50;
    background: #f8f9fa;
    transition: all 0.3s ease;
}

.donation-form .form-control:focus {
    border-color: var(--oxpins-base);
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
    outline: none;
    background: #ffffff;
}

.donation-form .form-control::placeholder {
    color: #6c757d;
    font-weight: 400;
}

/* Donation Amount Section */
.donation-amount-section {
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    border-radius: 15px;
    padding: 25px;
    margin-top: 20px;
}

.donation-amount-input {
    position: relative;
    margin-bottom: 20px;
}

.currency-symbol {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--oxpins-base);
    z-index: 2;
}

.amount-input {
    padding-left: 50px !important;
    font-size: 1.3rem;
    font-weight: 700;
    text-align: center;
    background: #ffffff !important;
    border: 2px solid var(--oxpins-base) !important;
}

.amount-suggestions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
}

.amount-btn {
    background: #ffffff;
    border: 2px solid #e9ecef;
    border-radius: 25px;
    padding: 10px 20px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #6c757d;
    cursor: pointer;
    transition: all 0.3s ease;
    min-width: 80px;
}

.amount-btn:hover {
    border-color: var(--oxpins-base);
    color: var(--oxpins-base);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.amount-btn.active {
    background: var(--oxpins-base);
    border-color: var(--oxpins-base);
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3);
}

/* Donation Form Footer */
.donation-form-footer {
    text-align: center;
    padding-top: 30px;
    border-top: 1px solid #e9ecef;
    margin-top: 30px;
}

.donate-btn {
    background: var(--oxpins-base);
    border: 2px solid var(--oxpins-base);
    border-radius: 8px;
    padding: 15px 35px;
    font-size: 1.1rem;
    font-weight: 600;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 8px 25px rgba(40, 167, 69, 0.3);
    position: relative;
    overflow: hidden;
}

.donate-btn:hover {
    background: var(--oxpins-primary);
    border-color: var(--oxpins-primary);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(40, 167, 69, 0.4);
}

.donate-btn:active {
    transform: translateY(0);
}

.donation-note {
    color: #6c757d;
    font-size: 0.9rem;
    margin: 20px 0 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.donation-note i {
    color: #28a745;
    font-size: 1rem;
}

/* Error Messages */
.donation-form .invalid-feedback {
    color: #dc3545;
    font-size: 0.85rem;
    margin-top: 5px;
    font-weight: 500;
}

.donation-form .is-invalid {
    border-color: #dc3545 !important;
}

.donation-form .is-invalid:focus {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

/* Responsive Design */
@media (max-width: 768px) {
    .donation-form-container {
        margin: 20px 0;
        border-radius: 15px;
    }
    
    .donation-form-header {
        padding: 30px 25px 20px;
    }
    
    .donation-form-title {
        font-size: 1.6rem;
        flex-direction: column;
        gap: 10px;
    }
    
    .donation-form-body {
        padding: 25px;
    }
    
    .donation-form .form-control {
        padding: 12px 15px;
        font-size: 0.95rem;
    }
    
    .amount-suggestions {
        gap: 8px;
    }
    
    .amount-btn {
        padding: 8px 15px;
        font-size: 0.85rem;
        min-width: 70px;
    }
    
    .donate-btn {
        padding: 15px 30px;
        font-size: 1.1rem;
    }
}

@media (max-width: 480px) {
    .donation-form-header {
        padding: 25px 20px 15px;
    }
    
    .donation-form-title {
        font-size: 1.4rem;
    }
    
    .donation-form-body {
        padding: 20px;
    }
    
    .donation-amount-section {
        padding: 20px;
    }
    
    .amount-suggestions {
        gap: 6px;
    }
    
    .amount-btn {
        padding: 6px 12px;
        font-size: 0.8rem;
        min-width: 60px;
    }
    
    .donate-btn {
        padding: 12px 25px;
        font-size: 1rem;
    }
}


/*
|--------------------------------------------------------------------------
| Partners Section
|--------------------------------------------------------------------------
*/

.marquee-wrapper {
    overflow: hidden;
    white-space: nowrap;
}

.marquee-text {
    display: inline-block;
    padding-left: 100%;
    animation: marquee 40s linear infinite;
}

@keyframes marquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}

/* Partners Section Separator - Like FAQ Section */
.partners-section__tagline-top {
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

.partners-section__tagline-top::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: var(--oxpins-primary);
    border-radius: 2px;
}

/* News Section Separator - Like FAQ Section */
.news-section__tagline-top {
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

.news-section__tagline-top::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: var(--oxpins-primary);
    border-radius: 2px;
}

/* Campaign Section Separator - Like FAQ Section */
.campaign-section__tagline-top {
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

.campaign-section__tagline-top::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: var(--oxpins-primary);
    border-radius: 2px;
}

/*
|--------------------------------------------------------------------------
| About Section - Remove Border Line Above Photo
|--------------------------------------------------------------------------
*/

.about-one__img-border {
    display: none !important;
}

/* About Section Separator - Like FAQ Section */
.about-section__tagline-top {
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

.about-section__tagline-top::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: var(--oxpins-primary);
    border-radius: 2px;
}

/* Activity Section Separator - Like FAQ Section */
.activity-section__tagline-top {
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

.activity-section__tagline-top::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: var(--oxpins-primary);
    border-radius: 2px;
}

/*
|--------------------------------------------------------------------------
| Our Activity Section with Auto Scroll
|--------------------------------------------------------------------------
*/

.our-activity-section {
    position: relative;
    display: block;
    padding: 20px 0;
    margin: 20px auto;
    max-width: 1200px;
    width: calc(100% - 40px);
    background: var(--oxpins-primary);
    overflow: hidden;
    border-radius: 20px;
}

/* Activity Tabs */
.activity-tabs-wrapper {
    margin: 20px 0 10px;
    padding: 0 20px;
    display: flex;
    justify-content: center;
}

.activity-tabs {
    display: flex;
    gap: 15px;
    background: #ffffff;
    padding: 8px;
    border-radius: 50px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.activity-tab-btn {
    padding: 12px 30px;
    border: none;
    background: transparent;
    color: #666;
    font-size: 16px;
    font-weight: 600;
    border-radius: 50px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
}

.activity-tab-btn i {
    font-size: 18px;
}

.activity-tab-btn:hover {
    color: #2563eb;
    background: rgba(37, 99, 235, 0.1);
}

.activity-tab-btn.active {
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 4px 15px rgba(37, 99, 235, 0.3);
}

.activity-tab-content {
    display: none;
}

.activity-tab-content.active {
    display: block;
}

.activity-item-link {
    text-decoration: none;
    color: inherit;
    display: inline-block;
}

.activity-item-link:hover {
    text-decoration: none;
    color: inherit;
}

.activity-item-link:hover .activity-item {
    transform: translateY(-10px);
}

/* Event Tabs */
.event-tabs-wrapper {
    margin: 20px 0 30px;
    padding: 0;
    display: flex;
    justify-content: center;
}

.event-tabs {
    display: flex;
    gap: 15px;
    background: #ffffff;
    padding: 8px;
    border-radius: 50px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.event-tab-btn {
    padding: 12px 30px;
    border: none;
    background: transparent;
    color: #666;
    font-size: 16px;
    font-weight: 600;
    border-radius: 50px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
}

.event-tab-btn i {
    font-size: 18px;
}

.event-tab-btn:hover {
    color: #2563eb;
    background: rgba(37, 99, 235, 0.1);
}

.event-tab-btn.active {
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 4px 15px rgba(37, 99, 235, 0.3);
}

.event-tab-content {
    display: none;
}

.event-tab-content.active {
    display: block;
}

.activity-scroll-wrapper {
    margin: 50px 0;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
}

.activity-scroll-wrapper-full {
    width: 100%;
    margin: 0;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    padding: 10px 20px;
}

.activity-scroll-content {
    display: inline-flex;
    align-items: center;
    gap: 40px;
    animation: activity-scroll 30s linear infinite;
    white-space: nowrap;
}

@keyframes activity-scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

.activity-item {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-width: 180px;
    flex-shrink: 0;
    transition: all 0.3s ease;
    padding: 10px;
    margin: 0;
    background: transparent;
    border-radius: 15px;
    border: none;
    box-shadow: none;
}

.activity-item:hover {
    transform: translateY(-10px);
    box-shadow: none;
}

.activity-icon-box {
    width: 128px;
    height: 128px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    margin-bottom: 15px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    border: 2px solid rgba(255, 255, 255, 0.3);
}

.activity-item:hover .activity-icon-box {
    transform: scale(1.05) translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
    background: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.5);
}

.activity-icon {
    width: 128px;
    height: 128px;
    object-fit: contain;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.activity-item:hover .activity-icon {
    transform: scale(1.1);
}

.activity-icon-placeholder {
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 50px;
}

.activity-name {
    margin: 0;
    margin-top: 10px;
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    line-height: 1.4;
    transition: all 0.3s ease;
    text-align: center;
    width: 100%;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.activity-item:hover .activity-name {
    color: #ffffff;
    transform: scale(1.05);
}

/* Responsive Design */
@media (max-width: 992px) {
    .activity-item {
        min-width: 150px;
        padding: 15px;
    }
    
    .activity-icon-box {
        width: 128px;
        height: 128px;
    }
    
    .activity-icon {
        width: 128px;
        height: 128px;
    }
    
    .activity-icon-placeholder {
        width: 90px;
        height: 90px;
        font-size: 45px;
    }
    
    .activity-name {
        font-size: 14px;
    }
}

@media (max-width: 768px) {
    .our-activity-section {
        padding: 60px 0;
    }
    
    .activity-scroll-content {
        gap: 25px;
    }
    
    .activity-item {
        min-width: 120px;
        padding: 12px;
    }
    
    .activity-icon-box {
        width: 100px;
        height: 100px;
    }
    
    .activity-icon {
        width: 100px;
        height: 100px;
    }
    
    .activity-icon-placeholder {
        width: 60px;
        height: 60px;
        font-size: 24px;
    }
    
    .activity-name {
        font-size: 13px;
    }
}

/*
|--------------------------------------------------------------------------
| About Section Video Circle with Animated Play Button
|--------------------------------------------------------------------------
*/

.about-video-circle {
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s ease;
    height: 150px !important;
    width: 150px !important;
}

.about-video-circle:hover {
    transform: scale(1.05);
    box-shadow: 0px 15px 50px 0px rgba(0, 0, 0, 0.2);
}

.about-video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(241, 241, 241, 0.5);
    border-radius: 50%;
    transition: all 0.3s ease;
}

.about-video-circle:hover .about-video-overlay {
    background: rgba(241, 241, 241, 0.3);
}

.about-video-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #FF0000 0%, #CC0000 100%);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(255, 0, 0, 0.4);
    padding: 0;
    animation: play-button-pulse 2s ease-in-out infinite;
}

.about-video-play-btn:hover {
    background: linear-gradient(135deg, #CC0000 0%, #990000 100%);
    transform: translate(-50%, -50%) scale(1.15);
    box-shadow: 0 8px 30px rgba(255, 0, 0, 0.7);
    animation: play-button-bounce 0.6s ease-in-out infinite;
}

@keyframes play-button-pulse {
    0%, 100% {
        box-shadow: 0 4px 20px rgba(255, 0, 0, 0.4), 0 0 0 0 rgba(255, 0, 0, 0.4);
    }
    50% {
        box-shadow: 0 4px 20px rgba(255, 0, 0, 0.4), 0 0 0 10px rgba(255, 0, 0, 0);
    }
}

@keyframes play-button-bounce {
    0%, 100% {
        transform: translate(-50%, -50%) scale(1.15);
    }
    50% {
        transform: translate(-50%, -50%) scale(1.25);
    }
}

.about-video-play-btn .play-icon {
    color: #ffffff;
    font-size: 24px;
    margin-left: 4px;
    z-index: 2;
    position: relative;
    animation: play-icon-rotate 3s linear infinite;
}

@keyframes play-icon-rotate {
    0% {
        transform: rotate(0deg);
    }
    25% {
        transform: rotate(5deg);
    }
    50% {
        transform: rotate(0deg);
    }
    75% {
        transform: rotate(-5deg);
    }
    100% {
        transform: rotate(0deg);
    }
}

.about-video-play-btn:hover .play-icon {
    animation: play-icon-pulse 0.5s ease-in-out infinite;
}

@keyframes play-icon-pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.2);
    }
}

.about-video-play-btn .play-ripple {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    animation: play-ripple 2s ease-out infinite;
    z-index: 1;
}

.about-video-play-btn .play-ripple::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    animation: play-ripple 2s ease-out infinite 0.5s;
}

.about-video-play-btn .play-ripple::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    animation: play-ripple 2s ease-out infinite 1s;
}

@keyframes play-ripple {
    0% {
        transform: translate(-50%, -50%) scale(0.8);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, -50%) scale(2);
        opacity: 0;
    }
}

.about-video-play-btn:hover .play-ripple {
    animation-duration: 1s;
}

.about-video-play-btn:hover .play-ripple::before {
    animation-duration: 1s;
}

.about-video-play-btn:hover .play-ripple::after {
    animation-duration: 1s;
}

@media (max-width: 768px) {
    .about-video-circle {
        height: 120px !important;
        width: 120px !important;
    }
    
    .about-video-play-btn {
        width: 60px;
        height: 60px;
    }
    
    .about-video-play-btn .play-icon {
        font-size: 20px;
    }
    
    .about-video-play-btn .play-ripple,
    .about-video-play-btn .play-ripple::before,
    .about-video-play-btn .play-ripple::after {
        width: 60px;
        height: 60px;
    }
}

/* Partners Section Tagline */
.partners-section__tagline {
    font-size: 16px;
    color: #666;
    line-height: 1.6;
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 400;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 768px) {
    .partners-section__tagline {
        font-size: 14px;
        margin-top: 0;
        padding: 0 15px;
    }
}

/* ============================================
   Partners Section - Main Container
   ============================================ */
.partners-section {
    position: relative;
    background: linear-gradient(135deg, #f8f9fa 0%, #f0f2f5 50%, #e9ecef 100%);
    padding: 50px 0;
    margin: 40px 0;
    overflow: hidden;
}

/* Partners Marquee Styles */
.partners-section .marquee-wrapper {
    margin: 20px 0 25px 0;
    overflow: hidden;
    white-space: nowrap;
    padding: 10px 0;
}

/* Partners Section - Adjust spacing after removing title */
.partners-section .section-title {
    margin-bottom: 15px;
    padding-top: 5px;
}

.partners-section .marquee-text {
    display: inline-flex;
    align-items: center;
    gap: 30px;
    animation: partnersMarquee 60s linear infinite;
    white-space: nowrap;
    padding-left: 15px;
}

@keyframes partnersMarquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

.partners-section .partner-item {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    margin: 0 18px;
    flex-shrink: 0;
    padding: 10px;
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}

.partners-section .partner-item:hover {
    transform: translateY(-8px);
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}

.partners-section .partner-link {
    text-decoration: none;
    display: block;
    width: 100%;
    height: 100%;
}

.partners-section .partner-logo {
    width: 180px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 12px;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    transition: all 0.4s ease;
    position: relative;
    overflow: visible;
    padding: 10px;
}

.partners-section .partner-logo::before,
.partners-section .partner-logo::after {
    display: none !important;
    content: none !important;
    background: transparent !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

.partners-section .partner-item::before,
.partners-section .partner-item::after {
    display: none !important;
    content: none !important;
    background: transparent !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

.partners-section .partner-item:hover .partner-logo {
    border-color: var(--oxpins-base);
    box-shadow: 0 6px 20px rgba(0, 113, 93, 0.2);
    background: rgba(255, 255, 255, 1);
    transform: scale(1.02);
}

.partners-section .partner-img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: none !important;
    transition: all 0.3s ease;
    position: relative;
    z-index: 2;
    background: transparent !important;
}

.partners-section .partner-item:hover .partner-img {
    filter: none !important;
    transform: scale(1.05);
}

.partners-section .partner-img::before,
.partners-section .partner-img::after {
    display: none !important;
    content: none !important;
    background: transparent !important;
    opacity: 0 !important;
}

.partners-section .partner-name {
    display: none !important;
}

/* Counter One section - 4 in single row, primary background only */
.counter-one__inner {
    background: var(--oxpins-base, #00715d);
}
.counter-one-bg {
    opacity: 0;
    pointer-events: none;
}
.counter-one__inner .counter-one-bg + * {
    position: relative;
    z-index: 1;
}
.counter-one__list {
    justify-content: center;
    align-items: stretch;
    flex-wrap: nowrap;
    gap: 0;
}
.counter-one__single {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    min-width: 0;
    box-sizing: border-box;
}
.counter_bg {
    background: rgba(255, 255, 255, 0.2) !important;
}
.counter-one__count-box h3,
.counter-one__letter {
    color: var(--oxpins-white) !important;
}
.counter-one__text {
    color: rgba(255, 255, 255, 0.95) !important;
}
@media (max-width: 768px) {
    .counter-one__list { flex-wrap: wrap; }
    .counter-one__single {
        flex: 0 0 50%;
        width: 50%;
        max-width: 50%;
    }
}
@media (max-width: 576px) {
    .counter-one__single {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
    }
}

/* News Section - Add Grey Border to Posts */
.news-one__single {
    border: 1px solid #e0e0e0 !important;
    border-radius: 20px !important;
    overflow: hidden;
    transition: all 0.3s ease;
}

.news-one__single:hover {
    border-color: #ccc !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.news-one__content-box {
    border: none !important;
}

/* ============================================
   Partners Section - Responsive Design
   ============================================ */
@media (max-width: 1200px) {
    .partners-section {
        padding: 45px 0;
        margin: 35px 0;
    }
    
    .partners-section .partner-item {
        margin: 0 15px;
        padding: 8px;
    }
    
    .partners-section .partner-logo {
        width: 160px;
        height: 100px;
        padding: 8px;
    }
}

@media (max-width: 992px) {
    .partners-section {
        padding: 40px 0;
        margin: 30px 0;
    }
    
    .partners-section .marquee-wrapper {
        margin: 15px 0 20px 0;
        padding: 8px 0;
    }
    
    .partners-section .marquee-text {
        gap: 25px;
        padding-left: 12px;
    }
    
    .partners-section .partner-item {
        margin: 0 12px;
        padding: 8px;
    }
    
    .partners-section .partner-logo {
        width: 140px;
        height: 100px;
        padding: 8px;
    }
}

@media (max-width: 768px) {
    .partners-section {
        padding: 35px 0;
        margin: 25px 0;
    }
    
    .partners-section .section-title {
        margin-bottom: 12px;
    }
    
    .partners-section .marquee-wrapper {
        margin: 15px 0 20px 0;
        padding: 8px 0;
    }
    
    .partners-section .marquee-text {
        gap: 20px;
        padding-left: 10px;
    }
    
    .partners-section .partner-item {
        margin: 0 10px;
        padding: 6px;
    }
    
    .partners-section .partner-logo {
        width: 120px;
        height: 80px;
        padding: 6px;
    }
}

@media (max-width: 480px) {
    .partners-section {
        padding: 30px 0;
        margin: 20px 0;
    }
    
    .partners-section .section-title {
        margin-bottom: 10px;
    }
    
    .partners-section .marquee-wrapper {
        margin: 12px 0 18px 0;
        padding: 6px 0;
    }
    
    .partners-section .marquee-text {
        gap: 15px;
        padding-left: 8px;
    }
    
    .partners-section .partner-item {
        margin: 0 8px;
        padding: 6px;
    }
    
    .partners-section .partner-logo {
        width: 100px;
        height: 70px;
        padding: 6px;
    }
}

/*
|--------------------------------------------------------------------------
| Gallery Carousel Section
|--------------------------------------------------------------------------
*/

.gallery-carousel {
    margin: 0 auto;
}

/*
|--------------------------------------------------------------------------
| Chatbot Float Button
|--------------------------------------------------------------------------
*/

.chatbot-float {
    position: fixed !important;
    bottom: 30px !important;
    left: 30px !important;
    z-index: 99999 !important;
    display: block !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

.chatbot-float-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 60px !important;
    height: 60px !important;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    font-size: 28px !important;
    box-shadow: 0 4px 20px rgba(102, 126, 234, 0.4) !important;
    transition: all 0.3s ease;
    animation: chatbot-pulse 2s infinite;
    cursor: pointer !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 99999 !important;
}

.chatbot-float-btn:hover {
    background: linear-gradient(135deg, #5568d3 0%, #653a8f 100%);
    color: #ffffff;
    transform: scale(1.1);
    box-shadow: 0 6px 25px rgba(102, 126, 234, 0.6);
}

.chatbot-float-btn i {
    animation: chatbot-bounce 1.5s infinite;
}

@keyframes chatbot-pulse {
    0% {
        box-shadow: 0 4px 20px rgba(102, 126, 234, 0.4);
    }
    50% {
        box-shadow: 0 4px 20px rgba(102, 126, 234, 0.4), 0 0 0 10px rgba(102, 126, 234, 0.1);
    }
    100% {
        box-shadow: 0 4px 20px rgba(102, 126, 234, 0.4);
    }
}

@keyframes chatbot-bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-3px);
    }
    60% {
        transform: translateY(-2px);
    }
}

/*
|--------------------------------------------------------------------------
| Responsive Chatbot Float Button
|--------------------------------------------------------------------------
*/

@media (max-width: 768px) {
    .chatbot-float {
        bottom: 20px;
        left: 15px;
    }
    
    .chatbot-float-btn {
        width: 45px;
        height: 45px;
        font-size: 20px;
        box-shadow: 0 3px 15px rgba(102, 126, 234, 0.3);
    }
    
    .chatbot-float-btn:hover {
        transform: scale(1.05);
    }
}

/*
|--------------------------------------------------------------------------
| Gallery Carousel
|--------------------------------------------------------------------------
*/
.gallery-carousel .item {
    width: 100%;
    padding: 0 10px;
}

.gallery-carousel .gallery-one__single {
    width: 100%;
    height: auto;
}

.gallery-carousel .gallery-one__img {
    width: 100%;
    height:250px;
    overflow: hidden;
    border-radius: 8px;
    position: relative;
}

.gallery-carousel .gallery-one__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/*
|--------------------------------------------------------------------------
| Responsive Gallery Carousel
|--------------------------------------------------------------------------
*/
@media (max-width: 1200px) {
    .donation-details__sidebar {
        position: static;
    }
}

@media (max-width: 768px) {
    .donation-details__sidebar {
        position: static;
        margin-top: 30px;
    }
}

/*
|--------------------------------------------------------------------------
| Responsive Tab Content
|--------------------------------------------------------------------------
*/
@media (max-width: 1200px) {
    .tab-content-inner {
        padding: 25px;
    }
    
    .campaign-gallery-grid {
        grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
        gap: 20px;
    }
}

@media (max-width: 992px) {
    .tab-content-inner {
        padding: 20px;
    }
    
    .campaign-gallery-grid {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
        gap: 18px;
    }
    
    .gallery-image {
        height: 180px;
    }
    
    .document-item {
        padding: 15px;
    }
}

@media (max-width: 1024px) {
    .tab-button {
        padding: 6px 4px;
        font-size: 12px;
    }
}

@media (max-width: 768px) {
    .tab-navigation {
        gap: 4px;
        overflow-x: auto;
        flex-wrap: nowrap;
    }
    
    .tab-button {
        flex: 0 0 auto;
        min-width: 100px;
        padding: 6px 8px;
        font-size: 12px;
    }
    
    .tab-content-inner {
        padding: 20px;
    }
    
    .campaign-gallery-grid {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
        gap: 15px;
    }
    
    .gallery-image {
        height: 150px;
    }
    
    .document-item {
        flex-direction: column;
        text-align: center;
        padding: 15px;
    }
    
    .document-icon {
        margin-right: 0;
        margin-bottom: 15px;
    }
    
    .campaign-title {
        font-size: 1.5rem;
    }
}

@media (max-width: 480px) {
    .tab-navigation {
        gap: 2px;
    }
    
    .tab-button {
        min-width: 80px;
        padding: 5px 4px;
        font-size: 11px;
    }
    
    .tab-content-inner {
        padding: 15px;
    }
    
    .campaign-gallery-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    
    .gallery-image {
        height: 200px;
    }
    
    .document-item {
        padding: 12px;
        flex-direction: column;
    }
    
    .document-icon {
        width: 50px;
        height: 50px;
        margin-bottom: 10px;
    }
    
    .document-icon i {
        font-size: 20px;
    }
    
    .campaign-title {
        font-size: 1.3rem;
    }
    
    .campaign-description-text {
        font-size: 14px;
        line-height: 1.5;
    }
}

/*
|--------------------------------------------------------------------------
| Simple Tab System
|--------------------------------------------------------------------------
*/
.tab-system .nav,
.vission-mission-tab .nav,
.team-category-tabs .nav {
   justify-content: center;
   border-bottom: none;
   margin-bottom: 30px;
   gap: 15px;
   flex-wrap: wrap;
}

.tab-system .nav li button,
.vission-mission-tab .nav li button,
.team-category-tabs .nav li button {
   color: var(--oxpins-black);
   border: 2px solid var(--oxpins-base);
   background: #ffffff;
   font-weight: 600;
   padding: 12px 24px;
   border-radius: 25px;
   transition: all 0.3s ease;
   font-size: 16px;
   min-width: 120px;
   text-align: center;
}

.tab-system .nav li button:hover,
.vission-mission-tab .nav li button:hover,
.team-category-tabs .nav li button:hover {
   background: var(--oxpins-base);
   color: #ffffff;
   border-color: var(--oxpins-base);
}

.tab-system .nav li button.active,
.vission-mission-tab .nav li button.active,
.team-category-tabs .nav li button.active {
   background: var(--oxpins-base);
   color: #ffffff;
   border-color: var(--oxpins-base);
}

.tab-system .tab-pane,
.vission-mission-tab .tab-pane,
.team-category-tabs .tab-pane {
   padding: 20px 0;
}

.vission-mission-tab img {
   max-width: 100%;
   border-radius: 10px;
}

.text-black {
   color: var(--oxpins-black) !important;
}

/*
|--------------------------------------------------------------------------
| Responsive Tab System
|--------------------------------------------------------------------------
*/
@media (max-width: 768px) {
   .tab-system .nav,
   .vission-mission-tab .nav,
   .team-category-tabs .nav {
      gap: 10px;
      margin-bottom: 25px;
   }
   
   .tab-system .nav li button,
   .vission-mission-tab .nav li button,
   .team-category-tabs .nav li button {
      padding: 10px 20px;
      font-size: 14px;
      min-width: 100px;
   }
}

@media (max-width: 480px) {
   .tab-system .nav,
   .vission-mission-tab .nav,
   .team-category-tabs .nav {
      /*flex-direction: column;*/
      align-items: center;
      gap: 8px;
   }
   
   .tab-system .nav li button,
   .vission-mission-tab .nav li button,
   .team-category-tabs .nav li button {
      width: 100%;
      max-width: 200px;
   }
}

/*
|--------------------------------------------------------------------------
| Legal Information Section
|--------------------------------------------------------------------------
*/
.legal-info-container {
   background: #ffffff;
   border: 1px solid #e9ecef;
   border-radius: 8px;
   box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
   margin: 30px 0;
   overflow: hidden;
}

.legal-info-header {
   background: var(--oxpins-base);
   padding: 15px 20px;
   text-align: center;
}

.legal-info-header h5 {
   margin: 0;
   color: #ffffff;

   font-weight: 600;
   text-transform: uppercase;
}

.legal-info-content {
   padding: 20px;
}

.legal-info-table {
   width: 100%;
   border-collapse: collapse;
   margin: 0;
}

.legal-info-table tbody tr {
   border-bottom: 1px solid #f1f3f4;
   transition: background-color 0.2s ease;
}

.legal-info-table tbody tr:last-child {
   border-bottom: none;
}

.legal-info-table tbody tr:hover {
   background-color: #f8f9fa;
}

.legal-info-table td {
   padding: 12px 15px;
   vertical-align: middle;
   font-size: 14px;
}

.legal-info-table td:first-child {
   font-weight: 600;
   color: var(--oxpins-black);
   width: 35%;
   background-color: #f8f9fa;
}

.legal-info-table td:last-child {
   color: #495057;
}

/*
|--------------------------------------------------------------------------
| Status indicators
|--------------------------------------------------------------------------
*/
.status-indicator {
   display: inline-block;
   width: 8px;
   height: 8px;
   border-radius: 50%;
   margin-left: 8px;
   vertical-align: middle;
}

.status-active {
   background: #28a745;
}

.status-pending {
   background: #ffc107;
}

.status-inactive {
   background: #6c757d;
}

/*
|--------------------------------------------------------------------------
| Responsive Legal Info
|--------------------------------------------------------------------------
*/
@media (max-width: 768px) {
   .legal-info-container {
      margin: 20px 0;
   }

   .legal-info-header {
      padding: 12px 15px;
   }

   .legal-info-header h5 {
      font-size: 16px;
   }

   .legal-info-content {
      padding: 15px;
   }

   .legal-info-table td {
      padding: 10px 12px;
      font-size: 13px;
   }

   .legal-info-table td:first-child {
      width: 30%;
   }
}

/*
|--------------------------------------------------------------------------
| Gallery Page Title Below Image
|--------------------------------------------------------------------------
*/
.gallery-page__title-below {
   padding: 15px 0;
   text-align: center;
}

.gallery-page__title-below .gallery-page__title {
   margin: 0;
   font-size: 16px;
   font-weight: 600;
   color: var(--oxpins-black);
}

.gallery-page__title-below .gallery-page__title a {
   color: var(--oxpins-black);
   text-decoration: none;
   transition: color 0.3s ease;
}

.gallery-page__title-below .gallery-page__title a:hover {
   color: var(--oxpins-base);
}

/*
|--------------------------------------------------------------------------
| Gallery Page Card Styling
|--------------------------------------------------------------------------
*/
.gallery-page__single {
   background: #ffffff;
   border: 2px solid #e9ecef;
   border-radius: 12px;
   box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
   transition: all 0.3s ease;
   overflow: hidden;
   height: 100%;
}

.gallery-page__single:hover {
   transform: translateY(-5px);
   box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
   border-color: var(--oxpins-base);
}

.gallery-page__single .gallery-page__img {
   position: relative;
   overflow: hidden;
   border-radius: 10px 10px 0 0;
}

.gallery-page__single .gallery-page__img img {
   width: 100%;
   height: 250px;
   object-fit: cover;
   transition: transform 0.3s ease;
}

.gallery-page__single:hover .gallery-page__img img {
   transform: scale(1.05);
}

.gallery-page__single:hover .gallery-page__content {
   opacity: 1;
}

.gallery-page__single .gallery-page__title-below {
   padding: 20px;
   background: #ffffff;
   border-top: 3px solid var(--oxpins-base);
}

.gallery-page__single .gallery-page__title-below .gallery-page__title {
   font-size: 18px;
   font-weight: 700;
   color: var(--oxpins-black);
   margin: 0;
}

.gallery-page__single .gallery-page__title-below .gallery-page__title a {
   color: var(--oxpins-black);
   text-decoration: none;
   transition: color 0.3s ease;
}

.gallery-page__single .gallery-page__title-below .gallery-page__title a:hover {
   color: var(--oxpins-base);
}

/* Responsive Gallery Cards */
@media (max-width: 768px) {
   .gallery-page__single .gallery-page__img img {
      height: 200px;
   }
   
   .gallery-page__single .gallery-page__title-below {
      padding: 15px;
   }
   
   .gallery-page__single .gallery-page__title-below .gallery-page__title {
      font-size: 16px;
   }
}

span.select2-selection.select2-selection--single {
    border-radius: 15px;
}

/*
|--------------------------------------------------------------------------
| Mobile Header Actions CSS
|--------------------------------------------------------------------------
*/

/* Mobile Header Actions Container */
.mobile-header-actions {
    gap: 6px;
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

/* Mobile Cart Button */
.mobile-cart-wrapper {
    display: inline-block;
}

.mobile-cart-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #f8f9fa;
    border-radius: 6px;
    color: var(--oxpins-base);
    text-decoration: none;
    position: relative;
    transition: all 0.3s ease;
}

.mobile-cart-btn:hover {
    background: var(--oxpins-base);
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.mobile-cart-btn i {
    font-size: 14px;
}

.mobile-cart-badge {
    position: absolute;
    top: -4px;
    right: -4px;
    background: #dc3545;
    color: #ffffff;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
    font-weight: 600;
    border: 1.5px solid #ffffff;
}

/* Mobile Translate Button */
.mobile-translate-btn {
    display: inline-block;
    position: relative;
}

.mobile-translate-wrapper {
    width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: linear-gradient(135deg, #007bff, #0056b3);
    color: white;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 2px 6px rgba(0, 123, 255, 0.3);
}

.mobile-translate-wrapper:hover {
    background: linear-gradient(135deg, #0056b3, #004085);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 123, 255, 0.4);
}

.mobile-translate-wrapper i {
    font-size: 14px;
    margin: 0;
}

/* Mobile Translate Container */
#translate-container-mobile {
    position: fixed;
    background: #fff;
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.2);
    display: none;
    z-index: 10001 !important;
    min-width: 200px;
    max-width: 90vw;
}

#translate-container-mobile .goog-te-banner-frame,
#translate-container-mobile .goog-te-menu-frame {
    max-width: 100%;
}

@media (max-width: 767px) {
    #translate-container-mobile {
        right: 10px !important;
        left: auto !important;
    }
}

/* Mobile Toggle Button in Actions */
.mobile-toggle-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #f8f9fa;
    border-radius: 6px;
    color: var(--oxpins-base);
    text-decoration: none;
    transition: all 0.3s ease;
    padding: 0;
    margin: 0;
}

.mobile-toggle-btn:hover {
    background: var(--oxpins-base);
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.mobile-toggle-btn i {
    font-size: 14px;
}

/* Mobile Toggle Button - Position with other actions */
@media (max-width: 767px) {
    /* Menu bar: safe padding so logo and hamburger don't touch edges */
    .main-menu__wrapper-inner {
        display: flex !important;
        align-items: center !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        min-height: 96px !important;
        justify-content: space-between !important;
        gap: 10px;
    }
    
    /* Restructure right section for mobile */
    .main-menu__right {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        gap: 8px;
        width: auto;
        flex-shrink: 0;
    }
    
    .main-menu__left {
        flex: 1;
        min-width: 0;
        overflow: hidden;
    }
    
    .main-menu__logo {
        max-width: 100%;
    }
    
    .main-menu__logo img {
        max-width: 100%;
        height: auto;
        object-fit: contain;
    }
    
    .main-menu__right-top {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-shrink: 0;
        width: auto;
    }
    
    .main-menu__right-top-right {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-left: 0;
    }
    
    .main-menu__right-bottom {
        display: none;
    }
    
    /* Hide the menu list in mobile header */
    .main-menu__main-menu-box .main-menu__list {
        display: none;
    }
    
    /* Hamburger: minimum touch target 44px */
    .mobile-header-actions,
    .mobile-toggle-btn,
    .mobile-nav__toggler.mobile-toggle-btn {
        min-width: 44px;
        min-height: 44px;
    }
}

/* Slider Know More button – use theme button color */
.main-slider .main-slider__btn {
    background-color: var(--oxpins-primary, #00715d) !important;
    color: #fff !important;
}
.main-slider .main-slider__btn:hover {
    background-color: var(--thm-button1-hovercolor, #005a4a) !important;
    color: #fff !important;
}

/*
|--------------------------------------------------------------------------
| Hero Slider (background image/video + animated title/description)
|--------------------------------------------------------------------------
*/
.hero-slider .hero-slide {
    position: relative;
    min-height: 520px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.hero-slider .hero-slide__bg,
.hero-slider .hero-slide__video-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.hero-slider .hero-slide__video-wrap {
    z-index: 1;
}
.hero-slider .hero-slide__video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.hero-slider .hero-slide__bg {
    z-index: 0;
}
.hero-slider .hero-slide__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: 2;
}
.hero-slider .hero-slide__container {
    position: relative;
    z-index: 3;
    padding-top: 80px;
    padding-bottom: 80px;
}
.hero-slider .hero-slide__content {
    color: #fff;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}
.hero-slider .hero-slide__sub-title {
    font-size: 1.1rem;
    margin-bottom: 12px;
    opacity: 0.95;
    color: #ffffff !important;
}
.hero-slider .hero-slide__title {
    font-size: clamp(1.5rem, 4vw, 2.5rem);
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 20px;
    color: #ffffff !important;
}
.hero-slider .hero-slide__btn-box .thm-btn {
    background: var(--oxpins-primary, #00715d) !important;
    color: #fff !important;
    border: none;
    padding: 12px 28px;
    border-radius: 4px;
}
.hero-slider .hero-slide__btn-box .thm-btn:hover {
    background: var(--thm-button1-hovercolor, #005a4a) !important;
    color: #fff !important;
}
/* Hero slide animations (run when slide is active) */
.hero-slider .swiper-slide .animate-fade-up {
    opacity: 0;
    transform: translateY(30px);
}
.hero-slider .swiper-slide-active .animate-fade-up {
    animation: heroFadeUp 0.8s ease forwards;
}
.hero-slider .swiper-slide-active .animate-delay-1 { animation-delay: 0.2s; }
.hero-slider .swiper-slide-active .animate-delay-2 { animation-delay: 0.4s; }
@keyframes heroFadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@media (max-width: 991px) {
    .hero-slider .hero-slide { min-height: 420px; }
    .hero-slider .hero-slide__container { padding-top: 60px; padding-bottom: 60px; }
}
@media (max-width: 767px) {
    .hero-slider .hero-slide { min-height: 70vh; }
    .hero-slider .hero-slide__container { padding-top: 50px; padding-bottom: 50px; }
    .hero-slider .hero-slide__title { font-size: 1.35rem; }
}

/*
|--------------------------------------------------------------------------
| Banner / Main Slider – Responsive
|--------------------------------------------------------------------------
*/

.main-slider__title {
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 400 !important;
}

/* Desktop: consistent min-height */
@media (min-width: 992px) {
    .main-slider,
    .main-slider .swiper-container,
    .main-slider .swiper-wrapper {
        min-height: 520px;
    }
    .main-slider .swiper-slide {
        min-height: 520px;
    }
}

/* Tablet: full-width image, reduced padding */
@media (max-width: 991px) {
    .main-slider,
    .main-slider .swiper-slide {
        min-height: 420px;
    }
    .main-slider .container {
        padding-top: 100px;
        padding-bottom: 80px;
        padding-left: 20px;
        padding-right: 20px;
    }
    .main-slider .image-layer {
        left: 0;
        right: 0;
        width: 100%;
        background-position: center;
        background-size: cover;
    }
    .main-slider-shape-1,
    .main-slider-shape-2 {
        opacity: 0.04;
    }
    .main-slider__content {
        max-width: 100%;
    }
    .main-slider__sub-title {
        font-size: 18px !important;
    }
    .main-slider__title {
        font-size: 15px !important;
        line-height: 1.5 !important;
    }
    .main-slider__nav {
        left: 16px;
    }
    .main-slider__nav .swiper-button-next,
    .main-slider__nav .swiper-button-prev {
        width: 44px;
        height: 44px;
        min-width: 44px;
        min-height: 44px;
        font-size: 14px;
    }
}

/* Mobile: full bleed image, overlay content */
@media (max-width: 767px) {
    .main-slider,
    .main-slider .swiper-slide {
        min-height: 70vh;
    }
    .main-slider .container {
        padding-top: 70px;
        padding-bottom: 50px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .main-slider .image-layer {
        left: 0;
        right: 0;
        width: 100%;
        height: 100%;
        top: 0;
        bottom: 0;
        background-size: cover;
        background-position: center;
    }
    .main-slider .row {
        justify-content: center;
    }
    .main-slider .col-xl-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .main-slider__content {
        background: rgba(0, 0, 0, 0.7);
        padding: 22px 16px;
        border-radius: 12px;
        text-align: center;
        backdrop-filter: blur(4px);
    }
    .main-slider__sub-title {
        font-size: 14px !important;
        color: rgba(255, 255, 255, 0.95) !important;
        margin-bottom: 8px;
        position: relative;
        padding-bottom: 12px;
    }
    .main-slider__sub-title::after {
        content: '';
        display: block;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        bottom: 0;
        width: 60px;
        height: 2px;
        background: rgba(255, 255, 255, 0.85);
        border-radius: 1px;
    }
    .main-slider__title {
        font-size: 14px !important;
        color: #ffffff !important;
        line-height: 1.45 !important;
        margin-top: 0;
        margin-bottom: 14px;
    }
    .main-slider__btn {
        padding: 10px 20px;
        font-size: 13px;
    }
    .main-slider__nav {
        display: none;
    }
    .main-slider-shape-1,
    .main-slider-shape-2 {
        display: none;
    }
}

/* Small mobile */
@media (max-width: 576px) {
    .main-slider,
    .main-slider .swiper-slide {
        min-height: 60vh;
    }
    .main-slider .container {
        padding-top: 50px;
        padding-bottom: 35px;
        padding-left: 12px;
        padding-right: 12px;
    }
    .main-slider__content {
        padding: 18px 14px;
        border-radius: 10px;
    }
    .main-slider__sub-title {
        font-size: 13px !important;
    }
    .main-slider__title {
        font-size: 13px !important;
        line-height: 1.4 !important;
        margin-bottom: 12px;
    }
    .main-slider__btn {
        padding: 8px 18px;
        font-size: 13px;
    }
}

/* Very small phones */
@media (max-width: 380px) {
    .main-slider,
    .main-slider .swiper-slide {
        min-height: 55vh;
    }
    .main-slider .container {
        padding-top: 40px;
        padding-bottom: 30px;
        padding-left: 10px;
        padding-right: 10px;
    }
    .main-slider__content {
        padding: 14px 12px;
    }
    .main-slider__sub-title {
        font-size: 12px !important;
    }
    .main-slider__title {
        font-size: 12px !important;
        margin-bottom: 10px;
    }
    .main-slider__btn {
        padding: 8px 14px;
        font-size: 12px;
    }
}

/* Hide desktop cart in mobile */
@media (max-width: 767px) {
    .topbar-cart-wrapper.d-md-block {
        display: none !important;
    }
    
    .translate-btn-header.d-md-block {
        display: none !important;
    }
    
    .main-menu__right-top-address.d-md-block {
        display: none !important;
    }
    
    .main-menu__right-top-left.d-md-block {
        display: none !important;
    }
}

/* Ensure proper spacing on larger mobile devices */
@media (min-width: 576px) and (max-width: 767px) {
    .mobile-header-actions {
        gap: 8px;
    }
    
    .mobile-cart-btn,
    .mobile-translate-wrapper,
    .mobile-toggle-btn {
        width: 35px;
        height: 35px;
    }
    
    .mobile-cart-btn i,
    .mobile-translate-wrapper i,
    .mobile-toggle-btn i {
        font-size: 16px;
    }
}

/*
|--------------------------------------------------------------------------
|| Stats Section with Map
|--------------------------------------------------------------------------
*/

.stats-section {
    padding: 80px 0;
    background: #f8f9fa;
}

/* When no map: stats cards full width and in a single row */
.stats-section--no-map .stats-section__cards-col {
    flex: 0 0 100%;
    max-width: 100%;
}
.stats-section--no-map .stats-cards-wrapper {
    flex-direction: row;
    flex-wrap: wrap;
    height: auto;
    gap: 20px;
    justify-content: center;
}
.stats-section--no-map .stats-card {
    flex: 1 1 160px;
    min-width: 140px;
    max-width: 220px;
}

.stats-cards-wrapper {
    display: flex;
    flex-direction: column;
    gap: 15px;
    height: 600px;
    justify-content: space-between;
}

.stats-card {
    background: #ffffff;
    border-radius: 15px;
    padding: 25px;
    display: flex;
    align-items: center;
    gap: 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    flex: 1;
    min-height: 0;
}

.stats-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.25;
    transition: opacity 0.3s ease;
    z-index: 0;
    border-radius: 15px;
}

.stats-card:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 
        0 15px 40px rgba(0, 0, 0, 0.2),
        0 8px 20px rgba(0, 0, 0, 0.15);
}

.stats-card:hover::before {
    opacity: 0.35;
}

.stats-card:hover .stats-card__number {
    color: #ffffff !important;
    transform: scale(1.1);
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.stats-card:hover .stats-card__icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}

.stats-card:hover .stats-card__label {
    color: #ffffff;
    transform: translateX(5px);
}

.stats-card:hover .stats-card__subtext {
    color: #ffffff !important;
}

.stats-card__icon {
    width: 80px;
    height: 80px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    transition: all 0.3s ease;
}

.stats-card__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.stats-card__icon i {
    font-size: 40px;
    color: #ffffff;
}

/* Card 1 - States (Darker Purple) */
.stats-card-1 .stats-card__icon {
    background: linear-gradient(135deg, #8b5cf6, #7c3aed);
}

.stats-card-1::before {
    background: linear-gradient(135deg, #8b5cf6, #7c3aed);
}

/* Card 2 - Members (Blue - Changed from Purple) */
.stats-card-2 .stats-card__icon {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.stats-card-2::before {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
}

/* Card 3 - Branches (Darker Orange) */
.stats-card-3 .stats-card__icon {
    background: linear-gradient(135deg, #f59e0b, #d97706);
}

.stats-card-3::before {
    background: linear-gradient(135deg, #f59e0b, #d97706);
}

/* Card 4 - Blood Donors (Darker Red) */
.stats-card-4 .stats-card__icon {
    background: linear-gradient(135deg, #ef4444, #dc2626);
}

.stats-card-4::before {
    background: linear-gradient(135deg, #ef4444, #dc2626);
}

/* Card 5 - Volunteers (Darker Teal) */
.stats-card-5 .stats-card__icon {
    background: linear-gradient(135deg, #14b8a6, #0d9488);
}

.stats-card-5::before {
    background: linear-gradient(135deg, #14b8a6, #0d9488);
}

.stats-card__content {
    flex: 1;
    position: relative;
    z-index: 1;
}

.stats-card__number {
    font-size: 48px;
    font-weight: 900;
    color: #000000 !important;
    margin: 0 0 5px 0;
    line-height: 1;
    transition: all 0.3s ease;
}

.stats-card:hover .stats-card__number {
    color: #ffffff !important;
}

.stats-card__label {
    font-size: 18px;
    font-weight: 700 !important;
    color: var(--oxpins-black);
    margin: 0 0 8px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.stats-card__subtext {
    font-size: 12px;
    font-weight: 600 !important;
    color: #000000 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: block;
    line-height: 1.4;
    transition: all 0.3s ease;
}

/* New Redesigned Map Section */
.india-map-wrapper-new {
    position: relative;
    width: 100%;
    height: 100%;
}

.map-container-new {
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    overflow: hidden;
    height: 500px;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
}

.map-container-new:hover {
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

.map-header-new {
    background: linear-gradient(135deg, var(--oxpins-base, #00715d) 0%, var(--oxpins-primary, #00715d) 100%);
    padding: 20px 25px;
    border-bottom: 3px solid rgba(255, 255, 255, 0.2);
}

.map-title-new {
    color: #ffffff;
    font-size: 20px;
    font-weight: 700;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.map-title-new i {
    font-size: 24px;
    opacity: 0.9;
}

.map-content-new {
    flex: 1;
    position: relative;
    overflow: hidden;
    background: #f8f9fa;
}

.map-scroll-wrapper {
    width: 100%;
    height: 100%;
    overflow: auto;
    cursor: grab;
    -webkit-overflow-scrolling: touch;
    position: relative;
}

.map-scroll-wrapper:active {
    cursor: grabbing;
}

.map-iframe-new {
    width: 100%;
    height: 450px;
    border: none;
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    display: block;
}

/* Hide Google Maps controls with better overlays */
.map-content-new::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background: linear-gradient(to bottom, rgba(248, 249, 250, 0.95), transparent);
    pointer-events: none;
    z-index: 10;
}

.map-content-new::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 120px;
    background: linear-gradient(to top, rgba(248, 249, 250, 0.98), transparent);
    pointer-events: none;
    z-index: 10;
}

/* Additional overlay for top-left controls */
.map-scroll-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 350px;
    height: 90px;
    background: rgba(248, 249, 250, 0.95);
    pointer-events: none;
    z-index: 11;
    border-radius: 0 0 15px 0;
}

/* Old map styles - keeping for backward compatibility */
.india-map-wrapper {
    position: relative;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    background: #ffffff;
    padding: 10px;
}

#india-map-container {
    position: relative;
    width: 100%;
    height: 500px;
    overflow: hidden;
    border-radius: 10px;
    background: #f5f5f5;
}

#india-map-scrollable {
    width: 100%;
    height: 100%;
    overflow: auto;
    cursor: grab;
    -webkit-overflow-scrolling: touch;
}

#india-map-scrollable:active {
    cursor: grabbing;
}

#india-map-scrollable iframe {
    width: 100%;
    height: 500px;
    border: none;
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/*
|--------------------------------------------------------------------------
|| Feature Panels (New 3-Panel Design)
|--------------------------------------------------------------------------
*/

.feature-one-new {
    padding: 80px 0;
    background: transparent;
}

.feature-one-new__row {
    margin-left: -12px;
    margin-right: -12px;
    display: flex;
    flex-wrap: wrap;
}

.feature-one-new__row > [class*="col-"] {
    padding-left: 12px;
    padding-right: 12px;
    margin-bottom: 24px;
}

.feature-one-new__row > [class*="col-"]:last-child {
    margin-bottom: 0;
}

/* Feature cards - all 4 in one row, same size, modern look */
@media (min-width: 992px) {
    .feature-one-new__row.feature-one-new__row {
        display: flex;
        flex-wrap: nowrap;
        align-items: stretch;
    }
    .feature-one-new__row > .feature-one-new__col {
        flex: 0 0 25%;
        max-width: 25%;
        display: flex;
    }
    .feature-one-new__row .feature-card {
        width: 100%;
        min-height: 300px;
        height: 300px;
        padding: 36px 28px 32px;
    }
    .feature-one-new__row .feature-card__title {
        min-height: 2.8em;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

/* 3D card base + 4 different light colors */
.feature-one-new__row {
    perspective: 1200px;
}
.feature-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 32px 24px 28px;
    border-radius: 24px;
    text-decoration: none;
    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1),
                box-shadow 0.4s ease;
    height: 100%;
    min-height: 280px;
    position: relative;
    overflow: hidden;
    transform-style: preserve-3d;
    box-shadow: 0 4px 0 rgba(0, 0, 0, 0.08),
                0 8px 20px rgba(0, 0, 0, 0.1),
                0 20px 40px rgba(0, 0, 0, 0.08);
    border: 2px dotted rgba(0, 0, 0, 0.15);
}
.feature-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 24px;
    background: linear-gradient(145deg, rgba(255,255,255,0.7) 0%, transparent 50%);
    pointer-events: none;
}
.feature-card:hover {
    transform: translateY(-10px) translateZ(20px);
    box-shadow: 0 8px 0 rgba(0, 0, 0, 0.06),
                0 16px 32px rgba(0, 0, 0, 0.12),
                0 32px 64px rgba(0, 0, 0, 0.1);
}
/* Card 1 – light blue */
.feature-card--1 {
    background: linear-gradient(145deg, #e0f2fe 0%, #bae6fd 100%);
}
.feature-card--1 .feature-card__icon-wrap { background: rgba(14, 165, 233, 0.25); color: #0369a1; box-shadow: 0 4px 0 rgba(14, 165, 233, 0.3), 0 8px 20px rgba(14, 165, 233, 0.2), inset 0 1px 0 rgba(255,255,255,0.6); }
.feature-card--1 .feature-card__title { color: #0c4a6e; }
.feature-card--1 .feature-card__btn { background: #0284c7; color: #fff; box-shadow: 0 4px 0 #0369a1, 0 6px 16px rgba(2, 132, 199, 0.35); }
.feature-card--1:hover .feature-card__btn { background: #0369a1; box-shadow: 0 4px 0 #025a8a, 0 8px 24px rgba(3, 105, 161, 0.4); }
/* Card 2 – light mint/teal */
.feature-card--2 {
    background: linear-gradient(145deg, #ccfbf1 0%, #99f6e4 100%);
}
.feature-card--2 .feature-card__icon-wrap { background: rgba(20, 184, 166, 0.25); color: #0f766e; box-shadow: 0 4px 0 rgba(20, 184, 166, 0.3), 0 8px 20px rgba(20, 184, 166, 0.2), inset 0 1px 0 rgba(255,255,255,0.6); }
.feature-card--2 .feature-card__title { color: #134e4a; }
.feature-card--2 .feature-card__btn { background: #0d9488; color: #fff; box-shadow: 0 4px 0 #0f766e, 0 6px 16px rgba(13, 148, 136, 0.35); }
.feature-card--2:hover .feature-card__btn { background: #0f766e; box-shadow: 0 4px 0 #115e59, 0 8px 24px rgba(15, 118, 110, 0.4); }
/* Card 3 – light purple */
.feature-card--3 {
    background: linear-gradient(145deg, #ede9fe 0%, #ddd6fe 100%);
}
.feature-card--3 .feature-card__icon-wrap { background: rgba(139, 92, 246, 0.2); color: #5b21b6; box-shadow: 0 4px 0 rgba(139, 92, 246, 0.35), 0 8px 20px rgba(139, 92, 246, 0.2), inset 0 1px 0 rgba(255,255,255,0.6); }
.feature-card--3 .feature-card__title { color: #4c1d95; }
.feature-card--3 .feature-card__btn { background: #7c3aed; color: #fff; box-shadow: 0 4px 0 #6d28d9, 0 6px 16px rgba(124, 58, 237, 0.35); }
.feature-card--3:hover .feature-card__btn { background: #6d28d9; box-shadow: 0 4px 0 #5b21b6, 0 8px 24px rgba(109, 40, 217, 0.4); }
/* Card 4 – light amber/peach */
.feature-card--4 {
    background: linear-gradient(145deg, #fef3c7 0%, #fde68a 100%);
}
.feature-card--4 .feature-card__icon-wrap { background: rgba(245, 158, 11, 0.25); color: #b45309; box-shadow: 0 4px 0 rgba(245, 158, 11, 0.35), 0 8px 20px rgba(245, 158, 11, 0.2), inset 0 1px 0 rgba(255,255,255,0.6); }
.feature-card--4 .feature-card__title { color: #92400e; }
.feature-card--4 .feature-card__btn { background: #d97706; color: #fff; box-shadow: 0 4px 0 #b45309, 0 6px 16px rgba(217, 119, 6, 0.35); }
.feature-card--4:hover .feature-card__btn { background: #b45309; box-shadow: 0 4px 0 #92400e, 0 8px 24px rgba(180, 83, 9, 0.4); }

.feature-card__icon-wrap {
    width: 88px;
    height: 88px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
    backdrop-filter: blur(8px);
    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
                box-shadow 0.35s ease;
    flex-shrink: 0;
}
.feature-card:hover .feature-card__icon-wrap {
    transform: scale(1.06);
    box-shadow: 0 6px 0 rgba(0, 0, 0, 0.08),
                0 12px 28px rgba(0, 0, 0, 0.12),
                inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
.feature-card__icon {
    font-size: 34px;
}
.feature-card__title {
    font-size: 17px;
    font-weight: 700;
    margin: 0 0 20px 0;
    line-height: 1.4;
    flex: 1;
    letter-spacing: 0.02em;
    position: relative;
    z-index: 1;
}
.feature-card__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 28px;
    border-radius: 50px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    transition: all 0.3s ease;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    border: none;
}
@media (max-width: 991px) {
    .feature-card { min-height: 260px; padding: 28px 20px 24px; }
    .feature-one-new__row .feature-card { height: auto; min-height: 260px; }
    .feature-card__icon-wrap { width: 80px; height: 80px; margin-bottom: 18px; }
    .feature-card__icon { font-size: 32px; }
    .feature-card__title { font-size: 16px; min-height: auto; }
}

/* --- Redesign: three cards same size (fixed dimensions) --- */
@media (min-width: 992px) {
    .feature-one-new__row.row {
        align-items: stretch;
    }
    .feature-one-new__row.row > [class*="col-lg-4"] {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
        display: flex;
    }
    .feature-one-new__row.row > [class*="col-lg-3"] {
        flex: 0 0 25%;
        max-width: 25%;
        display: flex;
    }
    /* Fixed height = same size for all cards */
    .feature-one-new__row.row > [class*="col-lg-4"] .feature-panel.feature-panel-1,
    .feature-one-new__row.row > [class*="col-lg-4"] .feature-panel.feature-panel-2,
    .feature-one-new__row.row > [class*="col-lg-4"] .feature-panel.feature-panel-3,
    .feature-one-new__row.row > [class*="col-lg-3"] .feature-panel.feature-panel-1,
    .feature-one-new__row.row > [class*="col-lg-3"] .feature-panel.feature-panel-2,
    .feature-one-new__row.row > [class*="col-lg-3"] .feature-panel.feature-panel-3,
    .feature-one-new__row.row > [class*="col-lg-3"] .feature-panel.feature-panel-4 {
        flex: 0 0 auto;
        width: 100%;
        height: 200px;
        min-height: 200px;
        max-height: 200px;
        align-items: center;
        padding: 24px 22px;
    }
}

@media (min-width: 576px) and (max-width: 991px) {
    .feature-one-new__row.row {
        align-items: stretch;
    }
    .feature-one-new__row.row > [class*="col-"] {
        display: flex;
    }
    .feature-one-new__row.row > [class*="col-"] .feature-panel.feature-panel-1,
    .feature-one-new__row.row > [class*="col-"] .feature-panel.feature-panel-2,
    .feature-one-new__row.row > [class*="col-"] .feature-panel.feature-panel-3,
    .feature-one-new__row.row > [class*="col-"] .feature-panel.feature-panel-4 {
        flex: 1 1 auto;
        width: 100%;
        height: 180px;
        min-height: 180px;
        max-height: 180px;
    }
}

.feature-panel {
    background: #ffffff;
    border-radius: 16px;
    padding: 30px 25px;
    text-align: left;
    transition: all 0.35s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
    height: 100%;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.06);
}

.feature-panel-1,
.feature-panel-2,
.feature-panel-3 {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    border: 1px solid rgba(37, 99, 235, 0.25);
    transition: all 0.35s ease;
    box-shadow: 0 12px 28px rgba(37, 99, 235, 0.22);
    transform: translateZ(0);
}

.feature-panel-1:hover,
.feature-panel-2:hover,
.feature-panel-3:hover {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
    border: 1px solid rgba(220, 38, 38, 0.3);
    transform: translateY(-8px) translateZ(20px) rotateX(2deg);
    box-shadow: 
        0 20px 45px rgba(220, 38, 38, 0.35),
        0 12px 30px rgba(220, 38, 38, 0.25),
        0 5px 15px rgba(0, 0, 0, 0.2),
        inset 0 2px 0 rgba(255, 255, 255, 0.4),
        inset 0 -2px 0 rgba(0, 0, 0, 0.15);
}

.feature-panel__icon {
    width: 100px;
    height: 100px;
    min-width: 100px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    background: #ffffff;
    box-shadow: 
        0 8px 20px rgba(0, 0, 0, 0.15),
        0 4px 10px rgba(0, 0, 0, 0.1),
        inset 0 2px 4px rgba(255, 255, 255, 0.8),
        inset 0 -2px 4px rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
    transition: all 0.4s ease;
    transform: translateZ(10px);
}

.feature-panel-1 .feature-panel__icon,
.feature-panel-2 .feature-panel__icon,
.feature-panel-3 .feature-panel__icon {
    color: #2563eb;
    border: 3px solid rgba(37, 99, 235, 0.3);
}

.feature-panel-1:hover .feature-panel__icon,
.feature-panel-2:hover .feature-panel__icon,
.feature-panel-3:hover .feature-panel__icon {
    color: #dc2626;
    border: 3px solid rgba(220, 38, 38, 0.3);
}

.feature-panel-4,
.feature-panel-5,
.feature-panel-6 {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    border: 1px solid rgba(37, 99, 235, 0.3);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    box-shadow: 
        0 15px 35px rgba(37, 99, 235, 0.25),
        0 8px 20px rgba(37, 99, 235, 0.2),
        0 3px 10px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.3),
        inset 0 -1px 0 rgba(0, 0, 0, 0.1);
    transform: translateZ(0);
}

.feature-panel-4:hover,
.feature-panel-5:hover,
.feature-panel-6:hover {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
    border: 1px solid rgba(220, 38, 38, 0.3);
    transform: translateY(-8px) translateZ(20px) rotateX(2deg);
    box-shadow: 
        0 20px 45px rgba(220, 38, 38, 0.35),
        0 12px 30px rgba(220, 38, 38, 0.25),
        0 5px 15px rgba(0, 0, 0, 0.2),
        inset 0 2px 0 rgba(255, 255, 255, 0.4),
        inset 0 -2px 0 rgba(0, 0, 0, 0.15);
}

.feature-panel-4 .feature-panel__icon,
.feature-panel-5 .feature-panel__icon,
.feature-panel-6 .feature-panel__icon {
    color: #2563eb;
    border: 3px solid rgba(37, 99, 235, 0.3);
}

.feature-panel-4:hover .feature-panel__icon,
.feature-panel-5:hover .feature-panel__icon,
.feature-panel-6:hover .feature-panel__icon {
    color: #dc2626;
    border: 3px solid rgba(220, 38, 38, 0.3);
}

.feature-panel__icon i {
    font-size: 40px;
}

.feature-panel__content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
    justify-content: center;
}

.feature-panel__title {
    font-size: 20px;
    font-weight: 600;
    margin: 0;
    line-height: 1.35;
    position: relative;
    z-index: 1;
}

/* Same size cards: lock title to 2 lines so all cards match */
@media (min-width: 992px) {
    .feature-panel-1 .feature-panel__title,
    .feature-panel-2 .feature-panel__title,
    .feature-panel-3 .feature-panel__title,
    .feature-panel-4 .feature-panel__title {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        min-height: 2.7em;
    }
}

.feature-panel__title a {
    color: #ffffff;
    text-decoration: none;
    transition: color 0.3s ease;
}

.feature-panel__title a:hover {
    color: var(--oxpins-base);
}

.feature-panel__btn {
    display: inline-block;
    padding: 10px 25px;
    background: #ff6b9d;
    color: #ffffff;
    border-radius: 25px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    z-index: 1;
    align-self: flex-start;
    box-shadow: 0 2px 10px rgba(255, 107, 157, 0.3);
}

.feature-panel__btn:hover {
    background: #ff4d7a;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 107, 157, 0.4);
    color: #ffffff;
}

.feature-panel__number {
    font-size: 32px;
    font-weight: 700;
    color: #ffffff;
    margin-top: 10px;
    text-align: left;
    letter-spacing: 1px;
    line-height: 1.2;
}

.feature-panel__phone {
    display: inline-block;
    font-size: 24px;
    font-weight: 700;
    color: #ffffff;
    margin-top: 10px;
    text-decoration: none;
    text-align: left;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    line-height: 1.2;
}

.feature-panel__phone:hover {
    color: #ffd700;
    transform: scale(1.05);
}

.feature-panel__title span {
    color: #ffffff;
}

/* 3D Icon hover effect for all panels */
.feature-panel:hover .feature-panel__icon {
    transform: translateZ(25px) scale(1.05);
    box-shadow: 
        0 12px 30px rgba(0, 0, 0, 0.2),
        0 6px 15px rgba(0, 0, 0, 0.15),
        inset 0 3px 6px rgba(255, 255, 255, 0.9),
        inset 0 -3px 6px rgba(0, 0, 0, 0.15);
}

/* Responsive - Feature panels */
@media (max-width: 991px) {
    .feature-one-new {
        padding: 60px 0;
    }
    
    .feature-one-new__row > [class*="col-"] {
        margin-bottom: 20px;
    }
    
    .feature-panel {
        padding: 25px 20px;
    }
    
    .feature-panel__icon {
        width: 90px;
        height: 90px;
        min-width: 90px;
    }
    
    .feature-panel__icon i {
        font-size: 35px;
    }
    
    .feature-panel__title {
        font-size: 18px;
    }
}

@media (max-width: 767px) {
    .feature-one-new {
        padding: 50px 15px;
    }
    
    .feature-one-new .container {
        max-width: 100%;
        padding-left: 12px;
        padding-right: 12px;
    }
    
    .feature-one-new__row {
        margin-left: -8px;
        margin-right: -8px;
    }
    
    .feature-one-new__row > [class*="col-"] {
        padding-left: 8px;
        padding-right: 8px;
        margin-bottom: 16px;
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .feature-panel {
        padding: 24px 20px;
        flex-direction: row;
        text-align: left;
        gap: 18px;
    }
    
    .feature-panel__icon {
        width: 72px;
        height: 72px;
        min-width: 72px;
    }
    
    .feature-panel__icon i {
        font-size: 28px;
    }
    
    .feature-panel__content {
        align-items: flex-start;
    }
    
    .feature-panel__title {
        font-size: 17px;
        text-align: left;
    }
    
    .feature-panel__title br {
        display: none;
    }
    
    .feature-panel__btn {
        padding: 10px 22px;
        font-size: 11px;
        align-self: flex-start;
    }
}

@media (max-width: 480px) {
    .feature-one-new {
        padding: 40px 10px;
    }
    
    .feature-one-new__row > [class*="col-"] {
        margin-bottom: 12px;
        padding-left: 6px;
        padding-right: 6px;
    }
    
    .feature-panel {
        padding: 18px 14px;
        gap: 14px;
        flex-direction: column;
        text-align: center;
    }
    
    .feature-panel__content {
        align-items: center;
    }
    
    .feature-panel__title {
        font-size: 15px;
        text-align: center;
    }
    
    .feature-panel__btn {
        align-self: center;
        padding: 8px 18px;
        font-size: 10px;
    }
    
    .feature-panel__icon {
        width: 60px;
        height: 60px;
        min-width: 60px;
    }
    
    .feature-panel__icon i {
        font-size: 24px;
    }
}

/*
|--------------------------------------------------------------------------
|| Homepage Crowdfunding Section - Unique Design
|--------------------------------------------------------------------------
*/

.cf-unique {
    position: relative;
    padding: 90px 0 85px;
    overflow: hidden;
}

.cf-unique__bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
}

.cf-unique__bg-gradient {
    position: absolute;
    inset: 0;
    /* Lighter forest-teal base (was #0d3d38 / #062822) */
    background: linear-gradient(165deg, #2d7a6c 0%, #256b5f 38%, #1d5a52 100%);
}

/* Diagonal weave + soft glow — distinct from Join HRCI hex pattern & dot grids elsewhere */
.cf-unique__pattern {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 55% 45% at 8% 18%, rgba(180, 250, 220, 0.18) 0%, transparent 52%),
        radial-gradient(ellipse 50% 42% at 92% 82%, rgba(120, 230, 210, 0.14) 0%, transparent 48%),
        radial-gradient(ellipse 35% 30% at 72% 12%, rgba(100, 220, 190, 0.12) 0%, transparent 50%),
        repeating-linear-gradient(
            38deg,
            transparent 0,
            transparent 13px,
            rgba(255, 255, 255, 0.08) 13px,
            rgba(255, 255, 255, 0.08) 14px
        ),
        repeating-linear-gradient(
            -38deg,
            transparent 0,
            transparent 13px,
            rgba(220, 255, 245, 0.1) 13px,
            rgba(220, 255, 245, 0.1) 14px
        );
    pointer-events: none;
}

.cf-unique__container {
    position: relative;
    z-index: 1;
}

.cf-unique__header {
    text-align: center;
    margin-bottom: 48px;
    max-width: 620px;
    margin-left: auto;
    margin-right: auto;
}

.cf-unique__header-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.12);
    color: #a7f3d0;
    padding: 8px 18px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 16px;
}

.cf-unique__header-badge i {
    font-size: 14px;
}

.cf-unique__title {
    font-size: 42px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 12px 0;
    letter-spacing: -0.02em;
    line-height: 1.2;
}

.cf-unique__subtitle {
    font-size: 17px;
    color: rgba(255, 255, 255, 0.75);
    margin: 0;
    line-height: 1.6;
}

/* Cards */
.cf-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18), 0 4px 16px rgba(0, 0, 0, 0.1);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.cf-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 24px 56px rgba(0, 0, 0, 0.22), 0 8px 24px rgba(0, 0, 0, 0.12);
}

.cf-card__img-wrap {
    position: relative;
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
}

.cf-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.cf-card:hover .cf-card__img {
    transform: scale(1.08);
}

.cf-card__cat {
    position: absolute;
    top: 16px;
    left: 16px;
    background: var(--oxpins-base, #00715d);
    color: #fff;
    padding: 6px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    z-index: 2;
}

.cf-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, transparent 50%);
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 20px;
    font-size: 14px;
    font-weight: 600;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 2;
}

.cf-card__img-wrap:hover .cf-card__overlay {
    opacity: 1;
}

.cf-card__body {
    padding: 24px 22px 26px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.cf-card__title {
    font-size: 19px;
    font-weight: 700;
    margin: 0 0 16px 0;
    line-height: 1.35;
}

.cf-card__title a {
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.25s ease;
}

.cf-card__title a:hover {
    color: var(--oxpins-base, #00715d);
}

.cf-card__progress-wrap {
    margin-bottom: 18px;
}

.cf-card__progress-bar {
    height: 8px;
    background: #e5e7eb;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 10px;
}

.cf-card__progress-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--oxpins-base, #00715d), #0d9488);
    border-radius: 10px;
    transition: width 0.6s ease;
}

.cf-card__stats {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 13px;
}

.cf-card__raised {
    color: var(--oxpins-base, #00715d);
    font-weight: 700;
}

.cf-card__raised small,
.cf-card__goal small {
    font-weight: 500;
    color: #6b7280;
    margin-left: 2px;
}

.cf-card__goal {
    color: #374151;
    font-weight: 600;
}

.cf-card__pct {
    background: rgba(0, 113, 93, 0.12);
    color: var(--oxpins-base, #00715d);
    padding: 4px 10px;
    border-radius: 6px;
    font-weight: 700;
    font-size: 12px;
}

.cf-card__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--oxpins-base, #00715d) 0%, #0d9488 100%);
    color: #fff;
    padding: 12px 22px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 14px rgba(0, 113, 93, 0.35);
}

.cf-card__cta:hover {
    background: linear-gradient(135deg, #065f4c 0%, var(--oxpins-base, #00715d) 100%);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 113, 93, 0.4);
}

/* Carousel nav & dots */
.cf-unique .owl-nav {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    pointer-events: none;
    margin: 0 !important;
}

.cf-unique .owl-prev,
.cf-unique .owl-next {
    position: absolute;
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.95) !important;
    color: #0d3d38 !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
    pointer-events: auto;
    transition: all 0.3s ease !important;
}

.cf-unique .owl-prev:hover,
.cf-unique .owl-next:hover {
    background: #fff !important;
    transform: scale(1.08);
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.2) !important;
}

.cf-unique .owl-prev {
    left: -24px;
}

.cf-unique .owl-next {
    right: -24px;
    left: auto;
}

.cf-unique__nav-icon {
    font-size: 18px;
}

.cf-unique .owl-dots {
    display: none !important;
}

/* Footer CTA */
.cf-unique__footer {
    text-align: center;
    margin-top: 44px;
}

.cf-unique__btn-all {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: transparent;
    color: #fff;
    border: 2px solid rgba(255, 255, 255, 0.6);
    padding: 14px 32px;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.cf-unique__btn-all:hover {
    background: #fff;
    color: #0d3d38;
    border-color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
}

/* Empty state */
.cf-unique__empty {
    text-align: center;
    padding: 60px 20px;
    color: rgba(255, 255, 255, 0.85);
}

.cf-unique__empty-icon {
    font-size: 56px;
    color: rgba(255, 255, 255, 0.5);
    margin-bottom: 20px;
}

.cf-unique__empty p {
    font-size: 17px;
    margin-bottom: 24px;
}

.cf-unique__empty .cf-unique__btn-all {
    margin-top: 8px;
}

/* Home crowdfunding: same card design as our-campaigns (campaign-card), whole card linkable */
.cf-unique .campaign-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
    height: 100%;
}
.cf-unique .campaign-card-link:hover .campaign-card__title {
    color: var(--thm-base, #14b8a6);
}
.cf-unique .campaign-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
    height: 100%;
    display: flex;
    flex-direction: column;
}
.cf-unique .campaign-card__img {
    aspect-ratio: 16/10;
    overflow: hidden;
    position: relative;
}
.cf-unique .campaign-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cf-unique .campaign-card__badge {
    position: absolute;
    bottom: 10px;
    left: 10px;
    padding: 0.35rem 0.6rem;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.4px;
    border-radius: 4px;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.25);
}
.cf-unique .campaign-card__badge--tax {
    background: #4c1d95;
    color: #fff;
}
.cf-unique .campaign-card__body {
    padding: 1.25rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.cf-unique .campaign-card__title {
    font-size: 1.12rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: #222;
}
.cf-unique .campaign-card__title-sep {
    height: 1px;
    background: #e5e7eb;
    margin-bottom: 0.75rem;
}
.cf-unique .campaign-card__meta {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 0.85rem;
}
.cf-unique .campaign-card__meta-item {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}
.cf-unique .campaign-card__meta-label {
    font-size: 0.6rem;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    line-height: 1.2;
}
.cf-unique .campaign-card__meta-value {
    font-size: 1rem;
    font-weight: 700;
    color: #222;
    line-height: 1.3;
}
.cf-unique .campaign-card__meta-value--days {
    color: #dc3545;
}
.cf-unique .campaign-card__progress-wrap {
    height: 8px;
    background: #e5e7eb;
    border-radius: 4px;
    overflow: visible;
    margin-bottom: 1rem;
    position: relative;
}
.cf-unique .campaign-card__progress-wrap:hover .campaign-card__progress-tooltip {
    opacity: 1;
    visibility: visible;
}
.cf-unique .campaign-card__progress-bar {
    height: 100%;
    background: var(--oxpins-base, #14b8a6);
    border-radius: 4px;
    transition: width 0.3s ease;
}
.cf-unique .campaign-card__progress-tooltip {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(-4px);
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 700;
    color: #fff;
    background: var(--oxpins-base, #0d9488);
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s, visibility 0.2s;
    pointer-events: none;
}
.cf-unique .campaign-card__progress-tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -4px;
    border: 4px solid transparent;
    border-top-color: var(--oxpins-base, #0d9488);
}
.cf-unique .campaign-card__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.25rem;
}
.cf-unique .campaign-card__supporters {
    min-height: 2rem;
    display: flex;
    align-items: center;
}
.cf-unique .campaign-card__contributors-text {
    font-size: 0.85rem;
    color: #6b7280;
    line-height: 1.2;
}
.cf-unique .campaign-card__btn {
    display: inline-block;
    padding: 0.4rem 1rem;
    background: var(--oxpins-base, #14b8a6);
    color: #fff !important;
    font-weight: 700;
    font-size: 0.75rem;
    letter-spacing: 0.4px;
    border-radius: 6px;
    text-decoration: none;
    transition: background 0.2s, opacity 0.2s;
    flex-shrink: 0;
}
.cf-unique .campaign-card__btn:hover {
    background: var(--thm-button1-hovercolor, #0d9488);
    color: #fff !important;
}
.cf-unique__carousel--4col .item {
    padding: 0 4px;
}

/* Tablet and below */
@media (max-width: 991px) {
    .cf-unique {
        padding: 70px 0 65px;
    }
    .cf-unique__container {
        padding-left: 20px;
        padding-right: 20px;
    }
    .cf-unique__header {
        margin-bottom: 36px;
    }
    .cf-unique__title {
        font-size: 32px;
    }
    .cf-unique__subtitle {
        font-size: 16px;
    }
    .cf-unique .owl-prev,
    .cf-unique .owl-next {
        width: 42px;
        height: 42px;
    }
    .cf-unique .owl-prev { left: 4px; }
    .cf-unique .owl-next { right: 4px; left: auto; }
    .cf-unique__nav-icon {
        font-size: 16px;
    }
    .cf-card__body {
        padding: 22px 20px 24px;
    }
    .cf-card__title {
        font-size: 18px;
    }
    .cf-unique__footer {
        margin-top: 36px;
    }
}

/* Mobile landscape / small tablet */
@media (max-width: 767px) {
    .cf-unique {
        padding: 55px 0 50px;
    }
    .cf-unique__container {
        padding-left: 16px;
        padding-right: 16px;
    }
    .cf-unique__header {
        margin-bottom: 28px;
    }
    .cf-unique__header-badge {
        padding: 6px 14px;
        font-size: 12px;
    }
    .cf-unique__title {
        font-size: 28px;
    }
    .cf-unique__subtitle {
        font-size: 15px;
    }
    .cf-unique .owl-prev,
    .cf-unique .owl-next {
        width: 40px;
        height: 40px;
        top: 42%;
    }
    .cf-unique .owl-prev { left: 0; }
    .cf-unique .owl-next { right: 0; left: auto; }
    .cf-card__img-wrap {
        aspect-ratio: 16 / 10;
    }
    .cf-card__cat {
        top: 12px;
        left: 12px;
        padding: 5px 12px;
        font-size: 11px;
    }
    .cf-card__body {
        padding: 18px 16px 20px;
    }
    .cf-card__title {
        font-size: 17px;
        margin-bottom: 14px;
    }
    .cf-card__progress-wrap {
        margin-bottom: 14px;
    }
    .cf-card__progress-bar {
        height: 6px;
        margin-bottom: 8px;
    }
    .cf-card__stats {
        font-size: 12px;
        gap: 6px;
    }
    .cf-card__cta {
        padding: 12px 18px;
        font-size: 13px;
    }
    .cf-unique__btn-all {
        padding: 12px 26px;
        font-size: 14px;
    }
    .cf-unique__footer {
        margin-top: 28px;
    }
}

/* Mobile portrait */
@media (max-width: 575px) {
    .cf-unique {
        padding: 45px 0 40px;
    }
    .cf-unique__container {
        padding-left: 14px;
        padding-right: 14px;
    }
    .cf-unique__header {
        margin-bottom: 24px;
    }
    .cf-unique__header-badge {
        padding: 6px 12px;
        font-size: 11px;
        letter-spacing: 0.05em;
    }
    .cf-unique__title {
        font-size: 24px;
        margin-bottom: 8px;
    }
    .cf-unique__subtitle {
        font-size: 14px;
    }
    .cf-unique .owl-prev,
    .cf-unique .owl-next {
        width: 36px;
        height: 36px;
    }
    .cf-unique__nav-icon {
        font-size: 14px;
    }
    .cf-card__img-wrap {
        aspect-ratio: 4 / 3;
    }
    .cf-card__body {
        padding: 16px 14px 18px;
    }
    .cf-card__title {
        font-size: 16px;
        margin-bottom: 12px;
    }
    .cf-card__progress-wrap {
        margin-bottom: 12px;
    }
    .cf-card__stats {
        flex-direction: row;
        font-size: 11px;
    }
    .cf-card__pct {
        padding: 3px 8px;
        font-size: 11px;
    }
    .cf-card__cta {
        padding: 12px 16px;
        font-size: 13px;
        width: 100%;
        min-height: 44px;
    }
    .cf-unique__btn-all {
        width: 100%;
        justify-content: center;
        padding: 14px 20px;
        font-size: 14px;
    }
    .cf-unique__footer {
        margin-top: 24px;
    }
    .cf-unique__empty {
        padding: 40px 16px;
    }
    .cf-unique__empty-icon {
        font-size: 44px;
    }
    .cf-unique__empty p {
        font-size: 15px;
    }
}

/* Very small phones */
@media (max-width: 380px) {
    .cf-unique__container {
        padding-left: 12px;
        padding-right: 12px;
    }
    .cf-unique__title {
        font-size: 22px;
    }
    .cf-unique__subtitle {
        font-size: 13px;
    }
    .cf-card__body {
        padding: 14px 12px 16px;
    }
    .cf-card__title {
        font-size: 15px;
    }
    .cf-card__stats {
        font-size: 10px;
    }
}

/*
|--------------------------------------------------------------------------
|| Member Counter Section (Taxi Meter Style)
|--------------------------------------------------------------------------
*/

.member-counter-section {
    padding: 40px 0;
    background: #f8f9fa;
}

.counter-card {
    background: #ffffff;
    border-radius: 15px;
    padding: 25px 20px;
    text-align: center;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    height: 100%;
    max-width: 500px;
    margin: 0 auto;
}

.counter-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
}

.counter-card-today,
.counter-card-total {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    border: 1px solid rgba(37, 99, 235, 0.3);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.counter-card-today:hover,
.counter-card-total:hover {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
    border: 1px solid rgba(220, 38, 38, 0.3);
}

.counter-card__title {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin: 0 0 20px 0;
}

.counter-card__number {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap;
}

.counter-digit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 45px;
    background: #ffffff;
    border-radius: 6px;
    font-size: 24px;
    font-weight: 700;
    color: #333;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.counter-card-today .counter-digit,
.counter-card-total .counter-digit {
    color: #2563eb;
    border: 2px solid rgba(37, 99, 235, 0.4);
    background: #ffffff;
    transition: all 0.4s ease;
}

.counter-card-today:hover .counter-digit,
.counter-card-total:hover .counter-digit {
    color: #dc2626;
    border: 2px solid rgba(220, 38, 38, 0.4);
    background: #ffffff;
}

.counter-digit.active {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* Responsive */
@media (max-width: 991px) {
    .member-counter-section {
        padding: 35px 0;
    }
    
    .counter-card {
        margin-bottom: 25px;
        padding: 22px 18px;
        max-width: 100%;
    }
    
    .counter-card__title {
        font-size: 13px;
        margin-bottom: 18px;
    }
    
    .counter-digit {
        width: 35px;
        height: 42px;
        font-size: 22px;
    }
    
    .counter-card__number {
        gap: 4px;
    }
}

@media (max-width: 767px) {
    .member-counter-section {
        padding: 30px 0;
    }
    
    .counter-card {
        padding: 20px 15px;
    }
    
    .counter-card__title {
        font-size: 12px;
        margin-bottom: 15px;
        letter-spacing: 1px;
    }
    
    .counter-card__number {
        gap: 4px;
    }
    
    .counter-digit {
        width: 32px;
        height: 38px;
        font-size: 20px;
    }
}

@media (max-width: 575px) {
    .counter-card {
        padding: 18px 12px;
    }
    
    .counter-card__title {
        font-size: 11px;
        margin-bottom: 12px;
    }
    
    .counter-digit {
        width: 28px;
        height: 34px;
        font-size: 18px;
    }
    
    .counter-card__number {
        gap: 3px;
    }
}

/* Responsive Stats Section */
@media (max-width: 991px) {
    .stats-section {
        padding: 60px 0;
    }
    
    .stats-section .row {
        flex-direction: column;
    }
    
    .stats-section .col-lg-6:first-child {
        margin-bottom: 30px;
    }
    
    .stats-cards-wrapper {
        height: auto !important;
        gap: 12px;
        max-width: 100%;
    }
    
    .stats-card {
        padding: 22px 20px;
        gap: 18px;
        flex: none;
        min-height: 0;
    }
    
    .stats-card__icon {
        width: 70px;
        height: 70px;
    }
    
    .stats-card__icon i {
        font-size: 35px;
    }
    
    .stats-card__number {
        font-size: 40px;
    }
    
    .stats-card__label {
        font-size: 16px;
        font-weight: 700 !important;
    }
    
    .stats-card__subtext {
        font-weight: 600 !important;
    }
    
    .stats-map-wrapper {
        height: 480px !important;
        min-height: 350px;
        width: 100%;
        margin-top: 0;
    }
    
    .india-map-wrapper {
        margin-top: 40px;
    }
    
    .india-map-wrapper-new {
        margin-top: 40px;
    }
    
    .map-container-new {
        height: 450px;
    }
    
    .map-iframe-new {
        height: 400px;
    }
    
    .map-header-new {
        padding: 18px 20px;
    }
    
    .map-title-new {
        font-size: 18px;
    }
}

/* India Presence Image */
.india-presence-image-wrapper {
    width: 100%;
    margin-top: 30px;
    text-align: center;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.india-presence-image-wrapper:hover {
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.15);
    transform: translateY(-5px);
}

.india-presence-image {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: 20px;
}

@media (max-width: 991px) {
    .india-presence-image-wrapper {
        margin-top: 20px;
        border-radius: 15px;
    }
    
    .india-presence-image {
        border-radius: 15px;
    }
}

/* Campaign Carousel Navigation - Removed */
.campaign-carousel-page .campaign-carousel.owl-theme .owl-nav {
    display: none !important;
}

.campaign-carousel-page .campaign-carousel.owl-theme .owl-dots {
    display: none !important;
}

@media (max-width: 768px) {
    .campaign-carousel-page .campaign-carousel.owl-theme .owl-nav {
        padding: 0 10px;
    }
    
    .campaign-carousel-page .campaign-carousel.owl-theme .owl-nav .owl-prev,
    .campaign-carousel-page .campaign-carousel.owl-theme .owl-nav .owl-next {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }
    
    .campaign-carousel-page .campaign-carousel.owl-theme .owl-nav .owl-prev {
        left: -20px;
    }
    
    .campaign-carousel-page .campaign-carousel.owl-theme .owl-nav .owl-next {
        right: -20px;
    }
}

/* Our Fields of Work Section */
.fields-of-work-section {
    padding: 80px 20px;
    background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 50%, #f8f9fa 100%);
    position: relative;
    border: none;
    border-radius: 0;
    margin: 0;
    overflow: hidden;
}

.fields-of-work-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 113, 93, 0.3), transparent);
}

.fields-of-work-title {
    font-size: 42px;
    font-weight: 700;
    color: #dc2626;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 60px;
    position: relative;
}

.fields-of-work-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: nowrap;
    gap: 30px;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

.field-item {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    padding: 30px 25px;
    border: 2px dotted #00715d;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(0, 113, 93, 0.05) 0%, rgba(247, 115, 33, 0.05) 100%);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1),
                0 4px 10px rgba(0, 113, 93, 0.15),
                inset 0 1px 0 rgba(255, 255, 255, 0.6);
    transform: perspective(1000px) rotateX(2deg) translateZ(0);
    position: relative;
    overflow: hidden;
    height: 100%;
    min-height: 280px;
}

/* Different soft background colors for each card */
.field-item-equality {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(37, 99, 235, 0.06) 100%) !important;
    border-color: rgba(59, 130, 246, 0.5) !important;
}

.field-item-freedom {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.1) 0%, rgba(5, 150, 105, 0.06) 100%) !important;
    border-color: rgba(16, 185, 129, 0.5) !important;
}

.field-item-exploitation {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.1) 0%, rgba(217, 119, 6, 0.06) 100%) !important;
    border-color: rgba(245, 158, 11, 0.5) !important;
}

.field-item-religion {
    background: linear-gradient(135deg, rgba(139, 92, 246, 0.1) 0%, rgba(124, 58, 237, 0.06) 100%) !important;
    border-color: rgba(139, 92, 246, 0.5) !important;
}

.field-item-cultural {
    background: linear-gradient(135deg, rgba(236, 72, 153, 0.1) 0%, rgba(219, 39, 119, 0.06) 100%) !important;
    border-color: rgba(236, 72, 153, 0.5) !important;
}

.field-item-remedies {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.1) 0%, rgba(220, 38, 38, 0.06) 100%) !important;
    border-color: rgba(239, 68, 68, 0.5) !important;
}

.field-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, transparent 50%);
    pointer-events: none;
    border-radius: 20px;
}

.field-item:hover {
    transform: perspective(1000px) rotateX(0deg) translateY(-15px) translateZ(20px) scale(1.02);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15),
                0 10px 20px rgba(0, 113, 93, 0.25),
                inset 0 1px 0 rgba(255, 255, 255, 0.8);
    border-color: #005a4a;
}

.field-icon {
    width: 120px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-bottom: 20px;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2),
                0 5px 15px rgba(0, 113, 93, 0.3),
                inset 0 2px 5px rgba(255, 255, 255, 0.3),
                inset 0 -2px 5px rgba(0, 0, 0, 0.1);
    transform: perspective(500px) translateZ(10px);
    position: relative;
}

.field-icon i {
    font-size: 50px;
    color: #ffffff;
}

.field-icon-equality {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.field-icon-freedom {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.field-icon-exploitation {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.field-icon-religion {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}

.field-icon-cultural {
    background: linear-gradient(135deg, #ec4899 0%, #db2777 100%);
}

.field-icon-remedies {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
}

.field-item:hover .field-icon {
    transform: perspective(500px) translateZ(25px) scale(1.15) rotate(5deg);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3),
                0 8px 20px rgba(0, 113, 93, 0.4),
                inset 0 2px 5px rgba(255, 255, 255, 0.4),
                inset 0 -2px 5px rgba(0, 0, 0, 0.15);
}

.field-label {
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0;
    transition: all 0.3s ease;
    line-height: 1.4;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.field-label-equality {
    color: #3b82f6;
}

.field-label-freedom {
    color: #10b981;
}

.field-label-exploitation {
    color: #f59e0b;
}

.field-label-religion {
    color: #8b5cf6;
}

.field-label-cultural {
    color: #ec4899;
}

.field-label-remedies {
    color: #ef4444;
}

.field-article {
    font-size: 12px;
    color: #666;
    margin-top: 8px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.field-item-link {
    text-decoration: none;
    color: inherit;
    flex: 1;
    min-width: 0;
    display: block;
}

.field-item-link:hover {
    text-decoration: none;
    color: inherit;
}

.field-item:hover .field-label {
    transform: scale(1.05);
}

/* Responsive Fields of Work Section */
@media (max-width: 1200px) {
    .fields-of-work-wrapper {
        gap: 24px;
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .field-item-link {
        flex: 0 0 calc(33.333% - 16px);
        min-width: 0;
        max-width: calc(33.333% - 16px);
    }
    
    .field-icon {
        width: 100px;
        height: 100px;
    }
    
    .field-icon i {
        font-size: 40px;
    }
}

@media (max-width: 992px) {
    .fields-of-work-section {
        padding: 60px 15px;
        border: none;
        border-radius: 0;
        margin: 0;
    }
    
    .fields-of-work-title {
        font-size: 36px;
        margin-bottom: 50px;
    }
    
    .fields-of-work-wrapper {
        gap: 20px;
        flex-wrap: wrap;
        justify-content: center;
        padding: 0 10px;
    }
    
    .field-item-link {
        flex: 0 0 calc(33.333% - 14px);
        min-width: 0;
        max-width: calc(33.333% - 14px);
    }
    
    .field-item {
        flex: 1;
        min-width: 0;
        padding: 25px 15px;
        border: 2px dotted #00715d;
        border-radius: 15px;
        background: linear-gradient(135deg, rgba(0, 113, 93, 0.05) 0%, rgba(247, 115, 33, 0.05) 100%);
        transform: perspective(1000px) rotateX(1deg) translateZ(0);
        height: 100%;
        min-height: 250px;
    }
    
    .field-item:hover {
        transform: perspective(1000px) rotateX(0deg) translateY(-12px) translateZ(15px) scale(1.01);
    }
    
    .field-label {
        min-height: 45px;
    }
    
    .field-icon {
        width: 80px;
        height: 80px;
    }
    
    .field-icon i {
        font-size: 30px;
    }
    
    .field-label {
        font-size: 14px;
    }
}

@media (max-width: 768px) {
    .fields-of-work-section {
        padding: 50px 10px;
        border: none;
        border-radius: 0;
        margin: 0;
    }
    
    .fields-of-work-title {
        font-size: 28px;
        margin-bottom: 40px;
    }
    
    .fields-of-work-wrapper {
        gap: 15px;
        flex-wrap: wrap;
        justify-content: center;
        padding: 0 5px;
    }
    
    .field-item-link {
        flex: 0 0 calc(50% - 8px);
        min-width: 0;
        max-width: calc(50% - 8px);
    }
    
    .field-item {
        flex: 1;
        min-width: 0;
        padding: 20px 12px;
        border: 2px dotted #00715d;
        border-radius: 12px;
        background: linear-gradient(135deg, rgba(0, 113, 93, 0.05) 0%, rgba(247, 115, 33, 0.05) 100%);
        transform: perspective(1000px) rotateX(1deg) translateZ(0);
        height: 100%;
        min-height: 220px;
    }
    
    .field-item:hover {
        transform: perspective(1000px) rotateX(0deg) translateY(-10px) translateZ(12px) scale(1.01);
    }
    
    .field-label {
        min-height: 40px;
        font-size: 14px;
    }
    
    .field-icon {
        width: 70px;
        height: 70px;
    }
    
    .field-icon i {
        font-size: 25px;
    }
    
    .field-label {
        font-size: 12px;
    }
}

@media (max-width: 576px) {
    .fields-of-work-section {
        padding: 40px 12px;
    }
    
    .fields-of-work-title {
        font-size: 24px;
        margin-bottom: 20px;
    }
    
    /* Scrollable single column: fixed height + vertical scroll */
    .fields-of-work-wrapper {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 16px;
        padding: 4px 0 12px 0;
        max-width: 100%;
        max-height: 75vh;
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        border-radius: 12px;
    }
    
    .fields-of-work-wrapper::-webkit-scrollbar {
        width: 6px;
    }
    
    .fields-of-work-wrapper::-webkit-scrollbar-track {
        background: rgba(0, 113, 93, 0.08);
        border-radius: 3px;
    }
    
    .fields-of-work-wrapper::-webkit-scrollbar-thumb {
        background: rgba(0, 113, 93, 0.35);
        border-radius: 3px;
    }
    
    .field-item-link {
        flex: 0 0 auto;
        min-width: 0;
        max-width: 100%;
    }
    
    /* Same design as desktop: pill-style card, dotted border, icon circle, label */
    .field-item {
        flex: 0 0 auto;
        min-width: 0;
        padding: 28px 24px;
        border: 2px dotted #00715d;
        border-radius: 20px;
        background: linear-gradient(135deg, rgba(0, 113, 93, 0.05) 0%, rgba(247, 115, 33, 0.05) 100%);
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1),
                    0 4px 10px rgba(0, 113, 93, 0.15),
                    inset 0 1px 0 rgba(255, 255, 255, 0.6);
        transform: perspective(1000px) rotateX(2deg) translateZ(0);
        min-height: 260px;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    
    .field-item:hover {
        transform: perspective(1000px) rotateX(0deg) translateY(-15px) translateZ(20px) scale(1.02);
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15),
                    0 10px 20px rgba(0, 113, 93, 0.25),
                    inset 0 1px 0 rgba(255, 255, 255, 0.8);
        border-color: #005a4a;
    }
    
    .field-icon {
        width: 96px;
        height: 96px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 18px;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2),
                    0 5px 15px rgba(0, 113, 93, 0.3),
                    inset 0 2px 5px rgba(255, 255, 255, 0.3),
                    inset 0 -2px 5px rgba(0, 0, 0, 0.1);
        transform: perspective(500px) translateZ(10px);
    }
    
    .field-icon i {
        font-size: 40px;
        color: #ffffff;
    }
    
    .field-item:hover .field-icon {
        transform: perspective(500px) translateZ(25px) scale(1.15) rotate(5deg);
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3),
                    0 8px 20px rgba(0, 113, 93, 0.4),
                    inset 0 2px 5px rgba(255, 255, 255, 0.4),
                    inset 0 -2px 5px rgba(0, 0, 0, 0.15);
    }
    
    .field-label {
        font-size: 15px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1px;
        line-height: 1.4;
        min-height: 48px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }
    
    .field-item:hover .field-label {
        transform: scale(1.05);
    }
}

@media (max-width: 767px) {
    .stats-section {
        padding: 40px 15px;
    }
    
    .stats-section .col-lg-6:first-child {
        margin-bottom: 24px;
    }
    
    .stats-cards-wrapper {
        gap: 12px;
        height: auto !important;
    }
    
    .stats-card {
        padding: 18px 16px;
        gap: 12px;
        flex-direction: row;
        text-align: left;
        flex: none;
    }
    
    .stats-card__icon {
        width: 56px;
        height: 56px;
        flex-shrink: 0;
    }
    
    .stats-card__icon i {
        font-size: 26px;
    }
    
    .stats-card__number {
        font-size: 32px;
    }
    
    .stats-card__label {
        font-size: 13px;
        font-weight: 700 !important;
    }
    
    .stats-card__subtext {
        font-size: 10px;
        font-weight: 600 !important;
    }
    
    .stats-map-wrapper {
        height: 400px !important;
        min-height: 280px;
        border-radius: 12px;
    }
    
    .india-map-wrapper-new {
        margin-top: 30px;
    }
    
    .map-container-new {
        height: 400px;
        border-radius: 15px;
    }
    
    .map-header-new {
        padding: 15px 18px;
    }
    
    .map-title-new {
        font-size: 16px;
    }
    
    .map-title-new i {
        font-size: 20px;
    }
    
    .map-iframe-new {
        height: 350px;
    }
    
    .map-scroll-wrapper::before {
        width: 280px;
        height: 70px;
    }
}

@media (max-width: 576px) {
    .stats-section {
        padding: 32px 12px;
    }
    
    .stats-section .col-lg-6:first-child {
        margin-bottom: 20px;
    }
    
    .stats-cards-wrapper {
        gap: 10px;
    }
    
    .stats-card {
        padding: 14px 12px;
        gap: 12px;
    }
    
    .stats-card__icon {
        width: 48px;
        height: 48px;
    }
    
    .stats-card__icon i {
        font-size: 22px;
    }
    
    .stats-card__number {
        font-size: 28px;
    }
    
    .stats-card__label {
        font-size: 12px;
    }
    
    .stats-card__subtext {
        font-size: 9px;
    }
    
    .stats-map-wrapper {
        height: 320px !important;
        min-height: 260px;
        border-radius: 10px;
    }
}

/* Top Bar Header Styles – use theme settings (website-setting > Colour) */
.top-bar-header {
    background-color: var(--thm-topbar-bg-color, #1e3a8a);
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    margin-bottom: 0 !important;
}
.top-bar-header,
.top-bar-header .top-bar-inner,
.top-bar-header .top-bar-search-btn,
.top-bar-header .top-bar-btn,
.top-bar-header .top-bar-btn i,
.top-bar-header .top-bar-nav a {
    color: var(--thm-topbar-text-color, #ffffff);
}
.top-bar-header .top-bar-search-input,
.top-bar-header .top-bar-search-input::placeholder {
    color: #000;
}
.top-bar-header .top-bar-search-input {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.3);
}
.top-bar-header .top-bar-search-input:focus {
    background: rgba(255, 255, 255, 0.2);
    border-color: var(--thm-topbar-text-color, #ffffff);
}
.top-bar-header .top-bar-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    color: var(--thm-topbar-text-color, #ffffff);
}
.top-bar-header .top-bar-cart-badge {
    background: var(--thm-topbar-text-color, #ffffff);
    color: var(--thm-topbar-bg-color, #1e3a8a);
}

/* Remove gap between topbar and main menu */
.main-header {
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
    z-index: 9999 !important;
}

.top-bar-header {
    position: relative;
    z-index: 9999 !important;
}

.main-menu {
    position: relative;
    z-index: 9999 !important;
}

.stricky-header {
    z-index: 9999 !important;
}

.stricky-header.stricky-fixed {
    z-index: 9999 !important;
}

/* Sticky bar (scroll): remove theme white tray + double shadow — match main menubar strip */
@media (min-width: 992px) {
    .stricky-header.stricked-menu.main-menu {
        background: transparent !important;
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        border: none !important;
        outline: none !important;
    }

    .stricky-header .sticky-header__content {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    /* Sticky row shadow matches main header */
    .stricky-header.header-nav-unified.stricky-fixed .main-menu__wrapper-inner {
        box-shadow:
            0 4px 22px rgba(15, 23, 42, 0.08),
            0 1px 3px rgba(15, 23, 42, 0.05) !important;
        border-bottom: 1px solid rgba(15, 23, 42, 0.05) !important;
    }

    .stricky-header.stricky-fixed .main-menu__left.header-logo-area,
    .stricky-header.stricky-fixed .main-menu__right {
        border: none !important;
    }

}

/* Footer & scroll-to-top use theme colours (website-setting > Colour) */
/* Single small diamond grid — every cell same size */
.site-footer {
    position: relative;
    z-index: 1 !important;
    overflow: hidden;
    background-color: var(--thm-footer-bg, var(--oxpins-black)) !important;
    background-image: radial-gradient(ellipse 92% 48% at 50% -18%, rgba(255, 255, 255, 0.08), transparent 58%);
    background-repeat: no-repeat;
    background-position: center top;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07);
}
.site-footer::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background-image: radial-gradient(circle, rgba(255, 255, 255, 0.16) 0.8px, transparent 0.9px);
    background-size: 9px 9px;
    background-position: 0 0;
    background-repeat: repeat;
    -webkit-mask-image: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.95) 0%,
        rgba(0, 0, 0, 0.75) 45%,
        rgba(0, 0, 0, 0.55) 100%
    );
    mask-image: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.95) 0%,
        rgba(0, 0, 0, 0.75) 45%,
        rgba(0, 0, 0, 0.55) 100%
    );
}
.site-footer > .site-footer__top,
.site-footer > .site-footer__bottom {
    position: relative;
    z-index: 1;
}
.site-footer .footer-widget__title,
.site-footer .footer-widget__title a {
    color: var(--thm-footer-h-color, var(--oxpins-white)) !important;
}
.site-footer,
.site-footer .footer-widget__about-text-box,
.site-footer .footer-widget__contact-list p,
.site-footer .footer-widget__links-list a,
.site-footer .footer-widget__non-profit-list a {
    color: var(--thm-footer-text-color, #b0b0b0) !important;
}
.site-footer a:hover,
.site-footer .footer-widget__links-list a:hover,
.site-footer .footer-widget__non-profit-list a:hover {
    color: var(--thm-footer-link, #ffffff) !important;
}
.scroll-to-top {
    background: var(--thm-scroll-top-bg, var(--oxpins-primary)) !important;
}
.scroll-to-top:hover {
    background-color: var(--thm-button1-hovercolor, var(--oxpins-base)) !important;
}

/* Footer logo – mobile view */
@media (max-width: 767px) {
    .footer-widget__about-logo {
        text-align: center;
        margin-bottom: 12px;
    }
    .footer-widget__about-logo a {
        display: inline-block;
    }
    .footer-widget__about-logo img {
        max-width: 100%;
        width: auto !important;
        height: auto;
        max-height: 70px;
        object-fit: contain;
    }
}
@media (max-width: 576px) {
    .footer-widget__about-logo img {
        max-height: 60px;
    }
}

/* Footer logo and about block – mobile view */
@media (max-width: 991px) {
    .footer-widget__about {
        margin-right: 0;
        margin-bottom: 24px;
    }
    .footer-widget__about-logo {
        text-align: center;
        margin-bottom: 12px;
    }
    .footer-widget__about-logo a {
        display: inline-block;
    }
    .footer-widget__about-logo img {
        max-width: 100%;
        width: auto;
        height: auto;
        max-height: 70px;
        object-fit: contain;
    }
}
@media (max-width: 576px) {
    .footer-widget__about-logo img {
        max-height: 60px;
        max-width: 200px;
    }
}

/* Footer logo – mobile view */
@media (max-width: 991px) {
    .footer-widget__about-logo {
        text-align: center;
        margin-bottom: 12px;
    }
    .footer-widget__about-logo img {
        max-width: 100%;
        width: auto;
        height: auto;
        max-height: 70px;
        object-fit: contain;
        display: inline-block;
    }
}
@media (max-width: 576px) {
    .footer-widget__about-logo img {
        max-height: 60px;
    }
    .footer-widget__about {
        margin-right: 0;
        text-align: center;
    }
    .footer-widget__about-text-box {
        text-align: center;
    }
    .footer-widget__btn {
        text-align: center;
    }
}

.main-menu {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.main-menu__wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.top-bar-inner {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 15px;
}

.top-bar-left {
    display: none;
}

/* Top bar scrolling notice */
.top-bar-notice-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 0;
    max-width: 100%;
}

.top-bar-notice-icon {
    color: rgba(255, 255, 255, 0.95);
    font-size: 15px;
    flex-shrink: 0;
}

.top-bar-notice-inner {
    flex: 1;
    min-width: 0;
    overflow: hidden;
}

.top-bar-notice-track {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    animation: topbar-notice-scroll 40s linear infinite;
    white-space: nowrap;
}

.top-bar-notice-track:hover {
    animation-play-state: paused;
}

.top-bar-notice-item {
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
}

.top-bar-notice-item a {
    color: #fbbf24;
    text-decoration: none;
}

.top-bar-notice-item a:hover {
    text-decoration: underline;
}

.top-bar-notice-sep {
    color: rgba(255, 255, 255, 0.5);
    font-size: 10px;
    user-select: none;
}

@keyframes topbar-notice-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.top-bar-contact {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.top-bar-phone,
.top-bar-email {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
}

.top-bar-phone i,
.top-bar-email i {
    font-size: 14px;
    color: #ffffff;
}

.top-bar-phone a,
.top-bar-email a {
    color: #ffffff;
    text-decoration: none;
    transition: all 0.3s ease;
}

.top-bar-phone a:hover,
.top-bar-email a:hover {
    color: #fbbf24;
}

.top-bar-right {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
    width: 100%;
    justify-content: flex-end;
}

/* Top Bar Search Box */
.top-bar-search-box {
    flex-shrink: 0;
}

.top-bar-search-form {
    margin: 0;
    padding: 0;
}

.top-bar-search-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    width: 250px;
    height: 40px;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    border: 1.5px solid transparent;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: 
        0 4px 15px rgba(0, 0, 0, 0.08),
        0 2px 6px rgba(0, 0, 0, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.top-bar-search-input-wrapper:focus-within {
    background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);
    border-color: #2563eb;
    box-shadow: 
        0 8px 25px rgba(37, 99, 235, 0.2),
        0 4px 12px rgba(37, 99, 235, 0.15),
        0 0 0 4px rgba(37, 99, 235, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.top-bar-search-input-wrapper:hover {
    border-color: #cbd5e1;
    box-shadow: 
        0 6px 20px rgba(0, 0, 0, 0.1),
        0 3px 10px rgba(0, 0, 0, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.top-bar-search-input {
    flex: 1;
    min-width: 0;
    height: 100%;
    padding: 0 12px 0 18px;
    background: transparent;
    border: none;
    border-radius: 0;
    font-size: 13px;
    color: #000;
    outline: none;
    box-shadow: none;
    font-weight: 500;
    letter-spacing: 0.3px;
}

.top-bar-search-input::placeholder {
    color: #000;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.2px;
}

.top-bar-search-input:focus {
    background: transparent;
    border: none;
    box-shadow: none;
    transform: none;
}

.top-bar-search-input:hover {
    background: transparent;
    border: none;
    box-shadow: none;
    transform: none;
}

.top-bar-search-btn {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    margin: 0 4px;
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    border: none;
    color: #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    border-radius: 50%;
    padding: 0;
    box-shadow: 
        0 2px 8px rgba(37, 99, 235, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.top-bar-search-btn:hover {
    background: linear-gradient(135deg, #1d4ed8 0%, #1e40af 100%);
    transform: scale(1.08);
    box-shadow: 
        0 4px 12px rgba(37, 99, 235, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

.top-bar-search-btn:active {
    transform: scale(1.02);
}

.top-bar-search-btn i {
    font-size: 13px;
    font-weight: 600;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}

.top-bar-nav {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.top-bar-nav a {
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.top-bar-nav a:hover {
    color: #fbbf24;
    transform: translateY(-1px);
}

.top-bar-buttons {
    display: flex;
    align-items: center;
    gap: 10px;
}

.top-bar-btn {
    padding: 8px 20px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    position: relative;
}

.top-bar-btn i {
    font-size: 14px;
    display: inline-block;
    margin-right: 0;
    line-height: 1;
    vertical-align: middle;
}

.top-bar-btn-cart {
    background: #0d9488;
    color: #ffffff;
    border: none;
}

.top-bar-btn-cart:hover {
    background: #0f766e;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(13, 148, 136, 0.4);
    color: #ffffff;
}

.top-bar-cart-badge {
    background: #dc2626;
    color: #ffffff;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
    position: absolute;
    top: -5px;
    right: -5px;
}

.top-bar-btn-donations {
    background: #dc2626;
    color: #ffffff;
    border: none;
}

.top-bar-btn-donations:hover {
    background: #b91c1c;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(220, 38, 38, 0.4);
    color: #ffffff;
}

.top-bar-btn-branches {
    background: #3b82f6;
    color: #ffffff;
    border: none;
}

.top-bar-btn-branches:hover {
    background: #2563eb;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.4);
    color: #ffffff;
}

.top-bar-btn-complaints {
    background: #9333ea;
    color: #ffffff;
    border: none;
}

.top-bar-btn-complaints:hover {
    background: #7e22ce;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(147, 51, 234, 0.4);
    color: #ffffff;
}

.top-bar-btn-become-member {
    background: var(--oxpins-primary, #00715d);
    color: #ffffff;
    border: none;
}

.top-bar-btn-become-member:hover,
.top-bar-header .top-bar-btn-become-member:hover {
    background: var(--thm-button1-hovercolor, #005a4a);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 113, 93, 0.35);
    color: #ffffff;
}

.top-bar-btn-member {
    background: #059669;
    color: #ffffff;
    border: none;
}

.top-bar-btn-member:hover {
    background: #047857;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(5, 150, 105, 0.4);
    color: #ffffff;
}

.top-bar-btn-login {
    background: #1e3a8a;
    color: #ffffff;
    border: none;
}

.top-bar-btn-login:hover {
    background: #1e40af;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(30, 58, 138, 0.4);
    color: #ffffff;
}

/* Top bar notice – responsive */
@media (max-width: 991px) {
    .top-bar-notice-wrap {
        max-width: 60%;
    }
    .top-bar-notice-item {
        font-size: 13px;
    }
    .top-bar-notice-track {
        animation-duration: 35s;
    }
}

@media (max-width: 767px) {
    .top-bar-notice-wrap {
        max-width: 50%;
    }
    .top-bar-notice-icon {
        font-size: 14px;
    }
    .top-bar-notice-item {
        font-size: 12px;
    }
    .top-bar-notice-track {
        gap: 14px;
        animation-duration: 30s;
    }
}

@media (max-width: 575px) {
    .top-bar-notice-wrap {
        max-width: 100%;
        min-height: 24px;
    }
    .top-bar-notice-item {
        font-size: 11px;
    }
    .top-bar-notice-track {
        gap: 12px;
        animation-duration: 25s;
    }
}

/* ===== Mobile: Top bar + Menu bar fixes ===== */
@media (max-width: 767px) {
    .top-bar-header {
        padding: 8px 10px;
    }
    .top-bar-header .container-fluid {
        padding-left: 10px;
        padding-right: 10px;
    }
    .top-bar-inner {
        flex-wrap: wrap;
        gap: 10px;
    }
    .top-bar-right {
        flex-wrap: wrap;
        width: 100%;
        gap: 8px;
    }
    .top-bar-search-box {
        flex: 1 1 100%;
        max-width: 100%;
        order: 1;
    }
    .top-bar-search-input-wrapper {
        max-width: 100%;
    }
    .top-bar-buttons {
        flex-wrap: wrap;
        gap: 6px;
        order: 2;
        justify-content: flex-start;
    }
    .top-bar-btn {
        padding: 6px 10px;
        font-size: 12px;
        white-space: nowrap;
    }
    .top-bar-btn i {
        font-size: 12px;
        margin-right: 4px;
    }
}

@media (max-width: 480px) {
    .top-bar-btn {
        padding: 6px 8px;
        font-size: 11px;
    }
}

/* ===== Header: white logo | teal nav (desktop) — top bar untouched ===== */
:root {
    --header-menubar-teal: #2f9ea3;
    --header-menubar-teal-mid: #2a8f94;
    --header-menubar-teal-dark: #247a7f;
    /* Desktop defaults (mobile size handled in media queries below) */
    --header-row-h: 76px;
    --header-logo-max-h: 70px;
    --header-logo-img-w: 200px;
    --header-logo-col-w: 228px;
    --header-nav-link-px: 6px;
    --header-nav-link-py: 8px;
    --header-nav-font: 15px;
    --header-nav-font-family: "Josefin Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;
    --header-nav-pill-hover: rgba(255, 255, 255, 0.14);
    --header-nav-pill-open: rgba(255, 255, 255, 0.2);
    --header-join-gradient-start: #ffe08a;
    --header-join-gradient-end: #f0b84a;
}

/* Main menubar typography (teal strip + dropdowns); sticky clone inherits from .stricky-header.header-nav-unified */
.main-header .main-menu.header-nav-unified,
.stricky-header.header-nav-unified {
    font-family: var(--header-nav-font-family) !important;
}
.header-nav-unified .main-menu__list,
.stricky-header.header-nav-unified .main-menu__list,
.sticky-header__content .main-menu__list {
    font-family: var(--header-nav-font-family) !important;
}

.header-nav-unified .main-menu__wrapper {
    padding: 0 !important;
    max-width: 100% !important;
    background: #ffffff !important;
}

.header-nav-unified .main-menu__wrapper-inner {
    gap: 0 !important;
    align-items: stretch !important;
    min-height: var(--header-row-h, 64px) !important;
    background: #ffffff !important;
    box-shadow:
        0 2px 16px rgba(15, 23, 42, 0.06),
        0 1px 0 rgba(15, 23, 42, 0.04) !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06) !important;
}

.header-nav-unified .main-menu__left.header-logo-area {
    background: #ffffff !important;
    padding: 0 8px 0 12px !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    min-height: var(--header-row-h, 64px) !important;
}

.header-nav-unified .main-menu__right {
    background: linear-gradient(
        180deg,
        var(--header-menubar-teal) 0%,
        var(--header-menubar-teal-mid) 52%,
        var(--header-menubar-teal-dark) 100%
    ) !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    padding: 0 !important;
    align-self: stretch !important;
    display: flex !important;
    align-items: stretch !important;
    flex-direction: row !important;
    min-height: var(--header-row-h, 64px) !important;
}

.header-nav-unified .main-menu__right .main-menu__right-bottom {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    border-top-left-radius: 0 !important;
}

/* ===== Logo area — flat white, no border/shadow (desktop header) ===== */
.header-logo-area {
    flex-shrink: 0 !important;
    width: 200px !important;
    min-width: 180px !important;
    margin-right: 0 !important;
    display: flex !important;
    align-items: center !important;
    position: relative !important;
}

@media (min-width: 992px) {
    /* Fixed logo column: does not grow with viewport — leaves room for full nav (Home … Contact) */
    .header-nav-unified .header-logo-area,
    .stricky-header.header-nav-unified .header-logo-area,
    .sticky-header__content .header-logo-area {
        width: var(--header-logo-col-w, 232px) !important;
        min-width: var(--header-logo-col-w, 232px) !important;
        max-width: var(--header-logo-col-w, 232px) !important;
        flex: 0 0 var(--header-logo-col-w, 232px) !important;
    }
}

.header-logo-box {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 12px !important;
    position: relative !important;
    background: #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border: none !important;
    transition: none !important;
}

.header-logo-box:hover {
    background: #ffffff !important;
    box-shadow: none !important;
}

.header-logo-box a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    width: 100% !important;
}

.header-logo-box::before,
.header-logo-box::after {
    display: none !important;
    content: none !important;
}

/* Header logo – flat white (no footer-style card) */
.header-logo-box.footer-style-logo-box {
    background: #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 8px !important;
}

.header-logo-box.footer-style-logo-box:hover {
    background: #ffffff !important;
    box-shadow: none !important;
}

/* Logo image — fixed width for consistent header; height constrained */
.header-logo-img,
.main-menu__logo img#headerLogo {
    width: var(--header-logo-img-w, 200px) !important;
    max-width: var(--header-logo-img-w, 200px) !important;
    height: auto !important;
    max-height: var(--header-logo-max-h, 52px) !important;
    object-fit: contain !important;
    object-position: center center !important;
    transition: opacity 0.3s ease !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
}

@media (max-width: 991.98px) {
    .header-logo-img,
    .main-menu__logo img#headerLogo {
        width: auto !important;
        max-width: min(var(--header-logo-img-w, 200px), calc(100vw - 100px)) !important;
    }
}

@media (min-width: 992px) {
    .header-nav-unified .header-logo-img,
    .header-nav-unified .main-menu__logo img#headerLogo {
        width: var(--header-logo-img-w, 200px) !important;
        max-width: var(--header-logo-img-w, 200px) !important;
        max-height: var(--header-logo-max-h, 52px) !important;
    }

    .header-nav-unified .header-logo-box a img,
    .stricky-header.header-nav-unified .header-logo-box a img {
        transition: transform 0.28s ease, opacity 0.28s ease !important;
    }

    .header-nav-unified .header-logo-box a:hover img,
    .stricky-header.header-nav-unified .header-logo-box a:hover img {
        transform: scale(1.03) !important;
    }
}

.header-logo-box:hover .header-logo-img,
.header-logo-box:hover img#headerLogo {
    opacity: 1 !important;
}

/* Logo Size Adjustment (fallback) */
.main-menu__logo img:not(.header-logo-img) {
    max-height: 55px !important;
    max-width: 280px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

.main-menu__left:not(.header-logo-area) {
    margin-right: 120px !important;
}

/* Main Menu Text - Shift to right */
.main-menu__main-menu-box {
    margin-left: 0 !important;
}

/* Main Menu Height & Spacing - Desktop: balanced top/bottom */
.main-menu__wrapper {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.header-nav-unified .main-menu__wrapper {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.main-menu__wrapper-inner {
    min-height: 60px !important;
    align-items: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.main-menu__right-bottom {
    padding: 0 4px !important;
    min-height: 52px !important;
    height: 52px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    display: flex !important;
    align-items: center !important;
}

@media (min-width: 992px) {
    .header-nav-unified .main-menu__right-bottom {
        height: auto !important;
        min-height: var(--header-row-h, 64px) !important;
        align-self: stretch !important;
        align-items: center !important;
        padding: 0 !important;
    }
}

/* Join HRCI Button - Remove Margins */
.main-menu__main-menu-content-box {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.main-menu__search-cat-btn-box {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.main-menu__btn-box {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.main-menu__btn {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* ===== Header Menu Bar - Single Row Layout (desktop) ===== */
.header-menubar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 8px 20px 8px 24px !important;
    min-height: 52px !important;
    height: auto !important;
    flex-wrap: nowrap !important;
    background-color: transparent !important;
    margin: 0 !important;
}

.header-nav-wrap {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin-left: 12px !important;
    overflow: visible !important;
}

/* Unified menubar: no horizontal/vertical scroll track — links wrap inside the strip */
.header-nav-unified .header-nav-wrap,
.stricky-header.header-nav-unified .header-nav-wrap,
.sticky-header__content .header-nav-wrap {
    overflow: visible !important;
    margin-left: 0 !important;
}

.header-nav-list {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
}

.header-nav-list > li {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    flex-shrink: 0 !important;
}

/* Login / Register / Logout in default main menu: never on desktop (top bar has Login) */
@media (min-width: 992px) {
    .header-nav-list > li.nav-main-auth-mobile {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        left: -9999px !important;
        pointer-events: none !important;
    }

    /* Home in main menubar: hidden on desktop (logo links home); still shown in mobile slide-out / narrow view */
    .header-nav-list > li.nav-menu-home-mobile-only,
    .stricky-header.header-nav-unified .header-nav-list > li.nav-menu-home-mobile-only,
    .sticky-header__content .header-nav-list > li.nav-menu-home-mobile-only {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        left: -9999px !important;
        pointer-events: none !important;
    }
}

.header-nav-list > li > a {
    padding: 6px 8px !important;
    border-radius: 6px;
    font-size: 13px !important;
    font-weight: 600 !important;
    position: relative;
    overflow: hidden;
    transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

/* Hover animation: slight scale + background */
.header-nav-list > li > a:hover {
    background: rgba(255, 255, 255, 0.15);
    transform: translateY(-1px);
}

.header-nav-unified .header-nav-list > li > a:hover {
    transform: none !important;
}

.header-nav-list > li > a::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 4px;
    width: 0;
    height: 2px;
    background: #fff;
    border-radius: 1px;
    transition: width 0.25s ease, left 0.25s ease;
}

.header-nav-list > li > a:hover::after {
    width: 70%;
    left: 15%;
}

.header-cta-wrap {
    flex-shrink: 0 !important;
    margin-left: auto !important;
}

.header-join-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 18px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #fff !important;
    background: rgba(255, 255, 255, 0.2) !important;
    border: 2px solid rgba(255, 255, 255, 0.5) !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, border-color 0.25s ease;
}

.header-join-btn:hover {
    color: #fff !important;
    background: rgba(255, 255, 255, 0.28) !important;
    border-color: rgba(255, 255, 255, 0.8) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.2);
    transform: translateY(-2px);
}

.header-join-btn i {
    font-size: 14px;
}

/* Desktop: teal nav row (Join/Login uses top bar) */
@media (min-width: 992px) {
    .header-nav-unified .header-menubar {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 4px !important;
        padding: 0 0 0 4px !important;
        min-height: 100% !important;
        height: auto !important;
        background: transparent !important;
    }

    .header-nav-unified .header-nav-wrap,
    .stricky-header.header-nav-unified .header-nav-wrap,
    .sticky-header__content .header-nav-wrap {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        overflow: visible !important;
    }

    .header-nav-unified .header-nav-list > li > a {
        color: #ffffff !important;
    }

    .header-nav-unified .header-nav-list > li.dropdown > a {
        color: #ffffff !important;
    }
}

/* Theme style.css only sets .main-menu__list>li>ul to display:flex at 1200px+; fix 992–1199 + stacking */
@media (min-width: 992px) {
    .header-nav-unified .main-menu__list > li > ul,
    .header-nav-unified .main-menu__list > li > ul > li > ul,
    .stricky-header.header-nav-unified .main-menu__list > li > ul,
    .stricky-header.header-nav-unified .main-menu__list > li > ul > li > ul {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
    }

    .header-nav-unified .main-menu__right-bottom,
    .header-nav-unified .main-menu__main-menu-box,
    .header-nav-unified .header-menubar {
        overflow: visible !important;
    }

    .header-nav-unified .main-menu__list > li {
        position: relative !important;
    }

    .header-nav-unified .main-menu__list > li > ul {
        z-index: 10040 !important;
    }

    /* Click-open class (main.js) + hover */
    .header-nav-unified .main-menu__list > li.dropdown.nav-dropdown-open > ul,
    .stricky-header.header-nav-unified .main-menu__list > li.dropdown.nav-dropdown-open > ul {
        opacity: 1 !important;
        visibility: visible !important;
        -webkit-transform: scaleY(1) translateZ(0) !important;
        transform: scaleY(1) translateZ(0) !important;
    }
}

/* ===== Elegant Menu Bar Optimizations (Desktop + Mobile) ===== */

/* Desktop: Refined dropdown styling */
.main-menu .main-menu__list>li>ul,
.main-menu .main-menu__list>li>ul>li>ul,
.stricky-header .main-menu__list>li>ul,
.stricky-header .main-menu__list>li>ul>li>ul {
    min-width: 260px;
    padding: 12px 8px !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.06) !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    margin-top: 4px !important;
    transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease !important;
}

.main-menu .main-menu__list>li>ul>li>a,
.main-menu .main-menu__list>li>ul>li>ul>li>a,
.stricky-header .main-menu__list>li>ul>li>a,
.stricky-header .main-menu__list>li>ul>li>ul>li>a {
    padding: 10px 16px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
}

.main-menu .main-menu__list>li>ul>li:hover>a,
.main-menu .main-menu__list>li>ul>li>ul>li:hover>a,
.stricky-header .main-menu__list>li>ul>li:hover>a,
.stricky-header .main-menu__list>li>ul>li>ul>li:hover>a {
    background-color: var(--oxpins-base, #00715d) !important;
    color: #fff !important;
    transform: translateX(4px);
}

.main-menu .main-menu__list>li>ul>li+li,
.main-menu .main-menu__list>li>ul>li>ul>li+li,
.stricky-header .main-menu__list>li>ul>li+li,
.stricky-header .main-menu__list>li>ul>li>ul>li+li {
    margin-top: 2px !important;
}

/* HR lines between submenu items in desktop view */
.main-menu .main-menu__list>li>ul>li,
.main-menu .main-menu__list>li>ul>li>ul>li,
.stricky-header .main-menu__list>li>ul>li,
.stricky-header .main-menu__list>li>ul>li>ul>li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
}
.main-menu .main-menu__list>li>ul>li:last-child,
.main-menu .main-menu__list>li>ul>li>ul>li:last-child,
.stricky-header .main-menu__list>li>ul>li:last-child,
.stricky-header .main-menu__list>li>ul>li>ul>li:last-child {
    border-bottom: none !important;
}

/* Unified header: flyout card (after generic .main-menu rules so it wins cascade) */
@media (min-width: 992px) {
    .main-menu.header-nav-unified .main-menu__list > li > ul,
    .stricky-header.header-nav-unified .main-menu__list > li > ul {
        min-width: 268px !important;
        padding: 10px !important;
        border-radius: 14px !important;
        border: 1px solid rgba(15, 23, 42, 0.06) !important;
        box-shadow:
            0 20px 50px rgba(15, 23, 42, 0.14),
            0 8px 20px rgba(15, 23, 42, 0.08),
            0 0 0 1px rgba(255, 255, 255, 0.6) inset !important;
        margin-top: 0 !important;
        overflow: visible !important;
        /* Close thoda lang (~300ms) + open turant — submenu tak mouse move */
        transition:
            opacity 0.22s ease 0.3s,
            visibility 0.22s ease 0.3s,
            transform 0.22s ease 0.3s,
            -webkit-transform 0.22s ease 0.3s !important;
    }

    /* Bridge: menubar row aur dropdown ke beech gap par hover na tootey */
    .main-menu.header-nav-unified .main-menu__list > li > ul::before,
    .stricky-header.header-nav-unified .main-menu__list > li > ul::before {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        top: -16px !important;
        height: 16px !important;
        background: transparent !important;
    }

    .main-menu.header-nav-unified .main-menu__list > li:hover > ul,
    .main-menu.header-nav-unified .main-menu__list > li.dropdown.nav-dropdown-open > ul,
    .stricky-header.header-nav-unified .main-menu__list > li:hover > ul,
    .stricky-header.header-nav-unified .main-menu__list > li.dropdown.nav-dropdown-open > ul {
        transition-delay: 0s, 0s, 0s, 0s !important;
    }

    /* Nested flyout (right side): vertical bridge so gap se hover na chhootey */
    .main-menu.header-nav-unified .main-menu__list > li > ul > li > ul:not(.right-align),
    .stricky-header.header-nav-unified .main-menu__list > li > ul > li > ul:not(.right-align) {
        transition:
            opacity 0.2s ease 0.28s,
            visibility 0.2s ease 0.28s,
            transform 0.2s ease 0.28s,
            -webkit-transform 0.2s ease 0.28s !important;
        overflow: visible !important;
    }
    .main-menu.header-nav-unified .main-menu__list > li > ul > li > ul:not(.right-align)::before,
    .stricky-header.header-nav-unified .main-menu__list > li > ul > li > ul:not(.right-align)::before {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        bottom: 0 !important;
        left: -14px !important;
        width: 14px !important;
    }
    .main-menu.header-nav-unified .main-menu__list li ul li > ul.right-align,
    .stricky-header.header-nav-unified .main-menu__list li ul li > ul.right-align {
        transition:
            opacity 0.2s ease 0.28s,
            visibility 0.2s ease 0.28s,
            transform 0.2s ease 0.28s,
            -webkit-transform 0.2s ease 0.28s !important;
        overflow: visible !important;
    }
    .main-menu.header-nav-unified .main-menu__list li ul li > ul.right-align::before,
    .stricky-header.header-nav-unified .main-menu__list li ul li > ul.right-align::before {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        bottom: 0 !important;
        right: -14px !important;
        width: 14px !important;
        left: auto !important;
    }
    .main-menu.header-nav-unified .main-menu__list > li > ul > li:hover > ul,
    .main-menu.header-nav-unified .main-menu__list > li > ul > li > ul:hover,
    .stricky-header.header-nav-unified .main-menu__list > li > ul > li:hover > ul,
    .stricky-header.header-nav-unified .main-menu__list > li > ul > li > ul:hover {
        transition-delay: 0s, 0s, 0s, 0s !important;
    }

    .main-menu.header-nav-unified .main-menu__list > li > ul > li > a,
    .stricky-header.header-nav-unified .main-menu__list > li > ul > li > a {
        border-radius: 10px !important;
        font-weight: 500 !important;
        letter-spacing: 0.02em !important;
        font-family: var(--header-nav-font-family) !important;
        transition:
            background 0.18s ease,
            color 0.18s ease,
            transform 0.18s ease,
            box-shadow 0.18s ease !important;
    }

    .main-menu.header-nav-unified .main-menu__list > li > ul > li:hover > a,
    .stricky-header.header-nav-unified .main-menu__list > li > ul > li:hover > a {
        box-shadow: 0 2px 8px rgba(0, 113, 93, 0.18) !important;
    }
}

/* Desktop: Menu bar spacing refinement */
.header-menubar {
    padding: 8px 20px 8px 16px !important;
    gap: 4px !important;
}

.header-nav-list > li > a {
    padding: 8px 12px !important;
    font-size: 14px !important;
}

/* ===== Desktop (≥992px): menubar + top bar — align text with buttons, stable height ===== */
@media (min-width: 992px) {
    /* Top bar: keep search + buttons on one row; avoid text sitting above button row at full width */
    .top-bar-inner {
        flex-wrap: nowrap !important;
        align-items: center !important;
    }
    .top-bar-right {
        flex-wrap: nowrap !important;
        align-items: center !important;
        width: auto !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        gap: 6px !important; /* remove large empty space between search and buttons */
    }
    .top-bar-search-box {
        flex: 0 0 auto !important;
        min-width: 0 !important;
        max-width: none !important;
        margin-right: 0 !important;
    }
    .top-bar-search-input-wrapper {
        width: 250px !important;
        height: 40px !important;
    }
    .top-bar-buttons {
        flex-wrap: nowrap !important;
        flex-shrink: 0 !important;
        align-items: center !important;
        margin-left: 0 !important;
        gap: 6px !important;
    }
    .top-bar-btn {
        align-self: center !important;
    }

    /*
     * Main nav row: logo | teal strip. display:contents flattens wrappers for grid.
     */
    .header-nav-unified .main-menu__wrapper-inner,
    .stricky-header.header-nav-unified .main-menu__wrapper-inner,
    .sticky-header__content .main-menu__wrapper-inner {
        display: grid !important;
        grid-template-columns: var(--header-logo-col-w, 232px) minmax(0, 1fr) !important;
        grid-template-areas: "logo nav" !important;
        align-items: stretch !important;
        gap: 0 !important;
        min-height: var(--header-row-h, 64px) !important;
    }
    .header-nav-unified .main-menu__left.header-logo-area,
    .stricky-header.header-nav-unified .main-menu__left.header-logo-area,
    .sticky-header__content .main-menu__left.header-logo-area {
        grid-area: logo !important;
    }
    .header-nav-unified .main-menu__right,
    .stricky-header.header-nav-unified .main-menu__right,
    .sticky-header__content .main-menu__right {
        display: contents !important;
    }
    .header-nav-unified .main-menu__right-bottom,
    .stricky-header.header-nav-unified .main-menu__right-bottom,
    .sticky-header__content .main-menu__right-bottom {
        display: contents !important;
    }
    .header-nav-unified .header-menubar,
    .stricky-header.header-nav-unified .header-menubar,
    .sticky-header__content .header-menubar {
        display: contents !important;
    }
    .header-nav-unified .header-nav-wrap,
    .stricky-header.header-nav-unified .header-nav-wrap,
    .sticky-header__content .header-nav-wrap {
        grid-area: nav !important;
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: var(--header-row-h, 64px) !important;
        height: auto !important;
        align-self: stretch !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        align-content: center !important;
        justify-content: flex-start !important;
        gap: 0 !important;
        box-sizing: border-box !important;
        position: relative !important;
        z-index: 1 !important;
        padding: 7px 8px 7px 8px !important;
        overflow: visible !important;
        background: linear-gradient(
            180deg,
            var(--header-menubar-teal) 0%,
            var(--header-menubar-teal-mid) 52%,
            var(--header-menubar-teal-dark) 100%
        ) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.12),
            inset 0 -1px 0 rgba(0, 0, 0, 0.06) !important;
        border: none !important;
        border-left: 1px solid rgba(255, 255, 255, 0.14) !important;
    }
    .header-nav-wrap {
        display: flex !important;
        align-items: center !important;
        min-height: 0 !important;
    }
    .header-nav-list {
        align-items: center !important;
    }
    .header-nav-unified .header-nav-list,
    .stricky-header.header-nav-unified .header-nav-list,
    .sticky-header__content .header-nav-list {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
        max-width: none !important;
        gap: 2px 5px !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        align-content: center !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
        white-space: normal !important;
    }
    .header-nav-list > li {
        display: flex !important;
        align-items: center !important;
    }
    .header-nav-unified .header-nav-list > li > a,
    .stricky-header.header-nav-unified .header-nav-list > li > a,
    .sticky-header__content .header-nav-list > li > a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1.3 !important;
        min-height: 0 !important;
        padding: var(--header-nav-link-py, 7px) var(--header-nav-link-px, 6px) !important;
        font-size: var(--header-nav-font, 15px) !important;
        font-weight: 700 !important;
        letter-spacing: 0.02em !important;
        font-family: var(--header-nav-font-family) !important;
        text-transform: none !important;
        border-radius: 6px !important;
        text-shadow: none !important;
        color: rgba(255, 255, 255, 0.97) !important;
        box-sizing: border-box !important;
        vertical-align: middle !important;
        transition:
            background 0.22s ease,
            color 0.22s ease,
            box-shadow 0.22s ease !important;
    }
    .header-nav-unified .header-nav-list > li > a::after,
    .stricky-header.header-nav-unified .header-nav-list > li > a::after,
    .sticky-header__content .header-nav-list > li > a::after {
        display: none !important;
        content: none !important;
    }
    .header-nav-unified .header-nav-list > li > a:hover,
    .header-nav-unified .header-nav-list > li > a:focus-visible,
    .stricky-header.header-nav-unified .header-nav-list > li > a:hover,
    .stricky-header.header-nav-unified .header-nav-list > li > a:focus-visible,
    .sticky-header__content .header-nav-list > li > a:hover,
    .sticky-header__content .header-nav-list > li > a:focus-visible {
        background: rgba(255, 255, 255, 0.14) !important;
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset !important;
        transform: none !important;
        outline: none !important;
        color: #ffffff !important;
    }
    .header-nav-unified .header-nav-list > li.dropdown.nav-dropdown-open > a,
    .stricky-header.header-nav-unified .header-nav-list > li.dropdown.nav-dropdown-open > a,
    .sticky-header__content .header-nav-list > li.dropdown.nav-dropdown-open > a {
        background: rgba(255, 255, 255, 0.2) !important;
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.12) inset !important;
        color: #ffffff !important;
    }

    /* Join Us / avatar — menubar right (logo ke opposite) */
    .header-nav-unified .header-nav-cta,
    .stricky-header.header-nav-unified .header-nav-cta,
    .sticky-header__content .header-nav-cta {
        flex: 0 0 auto !important;
        margin-left: auto !important;
        padding-left: 6px !important;
        padding-right: 2px !important;
        align-self: center !important;
    }
    .header-join-us-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 8px 16px !important;
        font-family: var(--header-nav-font-family) !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        letter-spacing: 0.06em !important;
        text-transform: uppercase !important;
        color: #0f172a !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        border-radius: 8px !important;
        background: linear-gradient(180deg, #ffeaa7 0%, #fdcb6e 45%, #f0b429 100%) !important;
        border: 1px solid rgba(180, 120, 20, 0.35) !important;
        box-shadow:
            0 2px 8px rgba(0, 0, 0, 0.12),
            inset 0 1px 0 rgba(255, 255, 255, 0.55) !important;
        transition:
            transform 0.2s ease,
            box-shadow 0.2s ease,
            filter 0.2s ease !important;
    }
    .header-join-us-btn:hover,
    .header-join-us-btn:focus-visible {
        color: #0f172a !important;
        text-decoration: none !important;
        filter: brightness(1.05) !important;
        box-shadow:
            0 4px 14px rgba(0, 0, 0, 0.15),
            inset 0 1px 0 rgba(255, 255, 255, 0.65) !important;
        outline: none !important;
    }
    .header-user-avatar-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 44px !important;
        height: 44px !important;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        border-radius: 50% !important;
        background: rgba(255, 255, 255, 0.2) !important;
        box-shadow:
            0 0 0 2px rgba(255, 255, 255, 0.85),
            0 2px 10px rgba(0, 0, 0, 0.15) !important;
        cursor: pointer !important;
        transition:
            box-shadow 0.2s ease,
            transform 0.2s ease !important;
    }
    .header-user-avatar-btn:hover,
    .header-user-avatar-btn:focus-visible {
        box-shadow:
            0 0 0 2px #ffffff,
            0 4px 14px rgba(0, 0, 0, 0.2) !important;
        outline: none !important;
    }
    .header-user-avatar-img {
        width: 40px !important;
        height: 40px !important;
        border-radius: 50% !important;
        object-fit: cover !important;
        display: block !important;
    }
    .header-menubar-user-dropdown {
        position: relative !important;
    }
    .header-menubar-user-dropdown-menu {
        min-width: 200px !important;
        margin-top: 8px !important;
        padding: 8px 0 !important;
        border-radius: 12px !important;
        border: 1px solid rgba(15, 23, 42, 0.08) !important;
        box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14) !important;
        z-index: 10060 !important;
        font-family: var(--header-nav-font-family) !important;
    }
    .header-menubar-user-dropdown-menu .dropdown-item {
        font-size: 14px !important;
        font-weight: 600 !important;
        padding: 10px 18px !important;
        color: #0f172a !important;
    }
    .header-menubar-user-dropdown-menu .dropdown-item:hover {
        background: rgba(47, 158, 163, 0.12) !important;
        color: #0f172a !important;
    }
    .header-menubar-user-dropdown-menu button.dropdown-item {
        width: 100% !important;
        text-align: left !important;
        border: none !important;
        background: none !important;
        cursor: pointer !important;
    }

    .header-user-dropdown-header {
        background: linear-gradient(135deg, rgba(20, 184, 166, 0.1) 0%, rgba(13, 148, 136, 0.05) 100%) !important;
        border-color: rgba(15, 23, 42, 0.08) !important;
    }
    .header-user-dropdown-header-img {
        width: 40px !important;
        height: 40px !important;
        border-radius: 50% !important;
        object-fit: cover !important;
        border: 2px solid #fff !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12) !important;
        flex-shrink: 0 !important;
    }
    .header-user-dropdown-name {
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #0f172a !important;
        line-height: 1.25 !important;
        max-width: 220px !important;
    }
    .header-user-dropdown-email {
        font-size: 12px !important;
        color: #64748b !important;
        max-width: 220px !important;
        margin-top: 2px !important;
    }
    .header-menubar-user-dropdown-menu .header-user-dropdown-link {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        text-align: left !important;
        font-weight: 600 !important;
    }
    .header-menubar-user-dropdown-menu .header-user-dropdown-link i:first-child {
        width: 1.25em !important;
        text-align: center !important;
        color: #0d9488 !important;
    }
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action {
        color: #0f172a !important;
    }
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action i {
        color: #0f172a !important;
    }
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action:hover {
        background: rgba(15, 23, 42, 0.06) !important;
        color: #0f172a !important;
    }
    /* Logout: force readable black (avoid inheriting white from teal menubar) */
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action,
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action span,
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action i {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
    }
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action:hover,
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action:hover span,
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action:hover i,
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action:focus,
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action:focus span,
    .header-menubar-user-dropdown-menu button.header-user-dropdown-link.logout-action:focus i {
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
    }

    .header-cta-wrap {
        display: flex !important;
        align-items: center !important;
        align-self: center !important;
    }
    .header-join-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 42px !important;
        line-height: 1.2 !important;
        box-sizing: border-box !important;
        align-self: center !important;
    }
    .header-join-btn:hover {
        transform: none !important;
    }
}

/* Wide desktop (≥1400px): one row, tight gaps so last items (e.g. Contact) stay visible */
@media (min-width: 1400px) {
    .header-nav-unified .header-nav-wrap,
    .stricky-header.header-nav-unified .header-nav-wrap,
    .sticky-header__content .header-nav-wrap {
        flex-wrap: nowrap !important;
        align-items: center !important;
    }
    .header-nav-unified .header-nav-list,
    .stricky-header.header-nav-unified .header-nav-list,
    .sticky-header__content .header-nav-list {
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        gap: 2px 4px !important;
        align-content: center !important;
        white-space: nowrap !important;
    }
    .header-nav-unified .header-nav-list > li,
    .stricky-header.header-nav-unified .header-nav-list > li,
    .sticky-header__content .header-nav-list > li {
        flex-shrink: 0 !important;
    }
    .header-nav-unified .header-nav-list > li > a,
    .stricky-header.header-nav-unified .header-nav-list > li > a,
    .sticky-header__content .header-nav-list > li > a {
        white-space: nowrap !important;
    }
}

/* 992–1199px: logo on first row, teal nav full width below; links wrap; top bar may wrap */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .top-bar-inner {
        flex-wrap: wrap !important;
        row-gap: 8px !important;
    }
    .top-bar-right {
        flex-wrap: wrap !important;
        justify-content: flex-end !important;
    }
    .header-nav-unified .main-menu__wrapper-inner,
    .stricky-header.header-nav-unified .main-menu__wrapper-inner,
    .sticky-header__content .main-menu__wrapper-inner {
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "logo"
            "nav" !important;
        min-height: 0 !important;
    }
    .header-nav-unified .main-menu__left.header-logo-area,
    .stricky-header.header-nav-unified .main-menu__left.header-logo-area,
    .sticky-header__content .main-menu__left.header-logo-area {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: 0 0 auto !important;
        border-bottom: 1px solid rgba(15, 23, 42, 0.06) !important;
    }
    .header-nav-unified .header-nav-wrap,
    .stricky-header.header-nav-unified .header-nav-wrap,
    .sticky-header__content .header-nav-wrap {
        min-height: var(--header-row-h, 64px) !important;
        overflow: visible !important;
        border-left: none !important;
    }
    .header-nav-unified .header-nav-list,
    .stricky-header.header-nav-unified .header-nav-list,
    .sticky-header__content .header-nav-list {
        flex-wrap: wrap !important;
        width: 100% !important;
        max-width: 100% !important;
        justify-content: flex-start !important;
        row-gap: 4px !important;
        column-gap: 4px !important;
    }
    .header-nav-unified .header-nav-wrap,
    .stricky-header.header-nav-unified .header-nav-wrap,
    .sticky-header__content .header-nav-wrap {
        flex-wrap: wrap !important;
    }
    .header-nav-unified .header-nav-cta,
    .stricky-header.header-nav-unified .header-nav-cta,
    .sticky-header__content .header-nav-cta {
        width: 100% !important;
        margin-left: 0 !important;
        justify-content: flex-end !important;
        padding-top: 6px !important;
        padding-left: 0 !important;
    }
}

@media (min-width: 1200px) {
    .top-bar-inner {
        flex-wrap: nowrap !important;
    }
    .top-bar-right {
        flex-wrap: nowrap !important;
    }
}

/* Mobile nav panel – above header when open */
#mobileNavWrapper.mobile-nav__wrapper,
.mobile-nav__wrapper {
    z-index: 99999 !important;
}

/* Mobile: Elegant slide panel */
.mobile-nav__content {
    font-family: var(--header-nav-font-family) !important;
    width: 320px !important;
    max-width: 85vw;
    background: linear-gradient(180deg, #0f172a 0%, #1e293b 100%) !important;
    padding: 56px 20px 32px !important;
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.3);
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}
.mobile-nav__content::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
}

.mobile-nav__close {
    top: 16px !important;
    right: 16px !important;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    font-size: 18px;
    transition: background 0.25s ease;
    z-index: 11;
    cursor: pointer;
}

.mobile-nav__close:hover {
    background: rgba(255, 255, 255, 0.15);
}

/* Top bar buttons in mobile menu – below main menu, 2 per row (no border-top to avoid double line after Logout) */
.mobile-nav__quick-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    padding: 20px 0 16px;
    margin-top: 16px;
    margin-bottom: 0;
}
.mobile-nav__quick-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 10px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    transition: background 0.2s ease, transform 0.2s ease;
    text-align: center;
    line-height: 1.2;
}
.mobile-nav__quick-btn i {
    font-size: 16px;
    flex-shrink: 0;
}
.mobile-nav__quick-btn:hover {
    background: rgba(0, 113, 93, 0.4);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.2);
    transform: translateY(-1px);
}
.mobile-nav__quick-badge {
    background: #dc2626;
    color: #fff;
    font-size: 11px;
    min-width: 18px;
    height: 18px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    margin-left: 4px;
}

/* Logout link – highlight in mobile menu */
.mobile-nav__content .main-menu__logout-link,
.mobile-nav__content a[href*="logout"],
.mobile-nav__content .main-menu__list li a[onclick*="logout-form"] {
    background: rgba(220, 38, 38, 0.25) !important;
    color: #fecaca !important;
    font-weight: 700 !important;
    border-radius: 10px;
    border: 1px solid rgba(220, 38, 38, 0.5);
}
.mobile-nav__content .main-menu__logout-link:hover,
.mobile-nav__content a[href*="logout"]:hover,
.mobile-nav__content .main-menu__list li a[onclick*="logout-form"]:hover {
    background: rgba(220, 38, 38, 0.4) !important;
    color: #fff !important;
}

.mobile-nav__content .main-menu__list>li>a,
.mobile-nav__content .main-menu__list>li>ul>li>a {
    padding: 14px 16px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    border-radius: 10px !important;
    margin-bottom: 4px !important;
    transition: all 0.2s ease !important;
}

.mobile-nav__content .main-menu__list>li>a:hover,
.mobile-nav__content .main-menu__list>li>ul>li>a:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

/* Mobile menu redesign: remove divider-line look and keep clean card rows */
.mobile-nav__content .main-menu__list,
.mobile-nav__content .main-menu__list > li > ul,
.mobile-nav__content .main-menu__list > li > ul > li > ul {
    border-top: 0 !important; /* remove HR above Home/submenus */
}
.mobile-nav__content .main-menu__list > li,
.mobile-nav__content .main-menu__list > li > ul > li {
    border-bottom: 0 !important;
    margin-bottom: 4px;
}
.mobile-nav__content .main-menu__list > li > a,
.mobile-nav__content .main-menu__list > li > ul > li > a {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.mobile-nav__content .main-menu__list > li > a:hover,
.mobile-nav__content .main-menu__list > li > ul > li > a:hover {
    background: rgba(255, 255, 255, 0.12) !important;
    border-color: rgba(255, 255, 255, 0.18);
}

/* Mobile slide-out: main menu = theme-colored bullets; submenu = white bullets */
.mobile-nav__content .main-menu__list {
    list-style-type: disc !important;
    list-style-position: outside;
    padding-left: 1.15rem !important;
}
.mobile-nav__content .main-menu__list > li {
    display: list-item !important;
    list-style-type: disc !important;
    list-style-position: outside;
}
.mobile-nav__content .main-menu__list > li::marker {
    color: var(--oxpins-primary, #00715d);
}
.mobile-nav__content .main-menu__list > li > a {
    gap: 0 10px;
    justify-content: flex-start !important;
    text-align: left !important;
}
/* Keep dropdown chevron on the right while label stays left-aligned like submenu */
.mobile-nav__content .main-menu__list > li > a > button {
    margin-left: auto;
    flex-shrink: 0;
}
/* Desktop Menu Designer icons hidden here — main row uses theme bullet only */
.mobile-nav__content .main-menu__list > li > a .menu-link-icon {
    display: none !important;
}

/* Submenu: white disc bullets */
.mobile-nav__content .main-menu__list > li > ul,
.mobile-nav__content .main-menu__list > li > ul > li > ul {
    list-style-type: disc !important;
    list-style-position: outside;
    padding-left: 1.35rem !important;
    margin-left: 0.35rem !important;
}
.mobile-nav__content .main-menu__list > li > ul > li,
.mobile-nav__content .main-menu__list > li > ul > li > ul > li {
    display: list-item !important;
    list-style-type: disc !important;
    list-style-position: outside;
    color: #ffffff;
}
.mobile-nav__content .main-menu__list > li > ul > li::marker,
.mobile-nav__content .main-menu__list > li > ul > li > ul > li::marker {
    color: #ffffff;
}

.mobile-nav__cart-link-wrap {
    padding: 12px 16px;
    margin-bottom: 12px;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 12px;
}

.mobile-nav__cart-link {
    display: flex !important;
    align-items: center;
    gap: 12px;
    font-size: 15px !important;
    font-weight: 600 !important;
}

.mobile-nav__container {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    flex: 1;
    min-height: 0;
}
.mobile-nav__container .main-menu__list {
    display: block !important;
}

@media (max-width: 400px) {
    .mobile-nav__content {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}


/* Mobile toggle button - refined */
.mobile-nav__toggler,
/* Mobile menu toggle buttons – ensure clickable and no default button style */
.mobile-nav__toggler.mobile-toggle-btn,
.mobile-nav__toggler.mobile-toggle-logo,
button.mobile-toggle-btn,
button.mobile-toggle-logo {
    cursor: pointer !important;
    appearance: none;
    -webkit-appearance: none;
    font: inherit;
}
.mobile-toggle-btn,
.mobile-toggle-logo {
    transition: all 0.25s ease !important;
}

/* Overlay/close toggler only — header hamburger uses gold gradient hover */
.mobile-nav__wrapper .mobile-nav__toggler:hover {
    background: rgba(255, 255, 255, 0.12) !important;
}

@media (max-width: 991px) {
    .mobile-toggle-btn,
    .mobile-toggle-logo {
        padding: 0 !important;
        border-radius: 50% !important;
    }
}

@media (max-width: 991px) {
    /* Mobile: no logo box – remove background, border, shadow; logo only */
    .header-logo-area {
        flex: 1 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }
    .header-logo-box,
    .main-header .header-logo-box,
    .main-header .header-logo-box.footer-style-logo-box,
    .main-header .main-menu__logo.header-logo-box {
        background: none !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        height: auto !important;
        min-height: 88px !important;
        border-radius: 0 !important;
    }
    .header-logo-box:hover,
    .main-header .header-logo-box:hover {
        background: none !important;
        box-shadow: none !important;
    }
    .header-logo-box::before,
    .header-logo-box::after {
        display: none !important;
    }
    .header-logo-box a {
        display: flex !important;
        align-items: center !important;
        height: 88px !important;
    }
    .header-logo-img,
    .main-menu__logo img#headerLogo,
    .main-header .main-menu__logo img,
    #headerLogo.header-logo-img {
        max-width: min(var(--header-logo-img-w, 220px), calc(100vw - 96px)) !important;
        width: auto !important;
        max-height: 88px !important;
        height: auto !important;
        object-fit: contain !important;
        background: none !important;
        background-color: transparent !important;
    }
}

/* ===== Mobile menu bar – only logo + hamburger, no menu text (991px and below) ===== */
@media (max-width: 991px) {
    /* Hide ALL menu text / menubar on mobile – only logo and toggle visible */
    .main-header .main-menu__right-bottom,
    .main-header .header-menubar,
    .main-header .main-menu__main-menu-box,
    .main-header .main-menu__list,
    .main-header .header-nav-wrap,
    .stricky-header.stricked-menu .main-menu__right-bottom,
    .stricky-header.stricked-menu .header-menubar,
    .stricky-header.stricked-menu .main-menu__main-menu-box,
    .stricky-header.stricked-menu .main-menu__list,
    .stricky-header.stricked-menu .header-nav-wrap {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        left: -9999px !important;
    }
    /* Main nav bar: marble strip + gold frame (mockup) */
    .main-header .main-menu.header-nav-unified,
    .main-header .main-menu.header-nav-unified .main-menu__wrapper,
    .main-header .main-menu.header-nav-unified .main-menu__left,
    .main-header .main-menu.header-nav-unified .main-menu__right {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }
    .main-header .main-menu.header-nav-unified .main-menu__wrapper-inner {
        width: 100% !important;
        max-width: 100% !important;
        background-color: #f6f6f4 !important;
        background-image:
            radial-gradient(ellipse 140% 90% at 30% 15%, rgba(255, 255, 255, 0.92) 0%, transparent 55%),
            radial-gradient(ellipse 100% 70% at 85% 75%, rgba(0, 0, 0, 0.04) 0%, transparent 50%),
            radial-gradient(ellipse 80% 60% at 10% 90%, rgba(0, 0, 0, 0.03) 0%, transparent 45%),
            linear-gradient(125deg, #ffffff 0%, #f0f0ee 35%, #fafaf8 55%, #ebe9e6 100%) !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: 0 1px 0 rgba(15, 23, 42, 0.06) !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
        padding-top: 8px !important;
        padding-bottom: 8px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }
    .main-header .main-menu__wrapper {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        max-width: 100% !important;
    }
    .stricky-header.header-nav-unified .main-menu__wrapper,
    .sticky-header__content .main-menu__wrapper {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        max-width: 100% !important;
    }
    /* Hamburger row: flex (no absolute) so gold circle aligns with logo */
    .main-header .main-menu__right {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex-shrink: 0 !important;
        min-height: 0 !important;
        position: relative !important;
    }
    .main-header .mobile-header-actions {
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        margin: 0 !important;
    }
    .main-header .header-logo-box.footer-style-logo-box,
    .main-header .main-menu__logo.header-logo-box,
    .stricky-header.stricked-menu .header-logo-box.footer-style-logo-box {
        background: none !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }
    .main-header .main-menu__logo img#headerLogo,
    .main-header .main-menu__logo img {
        background: none !important;
        background-color: transparent !important;
    }
    /* Round gold metallic menu trigger + theme-colored hamburger (fa-bars) */
    .main-header .mobile-toggle-btn,
    .main-header .mobile-nav__toggler.mobile-toggle-btn,
    .main-header .mobile-toggle-logo,
    .stricky-header.header-nav-unified .mobile-toggle-logo,
    .sticky-header__content .mobile-toggle-logo {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        min-height: 48px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        background: linear-gradient(155deg, #f2e6b8 0%, #d4af37 32%, #a67c00 58%, #e6c96a 100%) !important;
        border: 1px solid rgba(120, 90, 25, 0.55) !important;
        box-shadow:
            inset 0 2px 4px rgba(255, 255, 255, 0.5),
            inset 0 -3px 6px rgba(0, 0, 0, 0.2),
            0 2px 10px rgba(0, 0, 0, 0.12) !important;
        color: var(--oxpins-primary, #00715d) !important;
        position: relative !important;
        z-index: 10002 !important;
    }
    .main-header .mobile-toggle-btn i,
    .main-header .mobile-nav__toggler.mobile-toggle-btn i,
    .main-header .mobile-toggle-logo i,
    .stricky-header.header-nav-unified .mobile-toggle-logo i,
    .sticky-header__content .mobile-toggle-logo i {
        color: var(--oxpins-primary, #00715d) !important;
        font-size: 18px !important;
    }
    .main-header .mobile-toggle-btn:hover,
    .main-header .mobile-toggle-btn:focus,
    .main-header .mobile-toggle-logo:hover,
    .main-header .mobile-toggle-logo:focus,
    .stricky-header.header-nav-unified .mobile-toggle-logo:hover,
    .stricky-header.header-nav-unified .mobile-toggle-logo:focus,
    .sticky-header__content .mobile-toggle-logo:hover,
    .sticky-header__content .mobile-toggle-logo:focus {
        background: linear-gradient(155deg, #f8efd0 0%, #e0bc3c 35%, #b8860b 55%, #edd078 100%) !important;
        color: var(--oxpins-primary, #00715d) !important;
        border-color: rgba(100, 75, 20, 0.6) !important;
    }
    .main-header .mobile-toggle-btn:hover i,
    .main-header .mobile-toggle-btn:focus i,
    .main-header .mobile-toggle-logo:hover i,
    .main-header .mobile-toggle-logo:focus i,
    .stricky-header.header-nav-unified .mobile-toggle-logo:hover i,
    .stricky-header.header-nav-unified .mobile-toggle-logo:focus i,
    .sticky-header__content .mobile-toggle-logo:hover i,
    .sticky-header__content .mobile-toggle-logo:focus i {
        color: var(--oxpins-primary, #00715d) !important;
    }

    /*
     * Sticky header clone lives OUTSIDE .main-header (sibling), so rules like
     * `.main-header .main-menu__right { background: #fff }` never apply — scroll par
     * pura bar teal / primary gradient dikhta tha. Yahan stricky + content ko white.
     */
    .stricky-header.header-nav-unified,
    .stricky-header.header-nav-unified.stricky-fixed {
        background-color: transparent !important;
        box-shadow: none !important;
    }
    .stricky-header.header-nav-unified .main-menu__wrapper,
    .stricky-header.header-nav-unified .main-menu__left,
    .stricky-header.header-nav-unified .main-menu__right,
    .sticky-header__content .main-menu__wrapper,
    .sticky-header__content .main-menu__left,
    .sticky-header__content .main-menu__right {
        background: transparent !important;
    }
    .stricky-header.header-nav-unified .main-menu__wrapper-inner,
    .sticky-header__content .main-menu__wrapper-inner {
        width: 100% !important;
        max-width: 100% !important;
        background-color: #f6f6f4 !important;
        background-image:
            radial-gradient(ellipse 140% 90% at 30% 15%, rgba(255, 255, 255, 0.92) 0%, transparent 55%),
            radial-gradient(ellipse 100% 70% at 85% 75%, rgba(0, 0, 0, 0.04) 0%, transparent 50%),
            radial-gradient(ellipse 80% 60% at 10% 90%, rgba(0, 0, 0, 0.03) 0%, transparent 45%),
            linear-gradient(125deg, #ffffff 0%, #f0f0ee 35%, #fafaf8 55%, #ebe9e6 100%) !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: 0 1px 0 rgba(15, 23, 42, 0.06) !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
        padding-top: 8px !important;
        padding-bottom: 8px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }
    .stricky-header.header-nav-unified .main-menu__right,
    .sticky-header__content .main-menu__right {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex-shrink: 0 !important;
        min-height: 0 !important;
    }
    .stricky-header.header-nav-unified .mobile-toggle-logo,
    .sticky-header__content .mobile-toggle-logo {
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        margin: 0 !important;
    }
    .stricky-header.header-nav-unified .header-menubar,
    .sticky-header__content .header-menubar {
        background: transparent !important;
    }
    .stricky-header.header-nav-unified .mobile-toggle-logo,
    .sticky-header__content .mobile-toggle-logo {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        min-height: 48px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        background: linear-gradient(155deg, #f2e6b8 0%, #d4af37 32%, #a67c00 58%, #e6c96a 100%) !important;
        border: 1px solid rgba(120, 90, 25, 0.55) !important;
        box-shadow:
            inset 0 2px 4px rgba(255, 255, 255, 0.5),
            inset 0 -3px 6px rgba(0, 0, 0, 0.2),
            0 2px 10px rgba(0, 0, 0, 0.12) !important;
        color: var(--oxpins-primary, #00715d) !important;
    }
    .stricky-header.header-nav-unified .mobile-toggle-logo i,
    .sticky-header__content .mobile-toggle-logo i {
        color: var(--oxpins-primary, #00715d) !important;
        font-size: 18px !important;
    }
}

/* Sticky header: white logo area | teal nav (clone has no <nav>; .header-nav-unified on .stricky-header) */
@media (min-width: 992px) {
    .stricky-header.header-nav-unified .main-menu__wrapper,
    .stricky-header.header-nav-unified .sticky-header__content .main-menu__wrapper {
        background: #ffffff !important;
    }
    .stricky-header.header-nav-unified .main-menu__wrapper-inner,
    .sticky-header__content .main-menu__wrapper-inner {
        background: #ffffff !important;
    }
    .stricky-header.header-nav-unified .main-menu__left.header-logo-area,
    .sticky-header__content .main-menu__left.header-logo-area {
        background: #ffffff !important;
    }
    /* Teal strip on .header-nav-wrap; .main-menu__right uses display:contents on desktop */
    .stricky-header.header-nav-unified .main-menu__right,
    .sticky-header__content .main-menu__right {
        background: transparent !important;
    }
    .stricky-header.header-nav-unified .main-menu__wrapper-inner {
        min-height: var(--header-row-h, 64px) !important;
    }
}

@media (max-width: 991px) {
    .stricky-header .header-menubar,
    .sticky-header__content .header-menubar {
        padding: 6px 16px 6px 12px !important;
        min-height: 44px !important;
        height: 44px !important;
    }
}

.sticky-header__content .header-join-btn {
    padding: 6px 14px !important;
    font-size: 13px !important;
}

/* ===== Header responsive (mobile / tablet < 992px uses rules below) ===== */

@media (max-width: 991px) {
    .header-logo-area {
        flex: 1 !important;
        min-width: 0 !important;
    }
    .header-logo-box,
    .main-header .header-logo-box {
        min-height: 58px !important;
    }
    .header-logo-box a {
        height: 58px !important;
    }
    .header-logo-img,
    .header-nav-unified .main-menu__logo img#headerLogo {
        max-height: 58px !important;
        max-width: 100% !important;
    }
}

@media (max-width: 767px) {
    .header-nav-unified .main-menu__wrapper {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    .header-logo-box a {
        height: 56px !important;
    }
    .header-logo-img,
    .header-nav-unified .main-menu__logo img#headerLogo {
        max-height: 56px !important;
    }
}

@media (max-width: 575px) {
    .header-logo-box a {
        height: 52px !important;
    }
    .header-logo-img,
    .header-nav-unified .main-menu__logo img#headerLogo {
        max-height: 52px !important;
    }
}

/* Top Bar Translate */
.top-bar-translate {
    position: relative;
}

.top-bar-translate-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 18px;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 25px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 14px;
    font-weight: 500;
    color: #ffffff;
    white-space: nowrap;
}

.top-bar-translate-wrapper:hover {
    background: rgba(255, 255, 255, 0.25);
    border-color: rgba(255, 255, 255, 0.5);
    transform: translateY(-1px);
}

.top-bar-translate-wrapper i {
    font-size: 14px;
    color: #ffffff;
}

#translate-container-topbar {
    position: absolute;
    top: 100%;
    right: 0;
    margin-top: 10px;
    background: #ffffff;
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.2);
    display: none;
    z-index: 10000 !important;
    min-width: 200px;
}

#translate-container-topbar.show {
    display: block;
}

/* Responsive */
@media (max-width: 1199px) {
    .top-bar-nav {
        gap: 15px;
    }
    
    .top-bar-nav a {
        font-size: 13px;
    }
    
    .top-bar-btn {
        padding: 7px 16px;
        font-size: 13px;
    }
}

/* Hide topbar completely on mobile/tablet */
@media (max-width: 991px) {
    .top-bar-header {
        display: none !important;
    }
}

@media (max-width: 991px) {
    .top-bar-header {
        padding: 8px 0;
    }
    
    .top-bar-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    
    .top-bar-right {
        width: 100%;
        justify-content: space-between;
        flex-direction: column;
        gap: 10px;
    }
    
    .top-bar-search-box {
        width: 100%;
    }
    
    .top-bar-search-input-wrapper {
        width: 100%;
    }
    
    .top-bar-nav {
        gap: 12px;
    }
    
    .top-bar-nav a {
        font-size: 12px;
    }
    
    .top-bar-buttons {
        gap: 8px;
        width: 100%;
        justify-content: space-between;
    }
    
    .top-bar-btn {
        padding: 6px 14px;
        font-size: 12px;
    }
}

@media (max-width: 767px) {
    .top-bar-nav {
        display: none;
    }
    
    .top-bar-buttons {
        flex-direction: column;
        width: 100%;
    }
    
    .top-bar-btn {
        width: 100%;
        justify-content: center;
    }
}

/* Footer social – X (Twitter) SVG icon */
.site-footer__social a svg {
    display: block;
    flex-shrink: 0;
}
.site-footer__social a.footer-social-x svg {
    width: 16px;
    height: 16px;
}
/* Footer: remove hover effect from social icons */
.site-footer__social a:hover {
    color: var(--oxpins-white) !important;
    background-color: var(--oxpins-base) !important;
    border-color: transparent !important;
    transform: none !important;
}
.site-footer__social a:hover:after {
    opacity: 0 !important;
    transform: scaleY(0) !important;
}
/* Footer: contact details text not bold */
.site-footer .footer-widget__contact-list .text p,
.site-footer .footer-widget__contact-list .text p a {
    font-weight: 400 !important;
}
/* Footer about: logo with dotted rounded border */
.footer-widget__about-logo img {
    border: 2px dotted rgba(255, 255, 255, 0.5);
    border-radius: 12px;
    padding: 4px;
    box-sizing: border-box;
}
/* Footer about: full-width hr after logo, then Donate now */
.footer-widget__about-hr {
    width: 100%;
    max-width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.4);
    border: none;
    margin: 1rem 0 1rem 0;
    opacity: 0.9;
}
.footer-widget__about .footer-widget__btn {
    margin-top: 0;
}

/* Footer: payment methods below Donate – 4 cards in 1 row, icon left + text right (screenshot style) */
.footer-widget__payment-methods {
    display: flex;
    flex-wrap: nowrap;
    gap: 6px;
    margin-top: 1rem;
    width: 100%;
}
.footer-payment-item {
    display: flex;
    flex: 1;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 6px 5px;
    background: #fafafa;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    text-align: left;
    min-width: 0;
}
.footer-payment-icon {
    flex-shrink: 0;
    font-size: 10px;
    color: #9e9e9e;
    line-height: 1;
}
.footer-payment-text {
    display: block;
    font-size: 0.5rem;
    line-height: 1.25;
    color: #555;
    font-weight: 400;
}
@media (max-width: 576px) {
    .footer-widget__payment-methods {
        flex-wrap: wrap;
    }
    .footer-payment-item {
        flex: 1 1 45%;
        min-width: 0;
        padding: 6px 4px;
        gap: 4px;
    }
    .footer-payment-icon {
        font-size: 9px;
    }
    .footer-payment-text {
        font-size: 0.45rem;
    }
}


/*
|--------------------------------------------------------------------------
| Member Verification Modal – responsive popup
|--------------------------------------------------------------------------
*/
.member-verification-modal .modal-dialog {
    max-width: 90%;
    width: 100%;
    margin: 0.75rem auto;
}
@media (min-width: 576px) {
    .member-verification-modal .modal-dialog {
        max-width: 540px;
    }
}
@media (min-width: 768px) {
    .member-verification-modal .modal-dialog {
        max-width: 720px;
    }
}
@media (min-width: 992px) {
    .member-verification-modal .modal-dialog {
        max-width: 900px;
    }
}
.member-verification-modal .modal-body {
    max-height: min(85vh, 600px);
    overflow-y: auto;
    padding: 1rem 1.25rem;
}
/* Modal: no separate header; card has its own close */
.member-verification-modal .modal-content.member-verification-modal-content {
    border: none;
    border-radius: 16px;
    overflow: hidden;
}
.member-verification-modal .modal-body.member-verification-modal-body {
    padding: 0;
}
/* Close button: only show inside modal, on the card header */
.mv-card-close {
    display: none;
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
    background: transparent !important;
    border: none !important;
    color: #fff !important;
    opacity: 0.95;
    font-size: 1.75rem;
    line-height: 1;
    padding: 0.25rem 0.5rem;
    cursor: pointer;
    z-index: 2;
}
.mv-card-close:hover,
.mv-card-close:focus {
    color: #fff !important;
    opacity: 1;
    outline: none;
}
#memberVerificationModal .mv-card-close {
    display: block;
}

/* Modern member verification layout: center circle photo + check, 2-column data below */
.member-verification-result-content.mv-modern .mv-modern-card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 12px 40px -12px rgba(0,0,0,0.12);
    overflow: hidden;
    border: 1px solid rgba(0,0,0,0.06);
}
.member-verification-result-content.mv-modern .mv-modern-header {
    position: relative;
    background: linear-gradient(135deg, #0f766e 0%, #0d9488 55%, #14b8a6 100%);
    padding: 1rem 1.25rem;
    padding-right: 3rem;
}
.member-verification-result-content.mv-modern .mv-modern-header h5 {
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
#memberVerificationModal .mv-modern-header {
    padding-right: 3rem;
}
.member-verification-result-content.mv-modern .mv-modern-body {
    padding: 1.5rem 1.25rem;
}
.member-verification-result-content.mv-modern .mv-modern-photo-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 1.5rem;
}
.member-verification-result-content.mv-modern .mv-photo-circle {
    position: relative;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid #e2e8f0;
    box-shadow: 0 8px 24px -6px rgba(13, 148, 136, 0.35);
    flex-shrink: 0;
}
.member-verification-result-content.mv-modern .mv-photo-circle img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.member-verification-result-content.mv-modern .mv-photo-verified {
    margin-top: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 36px;
    height: 36px;
    padding: 0 12px;
    background: linear-gradient(145deg, #14b8a6 0%, #0d9488 100%);
    border-radius: 18px;
    border: 2px solid #fff;
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
.member-verification-result-content.mv-modern .mv-photo-verified i {
    font-size: 1rem;
}
.member-verification-result-content.mv-modern .mv-verified-text {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.member-verification-result-content.mv-modern .mv-data-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem 1.25rem;
}
.member-verification-result-content.mv-modern .mv-data-item {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.5rem 0.75rem;
    background: #f8fafc;
    border-radius: 10px;
    border: 1px solid #e5e7eb;
}
.member-verification-result-content.mv-modern .mv-data-item .mv-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.member-verification-result-content.mv-modern .mv-data-item .mv-label i {
    margin-right: 6px;
    color: #0d9488;
    width: 16px;
}
.member-verification-result-content.mv-modern .mv-data-item .mv-value {
    font-size: 0.9375rem;
    font-weight: 500;
    color: #334155;
}
.member-verification-result-content.mv-modern .mv-data-item .mv-value-name {
    font-weight: 700;
    color: #0f172a;
}
@media (max-width: 767px) {
    .member-verification-result-content.mv-modern .mv-photo-circle {
        width: 100px;
        height: 100px;
        border-width: 3px;
    }
    .member-verification-result-content.mv-modern .mv-photo-verified {
        margin-top: 8px;
        min-width: 32px;
        height: 32px;
        padding: 0 10px;
        font-size: 0.65rem;
    }
    .member-verification-result-content.mv-modern .mv-photo-verified i {
        font-size: 0.875rem;
    }
    .member-verification-result-content.mv-modern .mv-verified-text {
        font-size: 0.6rem;
    }
    .member-verification-result-content.mv-modern .mv-data-grid {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    .member-verification-result-content.mv-modern .mv-data-item {
        padding: 0.5rem 0.65rem;
    }
    .member-verification-result-content.mv-modern .mv-data-item .mv-value {
        font-size: 0.875rem;
    }
}
@media (max-width: 480px) {
    .member-verification-result-content.mv-modern .mv-modern-body {
        padding: 1rem;
    }
    .member-verification-result-content.mv-modern .mv-photo-circle {
        width: 88px;
        height: 88px;
    }
    .member-verification-result-content.mv-modern .mv-photo-verified {
        margin-top: 6px;
        min-width: 28px;
        height: 28px;
        padding: 0 8px;
        font-size: 0.6rem;
    }
    .member-verification-result-content.mv-modern .mv-photo-verified i {
        font-size: 0.75rem;
    }
    .member-verification-result-content.mv-modern .mv-verified-text {
        font-size: 0.55rem;
    }
}

/* Verification card inside modal – same look as full page (legacy table layout) */
#memberVerificationModal .member-verification-result-content,
.member-verification-modal .member-verification-result-content {
    --mv-teal: #0d9488;
    --mv-teal-light: #14b8a6;
}
#memberVerificationModal .admit-card,
.member-verification-modal .admit-card {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 12px 32px -8px rgba(0,0,0,0.1);
    overflow: hidden;
    border: 1px solid rgba(0,0,0,0.06);
}
#memberVerificationModal .BoxC,
.member-verification-modal .BoxC {
    background: linear-gradient(135deg, #0f766e 0%, #0d9488 55%, #14b8a6 100%);
    padding: 0.9rem 1.25rem;
}
#memberVerificationModal .BoxC h5,
.member-verification-modal .BoxC h5 {
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
#memberVerificationModal .BoxD,
.member-verification-modal .BoxD {
    padding: 1.25rem;
}
#memberVerificationModal .member-verification-table,
.member-verification-modal .member-verification-table {
    width: 100%;
    margin-bottom: 0;
    font-size: 0.9375rem;
}
#memberVerificationModal .member-verification-table td,
.member-verification-modal .member-verification-table td {
    padding: 10px 12px;
    border-color: #e5e7eb;
    vertical-align: middle;
}
#memberVerificationModal .member-verification-table td:first-child,
.member-verification-modal .member-verification-table td:first-child {
    font-weight: 600;
    color: #334155;
    width: 38%;
    background: #f8fafc;
}
#memberVerificationModal .member-verification-table td:first-child i,
.member-verification-modal .member-verification-table td:first-child i {
    color: var(--mv-teal-light);
    margin-right: 8px;
}
#memberVerificationModal .member-verification-photo-wrap,
.member-verification-modal .member-verification-photo-wrap {
    background: #f8fafc;
    border-radius: 12px;
    padding: 0.85rem;
    border: 1px solid #e5e7eb;
    text-align: center;
}
#memberVerificationModal .member-verification-photo-wrap img,
.member-verification-modal .member-verification-photo-wrap img {
    width: 100px;
    height: 125px;
    max-width: 100%;
    object-fit: cover;
    border-radius: 8px;
    margin: 0 auto;
    border: 2px solid #fff;
    box-shadow: 0 4px 12px -4px rgba(0,0,0,0.12);
}
#memberVerificationModal .member-id-below,
.member-verification-modal .member-id-below {
    margin-top: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #334155;
}
.member-verification-modal .member-verification-modal-error {
    text-align: center;
    padding: 1.5rem;
    color: #991b1b;
    background: #fef2f2;
    border-radius: 12px;
    border: 1px solid #fca5a5;
    font-weight: 500;
}
@media (max-width: 767px) {
    .member-verification-modal .modal-body {
        max-height: min(90vh, 500px);
        padding: 0.75rem 1rem;
    }
    #memberVerificationModal .BoxD .row,
    .member-verification-modal .BoxD .row {
        flex-direction: column-reverse;
    }
    #memberVerificationModal .BoxD .col-md-4,
    .member-verification-modal .BoxD .col-md-4 {
        margin-bottom: 1rem;
    }
    #memberVerificationModal .member-verification-table td,
    .member-verification-modal .member-verification-table td {
        font-size: 0.875rem;
        padding: 8px 10px;
    }
    #memberVerificationModal .member-verification-table td:first-child,
    .member-verification-modal .member-verification-table td:first-child {
        width: 42%;
    }
    #memberVerificationModal .member-verification-photo-wrap img,
    .member-verification-modal .member-verification-photo-wrap img {
        width: 90px;
        height: 112px;
    }
}
@media (max-width: 480px) {
    .member-verification-modal .modal-dialog {
        max-width: 100%;
        margin: 0.5rem;
    }
    .member-verification-modal .modal-body {
        padding: 0.5rem 0.75rem;
    }
    #memberVerificationModal .member-verification-table td:first-child,
    .member-verification-modal .member-verification-table td:first-child {
        width: 45%;
        font-size: 0.8125rem;
    }
    #memberVerificationModal .member-verification-table td:last-child,
    .member-verification-modal .member-verification-table td:last-child {
        font-size: 0.8125rem;
    }
}

/*
|--------------------------------------------------------------------------
| Breadcrumb / Page header – height reduce
|--------------------------------------------------------------------------
*/
.page-header {
    padding: 75px 0 60px !important;
}
.page-header__inner {
    padding-bottom: 22px !important;
}

/*
|--------------------------------------------------------------------------
| Campaigns Top Bar (breadcrumb ke niche: Filter + Register button)
|--------------------------------------------------------------------------
*/
.campaigns-top-bar {
    padding: 1rem 0;
    margin-top: -1px;
}
.campaigns-top-bar__card {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 1rem 1.35rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04);
}
.campaigns-top-bar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
}
.campaigns-top-bar__filter {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    flex-wrap: wrap;
}
.campaigns-top-bar__filter-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    background: #f1f5f9;
    color: #64748b;
    border-radius: 10px;
    font-size: 0.9rem;
}
.campaigns-top-bar__select {
    min-width: 220px;
    padding: 0.6rem 2.25rem 0.6rem 1rem;
    font-size: 0.9rem;
    font-weight: 500;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fff;
    color: #334155;
    cursor: pointer;
    transition: border-color 0.2s, box-shadow 0.2s;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.85rem center;
}
.campaigns-top-bar__select:hover,
.campaigns-top-bar__select:focus {
    border-color: #94a3b8;
    outline: none;
    box-shadow: 0 0 0 3px rgba(148, 163, 184, 0.2);
}
.campaigns-top-bar__clear {
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #64748b;
    text-decoration: none;
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    background: #fff;
    transition: color 0.2s, border-color 0.2s, background 0.2s;
}
.campaigns-top-bar__clear:hover {
    color: #7c3aed;
    border-color: #a78bfa;
    background: #f5f3ff;
}
.campaigns-top-bar__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.65rem 1.4rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: #fff !important;
    background: linear-gradient(135deg, #7c3aed 0%, #5b21b6 100%) !important;
    background-size: 100% 100% !important;
    border: none !important;
    border-radius: 10px;
    box-shadow: 0 4px 14px rgba(124, 58, 237, 0.4);
    text-decoration: none !important;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.campaigns-top-bar__btn:hover {
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(124, 58, 237, 0.5);
}
.campaigns-top-bar__btn-icon {
    font-size: 0.9rem;
    opacity: 0.95;
}
@media (max-width: 576px) {
    .campaigns-top-bar__card {
        padding: 1rem;
    }
    .campaigns-top-bar__inner {
        flex-direction: column;
        align-items: stretch;
    }
    .campaigns-top-bar__filter {
        flex-direction: column;
        align-items: stretch;
    }
    .campaigns-top-bar__filter-icon {
        align-self: flex-start;
    }
    .campaigns-top-bar__select {
        min-width: 100%;
    }
    .campaigns-top-bar__btn {
        width: 100%;
    }
}

/* Total Members Live Counter – flip-clock style (above Become a Member) */
.member-count-banner {
    padding: 28px 0;
    background: linear-gradient(135deg, #0d9488 0%, #0f766e 100%);
    position: relative;
}
.member-count-banner__inner {
    text-align: center;
}
.member-count-banner__label {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: rgba(255,255,255,0.9);
    margin: 0 0 6px 0;
    font-weight: 600;
}
.member-count-banner__counter-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 56px;
    padding: 8px 0 28px 0;
}
/* Flip counter – split-flap / flip-clock look */
.flip-counter {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    perspective: 400px;
    flex-wrap: wrap;
    gap: 2px 4px;
    -webkit-box-reflect: below 8px linear-gradient(to bottom, rgba(255,255,255,0.08), transparent);
}
.flip-counter__inner {
    display: inline-flex;
    position: relative;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 2px 4px;
    transform-style: preserve-3d;
    transition: transform 0.32s ease-in-out;
}
.flip-counter__inner--flip {
    transform: rotateX(-180deg);
}
.flip-counter__face {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 2px 4px;
    backface-visibility: hidden;
}
.flip-counter__front {
    position: relative;
}
.flip-counter__back {
    position: absolute;
    left: 0;
    top: 0;
    transform: rotateX(180deg);
}
/* Each digit: black segment, white number, midline */
.flip-digit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 44px;
    padding: 0 4px;
    background: #1a1a1a;
    border-radius: 6px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.06);
    position: relative;
    overflow: hidden;
}
.flip-digit::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    background: rgba(255,255,255,0.25);
    margin-top: -1px;
}
.flip-digit__inner {
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    position: relative;
    z-index: 1;
}
@media (min-width: 576px) {
    .flip-digit { min-width: 32px; height: 50px; }
    .flip-digit__inner { font-size: 1.75rem; }
}
@media (min-width: 768px) {
    .flip-digit { min-width: 36px; height: 54px; }
    .flip-digit__inner { font-size: 2rem; }
}
/* Comma between digit groups */
.flip-comma {
    font-size: 1.25rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    padding: 0 1px;
    opacity: 0.95;
}
@media (min-width: 768px) {
    .flip-comma { font-size: 1.5rem; }
}
.member-count-banner__sublabel {
    font-size: 13px;
    color: rgba(255,255,255,0.85);
    margin: 8px 0 0 0;
}

/* Counter inside Become a Member banner – 6 separate digit boxes with flip */
.become-volunteer-one__counter-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 12px;
}
/* Rounded card wrapping "Our Members" label + counter */
.become-volunteer-one__counter-card {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 20px 32px 24px;
    background: rgba(0, 0, 0, 0.35);
    border-radius: 24px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
}
.become-volunteer-one__counter-label {
    display: block;
    color: #fff;
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin: 0;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.flip-counter-6 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    -webkit-box-reflect: below 6px linear-gradient(to bottom, rgba(255,255,255,0.06), transparent);
}
.flip-digit-box {
    perspective: 220px;
    display: inline-flex;
}
.flip-digit-box__inner {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 52px;
    background: #1a1a1a;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.06);
    position: relative;
    overflow: hidden;
    transform-style: preserve-3d;
    transition: transform 0.28s ease-in-out;
}
.flip-digit-box__inner::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    background: rgba(255,255,255,0.28);
    margin-top: -1px;
    z-index: 2;
    pointer-events: none;
}
.flip-digit-box__inner--flip {
    transform: rotateX(-180deg);
}
.flip-digit-box__face {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    backface-visibility: hidden;
    font-size: 1.75rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}
.flip-digit-box__back {
    transform: rotateX(180deg);
}
@media (min-width: 576px) {
    .flip-digit-box__inner { min-width: 40px; height: 56px; }
    .flip-digit-box__face { font-size: 2rem; }
}
@media (min-width: 768px) {
    .flip-digit-box__inner { min-width: 44px; height: 60px; }
    .flip-digit-box__face { font-size: 2.25rem; }
}
.flip-counter--on-banner {
    -webkit-box-reflect: below 6px linear-gradient(to bottom, rgba(255,255,255,0.06), transparent);
}

/*
| Join HRCI hero — green honeycomb / isometric hex pattern (photo + jarallax removed)
| Base + darker line fills (SVG tile) similar to reference banner style.
*/
.become-volunteer-one--pattern-bg .become-volunteer-one__bg {
    /* Lighter mint green + softer hex overlay (was #48b35d / darker fill) */
    background-color: #8fdfaa;
    background-image:
        linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, transparent 45%, rgba(0, 0, 0, 0.04) 100%),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='49' viewBox='0 0 28 49'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%235cb87a' fill-opacity='0.22' fill-rule='nonzero'%3E%3Cpath d='M13.99 9.25l13 7.5v15l-13 7.5L1 31.75v-15l12.99-7.5zM3 17.9v12.7l10.99 6.34 11-6.35V17.9l-11-6.34L3 17.9zM0 15l12.98-7.5V0h-2v6.35L0 12.69v2.3zm0 18.5L12.98 41v8h-2v-6.85L0 35.81v-2.3zM15 0v7.5L27.99 15H28v-2.31h-.01L17 6.35V0h-2zm0 49v-8l12.99-7.5H28v2.31h-.01L17 42.15V49h-2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat, repeat;
    background-size: auto, 28px 49px;
    background-position: center, 0 0;
}
.become-volunteer-one--pattern-bg .become-volunteer-one__inner {
    position: relative;
    z-index: 1;
}

/* Light green bg: readable copy (white on #8fdfaa would fail contrast) */
.become-volunteer-one--pattern-bg .become-volunteer-one__title {
    color: #14532d;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.35);
}
.become-volunteer-one--pattern-bg .become-volunteer-one__counter-label {
    color: #174d30;
    text-shadow: none;
}
.become-volunteer-one--pattern-bg .become-volunteer-one__counter-card {
    background: rgba(255, 255, 255, 0.5);
    border: 1px solid rgba(20, 83, 45, 0.12);
    box-shadow: 0 6px 24px rgba(20, 60, 40, 0.12);
}

/* Custom cursor rings — desktop / large screens only (see main.js matchMedia 992px) */
@media (max-width: 991.98px) {
    .custom-cursor__cursor,
    .custom-cursor__cursor-two {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* Homepage — Our Courses (redesigned carousel cards) */
.our-courses-home {
    position: relative;
    background:
        linear-gradient(180deg, #f8fafc 0%, #ffffff 42%, #f1f5f9 100%),
        linear-gradient(135deg, rgba(15, 23, 42, 0.03) 25%, transparent 25%) 0 0 / 20px 20px,
        linear-gradient(225deg, rgba(15, 23, 42, 0.03) 25%, transparent 25%) 0 0 / 20px 20px,
        radial-gradient(circle at 20% 18%, rgba(14, 165, 233, 0.08), transparent 36%),
        radial-gradient(circle at 82% 78%, rgba(139, 92, 246, 0.08), transparent 40%);
    overflow: hidden;
}
.our-courses-home::before {
    content: "";
    position: absolute;
    top: -120px;
    right: -80px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(14, 165, 233, 0.18) 0%, transparent 70%);
    pointer-events: none;
    filter: blur(1px);
}
.our-courses-home::after {
    content: "";
    position: absolute;
    bottom: -100px;
    left: -60px;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(168, 85, 247, 0.16) 0%, transparent 70%);
    pointer-events: none;
    filter: blur(1px);
}
.our-courses-home .container {
    position: relative;
    z-index: 1;
}
.our-courses-home__head {
    margin-bottom: 2rem;
}
.our-courses-home__tagline {
    display: inline-block;
    padding: 0.35rem 1rem;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.12) 0%, rgba(168, 85, 247, 0.12) 100%);
    border: 1px solid rgba(14, 165, 233, 0.2);
    font-weight: 700;
    letter-spacing: 0.06em;
}
.our-courses-home__title {
    margin-top: 0.75rem;
    line-height: 1.25;
    letter-spacing: -0.02em;
}
.our-courses-home__lead {
    max-width: 36rem;
    font-size: 1rem;
    margin-top: 0.75rem;
    margin-bottom: 0;
}

.our-course-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 18px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow:
        0 4px 6px -1px rgba(15, 23, 42, 0.06),
        0 12px 28px -8px rgba(15, 23, 42, 0.12);
    overflow: hidden;
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.25s ease;
}
.our-course-card:hover,
.our-course-card:focus-within {
    transform: translateY(-6px);
    border-color: rgba(14, 165, 233, 0.22);
    box-shadow:
        0 12px 24px -6px rgba(14, 165, 233, 0.18),
        0 24px 48px -16px rgba(15, 23, 42, 0.18);
}
.our-course-card-media {
    position: relative;
    overflow: hidden;
    border-radius: 0;
}
.our-course-card-media__scrim {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 35%, rgba(15, 23, 42, 0.55) 100%);
    pointer-events: none;
    z-index: 1;
}
.our-course-card__img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}
.our-course-card:hover .our-course-card__img {
    transform: scale(1.05);
}
.our-course-card__img--placeholder {
    min-height: 220px;
    background: linear-gradient(145deg, #e0f2fe 0%, #ede9fe 50%, #fce7f3 100%);
}

.our-course-card__price-tag {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 2;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 0.45rem;
    padding: 0.5rem 0.85rem;
    border-radius: 14px;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    color: #fff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.35);
    border: 1px solid rgba(255, 255, 255, 0.12);
}
.our-course-card__price-tag--free {
    background: linear-gradient(135deg, #059669 0%, #047857 100%);
    border-color: rgba(167, 243, 208, 0.35);
    box-shadow: 0 8px 24px rgba(5, 150, 105, 0.35);
}
.our-course-card__price-ico {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.95rem;
    line-height: 1;
    opacity: 0.95;
}
.our-course-card__price-value {
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.1;
}

.our-course-card__body {
    padding: 1.15rem 1.2rem 1.25rem;
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 0.65rem;
}
.our-course-card__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0;
    line-height: 1.35;
    color: #0f172a;
    letter-spacing: -0.02em;
}
.our-course-card__desc {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.55;
    color: #0f172a;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.our-course-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.55rem;
    margin-top: auto;
    padding-top: 0.5rem;
}
.our-course-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.6rem 0.65rem;
    border-radius: 12px;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
    border: 2px solid transparent;
}
.our-course-btn--detail {
    color: var(--oxpins-primary, #00715d);
    background: #fff;
    border-color: var(--oxpins-primary, #00715d);
}
.our-course-btn--detail:hover {
    color: #fff;
    background: var(--oxpins-primary, #00715d);
    border-color: var(--oxpins-primary, #00715d);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
    transform: translateY(-1px);
}
.our-course-btn--register {
    color: #fff;
    background: var(--oxpins-primary, #00715d);
    border-color: var(--oxpins-primary, #00715d);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
}
.our-course-btn--register:hover {
    color: #fff;
    background: var(--thm-button1-hovercolor, #005a4a);
    border-color: var(--thm-button1-hovercolor, #005a4a);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14);
    transform: translateY(-1px);
}
.our-courses-home__cta {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.our-courses-home__viewall {
    min-width: 220px;
    padding-left: 1.2rem;
    padding-right: 1.2rem;
    width: auto;
    margin-left: auto;
    margin-right: auto;
}

.our-course-video-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
    color: #fff;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    box-shadow: 0 4px 14px rgba(220, 38, 38, 0.4);
    pointer-events: none;
    animation: our-course-video-badge-pulse 2.4s ease-in-out infinite;
}

.our-courses-home__carousel.owl-theme .owl-dots {
    margin-top: 1.75rem !important;
}
.our-courses-home__carousel.owl-theme .owl-dots .owl-dot span {
    width: 10px;
    height: 10px;
    margin: 4px 5px;
    background: #cbd5e1;
    transition: transform 0.2s ease, background 0.2s ease;
}
.our-courses-home__carousel.owl-theme .owl-dots .owl-dot.active span,
.our-courses-home__carousel.owl-theme .owl-dots .owl-dot:hover span {
    background: var(--oxpins-primary, #00715d);
    transform: scale(1.15);
}

@keyframes our-course-video-badge-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}
@media (prefers-reduced-motion: reduce) {
    .our-course-video-badge { animation: none; }
    .our-course-card:hover .our-course-card__img { transform: none; }
    .our-course-card:hover,
    .our-course-card:focus-within { transform: none; }
}
@media (max-width: 575.98px) {
    .our-course-card__actions {
        grid-template-columns: 1fr;
    }
}

/* --------------------------------------------------------------------------
   Donor wall — card + list view
   -------------------------------------------------------------------------- */
.donor-wall-section {
    padding-top: 80px;
    padding-bottom: 100px;
}
.donor-wall-heading {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--oxpins-black, #1c1c1c);
}
.donor-wall-lead {
    font-size: 0.95rem;
    line-height: 1.55;
}
.donor-wall-view-toggle .donor-wall-view-btn {
    border: 1px solid rgba(0, 113, 93, 0.35);
    background: #fff;
    color: var(--oxpins-black, #1c1c1c);
    font-weight: 600;
    font-size: 0.875rem;
    padding: 0.5rem 1rem;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.donor-wall-view-toggle .donor-wall-view-btn:hover {
    border-color: var(--oxpins-primary, #00715d);
    color: var(--oxpins-primary, #00715d);
}
.donor-wall-view-toggle .donor-wall-view-btn.active {
    background: var(--oxpins-primary, #00715d);
    border-color: var(--oxpins-primary, #00715d);
    color: #fff;
}
.donor-wall-card {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 8px 28px rgba(15, 23, 42, 0.08);
    border: 1px solid rgba(15, 23, 42, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.donor-wall-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 36px rgba(15, 23, 42, 0.12);
}
.donor-wall-card__media {
    position: relative;
    aspect-ratio: 4 / 3;
    background: linear-gradient(145deg, #f0fdfa 0%, #e0f2fe 100%);
    overflow: hidden;
}
.donor-wall-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.donor-wall-card__placeholder {
    width: 100%;
    height: 100%;
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--oxpins-primary, #00715d);
    letter-spacing: 0.02em;
    background: linear-gradient(145deg, #ecfdf5 0%, #dbeafe 100%);
}
.donor-wall-card__body {
    padding: 1.15rem 1.25rem 1.35rem;
}
.donor-wall-card__name {
    font-size: 1.05rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: var(--oxpins-black, #1c1c1c);
    line-height: 1.3;
}
.donor-wall-card__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 1rem;
    margin-bottom: 0.35rem;
}
.donor-wall-card__amount {
    font-weight: 700;
    color: var(--oxpins-primary, #00715d);
    font-size: 1rem;
}
.donor-wall-card__date {
    font-size: 0.8rem;
    color: #64748b;
}
.donor-wall-card__cause {
    font-size: 0.82rem;
    color: #64748b;
    line-height: 1.45;
    margin-top: 0.5rem !important;
}
.donor-wall-table-wrap {
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.05);
}
.donor-wall-table__head {
    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
}
.donor-wall-table .donor-wall-th {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 700;
    color: #64748b;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    padding: 0.85rem 1rem;
    white-space: nowrap;
}
.donor-wall-th--avatar {
    width: 56px;
}
.donor-wall-table tbody tr {
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}
.donor-wall-table tbody tr:last-child {
    border-bottom: none;
}
.donor-wall-list__cell {
    padding: 0.85rem 1rem;
    vertical-align: middle;
    font-size: 0.95rem;
}
.donor-wall-list__img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #fff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
}
.donor-wall-list__placeholder {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(145deg, #ecfdf5 0%, #dbeafe 100%);
    font-weight: 800;
    font-size: 0.9rem;
    color: var(--oxpins-primary, #00715d);
}
.donor-wall-list__name-text {
    font-weight: 600;
    color: var(--oxpins-black, #1c1c1c);
}
.donor-wall-list__amount {
    font-weight: 700;
    color: var(--oxpins-primary, #00715d);
    white-space: nowrap;
}
.donor-wall-empty {
    background: #f8fafc;
    border: 1px dashed rgba(0, 113, 93, 0.25);
}
.donor-wall-empty__icon {
    font-size: 2.5rem;
    color: var(--oxpins-primary, #00715d);
    opacity: 0.5;
}
.donor-wall-pagination .pagination {
    margin-bottom: 0;
}
@media (prefers-reduced-motion: reduce) {
    .donor-wall-card {
        transition: none;
    }
    .donor-wall-card:hover {
        transform: none;
    }
}