/*
Theme Name: Rakshakali Samiti
Description: Bengali community association theme matching the supplied homepage.
Version: 2.0.0
Requires PHP: 7.4
Text Domain: rakshakali-samiti
*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Bengali:wght@400;500;600;700;800;900&family=Noto+Serif+Bengali:wght@400;500&display=swap');
*{box-sizing:border-box}html{line-height:1.5;scroll-behavior:smooth}body{margin:0;background:#faf9f6;color:#242424;font-family:'Noto Sans Bengali',sans-serif}a{color:inherit;text-decoration:none}p,figure,h1,h2,h3{margin:0}p{color:#68655f;line-height:1.9}h1,h2,h3{line-height:1.45;margin-bottom:20px}h2{font-size:36px;font-weight:400}h3{font-size:21px;font-weight:400}img,svg{display:block}img{max-width:100%;height:auto}a:focus-visible{outline:3px solid #b4272a;outline-offset:4px}.topline{background:#b4272a;color:white;text-align:center;padding:8px;font-size:12px;letter-spacing:3px}header{padding:25px 6%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #e6e3de}.brand{display:flex;gap:12px;align-items:center;font-size:17px;font-weight:700;line-height:1.5}.brand-logo{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid #b4272a;background:white}nav{display:flex;gap:26px;font-size:14px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:14px 23px;border-radius:5px;min-height:48px;font-weight:600;border:1px solid #b4272a;transition:background .2s,transform .2s}.primary{background:#b4272a;color:white}.primary:hover{background:#942126}.primary:active{transform:scale(.98)}.secondary{background:transparent;color:#242424;border-color:#d2cfca}.eyebrow{display:block;color:#b4272a;font-size:13px;font-weight:600;letter-spacing:1px;margin-bottom:22px}.hero{text-align:center;padding:62px 6% 0}.hero h1{font-size:clamp(34px,4.5vw,63px);font-weight:800;letter-spacing:-1.8px;line-height:1.4}.hero h1 em{font-style:normal;color:#b4272a}.hero p{font-family:'Noto Serif Bengali',serif;font-size:17px}.actions{display:flex;justify-content:center;gap:16px;margin:28px 0 40px}figure{margin:0 auto;max-width:1240px}.logo-stage{display:flex;flex-direction:column;align-items:center}.club-seal{aspect-ratio:1;background:white;box-shadow:0 18px 40px #2424241f;width:min(420px,86vw);height:auto;object-fit:contain;border-radius:50%}figcaption{display:flex;justify-content:space-between;font-size:12px;color:#68655f;padding:16px 0;text-align:left}.section{padding:90px 8%;display:grid;grid-template-columns:1fr 2fr;gap:70px}.section-title{position:sticky;top:30px;align-self:start}.purpose{display:grid;grid-template-columns:1fr 1fr;gap:36px}.purpose svg{color:#b4272a;margin-bottom:18px}.purpose p{font-size:15px}.membership{background:#eeeae5;padding:75px 10%;position:relative}.membership h2{font-size:45px}.membership p{max-width:650px}.notice{border-top:1px solid #d7d3cd;padding-top:24px}.notice>span{color:#b4272a;font-size:12px}.notice h3{margin-top:22px}.notice hr{border:0;border-top:1px solid #dedad3;margin:28px 0}.contact{padding:65px 10%;background:#242424;color:white}.contact p{color:#ccc9c4}footer{padding:28px 6%;display:flex;justify-content:space-between;gap:24px;font-size:12px;color:#68655f;border-top:1px solid #ddd}
@media(max-width:800px){header{padding:18px 5%;flex-wrap:wrap}.brand{font-size:14px}.brand-logo{width:48px;height:48px}nav{order:3;width:100%;justify-content:space-between;gap:8px;font-size:12px}header .secondary{padding:10px;font-size:12px}.hero{padding-top:40px}.hero h1{letter-spacing:-.7px}.hero p{font-size:14px}.actions{flex-wrap:wrap}figcaption{font-size:10px}.section{padding:50px 6%;grid-template-columns:1fr;gap:25px}.section-title{position:static}.purpose{gap:25px}.purpose h3{font-size:18px}.membership{padding:50px 6%}.membership h2{font-size:34px}footer{flex-wrap:wrap}h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.wordpress-content{max-width:1100px;margin:60px auto;padding:0 6%}.wordpress-content article{margin-bottom:40px}.wordpress-content h1{font-size:36px}.wordpress-content a{text-decoration:underline}.wordpress-content ul{list-style:disc}.wordpress-content img{height:auto}

header{flex-wrap:wrap}.member-buttons{display:flex;flex-wrap:wrap;gap:10px}.portal{max-width:1150px;margin:55px auto;padding:0 5%;min-height:55vh}.portal h1{font-size:34px}.form-panel{max-width:590px;margin:0 auto;padding:30px;background:white;border:1px solid #dedad3;border-radius:10px}.portal form{display:grid;gap:18px;margin:25px 0}.portal label{display:grid;gap:7px;font-size:16px}.portal textarea{width:100%;padding:12px;border:1px solid #d5d0c9;border-radius:5px;font:inherit}.portal input,.portal select{font-size:16px}.portal button{font:inherit}.portal small,.small{font-size:14px}.portal .check{display:flex;gap:10px;align-items:flex-start}.portal .check input{flex-shrink:0;width:18px;min-height:18px;margin-top:6px}.alert{background:#eef5ee;border-left:4px solid #377d45;padding:16px;margin-bottom:24px}.alert.error{background:#fff0ef;border-color:#b4272a}.portal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:25px}.profile-grid,.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:40px}.profile-box{padding:26px;background:white;border:1px solid #dedad3;border-radius:9px}.profile-box p{margin:16px 0;overflow-wrap:anywhere}.member-photo{width:110px;height:130px;object-fit:cover;border-radius:6px;margin-bottom:15px}.fee-row{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #eee}.fee-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.payment-qr{max-width:280px;margin:20px auto}.status{display:inline-block;padding:5px 10px;border-radius:5px;background:#fff1d5;white-space:nowrap}.status.approved{background:#e0f1e1;color:#245632}.status.rejected{background:#f9dfdf;color:#942126}.id-card{width:650px;max-width:100%;margin:30px auto;border:2px solid #b4272a;border-radius:12px;overflow:hidden;background:white}.id-card-title{background:#b4272a;color:white;text-align:center;padding:20px;font-size:24px;font-weight:700}.id-card-title span{display:block;font-size:15px;font-weight:400;margin-top:8px}.id-card-body{display:flex;gap:24px;padding:24px;align-items:flex-start}.id-card-body img{width:110px;height:140px;object-fit:cover}.id-card-body h2{font-size:24px;margin-bottom:10px}.id-card-body p{font-size:14px;overflow-wrap:anywhere}.id-card-foot{background:#eeeae5;padding:12px;text-align:center;font-size:12px}
@media(max-width:800px){.member-buttons a{font-size:14px;padding:10px 14px}nav{font-size:14px;flex-wrap:wrap}.profile-grid,.payment-grid{grid-template-columns:1fr}.portal{margin:30px auto}.form-panel,.profile-box{padding:20px}.id-card-body{gap:14px;padding:16px}.id-card-body img{width:80px;height:105px}.id-card-body h2{font-size:20px}.portal h1{font-size:28px}}
@media print{body *{visibility:hidden}.id-card,.id-card *{visibility:visible}.id-card{position:absolute;top:15mm;left:15mm;width:170mm;max-width:170mm;box-shadow:none;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.no-print,header,footer{display:none!important}}
header{flex-wrap:wrap}.member-buttons{display:flex;flex-wrap:wrap;gap:10px}.portal{max-width:1150px;margin:55px auto;padding:0 5%;min-height:55vh}.portal h1{font-size:34px}.form-panel{max-width:590px;margin:0 auto;padding:30px;background:white;border:1px solid #dedad3;border-radius:10px}.portal form{display:grid;gap:18px;margin:25px 0}.portal label{display:grid;gap:7px;font-size:16px}.portal textarea{width:100%;padding:12px;border:1px solid #d5d0c9;border-radius:5px;font:inherit}.portal input,.portal select{font-size:16px}.portal button{font:inherit}.portal small,.small{font-size:14px}.portal .check{display:flex;gap:10px;align-items:flex-start}.portal .check input{flex-shrink:0;width:18px;min-height:18px;margin-top:6px}.alert{background:#eef5ee;border-left:4px solid #377d45;padding:16px;margin-bottom:24px}.alert.error{background:#fff0ef;border-color:#b4272a}.portal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:25px}.profile-grid,.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:40px}.profile-box{padding:26px;background:white;border:1px solid #dedad3;border-radius:9px}.profile-box p{margin:16px 0;overflow-wrap:anywhere}.member-photo{width:110px;height:130px;object-fit:cover;border-radius:6px;margin-bottom:15px}.fee-row{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #eee}.fee-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.payment-qr{max-width:280px;margin:20px auto}.status{display:inline-block;padding:5px 10px;border-radius:5px;background:#fff1d5;white-space:nowrap}.status.approved{background:#e0f1e1;color:#245632}.status.rejected{background:#f9dfdf;color:#942126}.id-card{width:650px;max-width:100%;margin:30px auto;border:2px solid #b4272a;border-radius:12px;overflow:hidden;background:white}.id-card-title{background:#b4272a;color:white;text-align:center;padding:20px;font-size:24px;font-weight:700}.id-card-title span{display:block;font-size:15px;font-weight:400;margin-top:8px}.id-card-body{display:flex;gap:24px;padding:24px;align-items:flex-start}.id-card-body img{width:110px;height:140px;object-fit:cover}.id-card-body h2{font-size:24px;margin-bottom:10px}.id-card-body p{font-size:14px;overflow-wrap:anywhere}.id-card-foot{background:#eeeae5;padding:12px;text-align:center;font-size:12px}
@media(max-width:800px){.member-buttons a{font-size:14px;padding:10px 14px}nav{font-size:14px;flex-wrap:wrap}.profile-grid,.payment-grid{grid-template-columns:1fr}.portal{margin:30px auto}.form-panel,.profile-box{padding:20px}.id-card-body{gap:14px;padding:16px}.id-card-body img{width:80px;height:105px}.id-card-body h2{font-size:20px}.portal h1{font-size:28px}}
@media print{body *{visibility:hidden}.id-card,.id-card *{visibility:visible}.id-card{position:absolute;top:15mm;left:15mm;width:170mm;max-width:170mm;box-shadow:none;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.no-print,header,footer{display:none!important}}
header{flex-wrap:wrap}.member-buttons{display:flex;flex-wrap:wrap;gap:10px}.portal{max-width:1150px;margin:55px auto;padding:0 5%;min-height:55vh}.portal h1{font-size:34px}.form-panel{max-width:590px;margin:0 auto;padding:30px;background:white;border:1px solid #dedad3;border-radius:10px}.portal form{display:grid;gap:18px;margin:25px 0}.portal label{display:grid;gap:7px;font-size:16px}.portal textarea{width:100%;padding:12px;border:1px solid #d5d0c9;border-radius:5px;font:inherit}.portal input,.portal select{font-size:16px}.portal button{font:inherit}.portal small,.small{font-size:14px}.portal .check{display:flex;gap:10px;align-items:flex-start}.portal .check input{flex-shrink:0;width:18px;min-height:18px;margin-top:6px}.alert{background:#eef5ee;border-left:4px solid #377d45;padding:16px;margin-bottom:24px}.alert.error{background:#fff0ef;border-color:#b4272a}.portal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:25px}.profile-grid,.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:40px}.profile-box{padding:26px;background:white;border:1px solid #dedad3;border-radius:9px}.profile-box p{margin:16px 0;overflow-wrap:anywhere}.member-photo{width:110px;height:130px;object-fit:cover;border-radius:6px;margin-bottom:15px}.fee-row{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #eee}.fee-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.payment-qr{max-width:280px;margin:20px auto}.status{display:inline-block;padding:5px 10px;border-radius:5px;background:#fff1d5;white-space:nowrap}.status.approved{background:#e0f1e1;color:#245632}.status.rejected{background:#f9dfdf;color:#942126}.id-card{width:650px;max-width:100%;margin:30px auto;border:2px solid #b4272a;border-radius:12px;overflow:hidden;background:white}.id-card-title{background:#b4272a;color:white;text-align:center;padding:20px;font-size:24px;font-weight:700}.id-card-title span{display:block;font-size:15px;font-weight:400;margin-top:8px}.id-card-body{display:flex;gap:24px;padding:24px;align-items:flex-start}.id-card-body img{width:110px;height:140px;object-fit:cover}.id-card-body h2{font-size:24px;margin-bottom:10px}.id-card-body p{font-size:14px;overflow-wrap:anywhere}.id-card-foot{background:#eeeae5;padding:12px;text-align:center;font-size:12px}
@media(max-width:800px){.member-buttons a{font-size:14px;padding:10px 14px}nav{font-size:14px;flex-wrap:wrap}.profile-grid,.payment-grid{grid-template-columns:1fr}.portal{margin:30px auto}.form-panel,.profile-box{padding:20px}.id-card-body{gap:14px;padding:16px}.id-card-body img{width:80px;height:105px}.id-card-body h2{font-size:20px}.portal h1{font-size:28px}}
@media print{body *{visibility:hidden}.id-card,.id-card *{visibility:visible}.id-card{position:absolute;top:15mm;left:15mm;width:170mm;max-width:170mm;box-shadow:none;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.no-print,header,footer{display:none!important}}
.id-card-title{
    position:relative;
    padding-right:95px;
    padding-left:95px;
}

.id-card-goddess{
    position:absolute;
    top:10px;
    right:15px;
    width:70px;
    height:70px;
    object-fit:cover;
    border-radius:50%;
    border:3px solid #fff;
    background:#fff;
}

@media(max-width:800px){
    .id-card-goddess{
        width:55px;
        height:55px;
        top:10px;
        right:10px;
    }

    .id-card-title{
        padding-right:75px;
        padding-left:75px;
    }
}

@media print{
    .id-card-goddess{
        width:70px;
        height:70px;
    }
}
/* ===== PAYMENT RECEIPT ===== */

