/*=========================================================
                    DONATE PAGE
=========================================================*/

/*=========================================================
                    DONATE HERO
=========================================================*/

.donate-hero{

    position:relative;

    min-height:450px;

    display:flex;

    align-items:flex-start;

    overflow:hidden;

    padding:
        80px
        0
        60px;

    background:

        radial-gradient(
            circle at 82% 45%,
            rgba(59,130,246,.28),
            transparent 30%
        ),

        linear-gradient(
            135deg,
            #0B2F68 0%,
            #104A91 48%,
            #0B326E 100%
        );

}


/*=========================================================
                    HERO BACKGROUND
=========================================================*/

.donate-hero-overlay{

    position:absolute;

    inset:0;

    pointer-events:none;

    background:

        linear-gradient(
            90deg,
            rgba(7,27,61,.25),
            transparent 60%
        );

}


.donate-hero-orb{

    position:absolute;

    border-radius:50%;

    pointer-events:none;

    filter:blur(1px);

}


.donate-orb-one{

    width:500px;

    height:500px;

    top:-280px;

    right:-100px;

    background:
        rgba(96,165,250,.13);

}


.donate-orb-two{

    width:350px;

    height:350px;

    bottom:-230px;

    left:-120px;

    background:
        rgba(147,197,253,.08);

}


/*=========================================================
                    HERO GRID
=========================================================*/

.donate-hero-grid{

    position:relative;

    z-index:5;

    display:grid;

    grid-template-columns:
        1.05fr
        .95fr;

    gap:60px;

    align-items:center;

}


/*=========================================================
                    HERO CONTENT
=========================================================*/

.donate-hero-content{

    max-width:680px;

    color:#ffffff;

}


.donate-eyebrow{

    display:inline-flex;

    align-items:center;

    gap:9px;

    padding:
        9px
        17px;

    margin-bottom:24px;

    border:
        1px solid
        rgba(255,255,255,.22);

    border-radius:50px;

    background:
        rgba(255,255,255,.08);

    color:#E0F2FE;

    font-size:12px;

    font-weight:800;

    letter-spacing:1.7px;

    text-transform:uppercase;

    backdrop-filter:blur(8px);

}


.donate-eyebrow i{

    color:#BAE6FD;

}


.donate-hero h1{

    margin:0 0 24px;

    font-family:'Lora', serif !important;

    font-size:20px;

    line-height:1.08;

    font-weight:500;

    letter-spacing:-1.8px;

}


.donate-hero h1 span{

    display:block;

    color:#BAE6FD;
    font-family:'Lora', serif !important;

}


.donate-hero p{

    max-width:620px;

    margin:0 0 32px;

    color:
        rgba(255,255,255,.80);

    font-size:12px;

    line-height:1.8;
    font-family:'Lora', serif !important;

}


/*=========================================================
                    HERO ACTIONS
=========================================================*/

.donate-hero-actions{

    display:flex;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;

}


.donate-hero-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:
        15px
        27px;

    border-radius:12px;

    background:#ffffff;

    color:#1558B0;

    text-decoration:none;

    font-weight:800;

    box-shadow:
        0 15px 35px
        rgba(0,0,0,.20);

    transition:
        transform .3s ease,
        box-shadow .3s ease;

}


.donate-hero-btn:hover{

    color:#1558B0;

    transform:
        translateY(-4px);

    box-shadow:
        0 20px 42px
        rgba(0,0,0,.27);

}


.donate-secure-note{

    display:inline-flex;

    align-items:center;

    gap:8px;

    color:
        rgba(255,255,255,.68);

    font-size:13px;

    font-weight:600;

}


.donate-secure-note i{

    color:#BAE6FD;

}


/*=========================================================
                    HERO VISUAL
=========================================================*/

.donate-hero-visual{

    position:relative;

    min-height:430px;

    display:flex;

    align-items:center;

    justify-content:center;

}


.donate-visual-glow{

    position:absolute;

    width:360px;

    height:360px;

    border-radius:50%;

    background:
        rgba(96,165,250,.20);

    filter:blur(45px);

}


/*=========================================================
                    ORBIT
=========================================================*/

.donate-impact-orbit{

    position:absolute;

    width:360px;

    height:360px;

    border:
        1px solid
        rgba(191,219,254,.18);

    border-radius:50%;

    animation:
        donateOrbitRotate
        18s
        linear
        infinite;

}


.donate-impact-orbit::before{

    content:"";

    position:absolute;

    inset:35px;

    border:
        1px dashed
        rgba(191,219,254,.15);

    border-radius:50%;

}


.donate-orbit-dot{

    position:absolute;

    width:13px;

    height:13px;

    top:24px;

    left:50%;

    transform:
        translateX(-50%);

    border-radius:50%;

    background:#BAE6FD;

    box-shadow:
        0 0 18px
        rgba(186,230,253,.85);

}


/*=========================================================
                    HEART CARD
=========================================================*/

