.lm-calendar{--lm-red:#CC1521;--lm-hover:#A8111B;--lm-text:#505050;box-sizing:border-box;background:var(--lm-red);color:#fff;font-family:'Source Sans Pro',SourceSans,Roboto,Arial,sans-serif;padding:64px 32px;font-size:16px;line-height:1.43}.lm-calendar *{box-sizing:border-box}.lm-calendar button,.lm-calendar a{font:inherit}.lm-calendar button{cursor:pointer;border-radius:0}.lm-calendar button:focus-visible,.lm-calendar a:focus-visible{outline:3px solid currentColor;outline-offset:4px}.lm-calendar .lm-heading{text-align:center;color:#fff;font-size:36px;font-weight:300;margin:0 0 32px}.lm-layout{max-width:1140px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:36px;align-items:start}.lm-layout.lm-selected{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr)}.lm-month-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px}.lm-calendar .lm-month{font-size:24px;font-weight:700;color:#fff;text-transform:none;margin:0}.lm-nav{background:transparent;border:0;color:white;width:48px;height:48px;font-size:36px!important;line-height:1!important}.lm-nav:hover{background:var(--lm-hover)}.lm-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.lm-weekday{text-align:center;font-weight:700;padding:8px 0}.lm-day{position:relative;min-height:60px;background:transparent;border:1px solid transparent;color:white;font-size:20px!important;padding:8px 2px 18px}.lm-day:hover{background:var(--lm-hover)}.lm-day.lm-has-events{background:rgba(255,255,255,.14)}.lm-day[aria-pressed=true]{background:#fff;color:var(--lm-red)}.lm-day.lm-today{border-color:#fff}.lm-count{display:block;font-size:11px;line-height:12px;position:absolute;bottom:3px;left:0;right:0}.lm-legend{font-size:14px;margin:22px 0 0;opacity:.9}.lm-calendar .lm-list{background:#fff;color:var(--lm-text);padding:24px;border:1px solid #ddd}.lm-list-header{display:flex;gap:12px;align-items:start;justify-content:space-between}.lm-calendar .lm-list h3{font-size:24px;line-height:1.2;color:var(--lm-text);margin:0 0 8px}.lm-list-summary{margin:0 0 20px;font-size:14px}.lm-close-list{border:0;background:#f0f0f0;color:var(--lm-text);width:36px;height:36px;flex-shrink:0;font-size:24px!important}.lm-event-list{list-style:none!important;margin:0!important;padding:0!important}.lm-event-list li{border-top:1px solid #ddd;margin:0;padding:0}.lm-event-button{width:100%;text-align:left;background:white;border:0;color:var(--lm-text);padding:18px 0}.lm-event-button:hover{color:var(--lm-red)}.lm-event-title{display:block;font-size:18px;font-weight:700;line-height:1.3}.lm-event-meta{display:block;font-size:14px;margin-top:6px}.lm-event-more{display:block;color:var(--lm-red);margin-top:10px;font-size:14px}.lm-calendar .lm-dialog{padding:0;border:1px solid #ddd;max-width:680px;width:calc(100% - 32px);max-height:85vh;color:var(--lm-text);background:#fff;font-family:inherit}.lm-dialog::backdrop{background:rgba(51,51,51,.30)}.lm-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--lm-red);color:#fff;padding:18px 24px}.lm-dialog-close{background:transparent;color:white;border:1px solid rgba(255,255,255,.6);width:40px;height:40px;flex-shrink:0;font-size:26px!important}.lm-dialog-content{padding:28px}.lm-calendar .lm-dialog-title{font-size:24px;color:var(--lm-text);line-height:1.25;margin:0 0 24px}.lm-detail-meta{padding:16px;background:#f0f0f0;margin-bottom:24px}.lm-detail-meta p{margin:4px 0}.lm-description{overflow-wrap:anywhere}.lm-description p{margin:0 0 16px}.lm-description img,.lm-event-image{max-width:100%;height:auto}.lm-event-image{margin-bottom:24px}.lm-calendar .lm-link{display:inline-block;padding:12px 24px;background:var(--lm-red);color:white;text-decoration:none;margin-top:12px}.lm-link:hover{background:var(--lm-hover)}.lm-back{border:1px solid #ddd;padding:10px 16px;background:#fff;color:var(--lm-text);margin-top:20px}.lm-calendar [hidden]{display:none!important}@media(min-width:992px){.lm-layout:not(.lm-selected) .lm-month-panel{max-width:850px;width:100%;margin:auto}}@media(max-width:767px){.lm-calendar{padding:36px 16px}.lm-layout.lm-selected{grid-template-columns:minmax(0,1fr);gap:24px}.lm-day{min-height:48px;font-size:18px!important}.lm-grid{gap:3px}.lm-calendar .lm-heading{font-size:36px;margin-bottom:20px}.lm-dialog-content{padding:20px}.lm-calendar .lm-month{font-size:22px}}

/* Reference-sized calendar inside a full-width red section. */
.lm-calendar{width:100%;max-width:none;margin:0;padding:72px 32px;}
.lm-calendar .lm-heading{font-size:30px;margin:0 0 10px;}
.lm-calendar .lm-layout{max-width:1140px;gap:28px;}
.lm-calendar .lm-month-panel{position:relative;}
.lm-calendar .lm-month-nav{justify-content:center;margin-bottom:0;}
.lm-calendar .lm-month{font-size:18px;line-height:1.3;}
.lm-calendar .lm-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;min-height:0;padding:0;margin:0;font-size:48px!important;}
.lm-calendar .lm-prev{left:-120px;}
.lm-calendar .lm-next{right:-120px;}
.lm-calendar .lm-weekday{padding:4px 0;font-size:16px;}
.lm-calendar .lm-grid{gap:0;}
.lm-calendar .lm-day{height:42px;min-height:42px;padding:4px 2px 13px;margin:0;font-size:16px!important;line-height:1.2;}
.lm-calendar .lm-day.lm-has-events{background:#fff;color:var(--lm-red);}
.lm-calendar .lm-day.lm-today{border:1px solid rgba(255,255,255,.65);}
.lm-calendar .lm-day[aria-pressed=true]{outline:2px solid white;outline-offset:2px;background:var(--lm-hover);color:white;}
.lm-calendar .lm-legend{margin:14px 0 0;font-size:12px;}
.lm-calendar .lm-layout.lm-selected{grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);}
.lm-calendar .lm-layout.lm-selected .lm-prev{left:0;}
.lm-calendar .lm-layout.lm-selected .lm-next{right:0;}
.lm-calendar .lm-layout.lm-selected .lm-month-nav{margin-bottom:8px;min-height:48px;}
.lm-calendar .lm-layout.lm-selected .lm-nav{top:0;transform:none;font-size:36px!important;}
@media(min-width:992px){.lm-calendar .lm-layout:not(.lm-selected) .lm-month-panel{max-width:560px;width:100%;margin:auto;}}
@media(min-width:768px) and (max-width:991px){.lm-calendar .lm-layout:not(.lm-selected) .lm-month-panel{max-width:480px;width:100%;margin:auto;}.lm-calendar .lm-prev{left:-60px;}.lm-calendar .lm-next{right:-60px;}}
@media(max-width:767px){.lm-calendar{padding:36px 16px;}.lm-calendar .lm-layout.lm-selected{grid-template-columns:minmax(0,1fr);}.lm-calendar .lm-month-nav{min-height:48px;margin-bottom:8px;}.lm-calendar .lm-nav{top:0;transform:none;font-size:36px!important;}.lm-calendar .lm-prev{left:0;}.lm-calendar .lm-next{right:0;}.lm-calendar .lm-day{height:44px;min-height:44px;}}

