.events .section-head p{max-width:560px;margin:0}.calendar-shell{border:1px solid var(--line);background:linear-gradient(145deg,#16120d,#090807);box-shadow:0 24px 70px rgba(0,0,0,.28)}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--line)}.calendar-title{font:700 clamp(24px,3vw,38px)/1 Georgia,serif;text-transform:uppercase;margin:0}.month-controls{display:flex;gap:8px}.month-control{border:1px solid var(--line);background:transparent;color:var(--cream);min-height:42px;padding:0 16px;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:900;cursor:pointer}.month-control.active{background:var(--gold);color:#111;border-color:var(--gold)}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{border-bottom:1px solid var(--line)}.calendar-weekdays div{padding:12px 10px;color:var(--gold);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;text-align:center;border-right:1px solid rgba(199,138,47,.2)}.calendar-weekdays div:last-child{border-right:0}.calendar-day{appearance:none;text-align:left;color:var(--cream);background:#0d0b09;border:0;border-right:1px solid rgba(199,138,47,.2);border-bottom:1px solid rgba(199,138,47,.2);min-height:190px;padding:12px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:background .2s ease,box-shadow .2s ease}.calendar-day:nth-child(7n){border-right:0}.calendar-day:hover,.calendar-day:focus-visible{background:#1a140d;outline:none;box-shadow:inset 0 0 0 2px var(--gold)}.calendar-day.empty{cursor:default;background:#090807}.calendar-day.empty:hover{box-shadow:none}.day-number{font:700 18px/1 Georgia,serif;color:var(--paper)}.day-closed{margin:auto 0;color:#6f665a;text-transform:uppercase;letter-spacing:.14em;font-weight:900;font-size:10px}.day-item{border-left:2px solid var(--gold);padding-left:7px;font-size:10px;line-height:1.25;color:#d8cbb8}.day-item strong{display:block;color:var(--cream);font-size:11px;text-transform:uppercase;margin-bottom:2px}.day-more{margin-top:auto;color:var(--gold);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.calendar-detail{display:grid;grid-template-columns:180px 1fr;gap:28px;padding:26px 28px;min-height:190px}.calendar-detail-date{font:700 32px/1 Georgia,serif;text-transform:uppercase;color:var(--gold)}.calendar-detail-date span{display:block;color:var(--cream);font-size:62px;margin-top:8px}.calendar-detail-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-event{border:1px solid rgba(199,138,47,.3);padding:16px;background:#0a0907}.detail-event .type{color:var(--gold);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}.detail-event h3{font:700 20px/1.05 Georgia,serif;text-transform:uppercase;margin:8px 0}.detail-event p{font-size:13px;margin:0;color:#c8bcab;line-height:1.5}.calendar-note{padding:0 22px 22px;margin:0!important;font-size:12px;color:#867b6d!important}.mobile-agenda{display:none}@media(max-width:1050px){.calendar-day{min-height:175px;padding:10px}.day-item{font-size:9px}.day-item strong{font-size:10px}}@media(max-width:900px){.calendar-weekdays,.calendar-grid,.calendar-detail{display:none}.mobile-agenda{display:grid;gap:10px;padding:16px}.agenda-day{border:1px solid rgba(199,138,47,.3);padding:16px;background:#0a0907}.agenda-day h3{font:700 21px/1 Georgia,serif;text-transform:uppercase;margin:0 0 12px;color:var(--gold)}.agenda-event{padding:10px 0;border-top:1px solid rgba(199,138,47,.2)}.agenda-event:first-of-type{border-top:0;padding-top:0}.agenda-event strong{display:block;text-transform:uppercase;font-size:12px;margin-bottom:4px}.agenda-event span{display:block;color:#bcb09f;font-size:12px;line-height:1.45}.agenda-closed{color:#786e61;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:900}}@media(max-width:580px){.calendar-toolbar{align-items:flex-start;flex-direction:column}.month-controls{width:100%}.month-control{flex:1}.calendar-title{font-size:28px}}