.donate-heart-card{

    position:relative;

    z-index:3;

    width:245px;

    min-height:245px;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    padding:30px;

    text-align:center;

    border:
        1px solid
        rgba(255,255,255,.20);

    border-radius:30px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.16),
            rgba(255,255,255,.06)
        );

    box-shadow:
        0 30px 70px
        rgba(0,0,0,.22);

    backdrop-filter:
        blur(18px);

}


.donate-heart-icon{

    width:70px;

    height:70px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:17px;

    border-radius:22px;

    background:
        rgba(255,255,255,.13);

    color:#BAE6FD;

    font-size:30px;

    box-shadow:
        0 0 30px
        rgba(186,230,253,.12);

}


.donate-heart-card > span{

    margin-bottom:8px;

    color:#BAE6FD;

    font-size:11px;

    font-weight:800;

    letter-spacing:2px;

}


.donate-heart-card strong{

    color:#ffffff;

    font-size:22px;

    line-height:1.25;

}


.donate-heart-card small{

    margin-top:10px;

    color:
        rgba(255,255,255,.60);

    font-size:12px;

}


/*=========================================================
                FLOATING CARDS
=========================================================*/

.donate-floating-card{

    position:absolute;

    z-index:5;

    display:flex;

    align-items:center;

    gap:11px;

    padding:
        12px
        15px;

    border:
        1px solid
        rgba(255,255,255,.16);

    border-radius:14px;

    background:
        rgba(255,255,255,.10);

    box-shadow:
        0 15px 35px
        rgba(0,0,0,.16);

    backdrop-filter:blur(12px);

}


.donate-floating-card i{

    width:36px;

    height:36px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:10px;

    background:
        rgba(186,230,253,.13);

    color:#BAE6FD;

}


.donate-floating-card strong,
.donate-floating-card span{

    display:block;

}


.donate-floating-card strong{

    color:#ffffff;

    font-size:12px;

}


.donate-floating-card span{

    margin-top:2px;

    color:
        rgba(255,255,255,.56);

    font-size:10px;

}


.donate-floating-top{

    top:40px;

    right:0;

    animation:
        donateFloatOne
        4s
        ease-in-out
        infinite;

}


.donate-floating-bottom{

    bottom:35px;

    left:5px;

    animation:
        donateFloatTwo
        4.5s
        ease-in-out
        infinite;

}


/*=========================================================
                    HERO ANIMATIONS
=========================================================*/

@keyframes donateOrbitRotate{

    from{

        transform:rotate(0deg);

    }

    to{

        transform:rotate(360deg);

    }

}


@keyframes donateFloatOne{

    0%,
    100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-9px);

    }

}


@keyframes donateFloatTwo{

    0%,
    100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(8px);

    }

}


/*=========================================================
                COMMON SECTION HEADING
=========================================================*/

.donate-section-heading{

    max-width:720px;

    margin:0 auto 55px;

    text-align:center;

}


.donate-section-heading > span,
.donate-label{

    display:inline-block;

    margin-bottom:13px;

    color:#2563EB;

    font-size:13px;

    font-weight:800;

    letter-spacing:1.8px;

    text-transform:uppercase;

}


.donate-section-heading h2{

    margin:0 0 16px;

    color:#0F172A;

    font-family:'Manrope',sans-serif;

    font-size:42px;

    line-height:1.2;

    font-weight:800;

}


.donate-section-heading p{

    margin:0;

    color:#64748B;

    font-size:16px;

    line-height:1.8;

}


/*=========================================================
                IMPACT SECTION
=========================================================*/

.donate-impact{

    padding:100px 0;

    background:#F8FAFC;

}


.donate-impact-grid{

    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:25px;

}


.donate-impact-card{

    padding:34px 30px;

    background:#ffffff;

    border:1px solid #E5EAF2;

    border-radius:20px;

    box-shadow:
        0 12px 35px rgba(15,23,42,.05);

    transition:.35s ease;

}


.donate-impact-card:hover{

    transform:translateY(-7px);

    border-color:#BFDBFE;

    box-shadow:
        0 22px 45px rgba(37,99,235,.12);

}


.donate-impact-icon{

    width:58px;

    height:58px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:22px;

    border-radius:16px;

    background:#EAF2FF;

    color:#2563EB;

    font-size:22px;

}


.donate-impact-card h3{

    margin:0 0 12px;

    color:#0F172A;

    font-size:21px;

    font-weight:750;

}


.donate-impact-card p{

    margin:0;

    color:#64748B;

    font-size:15px;

    line-height:1.75;

}


/*=========================================================
                WHERE DONATION GOES
=========================================================*/

.donate-where{

    padding:110px 0;

    background:#ffffff;

}


.donate-where-grid{

    display:grid;

    grid-template-columns:
        1fr 1fr;

    gap:70px;

    align-items:center;

}


.donate-where-content h2{

    max-width:600px;

    margin:0 0 20px;

    color:#0F172A;

    font-family:'Manrope',sans-serif;

    font-size:42px;

    line-height:1.2;

    font-weight:800;

}


.donate-where-content > p{

    max-width:620px;

    margin:0 0 28px;

    color:#64748B;

    font-size:16px;

    line-height:1.8;

}


