/* ===========================================================================
Components
============================================================================*/
.w-90 {
    width: 95% !important;
}
input::placeholder {
    font-size: 14px !important;
}
/* Change the white to any color */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
input:-webkit-autofill.is-active{
    -webkit-box-shadow: 0 0 0 30px white inset !important;
    -webkit-text-fill-color: #838B95 !important;
}
.roundContainer {
    border-radius: 20px;
}
.section-main-title {
    color: var(--colorGray);
    font-size: 28px;
    font-weight: 500;
}
html[lang="ar"] .section-main-title {
    font-size: 30px;
}
/*.section-main-title.title-effect {
    border-bottom: 2px solid #A2711E;
    padding-bottom: 5px;
    margin-bottom: 20px;
}*/
.signup-body {
    /*background: url("./image/singup-bg.png") center center no-repeat;
    background-size: cover;*/
    height: 100vh;
    color: #000 !important;
}
.signup-body .main-container {
    height: 100%;
    max-height: calc(100vh - 250px);
}
.signup-body .card {
    background-color: transparent;
}
.signUp-container .generalTitle {
    font-size: 26px;
    font-weight: 700;
    color: var(--colorRed);
}
.login-page h3.h5, .registration-page h3.h5 {
    color: gray !important;
    font-size: 10px;
}
.signUp-container .input-container {
    height: 50px;
    border-radius: 6px !important;
    border: 1px solid #d0d0d0;
    display: flex;
    align-items: center;
    background-color: white;
}
    .signUp-container .input-container:hover, .signUp-container .input-container:focus {
        border: 1px solid #000;
    }
    .signUp-container .input-container input {
        border: 0 !important;
        background: none !important;
    }
    .signUp-container .input-container input {
        padding: 10px;
        border: 0 !important;
    }
    input:hover, input:focus, input:active, input.is-valid, input.is-invalid {
        outline: 0 !important;
        box-shadow: none !important;
    }
    .signUp-container .bi {
        color: var(--colorRed);
    }
.signUp-container .submit-button {
    height: 60px;
    text-align: center;
    border: 0 !important;
    color: white;
    background-color: var(--colorRed);
    border-radius: 12px !important;
    font-size: 20px;
}
.signUp-container .card-header, .signUp-container .card-body, .signUp-container .card-footer {
    background-color: transparent !important;
    padding: 0 !important;
}
    .signUp-container .card-header h3, .light-text {
        font-size: 12px;
        font-weight: 400;
        color: #fff;
    }
.signUp-container .register-button {
    color: #fff;
    font-size: 15px;
    font-weight: 400;
}
.registration-page .signUp-container .form-group {
    padding: 0 15px;
}
.signup-second-option {
    color: #000 !important;
}
.b-sidebar>.b-sidebar-header {
    font-size: 1.3rem;
}
#sidebar-cart .b-sidebar-body .item {
    width: 100%;
    align-items: center;
    margin-bottom: 10px;
}
.b-sidebar-footer .bg-dark {
    background-color: #1d2124 !important;
}
.b-sidebar-footer .bg-dark .col-7 .btn {
    color: #fff;
    background-color: var(--colorRed);
    border-color: var(--colorRed);
}
html[lang="en"] .iti__country {
    text-align: left !important;
    direction: ltr;
}

