/* ======== ТВОИ ТЕКУЩИЕ СТИЛИ (без изменений) ======== */
@media (max-width: 768px) {
    .event-slider-wrapper { max-width: 100vw !important; width: 100vw !important; padding: 0 !important; overflow: hidden !important; position: relative !important; }
    .event-slider { display: flex !important; gap: 0 !important; overflow: visible !important; width: 100vw !important; transition: transform 0.4s cubic-bezier(.4,0,.2,1); position: relative !important; justify-content: flex-start !important; }
    .custom-event-card { min-width: 86vw !important; max-width: 86vw !important; width: 86vw !important; margin: 0 7vw !important; box-sizing: border-box !important; }
    .event-slider-btn { display: block !important; position: absolute !important; top: 50%; transform: translateY(-50%); z-index: 100 !important; background: rgba(255,255,255,0.92); border: none; font-size: 30px; cursor: pointer; padding: 10px 16px; border-radius: 50%; box-shadow: 0 2px 6px rgba(0,0,0,0.12); transition: background 0.3s ease; }
    .event-slider-btn.left { left: 8px; }
    .event-slider-btn.right { right: 8px; }
    .news-container { flex-direction: column !important; align-items: center !important; padding: 0 12px !important; max-width: 100vw !important; box-sizing: border-box !important; }
    .news-grid { display: grid !important; grid-template-columns: 1fr !important; width: 100% !important; gap: 20px !important; justify-items: center !important; }
    .news-item { width: 96vw !important; max-width: 350px !important; margin: 0 auto !important; box-sizing: border-box !important; }
    .custom-event-controls { margin: 16px 0 0 0 !important; text-align: center !important; padding: 0 !important; }
    .all-news-button { margin: 10px auto !important; padding: 8px 20px !important; }
    .custom-event-meta { display: flex; flex-direction: column; align-items: center; gap: 8px; margin-top: 18px; margin-bottom: 18px; text-align: left; }
    .custom-event-location, .custom-event-date { font-size: 17px; font-weight: 500; color: #222; line-height: 1.2; text-align: center; margin: 0; padding: 0; }
    .custom-event-title { font-size: 25px; font-weight: bold; color: #222; text-align: center; padding: 5px 0; }
    .custom-event-description { font-size: 18px; font-weight: bold; color: #222; text-align: center; padding: 5px 0 0 0; margin-bottom: 0; flex: 0 0 auto; min-height: 60px; display: flex; align-items: flex-end; justify-content: center; }
}

@media (min-width: 769px) {
    .custom-event-card { min-width: 320px !important; max-width: 350px !important; width: 340px !important; margin: 0 !important; box-sizing: border-box !important; min-height: 400px !important; display: flex !important; flex-direction: column !important; }
    .custom-event-body { flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; padding: 20px; }
    .event-slider-wrapper { max-width: 1000px !important; margin: 0 auto !important; padding: 0; position: relative; overflow: visible; width: 100%; display: flex; justify-content: center; }
    .event-slider { display: flex !important; justify-content: center !important; align-items: stretch; gap: 40px; width: auto !important; margin: 0 auto !important; position: relative !important; transform: none !important; }
    .custom-event-description { font-size: 18px; font-weight: bold; color: #222; text-align: left; padding: 5px 0 0 0; margin-bottom: 0; }
    .custom-event-meta { display: flex; flex-direction: column; align-items: left; gap: 8px; margin-top: 18px; margin-bottom: 18px; text-align: left; }
    .custom-event-location, .custom-event-date { font-size: 17px; font-weight: 500; color: #222; line-height: 1.2; text-align: left; margin: 0; padding: 0; }
    .custom-event-button { margin-top: 0; }
}

/* вне media только базовые отступы! */
body { font-family: "Onest", sans-serif; font-size: 14px; margin: 0; padding: 0; }
.highlighted-slider-container { padding: 20px; border-radius: 10px; height: 100%; width: 100%; }
a { text-decoration: none; color: inherit; }
.ne_title { text-align: center; margin: 20px 0; font-size: 2.5em; }
.event-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(287px, 1fr)); gap: 20px; margin: 20px 0; }
.event-item { border-radius: 8px; padding: 15px; max-width: 287px; transition: transform 0.3s ease, box-shadow 0.3s ease; overflow: hidden; margin: 0 auto; font-family: "Onest", sans-serif; font-size: 14px; font-weight: 400; }
.event-item:hover { transform: translateY(-5px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); }
.event-image { width: 100%; object-fit: cover; border-radius: 8px 8px 0 0; }
.event-date, .event-title { font-family: "Onest", sans-serif; text-decoration: none; }
.event-date { color: #666; font-size: 0.9em; margin: 5px 0; }
.event-title { font-size: 1.5em; color: #333; margin: 5px 0; overflow-wrap: break-word; }
.event-description { font-family: "Onest", sans-serif; color: #444; line-height: 1.5; margin-bottom: 10px; overflow-wrap: break-word; font-size: 0.9em; }

.news-container { display: flex; gap: 20px; margin: 20px auto; padding-top: 90px; max-width: 960px; }
.featured-news { width: 348px; height: 522px; border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; }
.featured-news-image-container { width: 100%; height: 50%; }
.featured-news-image { width: 100%; height: 100%; object-fit: cover; }
.featured-news-content { background: #fff; padding: 15px; height: 50%; display: flex; flex-direction: column; justify-content: space-between; }

.news-content { background: none; padding: 1rem 0; display: flex; flex-direction: column; gap: 1rem; justify-content: space-between; height: 100%; }
.news-date { font-family: "Onest", sans-serif; color: #555; font-size: 1em; }
.news-title { font-family: "Onest", sans-serif; font-size: 1em; font-weight: 600; color: #333; overflow-wrap: break-word; }
.news-description { font-family: "Onest", sans-serif; color: #444; line-height: 1.5; overflow-wrap: break-word; font-size: 1em; }
.news-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: auto; gap: 20px; flex-grow: 1; }
.news-item { border-radius: 8px; overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease; font-family: "Onest", sans-serif; font-size: 14px; font-weight: 400; background: none; display: flex; flex-direction: column; border: none !important; }
.news-item:hover { transform: translateY(-5px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); }
.news-item:nth-of-type(1) { background: #fff; }
.news-image { width: 100%; padding: 1rem; box-sizing: border-box; object-fit: fill; border-radius: 8px; background: #fff; }
.news-content a { color: #7000FF; font-size: 1.1em; }

.all-news-button { display: inline-block; padding: 10px 20px; background-color: #7000FF; color: white; font-family: "Onest", sans-serif; font-size: 1em; font-weight: 500; border-radius: 25px; text-transform: uppercase; transition: background-color 0.3s ease; }
.all-news-button:hover { background-color: #5A007D; }
layer_l, layer_r { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; max-width: 300px; margin: 10px; }
.event-slider.single-card, .event-slider.two-cards { justify-content: center; }
.event-slider-wrapper { position: relative; max-width: 1000px; overflow: hidden; margin: 0 auto; padding: 20px 0; }
.event-slider { display: flex; will-change: transform; gap: 10px; transition: transform 0.3s ease; }
.custom-event-card { background: #fff; border-radius: 16px; overflow: hidden; width: 250px; box-shadow: 0 4px 8px rgba(0,0,0,0.1); display: flex; flex-direction: column; flex-shrink: 0; }
.custom-event-header { background-color: #6EB016; background-image: url(https://mendeleevfest.com/wp-content/uploads/2024/08/mask-group1.png); background-position: center right; background-repeat: no-repeat; background-size: contain; padding: 37px; color: white; font-weight: bold; font-size: 34px; text-align: center; }
.custom-event-body { padding: 20px; display: flex; flex-direction: column; gap: 10px; height: 100%; }
.custom-event-title { font-size: 18px; font-weight: bold; color: #222; text-align: left; padding: 5px 0; }
.custom-event-meta { display: flex; justify-content: left; align-items: left; gap: 18px; }
.custom-event-button { padding: 8px 16px; border-radius: 12px; font-weight: 500; font-size: 14px; text-align: center; border: 2px solid #6EB016; text-decoration: none; transition: all 0.3s ease; margin-top: auto; color: inherit; }
.custom-event-button:hover { background-color: #f0f0f0; }
.event-slider-btn { position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; background: rgba(255,255,255,0.8); border: none; font-size: 24px; cursor: pointer; padding: 10px; border-radius: 50%; box-shadow: 0 2px 6px rgba(0,0,0,0.2); transition: background 0.3s ease; }
.event-slider-btn:hover { background: #e0e0e0; }
.event-slider-btn.left { left: 1px; }
.event-slider-btn.right { right: 1px; }
.custom-event-controls { text-align: center; margin: 30px 0 0 0; padding: 31px; }
.top-slider { background-color: #f0f0f0; }
.bottom-slider { background-color: #e0e0e0; }
.top-slider { background-color: #f0f0f0; }
.bottom-slider { background-color: #e0e0e0; }

.wave-banner { width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; overflow: hidden; height: 160px; background: transparent; z-index: 10; display: flex; align-items: center; justify-content: center; border: none; padding: 0; }
.wave-banner .wave-img { width: 100vw; min-width: 1000px; max-width: none; height: 160px; object-fit: cover; display: block; margin: 0 auto; pointer-events: none; user-select: none; }
@media (max-width: 1000px) { .wave-banner, .wave-banner .wave-img { height: 85px; min-width: 600px; } }
@media (max-width: 700px) { .wave-banner, .wave-banner .wave-img { height: 48px; min-width: 340px; } }

/* ======= HEADER / NAV (новое) ======= */
.rho-header{ position: sticky; top:0; z-index:1000; background:#f6f6f7; color:#000; box-shadow: 0 0 0 rgba(0,0,0,0); transition: box-shadow .2s ease, background .2s ease; min-height: 64px; }
.rho-header.scrolled{ box-shadow: 0 6px 20px rgba(0,0,0,0.08); } /* поправил тень, чтобы не белая */

.rho-header-inner{ max-width:1200px; margin:0 auto; padding:10px 16px; display:flex; align-items:center; gap:20px; justify-content:space-between; }
.rho-logo img{ height:64px; width:auto; display:block; filter: drop-shadow(0 2px 6px rgba(0,0,0,.1)); }
@media (min-width: 1024px){ .rho-logo img{ height:72px; } }

.rho-nav{ display:none; }
@media (min-width: 1024px){ .rho-nav{ display:block; } }
.rho-nav-list{ display:flex; gap:12px; align-items:center; list-style:none; margin:0; padding:0; }
.rho-nav-list > .rho-item{ display:flex; align-items:center; gap:6px; }
.rho-nav-list > .rho-item > a{ font-weight:600; color:#000; text-decoration:none; padding:10px 12px; border-radius:10px; border:1px solid transparent; transition: all .15s ease; background:none; display:block; line-height:1; }
.rho-nav-list > .rho-item > a:hover{ color:#111; border-color:rgba(0,0,0,.08); background:rgba(0,0,0,.04); }

.rho-has-sub{ position:relative; }
.rho-sub-btn{ width:24px; height:24px; border-radius:8px; border:1px solid rgba(0,0,0,.1); background:rgba(0,0,0,.04); position:relative; cursor:pointer; flex:0 0 24px; }
.rho-sub-btn::before{ content:""; position:absolute; inset:0; margin:auto; width:7px; height:7px; border-right:2px solid #000; border-bottom:2px solid #000; transform:rotate(45deg); }
.rho-submenu{ position:absolute; top:calc(100% + 8px); left:0; min-width:220px; background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:12px; padding:8px; list-style:none; margin:0; box-shadow:0 20px 40px rgba(0,0,0,.12); opacity:0; transform:translateY(-6px); pointer-events:none; transition:all .15s ease; }
.rho-has-sub.open .rho-submenu{ opacity:1; transform:none; pointer-events:auto; }
.rho-submenu a{ display:block; padding:10px 12px; border-radius:8px; color:#111; text-decoration:none; font-weight:600; }
.rho-submenu a:hover{ background:rgba(0,0,0,.04); color:#000; }

.rho-burger{ width:44px; height:44px; border-radius:10px; border:1px solid rgba(0,0,0,.12); display:flex; align-items:center; justify-content:center; gap:5px; background:rgba(0,0,0,.04); cursor:pointer; }
.rho-burger span{ display:block; width:20px; height:2px; background:#111; border-radius:2px; }
@media (min-width:1024px){ .rho-burger{ display:none; } }

.rho-drawer{ position:fixed; inset:64px 0 0 0; background:#0b1220; color:#fff; padding:14px 16px; border-top:1px solid rgba(255,255,255,.08); overflow:auto; }
.rho-no-scroll{ overflow:hidden; }
.rho-mobile-nav ul{ list-style:none; padding:0; margin:0; }
.rho-mobile-nav > ul > li > a, .rho-mob-accordion{ display:block; width:100%; text-align:left; font-weight:700; padding:12px 10px; border-radius:10px; text-decoration:none; color:#e5e7eb; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.04); margin-bottom:8px; }
.rho-mob-accordion[aria-expanded="true"]{ background:rgba(255,255,255,.08); }
.rho-mob-sub{ list-style:none; padding:6px 10px 2px 12px; margin:0 0 10px 0; }
.rho-mob-sub li a{ display:block; padding:10px; border-radius:8px; color:#e5e7eb; text-decoration:none; }
.rho-mob-sub li a:hover{ background:rgba(255,255,255,.06); color:#fff; }

/* ======= SLIDER HEIGHT / HERO ======= */
.carousel{ width:100%;  margin:0 auto; position:relative; } /* не навязываю высоту */
.c_center{ position:relative; }
.rho-hero{ height:120px; }                   /* компактный слайдер */
@media (max-width:1023.98px){ .rho-hero{ height:90px; } }
.rho-hero > li{ position:relative; height:100%; }
.rho-hero img{ width:100%; height:100%; object-fit:cover; display:block; }
.rho-hero-link{ position:absolute; left:24px; bottom:12px; padding:6px 10px; border-radius:10px; background:rgba(0,0,0,.45); color:#fff; font-weight:700; text-decoration:none; backdrop-filter: blur(3px); font-size: 12px; }
.rho-hero-empty{ margin:0; display:flex; align-items:center; justify-content:center; height:100%; font-weight:600; color:#333; }

/* ======= НИЖНИЙ BODY-КОНТЕЙНЕР (как верх) ======= */
.rho-body{ background:#f6f6f7; padding: 28px 0 36px; }
.rho-body-inner{
  max-width:1200px; margin:0 auto; padding: 12px 16px 18px;
  background:#fff; border-radius:16px; box-shadow:0 12px 30px rgba(0,0,0,.06);
}

/* Секции внутри нижнего контейнера — чуть ровнее */
.chemsoc-section{ background:#fff; border:1px solid #eaeaea; border-radius:16px; padding:18px; margin:16px 0; box-shadow:0 6px 18px rgba(0,0,0,.04); }
.chemsoc-section-header{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.chemsoc-h1{ font-size: clamp(22px, 2.6vw, 34px); letter-spacing:.2px; font-weight:800; color:#0b1220; margin: 18px 0 8px; }
.chemsoc-h2{ font-weight:800; font-size: clamp(18px, 2vw, 24px); margin:0; }
.chemsoc-link-more{ font-weight:700; color:#1f2937; text-decoration:none; border:1px solid #1f2937; padding:8px 12px; border-radius:10px; }
.chemsoc-link-more:hover{ background:#1f2937; color:#fff; }
.chemsoc-grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
@media (max-width:1023.98px){ .chemsoc-grid{ grid-template-columns:1fr; } }
.chemsoc-card{ border:1px solid #e5e7eb; border-radius:14px; overflow:hidden; background:#fff; display:flex; flex-direction:column; box-shadow:0 10px 24px rgba(0,0,0,.05); }
.chemsoc-card-media img{ width:100%; height:210px; object-fit:cover; display:block; }
.chemsoc-card-body{ padding:14px; display:flex; flex-direction:column; gap:8px; }
.chemsoc-card-title{ font-size:18px; margin:0; }
.chemsoc-card-title a{ color:#0b1220; text-decoration:none; }
.chemsoc-card-title a:hover{ text-decoration:underline; }
.chemsoc-card-meta{ display:flex; align-items:center; gap:8px; color:#6b7280; font-size:14px; }
.chemsoc-dot{ width:4px; height:4px; background:#9ca3af; border-radius:50%; display:inline-block; }
.chemsoc-card-text{ color:#1f2937; }
.chemsoc-btn{ align-self:flex-start; font-weight:700; color:#fff; background:#0b1220; text-decoration:none; padding:10px 12px; border-radius:10px; }
.chemsoc-btn:hover{ filter:brightness(1.05); }
.chemsoc-empty{ color:#6b7280; }

.rho-container{max-width:1200px;margin:0 auto;padding:0 16px;box-sizing:border-box}

.rmap-wrap{display:grid;grid-template-columns:2fr 1fr;gap:16px}
@media (max-width: 900px){.rmap-wrap{grid-template-columns:1fr}}
.rmap{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}
.rmap-svg{width:100%;height:auto;display:block}
.rmap-region path{fill:#e2e8f0;stroke:#94a3b8;stroke-width:1}
.rmap-region:hover path,.rmap-region.active path{fill:#6EB016;stroke:#4d7c0f}
.rmap-list{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:12px;max-height:520px;overflow:auto}
.rmap-list a{text-decoration:none;color:#111;font-weight:700}
.rmap-list a:hover{text-decoration:underline}

.region-hero__cover{width:100%;height:180px;object-fit:cover;border-radius:12px}
.region-hero__title{display:flex;align-items:center;gap:12px;margin:12px 0}
.region-hero__logo{width:56px;height:56px;object-fit:contain}
.region-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}
.region-tabs .tab{padding:10px 12px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;text-decoration:none;color:#111;font-weight:700}
.region-tabs .tab.active{background:#0b1220;color:#fff;border-color:#0b1220}

.region-two-col{display:grid;grid-template-columns:2fr 1fr;gap:18px}
@media (max-width:900px){.region-two-col{grid-template-columns:1fr}}
.leaders{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (max-width:700px){.leaders{grid-template-columns:1fr}}
.leader{display:flex;gap:10px;border:1px solid #e5e7eb;border-radius:12px;padding:10px;background:#fff}
.leader img{width:64px;height:64px;border-radius:10px;object-fit:cover}
.muted{color:#6b7280}

.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
@media (max-width:1024px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}
.g-item img{width:100%;height:120px;object-fit:cover;border-radius:10px}

.partners-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
@media (max-width:1024px){.partners-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){.partners-grid{grid-template-columns:repeat(2,1fr)}}
.partner{border:1px solid #e5e7eb;border-radius:12px;padding:10px;text-align:center;background:#fff}
.partner img{width:100%;max-width:160px;height:80px;object-fit:contain;margin:6px auto;display:block}
.partner-name{font-weight:700}

.materials-list{display:grid;grid-template-columns:1fr;gap:12px}
.material{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}
.material-title{font-weight:700}
.material-meta{color:#6b7280}
.material-actions{display:flex;gap:8px}
@media (max-width:700px){.material{grid-template-columns:1fr}.material-actions{justify-content:flex-start}}
