.event-modal{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:1rem;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.event-modal.is-open{opacity:1;visibility:visible}
.event-modal__backdrop{position:absolute;inset:0;background:rgba(12,2,25,.78);backdrop-filter:blur(7px)}
.event-modal__card{position:relative;z-index:1;display:grid;grid-template-columns:minmax(180px,280px) minmax(230px,300px);max-width:580px;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.42);transform:translateY(18px) scale(.98);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.event-modal.is-open .event-modal__card{transform:none}
.event-modal__card img{width:100%;height:100%;max-height:520px;object-fit:cover;object-position:top}
.event-modal__content{display:flex;flex-direction:column;justify-content:center;padding:2rem;background:linear-gradient(145deg,#fff 0%,#f7f0fb 100%)}
.event-modal__content h2{font:600 clamp(1.8rem,4vw,2.7rem)/1.05 Georgia,serif;color:#26034e;margin:0 0 1.5rem}
.event-modal__close{position:absolute;z-index:2;right:.65rem;top:.65rem;width:32px;height:32px;border:0;border-radius:50%;background:rgba(31,4,61,.86);color:#fff;font-size:1.3rem;line-height:1;cursor:pointer}
.event-modal__button{border:0;background:#26034e;color:#fff;padding:1rem 1.1rem;text-align:left;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:.25s}
.event-modal__button:hover{background:#4c1688;transform:translateY(-2px)}
.event-modal__button span{float:right;color:#e4bc6b;font-size:1rem}
.event-modal__note{margin:.8rem 0 0;color:#4c1688;font-size:.82rem}
.social-page{background:#fbf9fc}
.social-header{background:#fff}
.social-back{font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#4c1688}
.social-hero{padding:9.5rem 0 5rem;background:linear-gradient(125deg,#220245 0%,#4b147c 62%,#8c4f9f 100%);color:#fff;position:relative;overflow:hidden}
.social-hero h1{margin:1rem 0;font:600 clamp(3.3rem,7vw,6rem)/.94 Georgia,serif}
.social-hero h1 em,.social-hero .eyebrow{color:#e4bc6b}
.social-form-section{padding:6rem 0}
.social-form-layout{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.25fr);gap:6vw;align-items:start}
.social-intro{position:sticky;top:6rem}
.social-step{font-size:.68rem;font-weight:700;letter-spacing:.14em;color:#4c1688;text-transform:uppercase}
.social-intro h2{margin:1.1rem 0 1.5rem;font:600 clamp(2.1rem,3.5vw,3.4rem)/1.04 Georgia,serif;color:#26034e}
.social-contact{margin-top:2.4rem;padding-top:1.5rem;border-top:1px solid #ded1e4}
.social-contact span,.social-contact a{display:block;font-size:.76rem}
.social-contact a{font-weight:700;color:#4c1688}
.social-form{background:#fff;padding:clamp(1.5rem,4vw,3.7rem);box-shadow:0 18px 55px rgba(38,3,78,.1)}
.social-form fieldset{border:0;padding:0;margin:0 0 2.6rem}
.social-form legend{width:100%;margin-bottom:1.3rem;font:600 1.5rem/1.25 Georgia,serif;color:#26034e}
.social-form label:not(.choice-grid label){display:block;margin-bottom:.45rem;color:#51445e;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.social-form input:not([type=radio]){width:100%;border:0;border-bottom:1px solid #dcd3e1;background:transparent;padding:.7rem 0;outline:0}
.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}
.choice-grid label{cursor:pointer}
.choice-grid input{position:absolute;opacity:0}
.choice-grid span{display:flex;align-items:center;min-height:57px;padding:.75rem 1rem;border:1px solid #e0d9e4;color:#5d5067;font-size:.85rem}
.choice-grid input:checked+span{border-color:#4c1688;background:#f4ebfb;color:#4c1688;box-shadow:inset 3px 0 #4c1688}
.choice-grid--two{grid-template-columns:repeat(2,minmax(0,180px))}
.social-form-action button,.social-thanks__card a{border:0;background:#26034e;color:#fff;padding:1rem 1.25rem;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.social-form-error{color:#a3153b;font-size:.82rem}
.social-thanks{position:fixed;z-index:2100;inset:0;display:grid;place-items:center;opacity:0;visibility:hidden;transition:.25s}
.social-thanks.is-open{opacity:1;visibility:visible}
.social-thanks__backdrop{position:absolute;inset:0;background:rgba(18,2,36,.78);backdrop-filter:blur(7px)}
.social-thanks__card{position:relative;z-index:1;width:min(440px,calc(100vw - 2rem));padding:3.5rem 2.2rem;text-align:center;background:#fff;box-shadow:0 25px 70px rgba(0,0,0,.35)}
.social-thanks__card>button{position:absolute;right:.75rem;top:.55rem;border:0;background:transparent;font-size:1.6rem}
.social-thanks__card h2{margin:.7rem 0 1rem;font:600 2.6rem/1 Georgia,serif;color:#26034e}
.social-thanks__card a{display:inline-block}
@media(max-width:767px){.event-modal__card{grid-template-columns:1fr;max-width:340px;max-height:90vh;overflow:auto}
.event-modal__card img{height:300px}
.social-hero{padding:7.5rem 0 4rem}
.social-form-section{padding:4rem 0}
.social-form-layout{grid-template-columns:1fr;gap:3rem}
.social-intro{position:static}
.choice-grid{grid-template-columns:1fr}
.choice-grid--two{grid-template-columns:1fr 1fr}
}

/* Full-flyer event popup */
.event-modal__card{display:block;width:min(540px,calc(100vw - 2rem));max-width:none;background:transparent;border-radius:8px;overflow:visible;box-shadow:0 28px 90px rgba(0,0,0,.55)}
.event-modal__card img{width:100%;height:auto;max-height:calc(100vh - 2rem);object-fit:contain;border-radius:8px;box-shadow:0 6px 25px rgba(0,0,0,.32)}
.event-modal__content{position:absolute;right:1rem;bottom:1rem;left:1rem;display:block;padding:0;background:transparent}
.event-modal__content .eyebrow,.event-modal__content h2{display:none}
.event-modal__button{display:block;width:100%;background:rgba(38,3,78,.94);box-shadow:0 8px 22px rgba(0,0,0,.3);backdrop-filter:blur(6px)}
.event-modal__note{padding:.55rem .7rem;background:rgba(255,255,255,.95);text-align:center}
@media(max-width:575px){.event-modal__card{width:min(370px,calc(100vw - 2rem));max-width:none}.event-modal__card img{height:auto;max-height:calc(100vh - 2rem)}.event-modal__content{right:.7rem;bottom:.7rem;left:.7rem}}

/* Keep the summit poster fully visible; place its action beneath it. */
.event-modal__card{padding-bottom:4.7rem}
.event-modal__card img{max-height:calc(100vh - 6.5rem)}
.event-modal__content{top:auto;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;height:4.2rem}
.event-modal__button{width:auto;min-width:270px;padding:.95rem 1.35rem;border:1px solid rgba(228,188,107,.78);border-radius:999px;background:linear-gradient(120deg,#26034e,#4c1688);box-shadow:0 12px 28px rgba(10,0,25,.38);text-align:center}
.event-modal__button:hover{background:linear-gradient(120deg,#4c1688,#26034e);border-color:#e4bc6b;transform:translateY(-2px)}
.event-modal__note{position:absolute;top:4.1rem;width:max-content;max-width:100%;border-radius:4px}
@media(max-width:575px){.event-modal__card{padding-bottom:4.35rem}.event-modal__card img{max-height:calc(100vh - 6rem)}.event-modal__content{height:3.95rem}.event-modal__button{min-width:0;width:92%;padding:.83rem 1rem;font-size:.64rem}.event-modal__note{top:3.85rem}}