/* ===========================================================================
contact us page
============================================================================*/
/*.form-outline {*/
/*    position: relative;*/
/*    width: 100%;*/
/*    border: 1px solid #ced4da;*/
/*    border-radius: 6px;*/
/*}*/
/*.form-outline .trailing {*/
/*    position: absolute;*/
/*    right: auto;*/
/*    left: 8px;*/
/*    top: 50%;*/
/*    transform: translateY(-50%);*/
/*    pointer-events: none;*/
/*    color: var(--colorRed);*/
/*}*/
/*html[lang="ar"] .form-outline .trailing {*/
/*    right: 8px;*/
/*    left: auto;*/
/*}*/
/*.form-outline .form-control {*/
/*    min-height: auto;*/
/*    border: 0;*/
/*    background: transparent;*/
/*    transition: all .2s linear;*/
/*    padding: 10px 30px;*/
/*}*/
/*.storeAddress-container .addressBox p {*/
/*    font-size: 15px;*/
/*    font-weight: 500;*/
/*    color: #7E7E7E;*/
/*    margin-top: 15px;*/
/*}*/
/*.addressBox .iconBg {*/
/*    border-radius: 50%;*/
/*    overflow: hidden;*/
/*    display: flex;*/
/*    justify-content: center;*/
/*    align-items: center;*/
/*    position: relative;*/
/*    width:75px;*/
/*    height:75px;*/
/*}*/
/*.contact-us-social .list-group-item {*/
/*    padding: 0.75rem 0.3rem;*/
/*}*/
/*#contactus-form .enquiry {*/
/*    height: 80px !important;*/
/*    margin-bottom: 1rem;*/
/*}*/
/*.bank-transfer-wrapper, .whatsapp-container {*/
/*    background-color: #F3F3F3;*/
/*    padding: 15px;*/
/*}*/
/*.bank-transfer-section {*/
/*    border-radius: 6px;*/
/*    padding: 30px;*/
/*    color: #2B2C2B;*/
/*    font-size: 20px;*/
/*    font-weight: 400    ;*/
/*}*/
/*#contactus-form .phone-email {*/
/*    width: 48.5%;*/
/*}*/
/*.form-group {*/
/*    margin-bottom: 1rem;*/
/*    min-height: 50px;*/
/*}*/
/*.whatsapp-container .whatsapp-label {*/
/*    margin-right: 50px;*/
/*}*/
/*.contactus-map {*/
/*    padding-right: 0;*/
/*    padding-left: 0;*/
/*}*/
/*html[lang="ar"] .contactus-map {*/
/*    padding-left: 0;*/
/*}*/
/*.contactus-map iframe {*/
/*    width: 100% !important;*/
/*    height: 210px !important;*/
/*    border-radius: 6px;*/
/*}*/
/*html[lang="ar"] .whatsapp-container .whatsapp-label {*/
/*    margin-left: 50px;*/
/*    margin-right: 0;*/
/*}*/
/*.storeAddress-container .material-icons, .storeAddress-container i {*/
/*    color: var(--colorRed);*/
/*}*/
/*.addressBox {*/
/*    max-width: 90%;*/
/*}*/
/*@media (max-width: 767px) {*/
/*    .whatsapp-container .whatsapp-label {*/
/*        margin-right: 0px;*/
/*    }*/
/*    html[lang="ar"] .contactus-map {*/
/*        padding-left: 0;*/
/*    }*/
/*    html[lang="ar"] .whatsapp-container .whatsapp-label {*/
/*        margin-left: 0px;*/
/*        margin-right: 0;*/
/*    }*/
/*    .bank-transfer-section {*/
/*        padding: 10px;*/
/*        flex-wrap: wrap-reverse;*/
/*        font-size: 18px;*/
/*        text-align: center;*/
/*    }*/
/*    .bank-transfer-section .iban-num {*/
/*        font-size: 16px;*/
/*    }*/
/*    .bank-transfer-wrapper .bank-icon {*/
/*        padding: 15px;*/
/*    }*/
/*    .bank-transfer-wrapper .bank-icon img {*/
/*        max-width: 90px;*/
/*    }*/
/*    #contactus-form .phone-email {*/
/*        width: 100%;*/
/*    }*/
/*}*/

/* ===========================================================================
Directors Board page
============================================================================*/
/*.directors {*/
/*    background: url(image/bg/bg-directors.png) center center no-repeat #e9e9eb;*/
/*    background-size: cover;*/
/*    text-align: center;*/
/*}*/
/*.director {*/
/*	margin: 0 auto 30px;*/
/*	display: flex;*/
/*	flex-direction: column;*/
/*	text-align: center;*/
/*	max-width: 296px;*/
/*}*/
/*.director .img-director {*/
/*    margin-bottom: 10px;*/
/*}*/
/*.director .name {*/
/*	color: var(--colorRed);*/
/*	font-weight: bold;*/
/*	font-size: 20px;*/
/*    margin-bottom: 3px;*/
/*}*/
/*.director .title {*/
/*	color: var(--colorGray);*/
/*	font-size: 16px;*/
/*}*/

/*@media(max-width: 767.98px) {*/
/*    .director {*/
/*        margin: 0 auto 15px;*/
/*    }*/
/*    .director .name {*/
/*        font-size: 16px;*/
/*    }*/
/*    .director .title {*/
/*        font-size: 14px;*/
/*    }*/
/*}*/


