:root{--nio-bg:#F4F4F4;--nio-surface:#FBFAFF;--nio-ink:#202027;--nio-muted:#50505A;--nio-line:#E3DCEA;--nio-accent:#7A4AA3;--nio-accent-dark:#633985;--nio-blue:#4E75DF}
.page-id-21124 .elementor-21124,.page-id-21124 .elementor-widget-shortcode,.page-id-21124 .elementor-widget-shortcode>.elementor-widget-container{width:100%;max-width:none;margin:0;padding:0}
.nio-events-landing{overflow:hidden;background:var(--nio-bg);color:var(--nio-ink);font:400 16px/1.55 Roboto,Arial,sans-serif}
.nio-events-landing *{box-sizing:border-box}.nio-events-landing a{color:inherit}.nio-events-wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.nio-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.nio-icon{width:20px;height:20px;flex:0 0 auto}.nio-events-hero{min-height:500px;display:flex;align-items:center;background-color:#10111A;background-image:linear-gradient(90deg,rgba(5,10,28,.94) 0%,rgba(5,10,28,.66) 42%,rgba(5,10,28,.08) 74%),var(--nio-events-hero);background-position:center;background-size:cover;color:#fff}
.nio-events-hero__inner{padding-block:82px}.nio-events-kicker{margin:0 0 8px;color:var(--nio-accent);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.nio-events-hero .nio-events-kicker{color:#d9b9f5}.nio-events-hero__actions{display:flex;flex-wrap:wrap;gap:10px}.nio-button--hero-secondary{border:1px solid rgba(255,255,255,.72);background:rgba(7,10,25,.32);color:#fff!important}
.nio-events-hero h1{max-width:630px;margin:0;color:#fff;font-size:clamp(42px,5.2vw,72px);font-weight:800;letter-spacing:-.035em;line-height:1.02}.nio-events-hero p:not(.nio-events-kicker){max-width:500px;margin:22px 0 28px;color:#fff;font-size:19px;line-height:1.5}
.nio-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 20px;border:1px solid var(--nio-accent);border-radius:8px;background:var(--nio-accent);color:#fff!important;font-weight:750;text-decoration:none;cursor:pointer;transition:.16s ease}.nio-button:hover{background:var(--nio-accent-dark);border-color:var(--nio-accent-dark);transform:translateY(-1px)}.nio-button:focus-visible,.nio-events-landing a:focus-visible,.nio-events-landing button:focus-visible,.nio-events-landing input:focus-visible,.nio-events-landing select:focus-visible{outline:3px solid var(--nio-accent)!important;outline-offset:3px!important}.nio-button--hero{background:linear-gradient(100deg,#4e75df,var(--nio-accent));border:0;min-height:56px;padding-inline:26px}.nio-button--outline{background:var(--nio-surface);color:var(--nio-ink)!important;border-color:var(--nio-line)}.nio-button--outline:hover{color:#fff!important}.nio-button--light{background:#fff;color:var(--nio-accent)!important;border-color:#fff}
.nio-events-breadcrumb{display:flex;align-items:center;gap:9px;padding:18px 0 14px;color:var(--nio-muted);font-size:13px}.nio-events-breadcrumb a{color:var(--nio-accent);text-underline-offset:3px}
.nio-events-search{position:relative;z-index:4;margin-top:-58px;margin-bottom:32px;padding:24px;border:1px solid var(--nio-line);border-radius:14px;background:rgba(251,250,255,.98);box-shadow:0 16px 38px rgba(56,43,72,.12)}
.nio-events-search form{display:grid;grid-template-columns:minmax(0,30fr) minmax(0,21fr) minmax(0,17fr) minmax(0,19fr) minmax(0,13fr);align-items:end;gap:14px}.nio-events-search label{display:grid;gap:8px;min-width:0;font-size:13px;font-weight:750}.nio-events-search input,.nio-events-search select{width:100%;height:56px;padding:0 16px;border:1px solid #D7D7DF;border-radius:10px;background:#fff;color:var(--nio-ink);font:inherit}.nio-events-search input::placeholder{color:#6F6F78}.nio-events-search input:hover,.nio-events-search select:hover{border-color:#AFAFB8}.nio-events-search input:focus,.nio-events-search select:focus{border-color:var(--nio-accent);box-shadow:0 0 0 3px rgba(122,74,163,.16);outline:0}.nio-field{position:relative}.nio-field input{padding-left:46px}.nio-field__icon{position:absolute;left:16px;top:50%;display:flex;color:var(--nio-muted);transform:translateY(-50%)}.nio-search-button{width:100%;height:56px;border-radius:10px}
.nio-quick-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}.nio-quick-filters a{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:8px 12px;border:1px solid var(--nio-line);border-radius:999px;background:#fff;font-size:13px;font-weight:650;text-decoration:none}.nio-quick-filters a:hover,.nio-quick-filters a[aria-current="page"]{border-color:var(--nio-accent);background:#f1ecf5;color:var(--nio-accent)}.nio-quick-filters svg{width:17px;height:17px}.nio-quick-filters__clear{margin-left:auto!important;background:transparent!important}
.nio-events-section{padding:42px 0}.nio-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.nio-section-heading h2,.nio-panel h2,.nio-organiser-cta h2{margin:0;font-size:clamp(28px,3vw,36px);font-weight:800;letter-spacing:-.025em;line-height:1.12}.nio-section-heading p:not(.nio-events-kicker){max-width:720px;margin:8px 0 0;color:var(--nio-muted)}.nio-carousel-controls{display:flex;gap:8px}.nio-carousel-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--nio-line);border-radius:8px;background:var(--nio-surface);color:var(--nio-accent);font-size:20px;cursor:pointer}.nio-carousel-controls button:hover{background:var(--nio-accent);color:#fff}.nio-carousel-controls button:disabled{opacity:.35;cursor:not-allowed}
.nio-carousel-track{display:grid;grid-auto-columns:calc((100% - 48px)/4);grid-auto-flow:column;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:3px}.nio-carousel-track::-webkit-scrollbar{display:none}.nio-carousel-track>.nio-event-card{scroll-snap-align:start}
.nio-event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.nio-event-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid var(--nio-line);border-radius:8px;background:var(--nio-surface);box-shadow:0 8px 22px rgba(56,43,72,.07);transition:.16s ease}.nio-event-card:hover{border-color:#c8b6d8;box-shadow:0 14px 30px rgba(56,43,72,.12);transform:translateY(-3px)}.nio-event-card__media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,#e3dcea,#c8b6d8)}.nio-event-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .18s ease}.nio-event-card:hover img{transform:scale(1.025)}.nio-event-card__media>span{display:block;width:100%;height:100%}.nio-event-card__media em{position:absolute;top:10px;left:10px;padding:5px 8px;border:1px solid rgba(255,255,255,.8);border-radius:4px;background:var(--nio-accent);color:#fff;font-size:10px;font-style:normal;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.nio-event-card__body{display:flex;flex:1;flex-direction:column;gap:8px;padding:15px}.nio-event-card__category{align-self:flex-start;padding:4px 7px;border-radius:4px;background:#f1ecf5;color:var(--nio-accent);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.nio-event-card h3{margin:0;font-size:17px;line-height:1.28}.nio-event-card h3 a{text-decoration:none}.nio-event-card h3 a:hover{color:var(--nio-accent)}.nio-event-card p{display:flex;align-items:flex-start;gap:7px;margin:0;color:var(--nio-muted);font-size:12.5px;line-height:1.4}.nio-event-card p svg{width:16px;height:16px;margin-top:1px}.nio-event-card__action{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;margin-top:auto;padding-top:6px;color:var(--nio-accent)!important;font-size:13px;font-weight:800;text-decoration:none}.nio-load-more{display:flex;margin:28px auto 0}
.nio-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--nio-line);border-radius:8px;background:var(--nio-surface)}.nio-filter-summary a{color:var(--nio-accent);font-weight:750}.nio-events-empty{grid-column:1/-1;margin:0;padding:24px;border:1px dashed var(--nio-line);border-radius:8px;background:var(--nio-surface);color:var(--nio-muted)}
.nio-events-duo,.nio-browse-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-block:18px}.nio-panel{padding:24px;border:1px solid var(--nio-line);border-radius:8px;background:var(--nio-surface)}.nio-panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.nio-panel__heading h2{font-size:24px}.nio-panel__heading>a{color:var(--nio-accent);font-size:13px;font-weight:750}.nio-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.nio-mini-card a{display:grid;gap:6px;text-decoration:none}.nio-mini-card img{width:100%;aspect-ratio:4/3;border-radius:6px;object-fit:cover}.nio-mini-card span{color:var(--nio-accent);font-size:10px;font-weight:800;text-transform:uppercase}.nio-mini-card strong{font-size:12px;line-height:1.3}.nio-mini-card small{color:var(--nio-muted);font-size:10px}
.nio-map-panel{position:relative}.nio-map-visual{position:relative;min-height:205px;overflow:hidden;border-radius:8px;background:radial-gradient(circle at 48% 48%,rgba(122,74,163,.13) 0 7%,transparent 8%),linear-gradient(145deg,#dff0e0,#cce2d6 47%,#c6e5f1 48%);isolation:isolate}.nio-map-visual:before{position:absolute;inset:14% 24%;border:2px solid rgba(80,80,90,.22);border-radius:46% 40% 48% 38%;background:rgba(244,244,244,.45);content:"";transform:rotate(-9deg)}.nio-map-pin{position:absolute;z-index:2;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--nio-accent);box-shadow:0 4px 14px rgba(56,43,72,.22)}.nio-map-pin--1{left:56%;top:55%}.nio-map-pin--2{left:66%;top:40%}.nio-map-pin--3{left:62%;top:22%}.nio-map-pin--4{left:48%;top:25%}.nio-map-pin--5{left:52%;top:40%}.nio-map-pin--6{left:42%;top:57%}.nio-map-panel__button{display:flex;width:max-content;margin:12px auto 0}
.nio-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.nio-area-grid a{display:grid;place-items:center;gap:3px;min-height:92px;padding:10px;border:1px solid var(--nio-line);border-radius:8px;text-align:center;text-decoration:none}.nio-area-grid a:hover{border-color:var(--nio-accent);color:var(--nio-accent)}.nio-area-grid svg{color:var(--nio-accent)}.nio-area-grid strong{font-size:12px}.nio-area-grid small{color:var(--nio-muted);font-size:10px}.nio-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.nio-category-card{display:grid;place-items:center;gap:4px;min-height:112px;padding:12px 8px;border-radius:8px;color:#fff!important;text-align:center;text-decoration:none}.nio-category-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.22)}.nio-category-card strong{font-size:12px}.nio-category-card small{font-size:9px;line-height:1.25}.nio-category-card--family{background:#72b86e}.nio-category-card--music{background:#e54cad}.nio-category-card--arts-culture{background:#9f68d2}.nio-category-card--sports{background:#5d91e8}.nio-category-card--community{background:#e0a83d}.nio-category-card--festivals{background:#e57a69}.nio-category-card--food-drink{background:#3caaa0}.nio-category-card--nightlife{background:#5753ca}
.nio-guides{margin-top:20px}.nio-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.nio-guide-grid article{overflow:hidden;border:1px solid var(--nio-line);border-radius:8px;background:var(--nio-surface)}.nio-guide-card__image{display:block;aspect-ratio:16/9;background:var(--nio-line)}.nio-guide-card__image img{width:100%;height:100%;object-fit:cover}.nio-guide-grid article>div{padding:16px}.nio-guide-grid p{margin:0;color:var(--nio-accent);font-size:11px;font-weight:800;text-transform:uppercase}.nio-guide-grid h3{margin:6px 0 12px;font-size:18px;line-height:1.3}.nio-guide-grid h3 a{text-decoration:none}.nio-guide-grid article>div>a{color:var(--nio-accent);font-weight:750}
.nio-organiser-cta{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;margin:36px 0 18px;padding:28px 32px;border-radius:8px;background:linear-gradient(110deg,var(--nio-accent),#6c31ce);color:#fff}.nio-organiser-cta>div:first-child{display:grid;place-items:center;width:60px;height:60px;border:1px solid rgba(255,255,255,.45);border-radius:8px}.nio-organiser-cta>div:first-child svg{width:34px;height:34px}.nio-organiser-cta h2{font-size:25px}.nio-organiser-cta p{margin:6px 0 0}.nio-events-disclaimer{display:flex;align-items:center;gap:10px;margin:0 0 42px;padding:13px 16px;border:1px solid var(--nio-line);border-radius:8px;background:var(--nio-surface);color:var(--nio-muted);font-size:13px}
@media(max-width:1024px){.nio-events-search form{grid-template-columns:1fr 1fr}.nio-search-button{grid-column:1/-1}.nio-carousel-track{grid-auto-columns:calc((100% - 16px)/2)}.nio-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nio-events-duo,.nio-browse-grid{grid-template-columns:1fr}.nio-mini-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:768px){.nio-events-wrap{width:min(100% - 24px,1180px)}.nio-events-hero{min-height:430px;background-image:linear-gradient(90deg,rgba(5,10,28,.9),rgba(5,10,28,.42)),var(--nio-events-hero);background-position:62% center}.nio-events-hero__inner{padding-block:64px}.nio-events-hero h1{font-size:42px}.nio-events-hero p:not(.nio-events-kicker){font-size:17px}.nio-events-search{margin-top:-34px;padding:18px}.nio-events-search form{grid-template-columns:1fr;gap:12px}.nio-quick-filters__clear{margin-left:0!important}.nio-section-heading{align-items:flex-start;flex-direction:column}.nio-carousel-controls{align-self:flex-end;margin-top:-58px}.nio-carousel-track{grid-auto-columns:min(82vw,330px)}.nio-event-grid{grid-template-columns:1fr}.nio-events-section{padding:32px 0}.nio-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nio-area-grid,.nio-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nio-guide-grid{grid-template-columns:1fr}.nio-organiser-cta{grid-template-columns:1fr;padding:24px}.nio-organiser-cta .nio-button{width:100%}}
@media(max-width:380px){.nio-events-wrap{width:calc(100% - 20px)}.nio-events-hero h1{font-size:37px}.nio-events-search{padding:14px}.nio-area-grid,.nio-category-grid{grid-template-columns:1fr 1fr}.nio-panel{padding:18px}}
@media(prefers-reduced-motion:reduce){.nio-events-landing *{scroll-behavior:auto!important;transition:none!important}}
