.calendar-page{background:var(--paper)}.calendar-header{background:var(--ink);position:relative}.calendar-hero{background:var(--ink);color:var(--cream);border-bottom:10px solid var(--electric);padding:55px clamp(24px,6vw,96px) 52px}.calendar-hero h1{letter-spacing:-.025em;margin:20px 0 25px;font:900 clamp(58px,8vw,116px)/.9 Impact,Haettenschweiler,Arial Narrow Bold,sans-serif}.calendar-hero>p:last-child{margin:0;font:22px/1.4 Georgia,serif}.calendar-content{max-width:1700px;margin:auto;padding:48px clamp(18px,4vw,64px) 20px}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:25px;display:flex}.calendar-month-nav{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.calendar-month-nav h2{text-align:center;min-width:245px;margin:0 10px;font:700 clamp(27px,3vw,40px)/1.1 Georgia,serif}.calendar-month-nav button,.calendar-view-switch button{border:1px solid var(--ink);cursor:pointer;background:0 0;min-height:44px;padding:10px 16px;font-weight:800}.calendar-month-nav button:hover{background:var(--cream)}.calendar-month-nav .calendar-today{letter-spacing:.08em;font-size:10px}.calendar-filters{align-items:end;gap:15px;display:flex}.calendar-filters label{letter-spacing:.1em;font-size:10px;font-weight:800}.calendar-filters select{background:#fffaf0;border:1px solid #a69e90;max-width:190px;min-height:44px;margin-top:7px;padding:11px;font-size:14px;display:block}.calendar-view-switch{display:flex}.calendar-view-switch button{letter-spacing:.07em;font-size:10px}.calendar-view-switch button[aria-pressed=true]{background:var(--ink);color:#fff}.calendar-count{color:#665f55;margin:24px 0 18px;font-size:13px;line-height:1.6}.calendar-grid{border:1px solid #c9c0ac}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{background:var(--ink);color:#fff;letter-spacing:.1em;text-align:center;font:800 11px/1 Arial,sans-serif}.calendar-weekdays>div{padding:15px 5px}.calendar-day{background:#fffaf0;border-bottom:1px solid #d9cfbc;border-right:1px solid #d9cfbc;min-width:0;min-height:155px;padding:12px 8px}.calendar-day:nth-child(7n){border-right:0}.calendar-day-empty{background:#eee6d7}.calendar-day-number{align-items:center;gap:8px;margin:0 3px 12px;font-size:14px;font-weight:800;display:flex}.calendar-day-number small{letter-spacing:.05em;background:var(--ink);color:#fff;padding:4px;font-size:8px}.calendar-day.is-today{box-shadow:inset 0 0 0 2px var(--coral)}.calendar-event{text-align:left;border:0;border-left:3px solid var(--coral);cursor:pointer;overflow-wrap:anywhere;background:#eee4ce;border-radius:0;width:100%;margin:8px 0;padding:10px 8px;display:block}.calendar-event:hover{background:#e1d5ba}.calendar-event>span{letter-spacing:.01em;margin-bottom:4px;font:800 10px/1.4 Arial,sans-serif;display:block}.calendar-event strong{font:700 13px/1.35 Arial,sans-serif;display:block}.is-cancelled{opacity:.7}.is-cancelled strong{text-decoration:line-through}.calendar-agenda{border-top:1px solid #c9c0ac;display:none}.view-list .calendar-grid{display:none}.view-list .calendar-agenda{display:block}.agenda-event{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #c9c0ac;grid-template-columns:100px 1fr 25px;align-items:center;gap:22px;width:100%;padding:25px 12px;display:grid}.agenda-event:hover{background:var(--cream)}.agenda-date{font:700 24px/1 Georgia,serif}.agenda-event>span:nth-child(2){gap:8px;display:grid}.agenda-event small{letter-spacing:.06em;text-transform:uppercase;color:#665f55;font:700 11px/1.4 Arial,sans-serif}.agenda-event strong{font:700 23px/1.2 Georgia,serif}.agenda-event>span:nth-child(2)>span{font-size:13px;line-height:1.4}.calendar-empty{text-align:center;background:var(--cream);margin-top:20px;padding:50px 20px}.calendar-empty h3{margin:0 0 15px;font:700 32px/1.2 Georgia,serif}.calendar-empty p{font-size:17px;line-height:1.6}.calendar-bottom{justify-content:space-between;align-items:center;gap:25px;max-width:1700px;margin:auto;padding:30px clamp(24px,4vw,64px) 65px;display:flex}.calendar-bottom p{max-width:650px;font-size:14px;line-height:1.7}.calendar-dialog{border:1px solid var(--ink);background:var(--paper);width:calc(100% - 36px);max-width:650px;max-height:88svh;color:var(--ink);padding:0}.calendar-dialog::backdrop{background:#0009}.calendar-dialog>div{padding:45px 35px;position:relative}.dialog-close{cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;font-size:32px;position:absolute;top:10px;right:14px}.calendar-dialog h2{letter-spacing:-.02em;margin:20px 0 25px;font:700 35px/1.1 Georgia,serif}.calendar-dialog p{font-size:17px;line-height:1.65}.calendar-dialog .eyebrow{font-size:10px}.event-when{font-weight:700}.event-when small{color:#665f55;font-size:12px;font-weight:400}.event-description{white-space:pre-wrap}.event-links{flex-wrap:wrap;align-items:center;gap:25px;margin-top:28px;display:flex}.event-links .text-link{font-size:10px}:is(.calendar-page button:focus-visible,.calendar-page a:focus-visible,.calendar-page input:focus-visible,.calendar-page select:focus-visible,.calendar-page textarea:focus-visible){outline:3px solid var(--coral);outline-offset:3px}.calendar-page button:disabled{cursor:wait;opacity:.5}.calendar-manage-hero h1{font-size:clamp(60px,7vw,95px)}.calendar-access{min-height:350px;padding:70px clamp(24px,6vw,96px)}.calendar-access h2{font:700 32px/1.1 Georgia,serif}.calendar-access p{margin:25px 0;font-size:18px;line-height:1.7}.calendar-editor{max-width:1550px;margin:auto;padding:35px clamp(22px,5vw,75px) 75px}.editor-top{justify-content:space-between;align-items:center;gap:25px;padding-bottom:30px;display:flex}.editor-top p{max-width:700px;font-size:14px;line-height:1.7}.editor-top .text-link{flex-shrink:0;font-size:10px}.editor-layout{grid-template-columns:1.25fr 1fr;align-items:start;gap:45px;display:grid}.event-form{background:#fffaf0;border:1px solid #c9c0ac;padding:32px;scroll-margin-top:20px}.event-form-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.event-form h2,.editor-event-list h2,.calendar-source-desk h2{margin:0 0 18px;font:700 32px/1.1 Georgia,serif}.event-form-heading button,.editor-event button,.source-posts button,.duplicate-event{border:0;border-bottom:1px solid var(--ink);letter-spacing:.05em;cursor:pointer;background:0 0;padding:8px 0;font-size:10px;font-weight:800}.event-form>p{font-size:14px;line-height:1.65}.event-form label,.editor-list-filters label{gap:9px;margin:20px 0;font:700 13px/1.4 Arial,sans-serif;display:grid}.event-form input,.event-form select,.event-form textarea,.editor-list-filters input,.editor-list-filters select{width:100%;min-width:0;min-height:45px;color:var(--ink);background:#fff;border:1px solid #bfb5a0;border-radius:0;padding:11px;font:400 15px/1.4 Arial,sans-serif}.event-form textarea{resize:vertical}.form-two,.form-three{gap:18px;display:grid}.form-two{grid-template-columns:1fr 1fr}.form-three{grid-template-columns:1.2fr 1fr 1fr}.event-form .field-hint{color:#665f55;margin:0;font-size:12px;line-height:1.6}.event-form-preview{border-left:4px solid var(--coral);background:var(--cream);overflow-wrap:anywhere;gap:10px;margin-top:28px;padding:18px;display:grid}.event-form-preview small{letter-spacing:.12em;font-size:9px;font-weight:800}.event-form-preview strong{font:700 25px/1.2 Georgia,serif}.event-form-preview span{font-size:12px;line-height:1.5}.event-form .editor-message{font-size:14px;font-weight:700;line-height:1.6}.event-form .button{cursor:pointer}.duplicate-event{margin-top:20px;display:block}.editor-event-list{min-width:0}.editor-list-filters label{margin-top:0}.editor-list-filters .checkbox-label{align-items:center;gap:10px;display:flex}.checkbox-label input{width:18px;height:18px;min-height:0}.editor-event{border-top:1px solid #c9c0ac;padding:25px 0}.editor-event h3{margin:15px 0 12px;font:700 24px/1.2 Georgia,serif}.editor-event p{font-size:13px;line-height:1.6}.event-status{letter-spacing:.08em;text-transform:uppercase;border:1px solid #c9c0ac;padding:5px 8px;font-size:9px;font-weight:800;display:inline-block}.status-draft{background:#f4d6a5}.status-published{background:#e2e9bc}.status-cancelled{background:#ead4d0}.draft-notes{background:var(--cream);padding:14px}.calendar-source-desk{border-top:2px solid var(--ink);margin-top:60px;padding-top:45px}.calendar-source-desk>p{max-width:750px;font-size:15px;line-height:1.6}.source-posts{grid-template-columns:1fr 1fr;gap:25px;display:grid}.source-posts article{background:#fffaf0;border:1px solid #c9c0ac;min-width:0;padding:25px}.source-caption{white-space:pre-wrap;-webkit-line-clamp:8;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:14px;line-height:1.6;display:-webkit-box;overflow:hidden}.source-posts article>div{justify-content:space-between;align-items:center;gap:15px;display:flex}.source-posts .text-link{font-size:9px}.calendar-source-desk>button{cursor:pointer}@media (max-width:1000px){.calendar-toolbar{flex-direction:column;align-items:start}.calendar-month-nav h2{min-width:230px}.calendar-day{min-height:140px}.calendar-event strong{font-size:11px}.calendar-day-number small{display:none}.editor-layout{grid-template-columns:1fr;gap:45px}.editor-top{flex-direction:column;align-items:start;gap:5px}.calendar-bottom{flex-direction:column;align-items:start}}@media (max-width:700px){.calendar-hero{padding:40px 24px}.calendar-hero>p:last-child{font-size:19px}.calendar-month-nav{gap:8px;width:100%}.calendar-month-nav h2{flex:1;min-width:0;margin:0;font-size:27px}.calendar-month-nav .calendar-today{margin-top:8px}.calendar-filters{width:100%}.calendar-filters label{flex:1}.calendar-filters select{width:100%;max-width:none}.calendar-view-switch,.calendar-grid{display:none}.calendar-agenda{display:block}.agenda-event{grid-template-columns:65px 1fr 12px;gap:12px;padding:23px 0}.agenda-date{font-size:20px}.agenda-event strong{font-size:21px}.calendar-dialog>div{padding:45px 25px 30px}.calendar-dialog h2{font-size:28px}.calendar-header .header-cta{display:none}.form-two,.form-three{grid-template-columns:1fr;gap:0}.event-form{padding:22px}.event-form-heading{flex-direction:column;align-items:start;gap:0}.event-form-heading button{margin-bottom:15px}.source-posts{grid-template-columns:1fr}.calendar-editor{padding-inline:18px}.calendar-source-desk h2{font-size:28px}.calendar-page footer{line-height:1.7}}.calendar-dialog{margin:auto}@media (max-width:700px){.calendar-month-nav{grid-template-columns:48px minmax(0,1fr) 48px;gap:8px;display:grid}.calendar-month-nav .calendar-today{grid-column:1/-1;width:100%;margin-top:3px}}