/* v1.0.3: popup list, 70px narrower date grid, fixed popup header. */
.lm-calendar{border:0!important;outline:0!important;box-shadow:none!important;}
.lm-calendar .lm-layout,.lm-calendar .lm-month-panel{border:0!important;outline:0!important;box-shadow:none!important;}
@media(min-width:992px){.lm-calendar .lm-layout:not(.lm-selected) .lm-month-panel{max-width:490px;}}
@media(min-width:768px) and (max-width:991px){.lm-calendar .lm-layout:not(.lm-selected) .lm-month-panel{max-width:410px;}}
.lm-calendar .lm-dialog{overflow:hidden;max-height:85vh;max-height:85dvh;}
.lm-calendar .lm-dialog[open]{display:flex;flex-direction:column;}
.lm-calendar .lm-dialog-header{flex:0 0 auto;position:relative;z-index:1;}
.lm-calendar .lm-dialog-content{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;}
.lm-calendar .lm-event-button{margin:0;border:0;box-shadow:none;}

/* Remove frames on dedicated theme/shortcode wrappers; keep the red area full width. */
.lm-calendar-wrapper{border:0!important;outline:0!important;box-shadow:none!important;padding:0!important;background:#CC1521!important;}
.lm-calendar-wrapper::before,.lm-calendar-wrapper::after{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;}
.lm-calendar{width:100%!important;margin:0!important;border:0!important;outline:0!important;box-shadow:none!important;}

/* Header navigation remains visible above the scrollable popup content. */
.lm-calendar .lm-top-back{flex:0 0 auto;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6);padding:8px 12px;margin:0;min-height:40px;line-height:1.2;box-shadow:none;}
.lm-calendar .lm-top-back:hover{background:var(--lm-hover);}
.lm-calendar .lm-dialog-date{flex:1;text-align:center;}
@media(max-width:480px){.lm-calendar .lm-dialog-header{padding:12px;gap:8px;}.lm-calendar .lm-top-back{padding:8px;font-size:14px;}.lm-calendar .lm-dialog-date{font-size:14px;}}

/* Wrap at word boundaries, overriding theme syllable/character breaking. */
.lm-calendar .lm-dialog,.lm-calendar .lm-dialog *,.lm-calendar .lm-event-title,.lm-calendar .lm-event-meta{
  word-break:normal!important;
  overflow-wrap:normal!important;
  -webkit-hyphens:none!important;
  hyphens:none!important;
}