.rs-receipt{
    width:700px;
    max-width:100%;
    margin:30px auto;
    background:#fff;
    border:2px solid #b4272a;
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
}

.receipt-head{
    text-align:center;
    padding:25px 20px;
    border-bottom:2px solid #b4272a;
}

.receipt-head h2{
    font-size:27px;
    font-weight:700;
    color:#b4272a;
    margin-bottom:5px;
}

.receipt-head p{
    font-size:14px;
    margin-bottom:15px;
}

.receipt-head h3{
    display:inline-block;
    font-size:18px;
    font-weight:700;
    margin:0;
    padding:7px 20px;
    background:#b4272a;
    color:#fff;
    border-radius:4px;
}

.receipt-details{
    padding:25px 35px;
}

.receipt-details p{
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:10px 0;
    margin:0;
    border-bottom:1px solid #eee;
    color:#242424;
}

.receipt-details strong{
    font-weight:700;
}

.receipt-foot{
    text-align:center;
    padding:18px;
    background:#eeeae5;
}

.receipt-foot p{
    font-size:12px;
    margin-bottom:5px;
}

@media(max-width:800px){
    .receipt-details{
        padding:20px;
    }

    .receipt-details p{
        display:block;
    }

    .receipt-head h2{
        font-size:22px;
    }
}