.donate-check-list{

    list-style:none;

    margin:0;

    padding:0;

}


.donate-check-list li{

    display:flex;

    align-items:center;

    gap:11px;

    margin-bottom:15px;

    color:#334155;

    font-size:15px;

    font-weight:600;

}


.donate-check-list i{

    color:#2563EB;

}


.donate-where-image{

    min-height:390px;

}


.donate-image-placeholder{

    width:100%;

    height:100%;

    min-height:390px;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    gap:15px;

    border-radius:26px;

    background:
        linear-gradient(
            145deg,
            #EAF2FF,
            #DBEAFE
        );

    color:#2563EB;

    font-size:18px;

    font-weight:700;

}


.donate-image-placeholder i{

    font-size:55px;

}


/*=========================================================
                    DONATION FORM
=========================================================*/

.donation-section{

    padding:110px 0;

    background:#F8FAFC;

}


.donation-box{

    max-width:900px;

    margin:0 auto;

    padding:55px;

    background:#ffffff;

    border:1px solid #E5EAF2;

    border-radius:26px;

    box-shadow:
        0 20px 55px rgba(15,23,42,.07);

}


.donation-heading{

    text-align:center;

    margin-bottom:45px;

}


.donation-heading > span{

    color:#2563EB;

    font-size:13px;

    font-weight:800;

    letter-spacing:1.8px;

}


.donation-heading h2{

    margin:12px 0 12px;

    color:#0F172A;

    font-family:'Manrope',sans-serif;

    font-size:40px;

    font-weight:800;

}


.donation-heading p{

    margin:0;

    color:#64748B;

}


/*=========================================================
                FORM GROUPS
=========================================================*/

.donation-field-group{

    margin-bottom:35px;

}


.donation-field-group > label{

    display:block;

    margin-bottom:13px;

    color:#0F172A;

    font-size:15px;

    font-weight:700;

}


.donation-amounts{

    display:grid;

    grid-template-columns:
        repeat(5,1fr);

    gap:10px;

}


.donation-amount{

    padding:14px 10px;

    border:1px solid #CBD5E1;

    border-radius:11px;

    background:#ffffff;

    color:#334155;

    font-weight:700;

    cursor:pointer;

    transition:.25s ease;

}


.donation-amount:hover,
.donation-amount.active{

    border-color:#2563EB;

    background:#EAF2FF;

    color:#2563EB;

}


.custom-amount-wrapper{

    display:none;

    margin-top:16px;

}


.custom-amount-wrapper.show{

    display:block;

}


.custom-amount-wrapper label{

    display:block;

    margin-bottom:8px;

    color:#475569;

    font-size:13px;

    font-weight:600;

}


.amount-input{

    display:flex;

    align-items:center;

    border:1px solid #CBD5E1;

    border-radius:11px;

    overflow:hidden;

}


.amount-input span{

    padding:13px 15px;

    background:#F8FAFC;

    color:#64748B;

    font-weight:700;

}


.amount-input input{

    width:100%;

    padding:13px 14px;

    border:none;

    outline:none;

    font-size:16px;

}


/*=========================================================
                DONATION TYPE
=========================================================*/

.donation-type{

    display:grid;

    grid-template-columns:
        repeat(2,1fr);

    gap:12px;

}


.donation-radio{

    display:flex;

    align-items:center;

    gap:10px;

    padding:15px;

    border:1px solid #E2E8F0;

    border-radius:11px;

    cursor:pointer;

}


.donation-radio input{

    accent-color:#2563EB;

}


/*=========================================================
                DONOR DETAILS
=========================================================*/

.donor-details{

    padding-top:10px;

    margin-top:10px;

    border-top:1px solid #E5EAF2;

}


.donor-details h3,
.payment-method-section h3{

    margin:0 0 22px;

    color:#0F172A;

    font-size:20px;

    font-weight:750;

}


.donor-grid{

    display:grid;

    grid-template-columns:
        repeat(2,1fr);

    gap:20px;

}


.form-group label{

    display:block;

    margin-bottom:8px;

    color:#334155;

    font-size:14px;

    font-weight:650;

}


.form-group input{

    width:100%;

    padding:13px 15px;

    border:1px solid #CBD5E1;

    border-radius:10px;

    outline:none;

    color:#0F172A;

    background:#ffffff;

    transition:.25s ease;

}


.form-group input:focus{

    border-color:#2563EB;

    box-shadow:
        0 0 0 3px rgba(37,99,235,.10);

}


/*=========================================================
                PAYMENT / SCAN & PAY
=========================================================*/

.payment-method-section{

    margin-top:40px;

    padding-top:34px;

    border-top:1px solid #E5EAF2;

}

.payment-section-heading{

    display:flex;

    align-items:flex-start;

    justify-content:space-between;

    gap:25px;

    margin-bottom:26px;

}

.payment-section-heading h3{

    margin:0 0 8px;

    color:#0F172A;

    font-family:'Manrope',sans-serif;

    font-size:24px;

    font-weight:800;

}

