.ds3-events-calendar{box-sizing:border-box;letter-spacing:0}
.ds3-events-calendar.ds3-v5{width:100%;max-width:none;margin:0;overflow:visible}
.ds3-events-calendar h1,.ds3-events-calendar h2,.ds3-events-calendar h3{color:var(--ink);padding:0}
.ds3-events-calendar [data-copy="eyebrow"]{letter-spacing:0}
.ds3-events-calendar .intro{max-width:780px;margin:0;color:var(--muted);font-size:22px;line-height:1.5}
.ds3-events-calendar .subscribe-button{text-align:center}
.ds3-events-calendar .subscribe-button:hover,.ds3-events-calendar .subscribe-button:focus-visible{background:var(--teal);color:var(--ink)}
.ds3-events-calendar .subscribe-button[aria-disabled=true]{opacity:.55;cursor:not-allowed}
.ds3-events-calendar .events-page{width:min(100% - var(--ds3-inner-margin),var(--ds3-inner-width));margin:0 auto;padding:144px 0 78px}.ds3-events-calendar .events-page h1{margin:0 0 18px;font-size:clamp(42px,5vw,76px);line-height:1.05;font-weight:900}.ds3-events-calendar .calendar-tools{font-size:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:40px 0 18px;padding-bottom:16px;border-bottom:1px solid #d7e3e8}.ds3-events-calendar .month-controls{display:flex;align-items:center;gap:14px;min-width:0}.ds3-events-calendar .month-controls h2{min-width:210px;margin:0;text-align:center;font-size:23px;line-height:1.2;font-weight:800}.ds3-events-calendar .icon-button,.ds3-events-calendar .text-button,.ds3-events-calendar .view-button{min-width:44px;min-height:44px;border:1px solid #b6c5cb;background:#fff;color:var(--ink);font:inherit;cursor:pointer}.ds3-events-calendar .icon-button{width:44px;font-size:31px;line-height:1}.ds3-events-calendar .text-button{padding:0 14px;font-size:15px;font-weight:750}.ds3-events-calendar .icon-button:hover,.ds3-events-calendar .text-button:hover,.ds3-events-calendar .view-button:hover{border-color:var(--teal);background:var(--soft)}.ds3-events-calendar .calendar-views{display:flex;gap:0;border:1px solid #b6c5cb}.ds3-events-calendar .view-button{padding:0 16px;border:0}.ds3-events-calendar .view-button+.view-button{border-left:1px solid #b6c5cb}.ds3-events-calendar .view-button.selected{background:var(--ink);color:#fff}.ds3-events-calendar .calendar-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.8fr);gap:42px;align-items:start}.ds3-events-calendar .calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.ds3-events-calendar .calendar-weekdays{background:var(--soft);border-bottom:1px solid #d7e3e8}.ds3-events-calendar .calendar-weekdays span{padding:12px 6px;text-align:center;color:var(--muted);font-size:14px;font-weight:800}.ds3-events-calendar .calendar-day{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;min-height:112px;padding:9px;border:0;border-right:1px solid #e0e8eb;border-bottom:1px solid #e0e8eb;background:#fff;text-align:left;font:inherit;cursor:pointer}.ds3-events-calendar .calendar-day:nth-child(7n){border-right:0}.ds3-events-calendar .calendar-day:hover,.ds3-events-calendar .calendar-day:focus-visible{background:var(--soft)}.ds3-events-calendar .calendar-day.outside{color:#9aabb1;background:#fbfcfd}.ds3-events-calendar .calendar-day.today .day-number{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%;background:var(--ink);color:#fff}.ds3-events-calendar .calendar-day.selected{box-shadow:inset 0 0 0 2px var(--teal)}.ds3-events-calendar .day-number{font-weight:750;line-height:27px}.ds3-events-calendar .day-event{display:block;max-width:100%;overflow:hidden;padding:3px 6px;background:#e6f2ed;color:#234c3d;font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.ds3-events-calendar .day-event.hpc{background:#ebebf4;color:#343765}.ds3-events-calendar .agenda{padding:0 0 0 24px;border-left:1px solid #d7e3e8}.ds3-events-calendar .agenda h2,.ds3-events-calendar .subscribe-row h2{margin:0 0 16px;font-size:23px;line-height:1.25;font-weight:850}.ds3-events-calendar .event-list{display:flex;flex-direction:column;gap:0}.ds3-events-calendar .event-item{padding:16px 0;border-top:1px solid #d7e3e8}.ds3-events-calendar .event-item:first-child{border-top:0;padding-top:0}.ds3-events-calendar .event-date{margin:0 0 5px;color:var(--muted);font-size:14px;font-weight:750}.ds3-events-calendar .event-item h3{margin:0 0 5px;font-size:18px;line-height:1.3;font-weight:800}.ds3-events-calendar .event-item p{margin:0;color:var(--muted);font-size:15px;line-height:1.45}.ds3-events-calendar .event-kind{display:inline-block;margin-top:9px;padding:3px 8px;background:#e6f2ed;color:#234c3d;font-size:12px;font-weight:750}.ds3-events-calendar .event-kind.hpc{background:#ebebf4;color:#343765}.ds3-events-calendar .empty-agenda{color:var(--muted);font-size:15px}.ds3-events-calendar .subscribe-row{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:42px;padding:22px 0 0;border-top:3px solid var(--teal)}.ds3-events-calendar .subscribe-row h2{margin-bottom:5px}.ds3-events-calendar .subscribe-row p{max-width:780px;margin:0;color:var(--muted);font-size:16px}.ds3-events-calendar .subscribe-button{min-width:230px;border:0;cursor:pointer}.ds3-events-calendar .local-note{margin:16px 0 0;padding:14px 16px;border-left:4px solid var(--blue);background:var(--soft);color:var(--muted)}.ds3-events-calendar .agenda-mode .month-view{display:none}.ds3-events-calendar .calendar-layout.agenda-mode{grid-template-columns:1fr}.ds3-events-calendar .agenda-mode .agenda{padding:0;border:0}.ds3-events-calendar .agenda-mode .agenda h2{display:none}.ds3-events-calendar .agenda-mode .event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
@media(max-width:980px){.ds3-events-calendar .events-page{width:calc(100% - 40px);padding-top:190px}.ds3-events-calendar .calendar-layout{grid-template-columns:minmax(0,1fr);gap:28px}.ds3-events-calendar .agenda{padding:0;border:0}.ds3-events-calendar .agenda h2{margin-bottom:8px}.ds3-events-calendar .calendar-day{min-height:90px;padding:7px}.ds3-events-calendar .day-event{font-size:11px}}
@media(max-width:620px){.ds3-events-calendar .events-page{padding:190px 0 54px}.ds3-events-calendar .events-page .intro{font-size:19px}.ds3-events-calendar .calendar-tools{align-items:flex-start;flex-direction:column;margin-top:28px}.ds3-events-calendar .month-controls{width:100%;gap:8px}.ds3-events-calendar .month-controls h2{flex:1;min-width:0;font-size:20px}.ds3-events-calendar .text-button{padding:0 10px}.ds3-events-calendar .calendar-views{align-self:flex-end}.ds3-events-calendar .calendar-weekdays span{padding:9px 2px;font-size:12px}.ds3-events-calendar .calendar-day{min-height:68px;padding:5px 3px;gap:3px}.ds3-events-calendar .day-number{font-size:14px;line-height:24px}.ds3-events-calendar .calendar-day.today .day-number{width:23px;height:23px}.ds3-events-calendar .day-event{width:100%;padding:2px 3px;font-size:10px}.ds3-events-calendar .agenda-mode .event-list{grid-template-columns:1fr}.ds3-events-calendar .subscribe-row{align-items:stretch;flex-direction:column;gap:18px;margin-top:32px}.ds3-events-calendar .subscribe-button{width:100%;max-width:100%;white-space:normal}}
.ds3-events-calendar .day-event.general,.ds3-events-calendar .event-kind.general{background:#eef2f3;color:#3d5059}
.ds3-events-calendar .day-event.workshop,.ds3-events-calendar .event-kind.workshop{background:#e6f2ed;color:#234c3d}
.ds3-events-calendar .day-event.lunch-lecture,.ds3-events-calendar .event-kind.lunch-lecture{background:#ebebf4;color:#343765}
.ds3-events-calendar .event-item .event-description{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:12px}.ds3-events-calendar .event-resources{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:12px}.ds3-events-calendar .event-resources a{overflow-wrap:anywhere;text-decoration:underline}
.ds3-events-calendar .calendar-layout.agenda-mode .event-list{display:flex;flex-direction:column;gap:0}.ds3-events-calendar .event-place::before{content:"";display:inline-block;width:16px;height:16px;margin-right:6px;vertical-align:-3px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M20 10c0 6-8 12-8 12S4 16 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat}.ds3-events-calendar .event-kind.vortrag,.ds3-events-calendar .day-event.vortrag{background:#e5f0f5;color:#245064}.ds3-events-calendar .event-kind.training,.ds3-events-calendar .day-event.training{background:#fff2ce;color:#624a14}.ds3-events-calendar .event-description a{text-decoration:underline;overflow-wrap:anywhere}
.ds3-events-calendar.rolling-list #previous-month,.ds3-events-calendar.rolling-list #next-month,.ds3-events-calendar.rolling-list #today{display:none}
.ds3-events-calendar.rolling-list .calendar-tools{/* Keep the list heading aligned with its rows in a compact toolbar. */display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:12px}
.ds3-events-calendar.rolling-list .month-controls{width:auto;min-width:0}
.ds3-events-calendar.rolling-list .month-controls h2{min-width:0;text-align:left}
.ds3-events-calendar .event-status{display:inline-block;margin-top:9px;padding:3px 8px;background:var(--soft);color:var(--muted);font-size:12px;font-weight:750}
.ds3-events-calendar .event-list .event-month{margin:24px 0 0;padding:12px 0;border-bottom:2px solid var(--teal);color:var(--ink);font-size:18px;line-height:1.3;font-weight:800}.ds3-events-calendar .event-list .event-month:first-child{margin-top:0}
