/* Event Detail (single event page) */
.rh-ev, .rh-ev *{ box-sizing:border-box; }
.rh-ev{ --rh-ev-acc:#2563EB; --rh-ev-btn:#0B4EA2; --rh-ev-card:#F8FAFC; --rh-ev-bd:#E5E9F0; --rh-ev-txt:#475569; --rh-ev-head:#0F172A; color:var(--rh-ev-txt); }
.rh-ev__hero{ width:100vw; margin-left:calc(50% - 50vw); padding:28px 20px 36px; background:#EEF2F9; }
.rh-ev__hero-in{ max-width:1060px; margin:0 auto; }
.rh-ev__crumbs{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:22px; font-size:12px; color:#64748B; }
.rh-ev__crumbs a{ color:#64748B; text-decoration:none; }
.rh-ev__crumbs b{ font-weight:500; color:var(--rh-ev-acc); }
.rh-ev .rh-ev__title{ margin:0 0 22px; font-size:34px; font-weight:500; line-height:1.2; letter-spacing:-.01em; color:var(--rh-ev-head); }
.rh-ev__grid{ display:grid; grid-template-columns:minmax(0,1.9fr) minmax(0,1fr); gap:16px; align-items:start; }
.rh-ev__img{ min-height:300px; border-radius:14px; background:#DDE3EC center/cover no-repeat; }
.rh-ev__reg{ padding:20px; border:1px solid var(--rh-ev-bd); border-radius:14px; background:#fff; }
.rh-ev .rh-ev__reg-t{ margin:0 0 14px; font-size:16px; font-weight:500; color:var(--rh-ev-head); }
.rh-ev__prices{ margin:0 0 14px; padding:0; list-style:none; }
.rh-ev__prices li{ display:flex; justify-content:space-between; gap:10px; padding:10px 0; border-bottom:1px solid var(--rh-ev-bd); font-size:14px; }
.rh-ev__prices b{ font-weight:500; color:var(--rh-ev-head); }
.rh-ev .rh-ev__note{ margin:0 0 18px; font-size:12px; color:#64748B; }
.rh-ev .rh-ev__buy{ display:flex; align-items:center; justify-content:center; min-height:40px; border-radius:6px; background:var(--rh-ev-btn); color:#fff; font-size:13px; font-weight:500; text-decoration:none; transition:transform .2s ease, box-shadow .2s ease; }
.rh-ev .rh-ev__buy:hover{ color:#fff; transform:translateY(-1px); box-shadow:0 6px 14px rgba(11,78,162,.25); }

.rh-ev__body{ display:flex; flex-direction:column; gap:40px; max-width:820px; margin:0 auto; padding:40px 20px 20px; }
.rh-ev .rh-ev__h2{ margin:0 0 14px; font-size:20px; font-weight:500; color:var(--rh-ev-head); }
.rh-ev .rh-ev__h3{ margin:0 0 8px; font-size:14px; font-weight:500; color:var(--rh-ev-head); }
.rh-ev .rh-ev__p{ margin:0 0 16px; font-size:14px; line-height:1.6; }
.rh-ev__two{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.rh-ev__box{ padding:14px 16px; border:1px solid var(--rh-ev-bd); border-radius:10px; background:var(--rh-ev-card); }
.rh-ev__box p{ margin:0; font-size:12px; }
.rh-ev__bul{ margin:0; padding:0; list-style:none; }
.rh-ev__bul li{ position:relative; padding-left:14px; margin-bottom:6px; font-size:14px; line-height:1.4; }
.rh-ev__bul li::before{ content:""; position:absolute; left:0; top:.55em; width:5px; height:5px; border-radius:50%; background:var(--rh-ev-acc); }
.rh-ev__pres{ display:flex; flex-wrap:wrap; gap:16px; }
.rh-ev__person{ width:calc(50% - 8px); max-width:240px; padding:8px; border:1px solid var(--rh-ev-bd); border-radius:10px; background:var(--rh-ev-card); }
.rh-ev__ph{ height:140px; margin-bottom:10px; border-radius:8px; background:#DDE3EC center/cover no-repeat; }
.rh-ev .rh-ev__pn{ margin:0; font-size:14px; font-weight:500; color:var(--rh-ev-head); }
.rh-ev__pr{ display:block; margin:2px 0 6px; font-size:12px; color:var(--rh-ev-acc); }
.rh-ev .rh-ev__pb{ margin:0; font-size:12px; line-height:1.5; }
.rh-ev__day{ margin-bottom:14px; overflow:hidden; border:1px solid var(--rh-ev-bd); border-radius:10px; background:#fff; }
.rh-ev__day-h{ display:grid; grid-template-columns:110px 1fr auto; gap:12px; padding:12px 16px; background:linear-gradient(#EEF1F6,#fff); font-size:10px; font-weight:500; letter-spacing:.12em; color:#64748B; }
.rh-ev__row{ display:grid; grid-template-columns:110px 1fr; gap:12px; margin:0 16px; padding:12px 0; border-bottom:1px solid #EEF1F6; font-size:12px; }
.rh-ev__row:last-child{ border-bottom:0; }
.rh-ev__row span:last-child{ font-size:13px; color:var(--rh-ev-head); }
.rh-ev__loc{ display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:center; }
.rh-ev__map{ width:100%; height:160px; border:0; border-radius:10px; background:#E5E9F0; }
.rh-ev .rh-ev__link{ font-size:14px; font-weight:500; color:var(--rh-ev-acc); text-decoration:none; }
.rh-ev__ups{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.rh-ev .rh-ev__up{ position:relative; display:flex; flex-direction:column; justify-content:flex-end; gap:4px; min-height:150px; padding:14px; overflow:hidden; border-radius:10px; background:#1E293B center/cover no-repeat; color:#fff; text-decoration:none; transition:transform .25s ease; }
.rh-ev__up::before{ content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(2,10,30,.85),rgba(2,10,30,.1)); }
.rh-ev__up:hover{ transform:translateY(-3px); color:#fff; }
.rh-ev__up > span{ position:relative; }
.rh-ev__up-t{ font-size:15px; font-weight:500; }
.rh-ev__up-m{ display:inline-flex; align-items:center; gap:6px; font-size:11px; opacity:.9; }
.rh-ev__faq{ display:flex; flex-direction:column; gap:0; overflow:hidden; border:1px solid var(--rh-ev-bd); border-radius:10px; background:#fff; }
.rh-ev__q{ border-bottom:1px solid var(--rh-ev-bd); }
.rh-ev__q:last-child{ border-bottom:0; }
.rh-ev__q summary{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; font-size:13px; font-weight:500; color:var(--rh-ev-head); cursor:pointer; list-style:none; }
.rh-ev__q summary::-webkit-details-marker{ display:none; }
.rh-ev__q summary i{ position:relative; flex:none; width:12px; height:12px; }
.rh-ev__q summary i::before, .rh-ev__q summary i::after{ content:""; position:absolute; left:0; right:0; top:50%; height:1.5px; margin-top:-.75px; background:currentColor; transition:transform .25s ease; }
.rh-ev__q summary i::after{ transform:rotate(90deg); }
.rh-ev__q[open] summary i::after{ transform:rotate(0); }
.rh-ev__a{ padding:0 16px 16px; font-size:13px; line-height:1.6; animation:rh-ev-in .25s ease; }
@keyframes rh-ev-in{ from{ opacity:0; transform:translateY(-4px); } to{ opacity:1; transform:none; } }
@media(max-width:767px){
    .rh-ev .rh-ev__title{ font-size:26px; }
    .rh-ev__grid, .rh-ev__two, .rh-ev__loc{ grid-template-columns:1fr; }
    .rh-ev__img{ min-height:200px; }
    .rh-ev__ups{ grid-template-columns:1fr; }
    .rh-ev__person{ width:100%; max-width:none; }
    .rh-ev__day-h{ grid-template-columns:1fr auto; }
    .rh-ev__day-h span:nth-child(2){ display:none; }
}