.payment-section-heading p{

    max-width:650px;

    margin:0;

    color:#64748B;

    font-size:14px;

    line-height:1.7;

}

.payment-secure-badge{

    display:inline-flex;

    align-items:center;

    gap:7px;

    flex:0 0 auto;

    padding:9px 13px;

    border:1px solid #D1FAE5;

    border-radius:50px;

    background:#F0FDF4;

    color:#047857;

    font-size:12px;

    font-weight:750;

}

.payment-grid{

    display:grid;

    grid-template-columns:minmax(270px,.82fr) minmax(0,1.18fr);

    gap:22px;

    align-items:stretch;

}

.upi-qr-card{

    position:relative;

    padding:22px;

    overflow:hidden;

    border:1px solid #DDE7F3;

    border-radius:22px;

    background:
        radial-gradient(circle at 50% 0%, rgba(37,99,235,.09), transparent 45%),
        #ffffff;

    box-shadow:0 15px 40px rgba(15,23,42,.07);

    text-align:center;

}

.upi-qr-card::after{

    content:"";

    position:absolute;

    width:150px;

    height:150px;

    right:-75px;

    bottom:-75px;

    border-radius:50%;

    background:rgba(37,99,235,.06);

}

.qr-card-top{

    position:relative;

    z-index:2;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:12px;

    margin-bottom:18px;

}

.qr-brand{

    color:#00856A;

    font-size:18px;

    font-weight:850;

    letter-spacing:.2px;

}

.qr-brand strong{

    color:#0F172A;

    font-weight:850;

}

.qr-scan-label{

    display:inline-flex;

    align-items:center;

    gap:6px;

    color:#64748B;

    font-size:11px;

    font-weight:750;

    text-transform:uppercase;

    letter-spacing:.7px;

}

.qr-frame{

    position:relative;

    z-index:2;

    display:flex;

    align-items:center;

    justify-content:center;

    width:100%;

    aspect-ratio:1 / 1;

    max-width:310px;

    margin:0 auto 18px;

    padding:13px;

    border:1px solid #E2E8F0;

    border-radius:17px;

    background:#ffffff;

    box-shadow:0 10px 28px rgba(15,23,42,.08);

}

.donation-qr{

    display:block;

    width:100%;

    height:100%;

    object-fit:contain;

    image-rendering:auto;

}

.upi-id-row{

    position:relative;

    z-index:2;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:12px;

    padding:12px 13px;

    border:1px solid #E2E8F0;

    border-radius:13px;

    background:#F8FAFC;

    text-align:left;

}

.upi-id-row small{

    display:block;

    margin-bottom:3px;

    color:#64748B;

    font-size:10px;

    font-weight:750;

    letter-spacing:.7px;

    text-transform:uppercase;

}

.upi-id-row strong{

    display:block;

    color:#0F172A;

    font-size:13px;

    line-height:1.3;

    word-break:break-all;

}

.copy-upi-btn{

    width:38px;

    height:38px;

    flex:0 0 38px;

    display:flex;

    align-items:center;

    justify-content:center;

    border:1px solid #CBD5E1;

    border-radius:10px;

    background:#ffffff;

    color:#2563EB;

    cursor:pointer;

    transition:.25s ease;

}

.copy-upi-btn:hover{

    transform:translateY(-2px);

    border-color:#2563EB;

    background:#EAF2FF;

}

.copy-feedback{

    position:relative;

    z-index:2;

    display:block;

    min-height:17px;

    margin-top:6px;

    color:#059669;

    font-size:11px;

    font-weight:700;

}

