/* Events share the Blueprint palette. The calendar never needs a wide scroll. */
.mobile-hub-nav{display:none}
.events-section{padding:12px 0 60px;scroll-margin-top:25px}
.events-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:40px;margin-bottom:27px}
.events-heading .eyebrow{margin-bottom:15px}.events-heading h2{color:var(--brand-deep)}
.events-heading p{max-width:530px;color:var(--muted);font-size:14px;margin-top:16px}
.events-host-link{display:block;justify-self:end;width:min(100%,430px);text-decoration:none;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fffaf7;box-shadow:0 5px 0 #f1e7f355}.events-host-link:hover{transform:translateY(-2px);box-shadow:0 8px 20px #5b276216}.events-host-link>img{display:block;width:100%;height:auto;object-fit:contain}.meet-host-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 18px;background:#f3e8f5;color:var(--brand-plum);font-size:12px;font-weight:600;border-top:1px solid #e2c8e8}.meet-host-caption>span:last-child{font-size:19px;font-weight:400}
.event-filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:23px}
.event-filters button{background:#fff;border:1px solid var(--line);border-radius:30px;padding:10px 17px;min-height:44px;font-size:12px;color:var(--brand-plum)}
.event-filters button[aria-pressed=true]{background:var(--brand-plum);color:#fff;border-color:var(--brand-plum)}
.events-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:start}
.calendar-panel{padding:26px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 5px 0 #f1e7f355;min-width:0}
.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px}
.calendar-toolbar h3{font:400 26px/1.2 var(--serif);letter-spacing:-.025em;color:var(--brand-deep)}
.calendar-toolbar>div{display:flex;gap:6px}
.calendar-toolbar button{height:40px;width:40px;border:1px solid #e6d8e9;border-radius:10px;background:#f8effa;color:var(--brand-plum);font-size:25px;line-height:1}
.calendar-toolbar button:hover{background:#eedff2}
.calendar-meta{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:17px 0 15px;color:var(--muted);font-size:10px}
.calendar-meta button{font-size:10px;color:var(--brand-plum);border:0;background:#f7eef9;border-radius:8px;padding:8px 10px;min-height:38px}
.month-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:3px 5px}
.month-table th{font-size:10px;font-weight:500;color:var(--muted);padding-bottom:7px;text-align:center}.month-table abbr{text-decoration:none}
.month-table td{padding:0;text-align:center;height:43px}
.calendar-day{position:relative;width:100%;height:43px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);font-size:13px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px}
.calendar-day:hover{background:#f6edf8}.calendar-day i{height:4px;width:4px;border-radius:50%;background:var(--brand-orange);position:absolute;bottom:4px}
.calendar-day.has-event.family{background:#fff0dd;color:#813a07;font-weight:600}.calendar-day.has-event.workshop{background:#eee0f2;color:var(--brand-plum);font-weight:600}.calendar-day.workshop i{background:var(--brand-plum)}
.calendar-day.is-today{border-color:#cfb0d8}.calendar-day.selected{background:var(--brand-plum)!important;color:white!important;border-color:var(--brand-plum);box-shadow:0 0 0 2px #d8bcde}.calendar-day.selected i{background:#ffd463}
.calendar-legend{display:flex;gap:17px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:16px;padding-top:15px;font-size:10px;color:var(--muted)}
.calendar-legend span{display:flex;gap:6px;align-items:center}.calendar-legend i{width:7px;height:7px;border-radius:50%;background:var(--brand-orange)}.calendar-legend span+span i{background:var(--brand-plum)}
#calendar-clear{margin-top:9px}#calendar-clear[hidden]{display:none}
.agenda-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 14px;min-height:24px}
.agenda-heading h3{font-size:13px;color:var(--brand-plum);font-weight:500}.agenda-heading>span{font-size:10px;color:var(--muted);white-space:nowrap}
.event-card{display:grid;grid-template-columns:142px minmax(0,1fr);gap:23px;background:#fff4e7;border:1px solid #efcfac;border-radius:16px;padding:27px;align-items:start}
.event-poster-thumb{width:100%;height:auto;display:block;border-radius:9px;box-shadow:0 4px 14px #5b276216;border:3px solid #fff;transform:rotate(-2deg);margin-top:6px}
.event-category{display:inline-block;font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;background:#ffe1b4;color:#803500;padding:5px 8px;border-radius:5px;margin-bottom:13px}.event-category.workshop{color:var(--brand-plum);background:#eee0f2}
.event-card h4{font:400 28px/1.1 var(--serif);letter-spacing:-.035em;color:var(--brand-deep);margin:0 0 11px}
.event-tagline{font-size:12px;font-style:italic;color:#a2470d}.event-date{font-size:12px;line-height:1.8;color:var(--brand-deep);margin-top:16px;font-weight:600}.event-date span{font-weight:400}
.event-place{font-size:11px;color:var(--muted);margin-top:11px}.event-audience{font-size:11px;color:var(--muted);margin-top:7px}
.event-card .button{font-size:12px;margin-top:19px;min-height:46px;gap:16px;padding:14px 17px}.event-ticket-note{font-size:10px;color:var(--muted);margin-top:11px}
.events-empty{border:1px dashed #d7bbdf;border-radius:16px;padding:31px;background:#fbf6fd;text-align:center;min-height:290px}.events-empty img{display:block;width:150px;height:93px;margin:0 auto 15px}.events-empty h4{font:400 26px/1.2 var(--serif);letter-spacing:-.025em;color:var(--brand-deep);margin:0 0 12px}.events-empty p{font-size:12px;line-height:1.8;color:var(--muted);max-width:330px;margin:auto}.events-empty .text-button{margin-top:15px}
.workshop-note{display:flex;align-items:center;gap:29px;padding:25px 30px;margin-top:23px;border:1px solid var(--line);border-radius:15px;background:#f6edf8}.workshop-note>img{width:133px;height:85px;object-fit:contain;flex-shrink:0}.workshop-note h3{font:400 25px/1.2 var(--serif);color:var(--brand-deep);letter-spacing:-.025em;margin:8px 0 10px}.workshop-note p{font-size:12px;color:var(--muted);max-width:700px}.workshop-note>div>div{display:flex;gap:28px;flex-wrap:wrap;margin-top:10px}.workshop-note .text-button{font-size:11px}
#event-dialog{width:min(960px,calc(100% - 36px));max-height:90dvh;overflow-y:auto;padding:0;border:1px solid var(--line);border-radius:18px;background:#fffaf7;color:var(--ink);box-shadow:0 30px 100px #2e1c3455}
#event-dialog::backdrop{background:#2e1436b8;backdrop-filter:blur(3px)}
.event-modal-content{padding:23px 30px 30px}.event-modal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.event-modal-top img{width:100px;height:auto}.event-modal-top button{width:44px;height:44px;font-size:29px;color:var(--brand-plum);background:#f1e7f3;border:1px solid var(--line);border-radius:50%}
.event-modal-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:31px;align-items:start}.event-modal-invitation>img{width:100%;height:auto;border-radius:10px;display:block}.event-modal-invitation>a{display:block;text-align:center;margin-top:6px;font-size:11px}
.event-modal-details h2{font-size:34px;line-height:1.1;color:var(--brand-deep)}.event-modal-details .event-tagline{margin-top:13px;font-size:14px}.event-description{color:var(--muted);font-size:13px;line-height:1.8;margin-top:19px}.event-modal-details dl{margin:22px 0}.event-modal-details dl>div{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;margin-top:15px;font-size:12px}.event-modal-details dt{font-weight:600;color:var(--brand-plum)}.event-modal-details dd{margin:0;color:var(--muted);line-height:1.8}.event-modal-details h3{font-size:13px;color:var(--brand-deep)}.event-modal-details ul{font-size:12px;color:var(--muted);line-height:1.9;padding-left:18px;margin:10px 0}.event-upgrade{font-size:12px;color:var(--brand-plum);padding:13px 15px;background:#f3e8f5;border-radius:9px;margin-top:14px}.ticket-pending{font-size:12px;color:#a2470d;border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.event-modal-details>.button{font-size:12px;width:100%;margin-top:17px}.calendar-save-note{font-size:10px;color:var(--muted);line-height:1.7;margin-top:12px}
@media(max-width:950px){.site-header nav{gap:17px;font-size:11px}.events-layout{grid-template-columns:1fr 1fr;gap:18px}.calendar-panel{padding:20px 16px}.calendar-toolbar h3{font-size:23px}.calendar-toolbar button{width:34px}.event-card{grid-template-columns:1fr;padding:22px;gap:15px}.event-poster-thumb{width:106px;justify-self:start}.event-card h4{font-size:27px}.event-card-copy{min-width:0}.workshop-note{padding:24px}}
@media(max-width:680px){.mobile-hub-nav{display:flex;gap:8px;justify-content:center;padding-top:13px;font-size:11px}.mobile-hub-nav a{border:1px solid #e2c8e8;background:#f8edf9;border-radius:30px;padding:9px 13px;min-height:38px;display:flex;align-items:center;gap:15px;color:var(--brand-plum)}.events-section{padding:4px 0 37px}.events-heading{gap:12px;align-items:flex-start;margin-bottom:22px}.events-heading h2{font-size:32px}.events-heading p{font-size:13px;line-height:1.75}.event-filters{gap:6px;margin-bottom:19px}.event-filters button{font-size:11px;padding:9px 12px}.events-layout{grid-template-columns:1fr;gap:22px}.calendar-panel{padding:22px 18px}.calendar-toolbar h3{font-size:25px}.calendar-toolbar button{width:39px;height:40px}.month-table{border-spacing:2px 5px}.calendar-day{height:42px;font-size:13px}.calendar-meta{font-size:9px}.calendar-legend{font-size:9px;gap:15px}.event-card{grid-template-columns:94px minmax(0,1fr);padding:22px 17px;gap:17px}.event-poster-thumb{width:100%;margin-top:7px}.event-card h4{font-size:25px}.event-category{font-size:8px;letter-spacing:.05em;margin-bottom:11px}.event-tagline{font-size:11px}.event-date{font-size:11px}.event-place,.event-audience{font-size:10px}.event-card .button{font-size:11px;padding:12px 14px;gap:12px;width:100%}.event-ticket-note{font-size:9px}.agenda-heading h3{font-size:12px}.workshop-note{padding:23px 22px;gap:14px;align-items:flex-start}.workshop-note>img{width:60px;height:60px;margin-top:5px}.workshop-note h3{font-size:23px}.workshop-note p{font-size:11px;line-height:1.8}.workshop-note>div>div{display:block}.workshop-note .text-button{display:flex;gap:12px;margin-top:5px;font-size:10px}.event-modal-content{padding:20px}.event-modal-body{grid-template-columns:1fr;gap:23px}.event-modal-invitation{order:2}.event-modal-details h2{font-size:32px}.event-modal-top{margin-bottom:16px}.event-modal-top img{width:86px}.event-modal-details dl>div{font-size:12px}.event-modal-details>.button{font-size:11px}.event-modal-invitation img{max-width:380px;margin:auto}}
@media(max-width:360px){.events-heading h2{font-size:30px}.event-filters button{font-size:10px;padding:9px 10px}.event-card{grid-template-columns:78px minmax(0,1fr);gap:13px;padding:21px 14px}.event-card h4{font-size:23px}.event-card .button{font-size:10px;padding:12px 9px;gap:8px}.calendar-panel{padding:19px 13px}.calendar-toolbar h3{font-size:23px}.workshop-note{padding:21px 18px}.workshop-note>img{width:42px}.mobile-hub-nav a{font-size:10px;padding:9px 11px}}
@media print{.events-section,.mobile-hub-nav,#event-dialog{display:none!important}}

@media(max-width:950px){.events-heading{gap:25px}.meet-host-caption{font-size:11px;padding:11px 15px}}
@media(max-width:680px){.events-heading{grid-template-columns:1fr;gap:20px}.events-host-link{width:100%;max-width:430px;justify-self:end;border-radius:12px}.meet-host-caption{font-size:12px;padding:12px 17px}}
