/* IDS Events page. Builds on facilities-map.css (shared .ids-fmap styles). */
.ids-epage__herowrap{align-items:stretch!important}
.ids-epage__herotext{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;justify-content:flex-end}
.ids-epage__lede{margin:12px 0 0;color:var(--ids-muted);font-size:17px;max-width:520px}
.ids-epage__next{flex:0 1 440px;min-width:0;display:flex;gap:16px;align-items:center;background:var(--ids-panel);border:2px solid var(--ids-red);padding:16px 18px}
.ids-epage__next .ids-fmap__logo{width:96px;height:80px}
.ids-epage__nextbody{display:flex;flex-direction:column;gap:5px;min-width:0}
.ids-epage__nexttitle{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;font-size:24px;line-height:1.05;text-transform:uppercase;color:#fff}
.ids-epage__nextlink{font-size:14px;font-weight:600}

.ids-epage__filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.ids-epage__chipbox{display:flex;flex-wrap:wrap;gap:10px}
.ids-epage__selects{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.ids-epage__selects .ids-epage__select{flex:1 1 0;min-width:0;padding:0 8px;font-size:14px}
.ids-fmap .ids-epage__select{height:44px;padding:0 12px;border:2px solid #5a5a5a;border-radius:0;background:var(--ids-panel);color:#fff;font-family:Barlow,Arial,sans-serif;font-size:15px;font-weight:600;width:auto!important;max-width:100%}

/* Calendar */
.ids-epage__cal{user-select:none}
.ids-epage__calhead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.ids-epage__caltitle{background:none;border:0;color:#fff;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;font-size:28px;text-transform:uppercase;cursor:pointer;padding:0}
.ids-epage__caltitle:hover{color:var(--ids-red-hi)}
.ids-epage__calnav{width:44px;height:44px;background:transparent;border:2px solid #5a5a5a;color:#fff;font-size:24px;line-height:1;cursor:pointer;border-radius:0}
.ids-epage__calnav:hover{border-color:#fff}
.ids-epage__calgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.ids-epage__wd{text-align:center;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:14px;letter-spacing:1px;color:var(--ids-muted);padding-bottom:4px}
.ids-epage__day{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;background:#1c1c1c;border:2px solid transparent;color:#6f6f6f;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:18px;border-radius:0;padding:0;cursor:default}
.ids-epage__day.has{background:var(--ids-red);color:#fff;cursor:pointer}
.ids-epage__day.has:hover{border-color:#fff}
.ids-epage__day.today{border-color:#8a8a8a}
.ids-epage__day.sel{background:#fff;color:#000;border-color:#fff}
.ids-epage__day:disabled{opacity:1}
.ids-epage__legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:14px;font-size:14px;color:var(--ids-muted)}
.ids-epage__legend span{display:flex;align-items:center;gap:8px}
.ids-epage__legend i{width:14px;height:14px;display:inline-block}
.ids-epage__legend i.has{background:var(--ids-red)}
.ids-epage__legend i.sel{background:#fff}
.ids-epage__legend i.today{border:2px solid #8a8a8a}

/* List */
.ids-epage__tabs{display:flex;gap:6px}
.ids-epage__tab{min-height:36px;padding:0 12px;background:transparent;border:2px solid #5a5a5a;color:#fff;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:15px;letter-spacing:1px;text-transform:uppercase;cursor:pointer;border-radius:0}
.ids-epage__tab[aria-pressed="true"]{background:#fff;border-color:#fff;color:#000}
.ids-epage__active{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0 0;font-size:14px;color:var(--ids-muted)}
.ids-epage__facbar{margin:0 0 12px;padding:10px 12px;background:var(--ids-panel);border-left:4px solid var(--ids-red);font-size:15px}
.ids-epage__monthhead{list-style:none;margin:22px 0 0;padding:0 0 6px;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;font-size:20px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ids-red-hi);border-bottom:1px solid #2a2a2a}
.ids-epage__item{scroll-margin-top:90px}
.ids-epage__item:target{background:#1a1a1a}
.ids-epage__date{width:64px;flex-shrink:0;text-align:center;background:#000;border-top:4px solid var(--ids-red);padding:8px 0}
.ids-epage__date .m{display:block;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:14px;letter-spacing:1px;color:var(--ids-red-hi)}
.ids-epage__date .d{display:block;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;font-size:32px;line-height:1;color:#fff}
.ids-epage__meta{font-size:14px;color:var(--ids-muted)}
.ids-epage__actions{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px}
.ids-epage__status{font-size:13px;font-weight:600;padding:4px 9px}
.ids-epage__status.is-open{background:#fff;color:#000}
.ids-epage__status.is-soon{border:1px solid #5a5a5a;color:#fff}
.ids-epage__status.is-muted{color:var(--ids-muted);padding-left:0}
.ids-epage__reg{background:var(--ids-red);color:#fff!important;text-decoration:none;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:16px;letter-spacing:1px;text-transform:uppercase;padding:6px 14px}
.ids-epage__reg:hover{background:#b00000}
.ids-epage__addcal{background:none;border:0;padding:0;color:#fff;font-family:Barlow,Arial,sans-serif;font-weight:600;font-size:14px;text-decoration:underline;text-decoration-color:var(--ids-red);cursor:pointer}
.ids-epage__calmenu{position:absolute;z-index:5;top:100%;right:0;margin-top:6px;display:flex;flex-direction:column;background:#000;border:2px solid #fff;min-width:200px}
.ids-epage__calmenu a{padding:10px 14px;color:#fff!important;text-decoration:none;font-size:14px;font-weight:600}
.ids-epage__calmenu a:hover{background:var(--ids-red)}
/* No-JS fallback rules are printed in a <noscript> by the plugin. */
@media (max-width:640px){
  .ids-epage__next{flex-basis:100%}
  .ids-fmap .ids-epage__select{flex:1 1 140px}
  .ids-epage__date{width:54px}
  .ids-epage__date .d{font-size:26px}
}
.ids-epage__selects #ids-ev-pool{flex-grow:1.5}

/* Learn more link on list cards */
.ids-epage__tagrow{align-items:center}
.ids-epage__tagrow .ids-epage__status{font-size:12px;padding:3px 8px;letter-spacing:.3px}
.ids-epage__tagrow .ids-epage__status.is-muted{padding-left:2px}
.ids-epage__btnrow{gap:10px;margin-top:6px}
.ids-epage__btnrow .ids-epage__reg,.ids-epage__more{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 18px;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:16px;letter-spacing:1px;text-transform:uppercase;text-decoration:none}
.ids-epage__more{background:#fff;color:#000!important;border:2px solid #fff}
.ids-epage__btnrow .ids-epage__reg{border:2px solid var(--ids-red)}
.ids-epage__btnrow .ids-epage__reg,.ids-epage__btnrow .ids-epage__more,.ids-epage__done{width:160px;flex:0 0 160px;box-sizing:border-box}
.ids-epage__done{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 18px;border:2px solid #5a5a5a;color:var(--ids-muted);font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:16px;letter-spacing:1px;text-transform:uppercase;cursor:default}
.ids-epage__more:hover{background:#e6e6e6;border-color:#e6e6e6}

/* Event page */
.ids-edetail .ids-fmap__hero{padding-top:28px}
.ids-edetail__back{display:inline-block;margin-bottom:18px;font-weight:600;font-size:15px}
.ids-edetail__head{display:flex;gap:24px;align-items:center;list-style:none}
.ids-edetail__logo.ids-fmap__logo{width:150px;height:120px}
.ids-edetail__headtext{display:flex;flex-direction:column;gap:8px;min-width:0}
.ids-edetail__title{font-size:clamp(34px,5vw,56px)!important}
.ids-edetail__sub{margin:0;color:var(--ids-muted);font-size:18px}
.ids-edetail__grid{display:grid!important;grid-template-columns:1fr 1fr;gap:24px!important;align-items:start}
.ids-edetail__card{background:var(--ids-panel);border-top:3px solid var(--ids-red);padding:22px 24px}
.ids-edetail__card h2{margin:0 0 10px;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;font-size:26px;text-transform:uppercase;color:#fff}
.ids-edetail__card dl{margin:0}
.ids-edetail__row{display:grid;grid-template-columns:170px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #262626}
.ids-edetail__row:last-child{border-bottom:0}
.ids-edetail__row dt{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:15px;letter-spacing:1px;text-transform:uppercase;color:var(--ids-muted)}
.ids-edetail__row dd{margin:0;font-size:16px;color:#fff;word-break:break-word}
.ids-edetail__pager{display:flex;justify-content:space-between;gap:16px;padding-bottom:48px}
.ids-edetail__pager a{display:flex;flex-direction:column;gap:2px;max-width:48%;color:#fff!important;text-decoration:none;font-weight:600}
.ids-edetail__pager a span{font-family:'Barlow Condensed',Arial,sans-serif;font-size:14px;letter-spacing:1px;text-transform:uppercase;color:var(--ids-red-hi)}
.ids-edetail__pager a.next{text-align:right;margin-left:auto}
.ids-edetail__pager a:hover{color:var(--ids-red-hi)!important}
@media (max-width:860px){
  .ids-edetail__grid{grid-template-columns:1fr}
  .ids-edetail__head{flex-direction:column;align-items:flex-start}
  .ids-edetail__row{grid-template-columns:1fr;gap:2px}
}
@media (max-width:640px){
  .ids-epage__btnrow{flex-wrap:nowrap}
  .ids-epage__btnrow .ids-epage__reg,.ids-epage__btnrow .ids-epage__more,.ids-epage__btnrow .ids-epage__done{width:auto;flex:1 1 0;padding:0 10px;font-size:15px}
}

/* Date block doubles as Add to calendar */
.ids-epage__datewrap{position:relative;flex-shrink:0}
button.ids-epage__date{display:block;text-decoration:none;border:0;border-top:4px solid var(--ids-red);cursor:pointer;color:#fff;font:inherit;margin:0;border-radius:0}
button.ids-epage__date:hover,button.ids-epage__date[aria-expanded="true"]{background:#1f1f1f;outline:2px solid #fff;outline-offset:0}
.ids-epage__date .add{display:block;margin-top:4px;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:700;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--ids-muted)}
button.ids-epage__date:hover .add{color:#fff}
.ids-epage__datewrap .ids-epage__calmenu{left:0;right:auto}
button.ids-epage__date span{text-decoration:none}
button.ids-epage__date:disabled{cursor:default;outline:none;background:#000}
button.ids-epage__date:disabled .add{display:none}
.ids-epage__next{box-shadow:0 0 0 2px #fff}
