:root { --events-green:#063f31; --events-gold:#c99a1a; --events-ink:#17342d; --events-muted:#64716c; --events-line:#dfe5e2; }
.nav-main,
.nav-main.scrolled { background-color:#00294b; }
.events-page { padding:175px 0 110px; background:#fff; }
.events-intro { display:flex; align-items:flex-start; justify-content:space-between; gap:40px; padding-bottom:36px; border-bottom:1px solid var(--events-line); }
.events-intro h1 { margin:0; color:var(--events-green); font-size:48px; line-height:1.1; }
.events-intro h1::after { content:""; display:block; width:48px; height:3px; margin-top:18px; background:var(--events-gold); }
.events-intro p { max-width:680px; margin:20px 0 0; color:var(--events-muted); font-size:17px; line-height:1.75; }
.events-history { flex:0 0 auto; border:0; padding:15px 22px; background:var(--events-green); color:#fff; font:700 14px "DM Sans",sans-serif; cursor:pointer; transition:.25s ease; }
.events-history:hover,.events-history.is-active { background:var(--events-gold); color:#fff; }
.events-history i { margin-right:9px; }
.events-toolbar { display:grid; grid-template-columns:minmax(280px,1fr) 260px; gap:24px; margin:30px 0 34px 300px; }
.events-search { position:relative; }
.events-search i { position:absolute; top:50%; left:18px; color:var(--events-green); transform:translateY(-50%); }
.events-search input,.events-sort select { width:100%; height:50px; border:1px solid #cdd6d2; background:#fff; color:var(--events-ink); font:500 14px "DM Sans",sans-serif; }
.events-search input { padding:0 18px 0 48px; }
.events-sort { display:flex; align-items:center; gap:12px; }
.events-sort label { flex:0 0 auto; color:var(--events-ink); font-weight:700; }
.events-sort select { padding:0 40px 0 14px; }
.events-catalogue { display:grid; grid-template-columns:250px minmax(0,1fr); gap:50px; }
.events-filters { padding-right:34px; border-right:1px solid var(--events-line); }
.events-filter-group { margin-bottom:32px; }
.events-filter-group h2 { margin:0 0 17px; padding-bottom:13px; border-bottom:1px solid var(--events-line); color:var(--events-green); font-size:18px; }
.events-filter-group label { display:flex; align-items:center; gap:11px; margin:0 0 13px; color:#46544f; cursor:pointer; }
.events-filter-group input { display:inline-block; width:16px; height:16px; appearance:auto; accent-color:var(--events-green); }
.events-clear { padding:11px 24px; border:1px solid var(--events-green); background:#fff; color:var(--events-green); font:700 13px "DM Sans",sans-serif; cursor:pointer; }
.events-summary { margin:0 0 15px; color:var(--events-muted); font-size:14px; font-weight:700; }
.event-card { display:grid; grid-template-columns:280px minmax(0,1fr); min-height:210px; margin-bottom:18px; border:1px solid var(--events-line); background:#fff; transition:box-shadow .25s ease,transform .25s ease; }
.event-card:hover { transform:translateY(-2px); box-shadow:0 12px 30px rgba(3,55,42,.08); }
.event-card__image { display:block; height:210px; overflow:hidden; }
.event-card__image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.event-card:hover .event-card__image img { transform:scale(1.025); }
.event-card__body { display:flex; flex-direction:column; padding:24px 28px 20px; }
.event-card__meta { display:flex; flex-wrap:wrap; gap:10px 18px; color:var(--events-green); font-size:12px; font-weight:700; text-transform:uppercase; }
.event-card__meta span { display:flex; align-items:center; gap:7px; }
.event-card__meta i { color:var(--events-gold); }
.event-card h2 { margin:14px 0 8px; font-size:23px; line-height:1.25; }
.event-card h2 a { color:var(--events-green); }
.event-card p { margin:0 0 18px; color:var(--events-muted); font-size:14px; line-height:1.6; }
.event-card__footer { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:auto; padding-top:14px; border-top:1px solid #eef1ef; font-size:13px; }
.event-card__footer span { color:var(--events-muted); }
.event-card__footer span i { margin-right:7px; color:var(--events-green); }
.event-card__footer a { color:var(--events-green); font-weight:700; white-space:nowrap; }
.event-card__footer a i { margin-left:6px; color:var(--events-gold); font-size:11px; }
.events-empty { padding:55px 30px; border:1px solid var(--events-line); text-align:center; }
.events-empty[hidden] { display:none; }
.events-empty__icon { display:grid; place-items:center; width:70px; height:70px; margin:0 auto 20px; border:1px solid #a8bbb4; color:var(--events-green); font-size:28px; }
.events-empty h2 { margin:0 0 8px; color:var(--events-green); font-size:24px; }
.events-empty p { margin:0; color:var(--events-muted); }
.events-pagination { display:flex; justify-content:center; gap:8px; padding-top:26px; }
.events-pagination button { width:42px; height:42px; border:1px solid var(--events-line); background:#fff; color:var(--events-green); font-weight:700; cursor:pointer; }
.events-pagination button:hover,.events-pagination button.is-current { border-color:var(--events-green); background:var(--events-green); color:#fff; }
@media(max-width:991px){.events-toolbar{margin-left:0}.events-catalogue{grid-template-columns:1fr}.events-filters{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:24px;border:1px solid var(--events-line)}.events-clear{align-self:end;justify-self:start}.event-card{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:767px){.events-page{padding:135px 0 80px}.events-intro{display:block}.events-intro h1{font-size:36px}.events-history{margin-top:25px}.events-toolbar{grid-template-columns:1fr}.events-sort{display:block}.events-sort label{display:block;margin-bottom:8px}.events-filters{grid-template-columns:1fr}.event-card{display:block}.event-card__image{height:220px}.event-card__footer{align-items:flex-start;flex-direction:column}.event-card__body{padding:22px}.event-card h2{font-size:21px}}

.event-detail-page { padding:155px 0 110px; background:#fff; }
.event-detail__hero { width:100%; height:min(520px,48vw); min-height:310px; overflow:hidden; }
.event-detail__hero img { width:100%; height:100%; object-fit:cover; }
.event-detail__layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:65px; padding-top:55px; }
.event-detail__back { display:inline-block; margin-bottom:20px; color:var(--events-green); font-weight:700; }
.event-detail__back i { margin-right:7px; color:var(--events-gold); }
.event-detail__main h1 { margin:0 0 28px; color:var(--events-green); font-size:42px; line-height:1.18; }
.event-detail__content { color:#56635e; font-size:17px; line-height:1.85; }
.event-detail__content p { margin-bottom:20px; }
.event-detail__content img { max-width:100%; height:auto; }
.event-detail__sidebar { align-self:start; padding:30px; border-top:4px solid var(--events-gold); background:#f5f7f6; }
.event-detail__sidebar h2 { margin:0 0 22px; color:var(--events-green); font-size:23px; }
.event-detail__sidebar dl { margin:0; }
.event-detail__sidebar dl div { padding:15px 0; border-bottom:1px solid #dce3e0; }
.event-detail__sidebar dt { display:flex; align-items:center; gap:9px; color:var(--events-green); font-size:13px; text-transform:uppercase; }
.event-detail__sidebar dt i { color:var(--events-gold); }
.event-detail__sidebar dd { margin:6px 0 0 23px; color:#56635e; line-height:1.5; }
.event-detail__register { display:block; margin-top:25px; text-align:center; }
.event-detail__register--closed,
.event-detail__register--closed:hover { background:#a8afac; color:#f3f4f3; cursor:not-allowed; opacity:.85; }
.event-detail-error { padding:90px 20px; border:1px solid var(--events-line); text-align:center; }
.event-detail-error > i { color:var(--events-green); font-size:48px; }
.event-detail-error h1 { color:var(--events-green); }
.event-detail-error .thm-btn { margin-top:18px; }
@media(max-width:991px){.event-detail__layout{grid-template-columns:1fr;gap:40px}.event-detail__sidebar{max-width:600px}}
@media(max-width:767px){.event-detail-page{padding:125px 0 80px}.event-detail__hero{height:260px;min-height:0}.event-detail__layout{padding-top:35px}.event-detail__main h1{font-size:31px}.event-detail__content{font-size:16px}.event-detail__sidebar{padding:24px}}