/* ===== ID CARD + RECEIPT PRINT ===== */

@media print{

    body *{
        visibility:hidden;
    }

    .id-card,
    .id-card *,
    .rs-receipt,
    .rs-receipt *{
        visibility:visible;
    }

    .id-card{
        position:absolute;
        top:15mm;
        left:15mm;
        width:170mm;
        max-width:170mm;
        box-shadow:none;
        break-inside:avoid;
        print-color-adjust:exact;
        -webkit-print-color-adjust:exact;
    }

    .rs-receipt{
        position:absolute;
        top:10mm;
        left:10%;
        width:80%;
        max-width:none;
        margin:0;
        box-shadow:none;
        break-inside:avoid;
        print-color-adjust:exact;
        -webkit-print-color-adjust:exact;
    }

    .no-print,
    header,
    footer{
        display:none!important;
    }
}
/* ===== SMALL ID CARD ON SCREEN ===== */
@media screen and (min-width:801px){

    .id-card{
        width:420px;
        max-width:420px;
        margin:20px 0 30px auto;
    }

    .id-card-title{
        padding:12px 75px 12px 15px;
        font-size:18px;
    }

    .id-card-title span{
        font-size:12px;
        margin-top:4px;
    }

    .id-card-goddess{
        width:52px;
        height:52px;
        top:9px;
        right:12px;
        border:2px solid #fff;
    }

    .id-card-body{
        gap:15px;
        padding:15px;
    }

    .id-card-body img{
        width:75px;
        height:95px;
    }

    .id-card-body h2{
        font-size:18px;
        margin-bottom:5px;
    }

    .id-card-body p{
        font-size:12px;
    }

    .id-card-foot{
        padding:8px;
        font-size:10px;
    }
}
/* ID CARD LOGO - TOP RIGHT */
.id-card-title .id-card-goddess{
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    width:52px !important;
    height:52px !important;
    max-width:52px !important;
    object-fit:cover !important;
    border-radius:50% !important;
    border:2px solid #fff !important;
    margin:0 !important;
}