/*.aim {*/
/*    padding: 20px;*/
/*    text-align: center;*/
/*}*/
/*.aim img {*/
/*    margin-top: 20px;*/
/*    margin-bottom: 10px;*/
/*}*/
/*.aim .aim-content, .aim .aim-content p {*/
/*	font-size: 16px;*/
/*	font-weight: 400;*/
/*	color: #2B2C2B;*/
/*	line-height: 1.5;*/
/*	text-align: center;*/
/*    margin: 0;*/
/*}*/
/*.aim-content * {*/
/*	width: unset !important;*/
/*	height: unset !important;*/
/*	min-width: unset !important;*/
/*	min-height: unset !important;*/
/*}*/
/*.aim ul {*/
/*    list-style: none !important;*/
/*    display: flex;*/
/*    flex-wrap: wrap;*/
/*    width: 100%;*/
/*}*/
/*.aim ul li {*/
/*    width: 50%;*/
/*}*/
/*html[lang="ar"] .aim .aim-content {*/
/*    font-size: 16px;*/
/*    color: #2B2C2B;*/
/*    line-height: 29px;*/
/*}*/
/*html[lang="ar"] .search-box-select {*/
/*    direction: ltr;*/
/*    text-align: right;*/
/*}*/

/*.dir-word-box img {*/
/*    width: 120px;*/
/*    height: 120px;*/
/*    border-radius: 50%;*/
/*    object-fit: cover;*/
/*}*/
/*.dir-word-box h3 {*/
/*    color: #33B8FF;*/
/*    font-size: 18px;*/
/*}*/

/* ===========================================================================
Details page
============================================================================*/
.color-highlight1.project-title {
    font-size: 25px;
}
.projectDetailsTitle .short-description p {
    font-size: 14px;
    color: #BEBEBE;
}

.product-details-page .btn-pre-amount.active {
	border: 2px solid var(--colorRed) !important;
	color: var(--colorRed) !important;
}

.progressbar-holder .project-complete-logo {
    width: 52px;
    height: 52px;
    border: 3px solid #fac76b;
    border-radius: 50%;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}
    .progressbar-holder .project-complete-logo span {
        color: #fac76b; 
        font-size: 40px !important
    }

.card-body .project-complete-button {
    background-color: #CBCBCB !important;
    font-size: 18px;
}

.signature-pad {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: 10px;
    width: 100%;
    height: 100%;
    max-width: 700px;
    max-height: 460px;
    background-color: #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.08) inset;
    border-radius: 4px;
    padding: 16px;
    border: 1px solid #f4f4f4 !important;
}
.signature-pad::before,
.signature-pad::after {
    position: absolute;
    z-index: -1;
    content: "";
    width: 40%;
    height: 10px;
    bottom: 10px;
    background: transparent;
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.4);
}
.signature-pad::before {
    left: 20px;
    transform: skew(-3deg) rotate(-3deg);
}
.signature-pad::after {
    right: 20px;
    transform: skew(3deg) rotate(3deg);
}
.signature-pad--body {
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border: 1px solid #f4f4f4 !important;
}
.signature-pad--body canvas {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.02) inset;
}
.signature-pad--footer {
    color: #C3C3C3;
    text-align: center;
    font-size: 1.3em;
    margin-top: 8px;
}
.signature-pad--footer .description {
    padding: 5px 0;
}
.signature-pad--actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 8px;
}
.signUp-container .input-container.phone-number {
    direction: rtl !important;
}
.signUp-container .input-container.phone-number .iti.iti--allow-dropdown {
    padding-left: 85px;
}


