.mwb-week-planner{margin:0 0 24px;border-top:4px solid #0f8460;border-bottom:1px solid #b8c8c5;background:#fff}.mwb-week-planner-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:28px;align-items:end;padding:24px 26px 18px}.mwb-week-planner-head h2{margin:4px 0 0;font-size:clamp(28px,3vw,44px);line-height:1}.mwb-week-planner-head p{margin:0;color:#52615f}.mwb-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #cbd7d5;border-bottom:1px solid #cbd7d5}.mwb-week-day{min-height:154px;padding:15px 13px;border:0;border-right:1px solid #d6dfdd;background:#f8faf9;color:#10171a;text-align:left;cursor:pointer;transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease}.mwb-week-day:last-child{border-right:0}.mwb-week-day:hover,.mwb-week-day:focus-visible{position:relative;z-index:1;background:#e8f5f0;box-shadow:inset 0 -4px #0f8460;transform:translateY(-2px)}.mwb-week-day.is-selected{background:#0f8460;color:#fff}.mwb-week-day time,.mwb-week-day b,.mwb-week-day small{display:block}.mwb-week-day time{font-size:12px;font-weight:900;text-transform:uppercase}.mwb-week-day b{margin:10px 0 8px;font-family:Georgia,serif;font-size:28px;line-height:1}.mwb-week-day small{font-size:12px;line-height:1.35}.mwb-week-day .mwb-week-count{margin-top:10px;font-weight:800}.mwb-week-tools{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#cbd7d5}.mwb-week-tools>a{display:grid;gap:5px;padding:18px 24px;background:#f4f8f7;color:#10171a;text-decoration:none}.mwb-week-tools>a:hover,.mwb-week-tools>a:focus-visible{background:#e6f3ef}.mwb-week-tools b{font-family:Georgia,serif;font-size:22px}.mwb-week-tools small{color:#50615d}.calendar-occasion-ideas{margin-top:20px;padding-top:18px;border-top:3px solid #c99a13}.calendar-occasion-ideas h4{margin:5px 0 8px;font-family:Georgia,serif;font-size:22px}.calendar-occasion-ideas>p{margin:0 0 12px;color:#5b6866}.occasion-idea-list{display:grid;gap:7px;margin:0 0 14px;padding:0;list-style:none}.occasion-idea-list li{padding:9px 10px;border-left:3px solid #0f8460;background:#f3f7f6;font-size:13px;font-weight:700}.occasion-enquiry{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 13px;background:#10171a;color:#fff;text-decoration:none;font-weight:900}.occasion-enquiry:hover,.occasion-enquiry:focus-visible{background:#0f8460}.occasion-boundary{display:block;margin-top:9px;color:#687674;font-size:11px;line-height:1.4}@media(max-width:900px){.mwb-week-planner-head{grid-template-columns:1fr}.mwb-week-days{grid-template-columns:repeat(2,minmax(0,1fr))}.mwb-week-day{border-bottom:1px solid #d6dfdd}.mwb-week-tools{grid-template-columns:1fr}}@media(max-width:520px){.mwb-week-planner-head{padding:20px 16px}.mwb-week-days{grid-template-columns:1fr}.mwb-week-day{min-height:auto;border-right:0}.mwb-week-tools>a{padding:16px}}
.event-commercial-route{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;margin:42px 0 18px;padding:30px;border-left:5px solid #c79916;background:#10171a;color:#fff}.event-commercial-route h2{font:700 34px/1.05 Georgia,serif;letter-spacing:0;margin:8px 0;color:#fff}.event-commercial-route p{max-width:820px;margin:0;color:#dbe3e1;line-height:1.5}.event-commercial-route .news-button{white-space:nowrap}.event-sponsor-label{display:inline-flex;width:max-content;background:#10171a;color:#fff;padding:6px 9px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:0;margin-bottom:10px}
@media(max-width:720px){.event-commercial-route{grid-template-columns:1fr;padding:24px 20px}.event-commercial-route .news-button{white-space:normal;text-align:center}}
.calendar-toolbar{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);gap:18px 28px;align-items:end}.event-time-row,.event-filter-row{display:flex;flex-wrap:wrap;gap:7px}.event-time-row{justify-content:flex-end}.event-time-row button,.event-filter-row button{min-height:42px;border:1px solid #aebdba;background:#fff;color:#10171a;padding:9px 13px;font:800 12px/1.15 Arial,sans-serif;cursor:pointer;transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.event-time-row button:hover,.event-time-row button:focus-visible,.event-filter-row button:hover,.event-filter-row button:focus-visible{border-color:#0f8460;box-shadow:0 0 0 3px rgba(15,132,96,.13);transform:translateY(-1px)}.event-time-row button.is-active,.event-filter-row button.is-active{border-color:#0f8460;background:#0f8460;color:#fff}.event-filter-row{grid-column:1/-1;justify-content:flex-end;padding-top:14px;border-top:1px solid #ccd7d5}.event-trailer-link{display:inline-flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin-top:10px;padding:8px 11px;border:1px solid #0f8460;background:#eef8f5;color:#0b6349;text-decoration:none;font-weight:900}.event-trailer-link::before{content:'▶';font-size:11px}.event-trailer-link:hover,.event-trailer-link:focus-visible{background:#0f8460;color:#fff}.calendar-trailer-meta{margin:14px 0;padding:12px;border-left:4px solid #0f8460;background:#eef6f4;color:#334744}.calendar-trailer-meta b,.calendar-trailer-meta span{display:block}.calendar-trailer-meta span{margin-top:3px;font-size:12px}.calendar-trailer-meta a{display:inline-flex;margin-top:9px;color:#0b6349;font-weight:900}@media(max-width:900px){.calendar-toolbar{grid-template-columns:1fr}.event-time-row,.event-filter-row{justify-content:flex-start}.event-filter-row{grid-column:auto}.event-time-row button,.event-filter-row button{flex:1 1 138px}}@media(max-width:520px){.event-time-row button,.event-filter-row button{flex-basis:calc(50% - 4px);padding:9px 7px}.calendar-trailer-meta{padding:10px}}

/* v561: reporting-first event desk with a compact planner and optional full calendar. */
body.events-page > main.events-main,
body.events-page > .events-hero {
  width: min(1080px, calc(100% - 32px));
  margin-inline: auto;
}

body.events-page > .events-hero {
  position: relative;
  overflow: hidden;
  margin-top: 22px;
  border: 1px solid #253638;
  border-radius: 8px;
  box-shadow: 0 18px 45px rgba(16, 23, 26, .14);
  background:
    linear-gradient(110deg, rgba(9, 18, 21, .98), rgba(9, 35, 34, .9)),
    radial-gradient(circle at 85% 15%, rgba(210, 165, 39, .35), transparent 42%);
}

.events-page .events-hero > div {
  width: min(820px, 100%);
  padding: clamp(30px, 5vw, 58px);
}

.events-page .events-hero h1 {
  max-width: 760px;
  font-size: clamp(2.35rem, 5vw, 4.6rem);
  line-height: .96;
}

.events-page .events-hero p {
  max-width: 720px;
}

.events-page .events-main {
  padding-top: 28px;
}

.events-page .desk-story-surface-v560,
.events-page .mwb-week-planner,
.events-page .events-calendar-disclosure,
.events-page .event-commercial-route,
.events-page .event-proposal-studio {
  border-radius: 6px;
  box-shadow: 0 12px 32px rgba(16, 23, 26, .075);
}

.events-page .mwb-week-planner {
  overflow: hidden;
  margin-top: 26px;
}

.events-page .mwb-week-planner-head {
  grid-template-columns: minmax(0, 1fr) minmax(240px, .6fr);
  gap: 22px;
  padding: 20px 22px 15px;
}

.events-page .mwb-week-planner-head h2 {
  font-size: clamp(1.75rem, 3vw, 2.4rem);
}

.events-page .mwb-week-days {
  overflow-x: auto;
  grid-template-columns: repeat(7, minmax(122px, 1fr));
  scrollbar-width: thin;
}

.events-page .mwb-week-day {
  min-height: 126px;
  padding: 13px 11px;
}

.events-page .mwb-week-day b {
  margin: 7px 0 5px;
  font-size: 23px;
}

.events-page .mwb-week-tools > a {
  padding: 14px 20px;
}

.events-page .mwb-week-tools b {
  font-size: 19px;
}

.events-calendar-disclosure {
  margin: 28px 0;
  border: 1px solid #b9c8c5;
  border-top: 4px solid #c79916;
  background: #fff;
}

.events-calendar-disclosure > summary {
  display: flex;
  min-height: 94px;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 20px 24px;
  background: linear-gradient(90deg, #f8fbfa, #eef5f3);
  color: #10171a;
  cursor: pointer;
  list-style: none;
}

.events-calendar-disclosure > summary::-webkit-details-marker {
  display: none;
}

.events-calendar-disclosure > summary:hover,
.events-calendar-disclosure > summary:focus-visible {
  background: #e7f3ef;
  outline: 3px solid rgba(15, 132, 96, .16);
  outline-offset: -3px;
}

.events-calendar-disclosure > summary small,
.events-calendar-disclosure > summary strong {
  display: block;
}

.events-calendar-disclosure > summary small {
  margin-bottom: 5px;
  color: #a86f00;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .07em;
}

.events-calendar-disclosure > summary strong {
  font: 700 clamp(1.35rem, 3vw, 2rem)/1.08 Georgia, "Times New Roman", serif;
}

.events-disclosure-action {
  display: inline-flex;
  min-height: 42px;
  flex: 0 0 auto;
  align-items: center;
  gap: 9px;
  padding: 9px 14px;
  border: 1px solid #10171a;
  background: #10171a;
  color: #fff;
  font-size: .78rem;
  font-weight: 900;
}

.events-disclosure-action::after {
  content: '+';
  font-size: 1.25rem;
  line-height: 1;
}

.events-calendar-disclosure[open] .events-disclosure-action::after {
  content: '−';
}

.events-calendar-disclosure-body {
  padding: 22px;
  border-top: 1px solid #cbd7d5;
}

.events-calendar-page-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 20px;
  padding: 14px 16px;
  border-left: 4px solid #0f8460;
  background: #eef7f4;
}

.events-calendar-page-link p {
  margin: 0;
  color: #40534e;
}

.events-calendar-page-link .news-button {
  flex: 0 0 auto;
  white-space: nowrap;
}

.events-calendar-disclosure .event-calendar-shell,
.events-calendar-disclosure .calendar-toolbar,
.events-calendar-disclosure .events-results {
  margin-inline: 0;
}

@media (max-width: 760px) {
  body.events-page > main.events-main,
  body.events-page > .events-hero {
    width: min(100% - 16px, 1080px);
  }

  .events-page .events-hero > div {
    padding: 28px 20px;
  }

  .events-page .mwb-week-planner-head {
    grid-template-columns: 1fr;
    padding: 18px 16px 14px;
  }

  .events-page .mwb-week-days {
    grid-template-columns: repeat(7, minmax(138px, 1fr));
  }

  .events-calendar-disclosure > summary {
    align-items: flex-start;
    padding: 18px 16px;
  }

  .events-disclosure-action {
    min-height: 36px;
    padding: 7px 10px;
  }

  .events-calendar-disclosure-body {
    padding: 14px;
  }

  .events-calendar-page-link {
    align-items: stretch;
    flex-direction: column;
  }

  .events-calendar-page-link .news-button {
    white-space: normal;
    text-align: center;
  }
}