.id-card-title{
    position:relative !important;
}
/* ===== FINAL ID CARD FIX ===== */

@media screen {

    .id-card{
        width:420px !important;
        max-width:100% !important;
        margin:20px 0 30px auto !important;
    }

    .id-card-title{
        position:relative !important;
        min-height:82px !important;
        padding:12px 75px 12px 15px !important;
        font-size:18px !important;
        overflow:hidden !important;
    }

    .id-card-title .id-card-goddess{
        position:absolute !important;
        display:block !important;
        top:12px !important;
        right:12px !important;

        width:55px !important;
        height:55px !important;
        min-width:55px !important;
        max-width:55px !important;
        min-height:55px !important;
        max-height:55px !important;

        object-fit:cover !important;
        border-radius:50% !important;
        border:2px solid #fff !important;
        margin:0 !important;
        padding:0 !important;
    }

    .id-card-body{
        display:flex !important;
        gap:15px !important;
        padding:15px !important;
    }

    .id-card-body > img{
        width:75px !important;
        height:95px !important;
        min-width:75px !important;
        object-fit:cover !important;
    }
}
/* ID CARD LEFT SIDE */
@media screen and (min-width:801px){
    .id-card{
        margin:20px auto 30px 0 !important;
    }
}
/* ID CARD LOGO - TOP LEFT */
.id-card-title .id-card-goddess{
    left:12px !important;
    right:auto !important;
}
/* ===== HOME NOTICE + GALLERY ===== */