/* invoice */
.order-details-page hr {
    border-bottom: 1px solid #E9E9E9;
}
.page.order-details-page.final-invoice .info-box {
    height: auto;
    min-height: 48px !important;
    border-radius: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #E9E9E9 !important;
    display: flex;
    align-items: center;
    padding: 0 !important;
    margin-bottom: 10px !important;
}
.order-details-page .payresult-colored-header {
    background-color: transparent !important;
    color: #2B2C2B !important;
    text-align: start !important;
    padding: 15px 0 0 0;
}
.order-details-page .payresult-colored-header h5 {
    font-weight: 700;
}
.order-details-page .table-invoice.table th, .order-details-page .table-invoice.table td {
     border-top: 0 solid #dee2e6 !important;
    border-bottom: 1px solid #E9E9E9 !important;
}
/* popup: custom image popup */
.popup-holder {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.8);
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
}
.popup-box {
    position: relative;
}
@media(min-width: 1200px){
    .popup-box {
        max-width: 50vw;
    }
}
.popup-close {
    position: absolute;
    right: 0;
    top: 0;
    transform: translate(50%,-50%);
    z-index: 50;
    width: 35px; height: auto;
    cursor: pointer;
}
html[lang="ar"] .popup-close {
    right: unset; left: 0;
    transform: translate(-50%,-50%);
}
.popup-main-img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: calc(100vh - 40px);
}
#InsanCarouselMob .carousel-item a img {
    width: 100%;
    margin: 0 auto;
}
.waiting-payment p {
    font-size: 22px;
    color: #4dae79;
}
.waiting-payment .spinner-border {
    color: #000;
}
/* wallet Section */
.wallet-container {
    background-color: #fffcfa;
    padding: 20px 30px;
    margin-top: 5px;
    border-radius: 16px;
}
.wallet-container .my-balance {
    background-color: white;
    border-radius: 10px;
    font-size: 40px;
    color: #000;
    font-weight: bold;
    border: 1px solid #E5E3E4;
}
.wallet-container h1 {
    color: #000;
}
.wallet-container .custom-checkbox {
    min-height: 25px !important;
    font-size: 18px;
}
.wallet-container .custom-checkbox a, .wallet-container .permanent-donation-info a {
    color: #000 !important;
}
.wallet-container .custom-checkbox a:hover, .wallet-container .permanent-donation-info a:hover {
    text-decoration: underline !important;
}
.wallet-container .btn-green {
    border-color: #4dae79;
}
.wallet-container .btn:active, .wallet-container .btn:focus {
    outline: none !important;
    background-color: #329c62 !important;
    border-color: #329c62 !important;
    box-shadow: none !important;
}
#walletAddBalance .modal-header {
    justify-content: space-between !important;
}
#walletAddBalance .modal-header h5.modal-title {
    font-size: 18px !important;
}
#walletAddBalance .modal-header .close {
    margin: -1rem 0 -1rem 0 !important;
}
#walletAddBalance .modal-header .close:active {
    outline: none !important;
}
#walletAddBalance .add-balance-form strong, .wallet-container strong {
    font-size: 22px;
}
#walletAddBalance .add-balance-form .custom-control-inline {
    margin-left: 0.5rem !important;
}
html[lang="ar"] #walletAddBalance .add-balance-form .custom-control-inline {
    margin-right: 0.5rem !important;
}
#walletAddBalance .add-balance-form input.balance-amount, input.balance-amount {
    border: 1px solid #f0f0f0;
    padding: 7px;
    width: 90%;
    text-align: center;
}
.wallet-container .content-box {
    background-color: white;
    border-radius: 10px;
    border: 1px solid #E5E3E4;
}
.wallet-container .option-box {
    border: 1px solid #f0f0f0;
    cursor: pointer;
}
.wallet-container .option-box.active {
    border-color: green;
}
.wallet-container .permanent-donation-info span, .wallet-container .permanent-donation-info a {
    font-weight: bold;
}
.wallet-container .btn {
    min-width: 130px;
    font-weight: bold;
    margin-bottom: 10px;
}
@media (max-width: 504.99px) {
    .wallet-container .btn {
        min-width: 100%;
    }
}
/* ***** details page new template  ******** */
.template-slider {
    margin-top: -15px;
}
.shares-details-page {
    background-color: white;
    border-radius: 12px;
    box-shadow: 2px 2px 22px rgba(204, 213, 233, 0.44);
}
.inside-outside-options {}
.inside-outside-options .option-button {
    position: relative;
}
.inside-outside-options .option-button input[type="radio"] {
    display: none;
}
.inside-outside-options .option-button label {
	background: #E6E6E6;
	display: block;
	border-radius: 6px;
	text-align: center;
	padding: 10px 15px;
	color: #7A7A7A;
	font-weight: bold;
}
.inside-outside-options .option-button input[type="radio"]:checked + label {
    background: var(--colorRed);
    color: white;
}
.sacrifice-types {}
.sacrifice-types .sacrifice-option {
    position: relative;
}
.sacrifice-types .sacrifice-option input[type="radio"] {
    display: none;
}
.sacrifice-types .sacrifice-option label {
    display: flex;
    flex-direction: column;
    color: #2B2C2B;
    font-weight: bold;
}
.sacrifice-types .sacrifice-option label img {
	border: 2px solid #D9D9D9;
	border-radius: 50%;
	text-align: center;
	padding: 10px;
    width: 100px;
    height: 100px;
	max-width: 100%;
	margin: 0 auto;
}
.sacrifice-types .sacrifice-option input[type="radio"]:checked+label {
    color: var(--colorRed);
}

