
.cp-member-shell {
    width: 100%;
    max-width: 1220px;
    margin: 40px auto;
    color: #fff;
    font-family: "Segoe UI", Tahoma, Arial, sans-serif;
}

.cp-member-shell * {
    box-sizing: border-box;
}

.cp-member-hero,
.cp-member-login-card,
.cp-member-section,
.cp-member-message {
    position: relative;
    overflow: hidden;
}

.cp-member-hero,
.cp-member-login-card {
    background:
        radial-gradient(circle at 86% 14%, rgba(255, 110, 0, 0.09), transparent 14%),
        radial-gradient(circle at 12% 12%, rgba(170, 0, 0, 0.22), transparent 26%),
        linear-gradient(135deg, #030303 0%, #150102 40%, #260104 70%, #050505 100%);
    border: 1px solid rgba(212, 171, 90, 0.24);
    border-radius: 24px;
    box-shadow: 0 30px 90px rgba(0,0,0,0.44);
}

.cp-member-hero::before,
.cp-member-login-card::before,
.cp-member-section::before {
    content: "";
    position: absolute;
    inset: 12px;
    border: 1px solid rgba(212, 171, 90, 0.12);
    border-radius: 18px;
    pointer-events: none;
}

.cp-member-hero {
    padding: 44px 42px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.cp-member-kicker {
    color: #ddb56c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.30em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.cp-member-hero h1,
.cp-member-login-card h1,
.cp-member-section-head h2 {
    margin: 0;
    color: #f0c56b;
    font-family: Georgia, "Times New Roman", serif;
    line-height: 1.06;
}

.cp-member-hero h1,
.cp-member-login-card h1 {
    font-size: clamp(38px, 4.2vw, 62px);
}

.cp-member-motto {
    margin-top: 10px;
    color: #fff0c8;
    font-size: 13px;
    letter-spacing: 0.20em;
    text-transform: uppercase;
}

.cp-member-hero p,
.cp-member-login-card p,
.cp-member-coming-section p,
.cp-member-newbie-banner p,
.cp-member-message {
    color: #ddd2c6;
}

.cp-member-hero p,
.cp-member-login-card p {
    margin: 14px 0 0;
    font-size: 17px;
    line-height: 1.7;
    max-width: 760px;
}

.cp-member-number-block {
    text-align: right;
    padding: 18px 20px;
    border: 1px solid rgba(212, 171, 90, 0.45);
    border-radius: 16px;
    background: linear-gradient(145deg, rgba(4,4,4,0.98), rgba(10,10,10,0.92));
    min-width: 210px;
    box-shadow: inset 0 0 22px rgba(129,76,0,0.08);
}

.cp-member-number-block span {
    display: block;
    color: #9f968a;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.cp-member-number-block strong {
    display: block;
    color: #f0c56b;
    font-size: 22px;
    margin-top: 8px;
}

.cp-member-status-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin: 20px 0;
}

.cp-member-status-card {
    background: linear-gradient(145deg, #070707, #0c0c0c);
    border: 1px solid rgba(212, 171, 90, 0.12);
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
}

.cp-member-status-card span {
    display: block;
    color: #8e877e;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    margin-bottom: 8px;
}

.cp-member-status-card strong {
    display: block;
    color: #f4cf85;
    font-size: 16px;
    line-height: 1.4;
}

.cp-member-newbie-banner {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    padding: 22px 24px;
    margin: 20px 0;
    background: linear-gradient(135deg, #2f1300, #1a0800 50%, #351300 100%);
    border: 1px solid rgba(205, 127, 0, 0.55);
    border-radius: 18px;
    box-shadow: 0 18px 34px rgba(0,0,0,0.16);
}

.cp-member-whatsapp-banner {
    background: linear-gradient(135deg, #092512, #04130a 55%, #0d321a 100%);
    border-color: rgba(48, 142, 73, 0.64);
}

.cp-member-newbie-icon {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 46px;
    border-radius: 50%;
    background: radial-gradient(circle at 50% 36%, #f7ad2d, #a95c00);
    color: #fff;
    font-size: 21px;
    box-shadow: 0 0 18px rgba(255,126,0,0.28);
}

.cp-member-whatsapp-banner .cp-member-newbie-icon {
    background: radial-gradient(circle at 50% 36%, #2ab15a, #145729);
    box-shadow: 0 0 18px rgba(42,177,90,0.28);
}

.cp-member-newbie-banner strong {
    color: #f4cb7c;
    font-size: 18px;
}

.cp-member-whatsapp-banner strong {
    color: #9ce5b0;
}

.cp-member-newbie-banner p {
    margin: 8px 0 0;
    line-height: 1.7;
    font-size: 15px;
}

.cp-member-section,
.cp-member-message {
    margin-top: 20px;
    background:
        radial-gradient(circle at 84% 0%, rgba(150,0,0,0.10), transparent 18%),
        linear-gradient(145deg, #040404, #0b0b0b 70%, #080808 100%);
    border: 1px solid rgba(212, 171, 90, 0.12);
    border-radius: 20px;
    padding: 30px;
}

.cp-member-section-head h2 {
    font-size: 28px;
}

.cp-member-person-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 22px;
}

.cp-member-person-card {
    border: 1px solid rgba(212,171,90,0.18);
    background: linear-gradient(145deg, rgba(15,15,15,0.96), rgba(6,6,6,0.98));
    border-radius: 18px;
    padding: 24px;
    box-shadow: inset 0 0 20px rgba(0,0,0,0.18);
}

.cp-member-person-current {
    border-color: rgba(212,171,90,0.55);
    box-shadow: inset 0 0 26px rgba(164,96,0,0.07), 0 0 0 1px rgba(164,96,0,0.12);
}

.cp-member-person-label {
    color: #bd9a59;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 10px;
    font-weight: 800;
}

.cp-member-person-label span {
    display: inline-block;
    margin-left: 8px;
    padding: 3px 8px;
    border-radius: 999px;
    background: linear-gradient(135deg, #b41016, #740207);
    color: #fff;
    letter-spacing: 0.06em;
}

.cp-member-person-card h3 {
    margin: 10px 0 16px;
    color: #fff;
    font-size: 21px;
}

.cp-member-details {
    margin: 0;
}

.cp-member-details div {
    display: grid;
    grid-template-columns: 112px 1fr;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.cp-member-details div:last-child {
    border-bottom: none;
}

.cp-member-details dt {
    font-weight: 700;
    color: #9a9389;
}

.cp-member-details dd {
    margin: 0;
    color: #fff;
    overflow-wrap: anywhere;
}

.cp-member-coming-section p {
    line-height: 1.75;
    margin: 16px 0 0;
    font-size: 16px;
}

.cp-member-footer-actions {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 20px;
}

.cp-member-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    border-radius: 12px;
    padding: 14px 20px;
    background: linear-gradient(135deg, #c11018, #760208);
    color: #fff !important;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    box-shadow: 0 14px 28px rgba(140,0,0,.22);
}

.cp-member-button-secondary {
    background: linear-gradient(145deg, #111, #080808);
    border: 1px solid rgba(212,171,90,0.18);
}

.cp-member-message {
    max-width: 860px;
    margin: 40px auto;
    line-height: 1.7;
}

.cp-member-message-error {
    background: linear-gradient(135deg, rgba(62,10,10,0.98), rgba(38,6,6,0.98));
    border-color: rgba(214,72,72,0.52);
}

.cp-member-login-shell {
    max-width: 840px;
}

.cp-member-login-card {
    padding: 50px 44px;
}

.cp-member-login-form {
    margin-top: 28px;
}

.cp-member-login-form label {
    display: block;
    color: #efc66f;
    font-weight: 800;
    margin-bottom: 8px;
}

.cp-member-login-form input[type=text],
.cp-member-login-form input[type=password] {
    width: 100%;
    background: linear-gradient(180deg, rgba(2,2,2,0.98), rgba(9,9,9,0.98));
    color: #fff;
    border: 1px solid rgba(212, 171, 90, 0.18);
    border-radius: 12px;
    padding: 14px 16px;
}

.cp-member-login-form .login-remember label {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #d2c5b7;
    font-weight: 400;
}

.cp-member-login-form input[type=submit] {
    width: 100%;
    border: none;
    border-radius: 12px;
    padding: 16px 18px;
    background: linear-gradient(135deg, #ca1019, #7f0207 55%, #410104);
    color: #fff;
    font-weight: 900;
    letter-spacing: 0.14em;
    cursor: pointer;
    box-shadow: 0 18px 32px rgba(140,0,0,.20);
}

.cp-member-login-links {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    margin-top: 22px;
}

.cp-member-login-links a {
    color: #ddb56c;
    text-decoration: none;
}

.cp-member-login-links a:hover {
    text-decoration: underline;
}

@media (max-width: 900px) {
    .cp-member-status-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .cp-member-person-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 650px) {
    .cp-member-shell {
        margin: 20px auto;
    }

    .cp-member-hero {
        padding: 30px 22px;
        align-items: flex-start;
        flex-direction: column;
    }

    .cp-member-number-block {
        text-align: left;
        width: 100%;
    }

    .cp-member-status-grid {
        grid-template-columns: 1fr;
    }

    .cp-member-section,
    .cp-member-message {
        padding: 22px 18px;
    }

    .cp-member-details div {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .cp-member-footer-actions {
        flex-direction: column;
    }

    .cp-member-button {
        width: 100%;
    }

    .cp-member-login-card {
        padding: 34px 20px;
    }

    .cp-member-login-links {
        flex-direction: column;
    }
}


/* =========================================================
   CLUB PRIVILEGE EVENTS & BOOKINGS
   ========================================================= */
.cp-events-section{background:radial-gradient(circle at 82% 0%,rgba(150,0,0,.14),transparent 22%),linear-gradient(145deg,#040404,#0b0b0b 72%,#070707)}.cp-events-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.cp-events-subtitle{color:#bfb3a7;margin:10px 0 0;line-height:1.65;max-width:720px}.cp-members-only-pill{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:8px 12px;border:1px solid rgba(212,171,90,.38);border-radius:999px;background:#090909;color:#e2bb71;font-size:10px;font-weight:900;letter-spacing:.14em}.cp-events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}.cp-event-card{overflow:hidden;border:1px solid rgba(212,171,90,.18);border-radius:19px;background:linear-gradient(145deg,#0d0d0d,#050505);box-shadow:0 18px 34px rgba(0,0,0,.22)}.cp-event-image{position:relative;min-height:260px;background-position:center;background-size:cover;background-repeat:no-repeat}.cp-event-image-empty{background:radial-gradient(circle at 50% 40%,rgba(164,0,0,.36),transparent 34%),linear-gradient(135deg,#250103,#050505)}.cp-event-image-empty::before{content:"CLUB PRIVILEGE";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(235,197,111,.42);font-family:Georgia,"Times New Roman",serif;font-size:30px;letter-spacing:.08em}.cp-event-image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.14) 45%,rgba(0,0,0,.88) 100%)}.cp-event-date-badge{position:absolute;left:18px;top:18px;width:68px;padding:9px 5px;text-align:center;border:1px solid rgba(232,188,101,.55);border-radius:12px;background:rgba(3,3,3,.86);backdrop-filter:blur(5px)}.cp-event-date-badge span{display:block;color:#bd9b5b;font-size:10px;font-weight:800;letter-spacing:.12em}.cp-event-date-badge strong{display:block;color:#fff0cb;font-size:25px;line-height:1.05;margin-top:2px}.cp-event-booked-ribbon{position:absolute;right:16px;top:18px;padding:7px 10px;border-radius:999px;background:#176a32;color:#fff;font-size:10px;font-weight:900;letter-spacing:.10em;box-shadow:0 0 18px rgba(30,130,65,.22)}.cp-event-card-body{padding:22px}.cp-event-card-body h3{margin:5px 0 8px;color:#f0c56b;font-family:Georgia,"Times New Roman",serif;font-size:28px;line-height:1.12}.cp-event-meta{display:flex;gap:10px;flex-wrap:wrap;color:#d8cec3;font-size:13px}.cp-event-meta span:not(:last-child)::after{content:"•";margin-left:10px;color:#8b6a35}.cp-event-excerpt{margin-top:14px;color:#aFA79e;line-height:1.6}.cp-event-price-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.cp-event-price-strip span{padding:10px;border:1px solid rgba(212,171,90,.12);border-radius:10px;background:#080808;color:#8f887f;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.cp-event-price-strip strong{display:block;color:#f0c56b;font-size:14px;margin-top:3px;letter-spacing:0;text-transform:none}.cp-event-book-button{width:100%;margin-top:4px}.cp-events-empty{margin-top:22px;padding:24px;border:1px dashed rgba(212,171,90,.28);border-radius:14px;color:#d7cdc0}.cp-events-empty strong{color:#f0c56b}.cp-events-empty p{margin:6px 0 0;color:#a99f95}.cp-event-back{display:inline-block;margin-bottom:18px;color:#d8b56d;text-decoration:none}.cp-event-detail-hero{position:relative;min-height:390px;border-radius:17px;overflow:hidden;background-position:center;background-size:cover;background-repeat:no-repeat;border:1px solid rgba(212,171,90,.18)}.cp-event-detail-no-image{background:radial-gradient(circle at 50% 35%,rgba(173,0,0,.42),transparent 35%),linear-gradient(135deg,#260104,#050505)}.cp-event-detail-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(5,0,0,.35) 40%,rgba(0,0,0,.92) 100%)}.cp-event-detail-content{position:absolute;left:34px;right:34px;bottom:32px}.cp-event-detail-content h2{margin:5px 0 8px;color:#f2ca75;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4.8vw,58px);line-height:1.02;text-shadow:0 3px 18px rgba(0,0,0,.7)}.cp-event-detail-motto{color:#fff1ce;text-transform:uppercase;letter-spacing:.18em;font-size:11px}.cp-event-detail-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px;color:#eee1d0}.cp-event-detail-meta span{padding:7px 10px;border-radius:999px;background:rgba(0,0,0,.52);border:1px solid rgba(212,171,90,.20)}.cp-event-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:20px;margin-top:20px}.cp-event-main-copy,.cp-event-booking-panel{border:1px solid rgba(212,171,90,.14);border-radius:17px;background:linear-gradient(145deg,#0b0b0b,#050505);padding:24px}.cp-event-description{color:#d7cdc2;line-height:1.75}.cp-event-description p:first-child{margin-top:0}.cp-event-dress-code{margin-top:20px;padding:16px 18px;border-left:3px solid #a70d13;background:rgba(111,0,0,.10);border-radius:0 10px 10px 0}.cp-event-dress-code span{display:block;color:#9d8b72;font-size:10px;font-weight:800;letter-spacing:.13em}.cp-event-dress-code strong{display:block;color:#f0c56b;margin-top:5px}.cp-event-pricing-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.cp-event-pricing-panel div{padding:14px;border:1px solid rgba(212,171,90,.14);border-radius:12px;background:#070707}.cp-event-pricing-panel span{display:block;color:#8e867d;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.cp-event-pricing-panel strong{display:block;color:#f0c56b;font-size:18px;margin-top:5px}.cp-event-booking-panel h3,.cp-booking-confirmation h3{margin:5px 0 8px;color:#f0c56b;font-family:Georgia,"Times New Roman",serif;font-size:30px}.cp-booking-intro{color:#b8aea3;line-height:1.6}.cp-event-form-group{margin-top:20px}.cp-event-form-group>label{display:block;color:#e5bd6d;font-weight:800;margin-bottom:8px}.cp-event-choice-grid{display:grid;grid-template-columns:1fr;gap:9px}.cp-event-choice-card{position:relative}.cp-event-choice-card input{position:absolute;opacity:0}.cp-event-choice-card span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid rgba(212,171,90,.15);border-radius:11px;background:#070707;cursor:pointer}.cp-event-choice-card span strong{color:#efe4d2}.cp-event-choice-card span small{color:#d8b56d}.cp-event-choice-card input:checked+span{border-color:#b81016;background:linear-gradient(135deg,#2c0405,#0a0505);box-shadow:0 0 18px rgba(150,0,0,.12)}.cp-sleep-choice-grid{display:grid;grid-template-columns:1fr;gap:8px}.cp-sleep-choice-grid label{position:relative}.cp-sleep-choice-grid input{position:absolute;opacity:0}.cp-sleep-choice-grid span{display:block;padding:11px 13px;border:1px solid rgba(212,171,90,.14);border-radius:10px;background:#070707;cursor:pointer;color:#d9d0c6}.cp-sleep-choice-grid input:checked+span{border-color:#c48117;color:#f0c56b;background:#1d0e00}.cp-event-help{display:block;margin-top:8px;color:#8f877d;line-height:1.5}.cp-event-help-box,.cp-payment-choice-fixed,.cp-event-privilege-box{padding:14px;border-radius:11px;border:1px solid rgba(212,171,90,.14);background:#080808;color:#cfc5b8;line-height:1.55}.cp-payment-choice-fixed strong{display:block;color:#f0c56b}.cp-payment-choice-fixed span{display:block;margin-top:4px;font-size:12px;color:#9e958b}.cp-event-privilege-box{margin-top:18px;border-color:rgba(44,152,78,.38);background:#06150a;color:#9ce3b0}.cp-event-booking-form textarea{width:100%;box-sizing:border-box;background:#070707;color:#fff;border:1px solid rgba(212,171,90,.16);border-radius:10px;padding:12px}.cp-event-confirm-button{width:100%;margin-top:20px;border:none;cursor:pointer}.cp-booking-reference{display:inline-block;margin:8px 0 16px;padding:8px 11px;border:1px solid rgba(212,171,90,.3);border-radius:9px;color:#f0c56b;background:#070707;font-weight:800;letter-spacing:.08em}.cp-booking-details{margin:0}.cp-booking-details div{display:grid;grid-template-columns:105px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}.cp-booking-details dt{color:#8f877d;font-weight:700}.cp-booking-details dd{margin:0;color:#eee1d2}.cp-event-cancel-button{width:100%;margin-top:18px;padding:11px;border:1px solid rgba(202,40,40,.45);border-radius:10px;background:transparent;color:#e27676;cursor:pointer}.cp-event-notice{margin-bottom:16px;padding:13px 15px;border:1px solid rgba(212,171,90,.20);border-radius:10px;background:#12100b;color:#e2d4c1}.cp-event-notice-success{border-color:rgba(50,160,80,.35);background:#07180d;color:#9de2b0}.cp-event-notice-error{border-color:rgba(210,50,50,.45);background:#260808;color:#efb0b0}@media(max-width:950px){.cp-events-grid{grid-template-columns:1fr}.cp-event-detail-grid{grid-template-columns:1fr}}@media(max-width:650px){.cp-events-heading-row{flex-direction:column}.cp-event-image{min-height:220px}.cp-event-price-strip,.cp-event-pricing-panel{grid-template-columns:1fr}.cp-event-detail-hero{min-height:320px}.cp-event-detail-content{left:20px;right:20px;bottom:22px}.cp-event-main-copy,.cp-event-booking-panel{padding:18px}.cp-booking-details div{grid-template-columns:1fr;gap:3px}}


/* =========================================================
   VISUAL EVENT CALENDAR — MEMBER PORTAL
   ========================================================= */
.cp-visual-calendar-member{margin:26px 0 8px;padding:24px;border:1px solid rgba(212,171,90,.17);border-radius:20px;background:radial-gradient(circle at 86% 0%,rgba(150,0,0,.16),transparent 22%),linear-gradient(145deg,#070707,#120102 60%,#080808);box-shadow:inset 0 0 28px rgba(0,0,0,.22)}.cp-visual-calendar-member .cp-calendar-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.cp-visual-calendar-member .cp-calendar-kicker{color:#b99150;font-size:10px;font-weight:900;letter-spacing:.18em}.cp-visual-calendar-member .cp-calendar-title{margin:4px 0 6px;color:#f0c56b;font-family:Georgia,"Times New Roman",serif;font-size:30px}.cp-visual-calendar-member .cp-calendar-copy{margin:0;color:#a99f95;line-height:1.55;max-width:660px}.cp-visual-calendar-member .cp-calendar-nav{display:flex;align-items:center;gap:10px}.cp-visual-calendar-member .cp-calendar-nav-button{width:42px;height:42px;border:1px solid rgba(212,171,90,.30);border-radius:11px;background:#060606;color:#e8bd67;font-size:27px;line-height:1;cursor:pointer;transition:.2s ease}.cp-visual-calendar-member .cp-calendar-nav-button:hover{border-color:#ca971f;background:#170202;box-shadow:0 0 16px rgba(160,0,0,.18)}.cp-visual-calendar-member .cp-calendar-month{min-width:170px;text-align:center;color:#fff0cd;font-weight:800;letter-spacing:.04em}.cp-visual-calendar-member .cp-calendar-weekdays,.cp-visual-calendar-member .cp-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.cp-visual-calendar-member .cp-calendar-weekdays{margin-bottom:8px}.cp-visual-calendar-member .cp-calendar-weekdays span{text-align:center;color:#7e766f;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.cp-visual-calendar-member .cp-calendar-day{position:relative;min-height:92px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:linear-gradient(145deg,#070707,#0a0a0a);color:#aaa;text-align:left;cursor:default;overflow:hidden}.cp-visual-calendar-member .cp-calendar-day-event{cursor:pointer;border-color:rgba(212,171,90,.30);background:radial-gradient(circle at 80% 15%,rgba(160,0,0,.20),transparent 25%),linear-gradient(145deg,#160203,#070707)}.cp-visual-calendar-member .cp-calendar-day-event::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.035),transparent 70%);transform:translateX(-110%);transition:transform .45s ease}.cp-visual-calendar-member .cp-calendar-day-event:hover{border-color:#c29336;box-shadow:0 0 18px rgba(165,0,0,.18),inset 0 0 20px rgba(95,0,0,.12)}.cp-visual-calendar-member .cp-calendar-day-event:hover::after{transform:translateX(110%)}.cp-visual-calendar-member .cp-calendar-day-selected{border-color:#e2aa36!important;background:radial-gradient(circle at 80% 20%,rgba(225,80,0,.20),transparent 24%),linear-gradient(145deg,#390507,#120102)!important;box-shadow:0 0 0 1px rgba(226,170,54,.18),0 0 26px rgba(170,0,0,.22)!important}.cp-visual-calendar-member .cp-calendar-day-today .cp-calendar-day-number{color:#ffdf95}.cp-visual-calendar-member .cp-calendar-day-blank{min-height:92px;border-color:transparent;background:transparent}.cp-visual-calendar-member .cp-calendar-day-number{position:relative;z-index:1;display:block;color:#d9d1c8;font-size:17px;font-weight:900}.cp-visual-calendar-member .cp-calendar-day-event .cp-calendar-day-number{color:#fff1cf}.cp-visual-calendar-member .cp-calendar-event-marker{position:relative;z-index:1;display:block;margin-top:13px;color:#e0b45d;font-size:9px;font-weight:900;letter-spacing:.10em}.cp-visual-calendar-member .cp-calendar-dots{position:absolute;z-index:1;left:10px;bottom:9px;display:flex;gap:5px}.cp-visual-calendar-member .cp-calendar-dot{display:block;width:7px;height:7px;border-radius:50%;background:#bc181d;box-shadow:0 0 7px rgba(188,24,29,.42)}.cp-visual-calendar-member .cp-calendar-dot-published{background:#d9a83e;box-shadow:0 0 8px rgba(217,168,62,.38)}.cp-visual-calendar-member .cp-calendar-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding-top:17px;border-top:1px solid rgba(255,255,255,.08)}.cp-visual-calendar-member .cp-calendar-selected{color:#ded3c5;font-weight:700}.cp-visual-calendar-member .cp-calendar-reset{border:1px solid rgba(212,171,90,.28);border-radius:11px;background:#080808;color:#e2b966;padding:10px 14px;font-weight:800;cursor:pointer}.cp-visual-calendar-member .cp-calendar-reset:hover,.cp-visual-calendar-member .cp-calendar-reset-active{background:linear-gradient(135deg,#85070c,#4e0104);border-color:#a9171d;color:#fff}.cp-event-card[hidden]{display:none!important}@media(max-width:780px){.cp-visual-calendar-member{padding:18px}.cp-visual-calendar-member .cp-calendar-topbar{flex-direction:column}.cp-visual-calendar-member .cp-calendar-nav{width:100%;justify-content:space-between}.cp-visual-calendar-member .cp-calendar-month{min-width:0}.cp-visual-calendar-member .cp-calendar-weekdays,.cp-visual-calendar-member .cp-calendar-grid{gap:4px}.cp-visual-calendar-member .cp-calendar-day{min-height:68px;padding:7px;border-radius:9px}.cp-visual-calendar-member .cp-calendar-day-blank{min-height:68px}.cp-visual-calendar-member .cp-calendar-day-number{font-size:14px}.cp-visual-calendar-member .cp-calendar-event-marker{font-size:0;margin-top:7px}.cp-visual-calendar-member .cp-calendar-event-marker::after{content:"●";font-size:12px;color:#d7a446}.cp-visual-calendar-member .cp-calendar-dots{display:none}.cp-visual-calendar-member .cp-calendar-footer{align-items:flex-start;flex-direction:column}}


/* v1.8.2 — mobile-first event poster presentation. Portrait flyers stay fully visible. */
@media(max-width:650px){
  .cp-events-grid{display:block}
  .cp-event-card{width:100%;margin:0 0 22px}
  .cp-event-image{width:100%;min-height:0;aspect-ratio:9/16;background-size:contain;background-position:center;background-color:#030303}
  .cp-event-image-overlay{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.02) 72%,rgba(0,0,0,.46) 100%)}
  .cp-event-detail-hero{width:100%;min-height:0;aspect-ratio:9/16;background-size:contain;background-position:center top;background-color:#030303}
  .cp-event-detail-content{left:14px;right:14px;bottom:14px;padding:12px;border-radius:12px;background:rgba(0,0,0,.68);backdrop-filter:blur(3px)}
  .cp-event-detail-content h2{font-size:28px}
  .cp-event-detail-meta{font-size:11px;gap:5px}
  .cp-event-detail-meta span{padding:5px 7px}
}

/* =========================================================
   v1.9.4 — CLUB PRIVILEGE MEMBER EXPERIENCE
   Luxury UI layer only. No workflow or data-model changes.
   ========================================================= */
.cp-member-experience{
  --cp-obsidian:#030303;
  --cp-ink:#080707;
  --cp-wine:#2a0205;
  --cp-red:#a70b13;
  --cp-red-bright:#d01a23;
  --cp-gold:#d6aa55;
  --cp-gold-pale:#f4d48f;
  --cp-ivory:#f8f0e3;
  --cp-muted:#a79d90;
  position:relative;
  z-index:1;
  max-width:1320px;
  padding:0 18px 110px;
  isolation:isolate;
}
.cp-member-experience::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% -10%,rgba(130,0,8,.22),transparent 34%),
    radial-gradient(circle at 12% 42%,rgba(92,0,7,.13),transparent 25%),
    radial-gradient(circle at 90% 70%,rgba(136,82,0,.07),transparent 24%),
    linear-gradient(180deg,#030303 0%,#080303 43%,#020202 100%);
}
.cp-member-ambient{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none;opacity:.55}
.cp-member-ambient span{position:absolute;width:44vw;height:44vw;min-width:420px;min-height:420px;border-radius:50%;filter:blur(90px);opacity:.12;background:#9f0710}
.cp-member-ambient span:nth-child(1){left:-18vw;top:8vh}.cp-member-ambient span:nth-child(2){right:-22vw;top:38vh;background:#9a5c00;opacity:.06}.cp-member-ambient span:nth-child(3){left:26vw;bottom:-34vw;background:#6f0005;opacity:.10}
.cp-member-experience .cp-member-hero{
  min-height:350px;
  padding:66px 54px 58px;
  border-radius:30px;
  border:1px solid rgba(225,178,89,.28);
  background:
    linear-gradient(90deg,rgba(2,2,2,.98) 0%,rgba(16,2,3,.96) 52%,rgba(47,2,6,.88) 100%),
    radial-gradient(circle at 82% 22%,rgba(214,168,82,.10),transparent 18%);
  box-shadow:0 35px 100px rgba(0,0,0,.58),inset 0 0 80px rgba(120,0,8,.08);
}
.cp-member-experience .cp-member-hero::before{inset:15px;border-radius:22px;border-color:rgba(230,190,112,.16)}
.cp-member-experience .cp-member-hero::after{
  content:"♣";
  position:absolute;
  right:50px;
  top:30px;
  color:rgba(237,193,106,.06);
  font-family:Georgia,"Times New Roman",serif;
  font-size:240px;
  line-height:1;
  transform:rotate(-8deg);
}
.cp-member-hero-copy{position:relative;z-index:2;max-width:820px}
.cp-member-experience .cp-member-kicker{color:var(--cp-gold);letter-spacing:.34em;font-size:10px}
.cp-member-experience .cp-member-hero h1{color:var(--cp-ivory);font-size:clamp(44px,5vw,76px);font-weight:500;letter-spacing:-.025em;text-shadow:0 2px 26px rgba(191,18,29,.16)}
.cp-member-experience .cp-member-motto{display:inline-block;margin-top:14px;padding-top:13px;border-top:1px solid rgba(214,170,85,.34);color:var(--cp-gold-pale);font-family:Georgia,"Times New Roman",serif;font-size:14px;letter-spacing:.28em}
.cp-member-experience .cp-member-hero p{color:#bcb2a5;font-size:15px;text-transform:uppercase;letter-spacing:.12em}
.cp-member-experience .cp-member-number-block{position:relative;z-index:3;min-width:230px;padding:22px 24px;border-color:rgba(225,178,89,.38);background:linear-gradient(145deg,rgba(5,5,5,.92),rgba(24,2,4,.88));backdrop-filter:blur(10px)}
.cp-member-experience .cp-member-number-block strong{font-family:Georgia,"Times New Roman",serif;font-size:25px;color:var(--cp-gold-pale)}
.cp-member-experience .cp-member-number-block em{display:block;margin-top:8px;color:#aa9e8f;font-size:10px;font-style:normal;text-transform:uppercase;letter-spacing:.14em}

.cp-member-app-nav{
  position:sticky;
  top:12px;
  z-index:80;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:6px;
  max-width:860px;
  margin:-26px auto 26px;
  padding:7px;
  border:1px solid rgba(220,174,88,.23);
  border-radius:18px;
  background:rgba(5,5,5,.91);
  box-shadow:0 22px 50px rgba(0,0,0,.45);
  backdrop-filter:blur(18px);
}
.cp-member-app-nav a{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:9px 12px;border-radius:12px;color:#cfc3b4!important;text-decoration:none!important;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:.2s ease}
.cp-member-app-nav a:hover,.cp-member-app-nav a:focus{background:linear-gradient(135deg,rgba(139,5,12,.64),rgba(59,1,4,.66));color:#fff!important;outline:none}
.cp-member-app-nav a span{color:var(--cp-gold);font-family:Georgia,"Times New Roman",serif;font-size:17px}
.cp-member-app-nav a i{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#c20e18;color:#fff;font-size:9px;font-style:normal;box-shadow:0 0 14px rgba(194,14,24,.35)}

.cp-member-command-grid{display:grid;grid-template-columns:1.2fr repeat(4,minmax(0,1fr));gap:12px;margin:20px 0 18px}
.cp-member-command-card{position:relative;overflow:hidden;min-height:170px;padding:25px 25px 22px;border:1px solid rgba(212,171,90,.17);border-radius:20px;background:linear-gradient(145deg,rgba(14,12,11,.97),rgba(5,5,5,.98));box-shadow:0 16px 38px rgba(0,0,0,.23);text-decoration:none!important;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.cp-member-command-card::after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-85px;top:-85px;background:rgba(153,7,14,.13);filter:blur(1px)}
.cp-member-command-card:hover{transform:translateY(-3px);border-color:rgba(224,179,90,.46);box-shadow:0 22px 50px rgba(0,0,0,.34),0 0 28px rgba(126,0,7,.10)}
.cp-member-command-event{background:radial-gradient(circle at 90% 8%,rgba(160,8,17,.20),transparent 30%),linear-gradient(135deg,#190204,#070505 58%,#030303)}
.cp-member-command-label{display:block;position:relative;z-index:1;margin-bottom:13px;color:var(--cp-gold);font-size:9px;font-weight:900;letter-spacing:.24em;text-transform:uppercase}
.cp-member-command-card strong{display:block;position:relative;z-index:1;color:#f5ecdf;font-family:Georgia,"Times New Roman",serif;font-size:23px;font-weight:500;line-height:1.18}
.cp-member-command-card small{display:block;position:relative;z-index:1;margin-top:9px;color:#9f9588;font-size:12px;line-height:1.55}
.cp-member-command-card em{display:block;position:absolute;z-index:2;left:25px;bottom:19px;color:#d5a955;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.13em}

.cp-member-experience .cp-member-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}
.cp-member-experience .cp-member-status-card{padding:16px 18px;border-radius:14px;background:rgba(7,7,7,.72);border-color:rgba(212,171,90,.10);box-shadow:none}
.cp-member-experience .cp-member-status-card span{font-size:8px;letter-spacing:.18em}.cp-member-experience .cp-member-status-card strong{font-size:13px;color:#ded2c2}

.cp-member-experience .cp-member-section{scroll-margin-top:100px;border-radius:25px;padding:36px;background:radial-gradient(circle at 96% 0%,rgba(125,2,8,.11),transparent 24%),linear-gradient(145deg,rgba(5,5,5,.98),rgba(10,7,7,.98));border-color:rgba(212,171,90,.16);box-shadow:0 25px 65px rgba(0,0,0,.26)}
.cp-member-experience .cp-member-section::before{inset:11px;border-radius:19px;border-color:rgba(212,171,90,.08)}
.cp-member-experience .cp-member-section-head h2{color:#f2dfbd;font-size:34px;font-weight:500}
.cp-member-experience .cp-events-subtitle,.cp-member-experience .cp-connections-subtitle{color:#9f9588}
#cp-events,#cp-lounge,#cp-partners,#cp-connections,#cp-help,#cp-membership{scroll-margin-top:96px}

.cp-member-experience .cp-event-card{border-radius:22px;border-color:rgba(216,173,87,.20);background:#070606;box-shadow:0 24px 55px rgba(0,0,0,.32);overflow:hidden}
.cp-member-experience .cp-event-card:hover{border-color:rgba(226,181,91,.48);box-shadow:0 30px 70px rgba(0,0,0,.45),0 0 34px rgba(131,0,7,.12)}
.cp-member-experience .cp-event-card-body h3{font-family:Georgia,"Times New Roman",serif;color:#f2e3ca;font-weight:500;font-size:27px}
.cp-member-experience .cp-member-button{border-radius:11px;background:linear-gradient(135deg,#bb0e17,#690106);box-shadow:0 14px 30px rgba(133,0,7,.20)}
.cp-member-experience .cp-member-button:hover{filter:brightness(1.10);transform:translateY(-1px)}
.cp-member-experience .cp-event-price-strip{border-color:rgba(216,173,87,.14);background:#050505}

.cp-member-experience .cp-visual-calendar-member{border-radius:20px;background:linear-gradient(145deg,#070606,#100203 60%,#050505);border-color:rgba(216,173,87,.16)}
.cp-member-experience .cp-calendar-title{font-weight:500!important;color:#f0d9ad!important}

.cp-member-experience .cp-ux-unread-banner,.cp-member-experience .cp-ux-help-banner{border-radius:16px;box-shadow:0 16px 34px rgba(0,0,0,.25)}
.cp-member-experience .cp-member-newbie-banner{border-radius:16px}
.cp-member-experience .cp-membership-section .cp-member-person-card{background:linear-gradient(145deg,#0b0909,#050505);border-color:rgba(215,172,86,.17)}
.cp-member-experience .cp-member-person-card h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;color:#f4e7d2}

.cp-member-experience .cp-member-footer-actions{padding-bottom:16px}
.cp-member-experience .cp-member-footer-actions .cp-member-button-secondary{background:#080808}

/* Keep Connections feeling like one private app surface. */
.cp-member-experience .cp-connections-section{overflow:visible}
.cp-member-experience .cp-connections-nav{position:sticky;top:82px;z-index:55;background:rgba(7,4,4,.94);backdrop-filter:blur(15px);border:1px solid rgba(212,171,90,.14);border-radius:15px;padding:7px}

@media(max-width:980px){
  .cp-member-command-grid{grid-template-columns:1fr 1fr}.cp-member-command-event{grid-column:1/-1}
  .cp-member-experience .cp-member-hero{padding:50px 34px;min-height:310px}.cp-member-experience .cp-member-hero::after{right:10px;font-size:190px}
}
@media(max-width:720px){
  .cp-member-experience{padding:0 10px 104px;margin-top:12px}
  .cp-member-experience .cp-member-hero{min-height:0;padding:38px 24px 64px;border-radius:22px;display:block}
  .cp-member-experience .cp-member-hero::after{font-size:130px;right:-8px;top:18px}
  .cp-member-experience .cp-member-hero h1{font-size:42px;line-height:1.02}
  .cp-member-experience .cp-member-motto{font-size:10px;letter-spacing:.20em;line-height:1.7}
  .cp-member-experience .cp-member-number-block{margin-top:25px;width:100%;min-width:0;text-align:left}
  .cp-member-app-nav{position:fixed;top:auto;left:8px;right:8px;bottom:8px;z-index:9999;margin:0;max-width:none;border-radius:18px;padding:6px;grid-template-columns:repeat(5,1fr);box-shadow:0 10px 45px rgba(0,0,0,.72);background:rgba(4,4,4,.95)}
  .cp-member-app-nav a{min-height:54px;flex-direction:column;gap:3px;padding:5px 2px;font-size:8px;letter-spacing:.04em}.cp-member-app-nav a span{font-size:16px}.cp-member-app-nav a i{position:absolute;right:7px;top:5px;min-width:16px;height:16px;font-size:8px}
  .cp-member-command-grid{grid-template-columns:1fr;gap:10px}.cp-member-command-event{grid-column:auto}.cp-member-command-card{min-height:155px;padding:22px}.cp-member-command-card strong{font-size:21px}.cp-member-command-card em{left:22px}
  .cp-member-experience .cp-member-status-grid{grid-template-columns:1fr 1fr;gap:7px}.cp-member-experience .cp-member-status-card{padding:13px}
  .cp-member-experience .cp-member-section{padding:22px 16px;border-radius:20px}.cp-member-experience .cp-member-section::before{inset:7px;border-radius:15px}.cp-member-experience .cp-member-section-head h2{font-size:29px}
  .cp-member-experience .cp-connections-nav{top:8px}
  #cp-events,#cp-lounge,#cp-partners,#cp-connections,#cp-help,#cp-membership{scroll-margin-top:18px}
}
@media(max-width:430px){
  .cp-member-experience .cp-member-hero{padding-left:20px;padding-right:20px}.cp-member-experience .cp-member-hero h1{font-size:37px}
  .cp-member-experience .cp-member-status-grid{grid-template-columns:1fr 1fr}.cp-member-command-card{min-height:150px}
}

/* v2.6.15 — Member return control: clear premium navigation button */
.cp-event-detail-section > .cp-event-back{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:44px!important;
  margin:0 0 20px!important;
  padding:11px 17px!important;
  border:2px solid #cf1734!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#bd1230!important;
  text-decoration:none!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  box-shadow:0 7px 18px rgba(129,22,40,.09)!important;
  cursor:pointer!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease!important;
}
.cp-event-detail-section > .cp-event-back:hover,
.cp-event-detail-section > .cp-event-back:focus{
  background:#cf1734!important;
  color:#fff!important;
  border-color:#cf1734!important;
  box-shadow:0 10px 24px rgba(207,23,52,.20)!important;
  transform:translateY(-1px)!important;
  outline:none!important;
}
@media(max-width:650px){
  .cp-event-detail-section > .cp-event-back{
    width:100%!important;
    min-height:48px!important;
    padding:13px 16px!important;
  }
}