.bank-details-card{

    padding:26px;

    border:1px solid #E2E8F0;

    border-radius:22px;

    background:
        linear-gradient(145deg,#F8FBFF,#FFFFFF);

}

.bank-card-heading{

    display:flex;

    align-items:center;

    gap:13px;

    margin-bottom:20px;

}

.bank-icon{

    width:48px;

    height:48px;

    flex:0 0 48px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:14px;

    background:#EAF2FF;

    color:#2563EB;

    font-size:19px;

}

.bank-card-heading span{

    display:block;

    margin-bottom:3px;

    color:#2563EB;

    font-size:10px;

    font-weight:800;

    letter-spacing:1.4px;

    text-transform:uppercase;

}

.bank-card-heading h4{

    margin:0;

    color:#0F172A;

    font-family:'Manrope',sans-serif;

    font-size:20px;

    font-weight:800;

}

.bank-detail-list{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:0;

    border-top:1px solid #E5EAF2;

}

.bank-detail-item{

    padding:13px 10px 13px 0;

    border-bottom:1px solid #E5EAF2;

}

.bank-detail-item:nth-child(even){

    padding-left:14px;

    border-left:1px solid #E5EAF2;

}

.bank-detail-item span{

    display:block;

    margin-bottom:4px;

    color:#64748B;

    font-size:10px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.55px;

}

.bank-detail-item strong{

    display:block;

    color:#1E293B;

    font-size:13px;

    line-height:1.45;

}

.bank-address{

    display:flex;

    gap:11px;

    margin-top:18px;

    padding:14px;

    border-radius:13px;

    background:#F1F5F9;

}

.bank-address > i{

    margin-top:3px;

    color:#2563EB;

}

.bank-address span{

    display:block;

    margin-bottom:4px;

    color:#334155;

    font-size:11px;

    font-weight:800;

    text-transform:uppercase;

    letter-spacing:.5px;

}

.bank-address p{

    margin:0;

    color:#64748B;

    font-size:12px;

    line-height:1.65;

}

.payment-note{

    display:flex;

    align-items:flex-start;

    gap:9px;

    margin-top:13px;

    color:#64748B;

}

.payment-note i{

    margin-top:3px;

    color:#2563EB;

    font-size:13px;

}

.payment-note p{

    margin:0;

    font-size:11px;

    line-height:1.6;

}

.payment-steps{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:10px;

    margin-top:18px;

}

.payment-step{

    display:flex;

    align-items:flex-start;

    gap:10px;

    padding:13px;

    border:1px solid #E8EEF5;

    border-radius:13px;

    background:#FBFDFF;

}

.payment-step > span{

    width:29px;

    height:29px;

    flex:0 0 29px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:#EAF2FF;

    color:#2563EB;

    font-size:10px;

    font-weight:850;

}

.payment-step strong{

    display:block;

    margin-bottom:2px;

    color:#1E293B;

    font-size:11px;

}

.payment-step small{

    display:block;

    color:#64748B;

    font-size:10px;

    line-height:1.45;

}

/*=========================================================
                SUBMIT
=========================================================*/

.donation-submit{

    width:100%;

    margin-top:30px;

    padding:16px 25px;

    border:none;

    border-radius:12px;

    background:
        linear-gradient(
            135deg,
            #2563EB,
            #0F62FE
        );

    color:#ffffff;

    font-size:16px;

    font-weight:700;

    cursor:pointer;

    box-shadow:
        0 12px 28px rgba(37,99,235,.22);

    transition:.3s ease;

}

.donation-submit:hover{

    transform:translateY(-3px);

    box-shadow:
        0 18px 35px rgba(37,99,235,.30);

}

.donation-form-note{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:7px;

    margin:12px 0 0;

    color:#94A3B8;

    font-size:11px;

}

.donation-form-note i{

    color:#64748B;

}

/*=========================================================
                    TRUST
=========================================================*/

.donate-trust{

    padding:70px 0;

    background:#ffffff;

}


.donate-trust-content{

    display:flex;

    align-items:flex-start;

    gap:25px;

    max-width:900px;

    margin:auto;

    padding:35px;

    border:1px solid #DBEAFE;

    border-radius:20px;

    background:#F8FBFF;

}


.donate-trust-icon{

    width:58px;

    height:58px;

    flex:0 0 58px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:15px;

    background:#EAF2FF;

    color:#2563EB;

    font-size:23px;

}


.donate-trust h2{

    margin:0 0 10px;

    color:#0F172A;

    font-family:'Manrope',sans-serif;

    font-size:28px;

    font-weight:800;

}


.donate-trust p{

    margin:0;

    color:#64748B;

    line-height:1.75;

}


/*=========================================================
                    FINAL CTA
=========================================================*/

.donate-final-cta{

    padding:90px 0;

    text-align:center;

    background:
        linear-gradient(
            135deg,
            #0F3B82,
            #1558B0
        );

    color:#ffffff;

}


.donate-final-cta h2{

    margin:0 0 15px;

    font-family:'Manrope',sans-serif;

    font-size:40px;

    font-weight:800;

}


.donate-final-cta p{

    margin:0 0 28px;

    color:rgba(255,255,255,.78);

}


.donate-final-btn{

    display:inline-flex;

    padding:14px 28px;

    border-radius:11px;

    background:#ffffff;

    color:#1558B0;

    text-decoration:none;

    font-weight:700;

    transition:.3s ease;

}


.donate-final-btn:hover{

    color:#1558B0;

    transform:translateY(-3px);

}


/*=========================================================
                    RESPONSIVE
=========================================================*/

@media(max-width:991px){

    .payment-grid{

        grid-template-columns:1fr;

    }

    .upi-qr-card{

        max-width:520px;

        width:100%;

        margin:0 auto;

    }

}

@media(max-width:991px){

     .donate-hero{

        min-height:560px;

        padding:130px 0 90px;

    }


    .donate-hero h1{

        font-size:48px;

    }


    .donate-impact-grid{

        grid-template-columns:
            repeat(2,1fr);

    }


    .donate-where-grid{

        grid-template-columns:1fr;

        gap:45px;

    }


    .donate-amounts{

        grid-template-columns:
            repeat(3,1fr);

    }
    
    .donate-hero-grid{

    grid-template-columns:1fr;

    gap:30px;

}


.donate-hero-content{

    max-width:700px;

    text-align:center;

    margin:auto;

}


.donate-hero-content p{

    margin-left:auto;

    margin-right:auto;

}


.donate-hero-actions{

    justify-content:center;

}


.donate-hero-visual{

    min-height:360px;

}


.donate-impact-orbit{

    width:300px;

    height:300px;

}


.donate-floating-top{

    right:8%;

}


.donate-floating-bottom{

    left:8%;

}

}


@media(max-width:768px){

    .payment-section-heading{

        flex-direction:column;

        gap:12px;

    }

    .payment-secure-badge{

        align-self:flex-start;

    }

    .payment-steps{

        grid-template-columns:1fr;

    }

    .bank-details-card{

        padding:20px;

    }

}

@media(max-width:768px){

    .donate-hero{

        min-height:560px;

        padding:125px 0 80px;

    }


    .donate-hero h1{

        font-size:38px;

        letter-spacing:-.7px;

    }


    .donate-hero p{

        font-size:16px;

    }


    .donate-impact,
    .donate-where,
    .donation-section{

        padding:75px 0;

    }


    .donate-section-heading h2,
    .donate-where-content h2{

        font-size:32px;

    }


    .donate-impact-grid{

        grid-template-columns:1fr;

    }


    .donate-where-image,
    .donate-image-placeholder{

        min-height:300px;

    }


    .donation-box{

        padding:28px 20px;

        border-radius:20px;

    }


    .donation-heading h2{

        font-size:32px;

    }


    .donation-amounts{

        grid-template-columns:
            repeat(2,1fr);

    }


    .donation-type{

        grid-template-columns:1fr;

    }


    .donor-grid{

        grid-template-columns:1fr;

    }


    .donate-trust-content{

        padding:25px;

        flex-direction:column;

    }


    .donate-final-cta{

        padding:75px 20px;

    }


    .donate-final-cta h2{

        font-size:32px;

    }
    
    
    .donate-hero{

    min-height:auto;

    padding:
        120px
        0
        65px;

}


.donate-hero h1{

    font-size:40px;

}


.donate-hero-visual{

    min-height:320px;

}


.donate-impact-orbit{

    width:260px;

    height:260px;

}


.donate-heart-card{

    width:205px;

    min-height:205px;

    padding:24px;

}


.donate-heart-icon{

    width:58px;

    height:58px;

    font-size:25px;

}


.donate-heart-card strong{

    font-size:18px;

}


.donate-floating-card{

    padding:
        9px
        11px;

}


.donate-floating-top{

    top:20px;

    right:0;

}


.donate-floating-bottom{

    bottom:15px;

    left:0;

}

}


@media(max-width:390px){

    .upi-qr-card{

        padding:16px;

    }

    .qr-card-top{

        align-items:flex-start;

        flex-direction:column;

    }

    .qr-frame{

        padding:9px;

    }

    .bank-detail-list{

        grid-template-columns:1fr;

    }

    .bank-detail-item:nth-child(even){

        padding-left:0;

        border-left:none;

    }

}

@media(max-width:390px){

    .donate-hero h1{

        font-size:34px;

    }


    .donate-amounts{

        grid-template-columns:1fr 1fr;

    }
    
    .donate-hero h1{

    font-size:34px;

}


.donate-hero-visual{

    min-height:285px;

}


.donate-impact-orbit{

    width:230px;

    height:230px;

}


.donate-heart-card{

    width:185px;

    min-height:185px;

}


.donate-floating-card{

    transform:scale(.88);

}


.donate-floating-top{

    right:-8px;

}


.donate-floating-bottom{

    left:-8px;

}

}

/* =========================================================
   VWS DONATION REFRESH — WARM NGO + UJJIVAN PAYMENT PALETTE
   Appended overrides keep the existing page structure intact.
========================================================= */
:root{
    --vws-green:#006050;
    --vws-green-dark:#00483d;
    --vws-green-soft:#dcefe8;
    --vws-orange:#e8752f;
    --vws-orange-dark:#c95c1f;
    --vws-cream:#fff7ea;
    --vws-ivory:#fffdf8;
    --vws-charcoal:#25312e;
    --vws-muted:#68736f;
    --vws-border:#e6ddd0;
}

.donate-hero{
    min-height:450px;
    padding-top:85px;
    background:
        radial-gradient(circle at 90% 15%, rgba(232,117,47,.25), transparent 27%),
        radial-gradient(circle at 8% 90%, rgba(0,96,80,.20), transparent 30%),
        linear-gradient(135deg,#fff7ea 0%,#f8efe0 52%,#e7f2eb 100%);
    color:var(--vws-charcoal);
}

.donate-hero::before{
    content:"";
    position:absolute;
    inset:0;
    opacity:.28;
    background-image:radial-gradient(rgba(0,96,80,.15) 1px,transparent 1px);
    background-size:22px 22px;
    pointer-events:none;
}

.donate-hero-overlay,
.donate-hero-orb,
.donate-impact-orbit,
.donate-visual-glow,
.donate-heart-card,
.donate-floating-card{display:none!important;}

.donate-hero-pattern{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}
.donate-pattern-one{
    width:270px;height:270px;right:-100px;top:80px;
    border:42px solid rgba(232,117,47,.13);
}
.donate-pattern-two{
    width:190px;height:190px;left:-90px;bottom:-80px;
    border:28px solid rgba(0,96,80,.12);
}

.donate-hero-grid{grid-template-columns:1.08fr .92fr;gap:70px;}
.donate-hero-content{max-width:700px;color:var(--vws-charcoal);}
.donate-eyebrow{
    margin-bottom:22px;
    padding:9px 16px;
    border:1px solid rgba(0,96,80,.18);
    background:rgba(255,255,255,.68);
    color:var(--vws-green);
    box-shadow:0 8px 25px rgba(0,72,61,.07);
    backdrop-filter:blur(8px);
}
.donate-eyebrow i{color:var(--vws-orange);}
.donate-hero h1{font-size:58px;line-height:1.08;color:var(--vws-green-dark);}
.donate-hero h1 span{color:var(--vws-orange);}
.donate-hero p{max-width:650px;color:#52605b;line-height:1.8;}
.donate-hero-actions{gap:20px;}
.donate-hero-btn{
    background:var(--vws-orange);
    color:#fff!important;
    border:2px solid var(--vws-orange);
    box-shadow:0 12px 28px rgba(201,92,31,.22);
}
.donate-hero-btn:hover{background:var(--vws-orange-dark);border-color:var(--vws-orange-dark);transform:translateY(-2px);}
.donate-secure-note{color:var(--vws-green);}
.donate-secure-note i{color:var(--vws-orange);}
.donate-hero-values{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;}
.donate-hero-values span{
    display:inline-flex;align-items:center;gap:7px;
    padding:8px 12px;border-radius:999px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(0,96,80,.12);
    color:var(--vws-green-dark);font-size:12px;font-weight:800;
}
.donate-hero-values i{color:var(--vws-orange);}

.donate-hero-message{display:flex;justify-content:center;align-items:center;}
.hero-message-card{
    position:relative;max-width:420px;padding:42px 40px;border-radius:28px;
    background:var(--vws-green);color:#fff;
    box-shadow:0 25px 60px rgba(0,72,61,.22);
    overflow:hidden;
}
.hero-message-card::after{
    content:"";position:absolute;width:190px;height:190px;right:-80px;bottom:-95px;
    border:32px solid rgba(232,117,47,.35);border-radius:50%;
}
.hero-message-icon{
    width:62px;height:62px;display:grid;place-items:center;border-radius:18px;
    background:rgba(255,255,255,.12);color:#ffd8bd;font-size:25px;margin-bottom:24px;
}
.hero-message-card span{display:block;color:#f7c29f;font-size:11px;font-weight:900;letter-spacing:1.8px;margin-bottom:12px;}
.hero-message-card strong{display:block;max-width:320px;font-family:'Manrope',sans-serif;font-size:24px;line-height:1.45;}
.hero-message-line{width:70px;height:4px;border-radius:99px;background:var(--vws-orange);margin:25px 0 16px;}
.hero-message-card small{color:rgba(255,255,255,.78);font-weight:700;}

.donate-impact{background:var(--vws-ivory);}
.donate-section-heading span,.donate-label{color:var(--vws-orange)!important;}
.donate-section-heading h2{color:var(--vws-green-dark);}
.donate-impact-card{background:#fff;border-color:var(--vws-border);box-shadow:0 10px 30px rgba(37,49,46,.06);}
.donate-impact-card:hover{border-color:rgba(0,96,80,.28);box-shadow:0 18px 40px rgba(0,72,61,.10);}
.donate-impact-icon{background:var(--vws-green-soft);color:var(--vws-green);}
.donate-impact-card h3{color:var(--vws-green-dark);}

.donation-section{background:linear-gradient(180deg,#fffdf8 0%,#fff7ea 100%);}
.donation-box{border-color:var(--vws-border);box-shadow:0 20px 55px rgba(37,49,46,.08);}
.donation-heading h2{color:var(--vws-green-dark);}

.payment-method-section{
    background:linear-gradient(135deg,#f0f7f2 0%,#fff7ea 100%);
    border:1px solid rgba(0,96,80,.14);
    border-radius:26px;
}
.payment-section-heading h3{color:var(--vws-green-dark);}
.payment-section-heading p{color:var(--vws-muted);}
.payment-secure-badge{
    background:var(--vws-green);color:#fff;border-color:var(--vws-green);
}

.payment-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:28px;}
.upi-scanner-card{
    padding:0;border-radius:22px;background:#fff;border:1px solid var(--vws-border);
    box-shadow:0 14px 35px rgba(37,49,46,.07);
    overflow:hidden;
    display:flex;
    align-items:stretch;
    height:100%;
    min-height:100%;
}
.donation-scanner{
    display:block;width:100%;height:95%;max-width:none;
    margin:0;border:0;border-radius:0;
    object-fit:cover;
    object-position:center center;
    transform:scale(1.18);
}

.bank-details-card{background:#fff;border:1px solid var(--vws-border);box-shadow:0 14px 35px rgba(37,49,46,.07);}
.bank-icon{background:var(--vws-green-soft);color:var(--vws-green);}
.bank-card-heading span{color:var(--vws-orange);}
.bank-card-heading h4{color:var(--vws-green-dark);}
.bank-detail-item strong{color:var(--vws-green-dark);}
.bank-detail-item:nth-child(even){background:#fbf8f1;}
.bank-address{background:#f0f7f2;border-color:rgba(0,96,80,.10);}
.bank-address > i{color:var(--vws-green);}
.payment-note{background:#fff3e8;border-color:rgba(232,117,47,.18);}
.payment-note i{color:var(--vws-orange);}

.payment-steps{border-top-color:var(--vws-border);}
.payment-step > span{background:var(--vws-green);color:#fff;}
.payment-step strong{color:var(--vws-green-dark);}
.payment-step small{color:var(--vws-muted);}
.donation-submit{background:var(--vws-orange)!important;border-color:var(--vws-orange)!important;color:#fff!important;box-shadow:0 12px 28px rgba(201,92,31,.18);}
.donation-submit:hover{background:var(--vws-orange-dark)!important;border-color:var(--vws-orange-dark)!important;}
.donation-form-note{color:var(--vws-muted);}
.donation-form-note i{color:var(--vws-green);}

.donate-trust{background:var(--vws-green);}
.donate-final-cta{background:linear-gradient(135deg,var(--vws-green-dark),var(--vws-green));}
.donate-final-btn{background:var(--vws-orange)!important;border-color:var(--vws-orange)!important;color:#fff!important;}
.donate-final-btn:hover{background:var(--vws-orange-dark)!important;border-color:var(--vws-orange-dark)!important;}

@media (max-width:900px){
    .donate-hero{padding:110px 0 70px;}
    .donate-hero-grid{grid-template-columns:1fr;gap:45px;}
    .donate-hero h1{font-size:48px;}
    .donate-hero-message{justify-content:flex-start;}
    .payment-grid{grid-template-columns:1fr;}
}

@media (max-width:600px){
    .donate-hero{padding:95px 0 55px;}
    .donate-hero h1{font-size:38px;letter-spacing:-1px;}
    .donate-hero p{font-size:15px;}
    .donate-hero-values{gap:7px;}
    .donate-hero-values span{font-size:11px;padding:7px 9px;}
    .hero-message-card{padding:30px 25px;border-radius:22px;}
    .hero-message-card strong{font-size:20px;}
    .payment-method-section{padding:20px 14px;}
    .upi-scanner-card{padding:0;}
    .scanner-upi-row{align-items:flex-start;}
}
/* Custom VWS donation hero heading */
.donate-hero h1 {
    font-size: 30px !important;
    line-height: 1.12 !important;
    letter-spacing: -1px !important;
}
@media (max-width: 768px) {
    .donate-hero h1 {
        font-size: 34px !important;
    }
}

@media (max-width: 390px) {
    .donate-hero h1 {
        font-size: 30px !important;
    }
}
/* FIX: keep donation hero content below fixed navbar */
.donate-hero {
    padding-top: 120px !important;
}
/* =========================================================
   VWS DONATION HERO PHOTO CARD
   Replace green message card with community photograph
   ========================================================= */

.hero-message-card{
    position:relative !important;

    width:100% !important;
    max-width:420px !important;
    height:430px !important;

    padding:0 !important;
    margin:0 !important;

    overflow:hidden !important;

    /* Premium irregular / organic shape */
    border:8px solid #ffffff !important;

    border-radius:
        38px 52px 32px 46px /
        46px 32px 52px 38px !important;

    background-image:
        linear-gradient(
            180deg,
            rgba(0,0,0,0.02),
            rgba(0,72,61,0.16)
        ),
        url("../images/donation-hero.jpg") !important;

    background-size:cover !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;

    box-shadow:
        0 24px 55px rgba(37,49,46,0.18),
        0 8px 20px rgba(0,72,61,0.10) !important;

    color:transparent !important;
}


/* Hide the old green-card content */
.hero-message-card .hero-message-icon,
.hero-message-card > span,
.hero-message-card > strong,
.hero-message-card .hero-message-line,
.hero-message-card > small{
    display:none !important;
}


/* Remove the old orange circular decoration */
.hero-message-card::after{
    display:none !important;
}


/* Subtle premium white inner frame */
.hero-message-card::before{
    content:"";
    position:absolute;
    inset:10px;

    border:
        1px solid
        rgba(255,255,255,0.75);

    border-radius:
        30px 43px 25px 38px /
        38px 25px 43px 30px;

    pointer-events:none;

    z-index:2;
}


/* Keep the photo positioned nicely */
.donate-hero-message{
    display:flex;
    justify-content:center;
    align-items:center;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width:900px){

    .hero-message-card{
        max-width:520px !important;
        height:460px !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width:600px){

    .hero-message-card{
        width:100% !important;
        max-width:420px !important;
        height:420px !important;

        border-width:6px !important;

        border-radius:
            30px 42px 26px 38px /
            38px 26px 42px 30px !important;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width:390px){

    .hero-message-card{
        height:380px !important;
    }

}