.sacrifice-types .sacrifice-option input[type="radio"]:checked+label img {
    border: 2px solid var(--colorRed);
}

.sacrifice-types .slick-common-styles .slick-prev,
.sacrifice-types .slick-common-styles .slick-next {
    width: 30px;
    height: 50px;
    border-radius: 5px;
}

.payment-provider {
    width: auto;
    border: 2px solid #D9D9D9;
    justify-content: start;
    gap: 10px;
    align-items: center;
    display: flex;
    font-weight: bold;
}
.payment-provider img {
    height: 35px;
}

@media (max-width: 575.95px) {
    .inside-outside-options .option-button label {
        padding: 8px 10px;
    }
    .sacrifice-types .sacrifice-option label img {
        padding: 5px;
    }
}

/*order details*/
.order-details-page .success-title {
    color: var(--colorRed)
}
.order-details-page .sections-title, .gradient-box {
    background: linear-gradient(to right, var(--colorRed), var(--colorGray));
    color: white;
    font-size: 20px;
    padding: 15px 50px;
    border-radius: 6px;
}

/*Zakat Calculation*/
.zakat-banner {
    margin-bottom: 50px;
    margin-top: -15px;
}
.zakat-calc .nav-tabs > li {
    min-width: 165px;
}
.gold-type-title {
    font-size: 1.4rem;
    font-weight: 600;
}
@media (max-width: 766.99px) {
    .zakat-calc .nav-tabs > li {
        min-width: 25%;
    }

    .gold-label {
        font-size: 12px;
    }
}

@media (max-width: 363px) {
    .zakat-calc .nav-tabs > li {
        min-width: 110px;
    }
}
.blog-left-side .card-header {
    background: var(--colorRed);
}
.product-details-page .nav-tabs {
    border-bottom-color: transparent;
}
html[lang="en"] .product-details-page .nav-tabs li:not(:first-child) {
    margin-left: 30px;
}
html[lang="ar"] .product-details-page .nav-tabs li:not(:first-child) {
    margin-right: 30px;
}
.product-details-page .nav-tabs .nav-link {
    position: relative;
    font-size: 18px;
    font-weight: 500;
    color: #A7A7A7;
    border: 1px solid #D9D9D9 !important;
    outline: none;
    border-radius: 6px !important;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    padding: 15px 20px;
}
.product-details-page .nav-tabs li a.active {
	background: var(--colorRed);
	color: #fff !important;
	border-color: var(--colorRed) !important;
}
.product-details-page .nav-tabs .nav-link.active::before, .product-details-page .nav-tabs .nav-link::before {
    background: transparent !important;
}
.product-details-page .nav-tabs .nav-link:hover:not(.active) {
    background-color: rgba(0,0,0,.08);
    color: #000;
}
.fast-donate-popup .modal-header {
    background-color: var(--colorBlue);
    color: white;
    padding-bottom: 12px;
}
.fast-donate-popup .header .cart-data {
    justify-content: space-between;
    margin: 30px 15px 0 15px;
    width: 100%;
    padding-bottom: 10px;
    border-bottom: 1px solid #ccc;
}
.fast-donate-popup .header .cart-data .cart-item,
.fast-donate-popup .header .cart-data .cart-amount {
    font-size: 16px;
    font-weight: 600;
}
.fast-donate-popup .header .cart-data .cart-amount span {
    font-size: 19px;
    padding: 10px 20px;
    border-radius: 5px;
}
.finance-report-item, .regulations-policy-item {
    display: flex;
    align-items: center;
    margin: 15px 0;
}
.finance-report-item img, .regulations-policy-item img {
    width: 64px;
}
.finance-report-item a, .regulations-policy-item a {
    padding: 0 10px;
    font-size: 18px;
    font-weight: 500;
    color: var(--colorBlueLight);
}
.finance-report-item a:hover, .regulations-policy-item a:hover {
    color: var(--colorGreen);
}
@media (max-width: 766.99px) {
    html[lang="en"] .product-details-page .nav-tabs li:not(:first-child) {
        margin-left: 5px;
        margin-bottom: 5px;
    }
    html[lang="ar"] .product-details-page .nav-tabs li:not(:first-child) {
        margin-right: 5px;
        margin-bottom: 5px;
    }
    .product-details-page .nav-tabs .nav-link {
        font-size: 14px;
        border: 1px solid #D9D9D9 !important;
        padding: 7px;
    }
}
.b-sidebar header strong {
    width: 100%;
    text-align: center;
}
.mc_embed_signup {
    background:#fff !important; 
    margin: 0 auto !important; 
    width: 350px !important;
}
#mc_embed_signup form {
    background:#fff !important;
    margin: 0 !important;
    padding: 20px 0;
    max-width: 100%;
}
#mc_embed_signup form #mce-EMAIL {
    width: 300px;
    outline: none;
    border: 1px solid #ccc !important;
    padding: 7px;
}
#mc_embed_signup form .btn-gradient-blue {
    max-width: 120px;
    padding: 7px;
}
#mc_embed_signup .mc-field-group {
    margin: 0 auto;
}
.homepage-pr-with-details-1 .bg-white {
    margin-bottom: 20px;
}
.news-sidebar-widget {
    background: #fff;
    padding: 20px;
    border-radius: 12px;
}
.homepage-contactform h6 {
    color: #E3E1E1;
    font-size: 16px;
    font-weight: 200 !important;
}
.big-donation-effect {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    z-index: 10000;
    background: url("./image/win-bg.gif") top center repeat;
}