.rs-home-updates{
    display:grid;
    grid-template-columns:1.3fr .7fr;
    gap:35px;
    align-items:start;
}

/* NOTICE SCROLL */

.rs-notice-window{
    height:380px;
    overflow:hidden;
    position:relative;
}

.rs-notice-scroll{
    animation:rsNoticeScroll 25s linear infinite;
}

.rs-notice-window:hover .rs-notice-scroll{
    animation-play-state:paused;
}

.rs-news-item{
    padding:15px 0;
    border-bottom:1px solid rgba(0,0,0,.12);
}

@keyframes rsNoticeScroll{
    0%{
        transform:translateY(0);
    }

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


/* PHOTO SLIDER */

.rs-gallery-slider{
    position:relative;
    height:380px;
    overflow:hidden;
    border-radius:18px;
    background:#eee;
}

.rs-gallery-slide{
    position:absolute;
    inset:0;
    opacity:0;
    animation:rsGallerySlide 20s infinite;
}

.rs-gallery-slide img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.rs-gallery-caption{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    padding:14px;
    background:rgba(0,0,0,.60);
    color:#fff;
    font-weight:700;
}

/* maximum 10 photos */

.rs-gallery-slide:nth-child(1){animation-delay:0s;}
.rs-gallery-slide:nth-child(2){animation-delay:4s;}
.rs-gallery-slide:nth-child(3){animation-delay:8s;}
.rs-gallery-slide:nth-child(4){animation-delay:12s;}
.rs-gallery-slide:nth-child(5){animation-delay:16s;}

@keyframes rsGallerySlide{

    0%{
        opacity:0;
        transform:scale(1.03);
    }

    5%{
        opacity:1;
    }

    20%{
        opacity:1;
        transform:scale(1);
    }

    25%{
        opacity:0;
    }

    100%{
        opacity:0;
    }
}


/* MOBILE */

@media(max-width:800px){

    .rs-home-updates{
        grid-template-columns:1fr;
    }

    .rs-notice-window{
        height:320px;
    }

    .rs-gallery-slider{
        height:300px;
    }
}