#home-map {
    background: #d4dadc;
    height: 400px;
    width: 100%;
    border-radius: 16px;
    z-index: 20;
}
.homepage-map-stats-app-view #home-map {
    border-radius: 0;
}

/* Pulse animation for ripple effect - darker to lighter */
@keyframes pulse-ring {
    0% {
        width: 15px;
        height: 15px;
        top: 12px;
        left: 12px;
        opacity: 0.8;
        border-color: rgba(229, 57, 53, 0.8);
        background: rgba(229, 57, 53, 0.25);
    }

    50% {
        opacity: 0.5;
    }

    100% {
        width: 120px;
        height: 120px;
        top: -40px;
        left: -40px;
        opacity: 0;
        border-color: rgba(229, 57, 53, 0.1);
        background: rgba(229, 57, 53, 0.02);
    }
}

/* Slow bounce animation for pin - up and down */
@keyframes bounce {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

.pulse-marker {
    position: relative;
    width: 40px;
    height: 40px;
}

/* Circle marker with white border */
.pulse-icon {
    width: 40px;
    height: 40px;
    background: #e53935;
    border-radius: 50%;
    border: 3px solid white;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    animation: bounce 3s ease-in-out infinite;
    cursor: pointer;
}

    /* White pin shape inside - centered and larger */
    .pulse-icon::before {
        content: '';
        width: 14px;
        height: 19px;
        background: white;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        clip-path: path('M7,0 C10.9,0 14,3.1 14,7 C14,10.9 7,19 7,19 C7,19 0,10.9 0,7 C0,3.1 3.1,0 7,0 Z');
    }

    /* Red dot inside the white pin */
/*    .pulse-icon::after {
        content: '';
        width: 6px;
        height: 6px;
        background: #e53935;
        border-radius: 50%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -70%);
    }*/

.pulse-ring {
    position: absolute;
    width: 15px;
    height: 15px;
    border: 2px solid rgba(229, 57, 53, 0.8);
    background: rgba(229, 57, 53, 0.25);
    border-radius: 50%;
    top: 12px;
    left: 12px;
    animation: pulse-ring 3.5s ease-out infinite;
}

    .pulse-ring:nth-child(2) {
        animation-delay: 1.2s;
    }

    .pulse-ring:nth-child(3) {
        animation-delay: 2.4s;
    }

/* Custom popup styling */
.leaflet-popup-content-wrapper {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
    padding: 0;
}

.leaflet-popup-content {
    margin: 0;
    min-width: 150px;
}

.leaflet-popup-tip {
    background: #fff;
}

.custom-popup {
    padding: 12px 16px;
    text-align: center;
}

    .custom-popup .popup-title {
        font-size: 16px;
        font-weight: 600;
        color: #333;
        margin-bottom: 6px;
    }

    .custom-popup .popup-description {
        font-size: 14px;
        color: #e53935;
        font-weight: 500;
    }