
* { margin: 0; padding: 0; box-sizing: border-box; }
    a{ color:#2e7d32; }
    a:hover{ opacity:0.9; }

    /* ===== ГАМБУРГЕР ===== */
    .menu-btn{
      position: fixed;
      top: 12px;
      left: 15px;
      font-size: 1.8em;
      cursor: pointer;
      border: 2px solid #0a192f;
      background: rgba(255,255,255,0.92);
      color: #0a192f;
      border-radius: 10px;
      padding: 0.12em 0.45em;
      z-index: 1501;
      box-shadow: 0 2px 8px rgba(0,0,0,0.20);
    }
    .menu-btn:hover{
      background: #ffffff;
      box-shadow: 0 4px 14px rgba(0,0,0,0.22);
    }
    .note{
      font-size: .95rem;
      color:#556;
      margin-top: 0.9rem;
    }
    /* ===== BACKDROP (чтобы закрывать меню кликом) ===== */
    .menu-backdrop{
      position: fixed;
      inset: 0;
      background: rgba(0,0,0,0.28);
      opacity: 0;
      pointer-events: none;
      transition: opacity .18s ease;
      z-index: 1190;
    }
    .menu-backdrop.open{
      opacity: 1;
      pointer-events: auto;
    }

    /* ===== SIDE MENU ===== */
    .side-menu{
      height: 100%;
      width: 0;
      position: fixed;
      z-index: 1200;
      top: 0;
      left: 0;
      background-color: rgba(67,160,71,0.95);
      overflow-x: hidden;
      transition: 0.25s;
      padding-top: 3rem;
    }
    .side-menu a{
      display: block;
      padding: 0.85em 1.2em;
      text-decoration: none;
      font-size: 1.15em;
      color: #fff;
      transition: background 0.2s;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      font-weight: 700;
    }
    .side-menu a:hover{
      background: rgba(255,255,255,0.18);
    }

    /* ===== НОВАЯ ШАПКА С КАРТИНКОЙ longline.png ===== */
    .site-header{
      position: relative;
      background-image: url("/assets/longline.png");
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      height: clamp(110px, 13vw, 170px);
      border-bottom: 6px solid rgba(67,160,71,.85);
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 10px 16px;
    }

    .header-inner{
      width: 100%;
      max-width: 1080px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }
    .brand{
      flex: 1;
      text-align: center;
      color: #fff;
      font-weight: 900;
      letter-spacing: 0.6px;
      font-size: clamp(24px, 3vw, 40px);
      text-shadow: 0 2px 14px rgba(0,0,0,0.45);
      padding: 6px 10px;
      user-select: none;
    }

    .header-actions{
      display: inline-flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }

    .action-pill{
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 8px;
      border-radius: 999px;
      background: rgba(255,255,255,0.78);
      border: 2px solid #0a192f;
      box-shadow: 0 6px 16px rgba(0,0,0,0.12);
      backdrop-filter: blur(2px);
    }

    .hdr-btn{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 8px 12px;
      border: 2px solid #0a192f;
      background: #fff;
      color: #0a192f;
      text-decoration: none;
      border-radius: 999px;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      font-weight: 800;
      font-size: 13px;
      white-space: nowrap;
      transition: transform .08s ease, filter .12s ease;
    }
    .hdr-btn:hover{ text-decoration: underline; transform: translateY(-1px); }

    .lang-btn{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      font-weight: 900;
      text-decoration: none;
      background: #fff;
      border: 2px solid #0a192f;
      color: #0a192f;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      font-size: 13px;
      line-height: 1;
    }
    .lang-btn:hover{ background: #f3f3f3; }
    .lang-btn.active{
      background: #0a192f;
      color: #fff;
    }

    .pill{
      display: inline-block;
      font-size: .78rem;
      background: rgba(67,160,71,0.12);
      color: #1f3a2a;
      padding: .22rem .6rem;
      border-radius: 999px;
      margin: .15rem .35rem .15rem 0;
      text-decoration: none;
      border: 1px solid rgba(67,160,71,0.25);
    }
    .pill:hover{ background: rgba(67,160,71,0.16); }

    table{ width:100%; border-collapse:collapse; font-size:.97rem; }
    th, td{ padding:.6rem .5rem; border-bottom:1px solid #eef3f9; vertical-align:top; }
    th{
      background: #f0f6f0;
      text-align:left;
      color:#1f3a2a;
      font-weight: 800;
    }
    
    body {
      margin: 0;
      font-family: Georgia, "Times New Roman", Times, serif;
      background: #f7fafc;
      color: #223;
      line-height: 1.6;
      font-size: 16px;
    }
    strong {
        font-weight: 700;
    }

    /* ----------------------------------------------------- */
    /* КНОПКИ В ШАПКЕ (Четкий контур) */
    /* ----------------------------------------------------- */
    header .btn {
      display: inline-block;
      padding: 10px 22px;
      margin: 6px;
      border-radius: 30px;
      font-weight: 700;
      text-decoration: none;
      transition: all 0.3s ease;
      background: #fff;
      border: 2px solid #0a192f;
      color: #0a192f;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    }
    header .btn:hover {
      background: #f0f0f0;
      color: #000;
      border-color: #000;
      box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2);
    }


    /* ----------------------------------------------------- */
    /* ОСНОВНОЙ LAYOUT */
    /* ----------------------------------------------------- */
    header {
      background: rgba(67,160,71,0.85) url('haifa_nof.jpg') center center/cover no-repeat;
      color: #fff;
      padding: 2.5rem 0 2.5rem 0;
      text-align: center;
      position: relative;
      z-index: 1;
    }
    header h1 {
      margin: 0 0 0.4em 0;
      font-size: 2.7em;
      letter-spacing: 2px;
      text-shadow: 0 3px 16px #000c;
      font-weight: bold;
    }
    header p {
      margin: 0 0 0.6em 0;
      font-size: 1.2em;
      text-shadow: 0 2px 8px #000b;
    }


    /* Main content (always centered) */
    main {
      max-width: 800px;
      margin: 2rem auto;
      background: #fff;
      border-radius: 12px;
      box-shadow: 0 4px 16px rgba(67,160,71,0.25);
      padding: 2rem 2.5rem;
      z-index: 0;
      position: relative;
    }

    .section-block { margin-bottom: 2.8em; }
    .section-block h2 {
      color: #223;
      margin-top: 0;
      margin-bottom: 1.1em;
      font-size: 1.42em;
    }

    .about-card {
      background: rgba(67,160,71,0.15);
      color: #000;
      border-radius: 14px;
      max-width: 760px;
      margin: 0 auto 1em auto;
      padding: 1.2em 2em;
      font-size: 1.15em;
      font-weight: 500;
      line-height: 1.6;
      text-align: center;
      box-shadow: 0 2px 10px rgba(67,160,71,0.25);
    }

    /* Lists */
    .events-list, .partners-list {
      padding: 0;
      margin: 0 0 1.1em 0;
      list-style: none;
      font-size: 1.07em;
    }
    .events-list li, .partners-list li {
      margin-bottom: 0.55em;
      background: rgba(67,160,71,0.08);
      padding: 0.7em 1.1em;
      border-radius: 8px;
      box-shadow: 0 1px 5px rgba(67,160,71,0.15);
      display: inline-block;
    }

    .facebook-link {
      display: inline-block;
      background: rgba(255,255,255,0.7);
      color: #2e7d32 !important;
      border-radius: 8px;
      padding: 0.7em 1.2em;
      margin: 0.8em 0;
      text-decoration: none;
      font-size: 1.05em;
      font-weight: 1000;
      border: none;
      box-shadow: 0 2px 8px rgba(67,160,71,0.25);
      transition: background 0.2s, box-shadow 0.2s;
      text-align: center;
      cursor: pointer;
    }

    /* ===== КНОПКИ МЕРОПРИЯТИЙ И КОНТАКТОВ — единый стиль как в top-nav ===== */
    .team-link, .event-button, .contacts a {
      display: inline-block;
      background: #2e7d32;
      color: #fff !important;
      border-radius: 20px;
      padding: 4px 12px;
      margin: 3px;
      text-decoration: none;
      font-size: 0.78em;
      font-weight: 700;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      border: 1px solid rgba(255,255,255,0.25);
      box-shadow: none;
      transition: background 0.2s;
      text-align: center;
      cursor: pointer;
      white-space: nowrap;
    }
    .facebook-link:hover, .team-link:hover, .event-button:hover, .contacts a:hover {
      background: #388e3c;
    }

    .event-buttons {
      display: flex;
      flex-wrap: wrap;
      gap: 4px;
      margin: 1em 0;
      padding: 0;
    }

    .news-section {
      background: rgba(67,160,71,0.08);
      border-left: 6px solid rgba(67,160,71,0.85);
      padding: 24px 20px;
      margin-bottom: 2.8em;
      border-radius: 10px;
      box-shadow: 0 2px 8px rgba(67,160,71,0.15);
    }
    .news-section h2 {
      color: #2e7d32;
      margin-top: 0;
      margin-bottom: 0.8em;
    }

    .news-item {
        margin-bottom: 1.5em;
        padding-bottom: 0.5em;
        border-bottom: 1px dashed rgba(67,160,71,0.3);
        line-height: 1.6;
    }
    .news-item:last-child {
        border-bottom: none;
        margin-bottom: 0;
    }

    .news-item strong {
        font-weight: 700;
        color: #223;
    }

    .news-item .announcement-tag {
        font-weight: 700;
        color: #e53e3e;
    }

    /* News photos + modal */
    .news-photos {
      display: flex;
      gap: 16px;
      margin: 18px 0 8px 0;
      flex-wrap: wrap;
    }
    .news-photos img {
      width: 200px;
      height: auto;
      border-radius: 10px;
      box-shadow: 0 2px 10px rgba(67,160,71,0.25);
      object-fit: cover;
      cursor: pointer;
      transition: 0.3s;
    }
    .news-photos img:hover { opacity: 0.85; }
    
    .modal {
      display: none;
      position: fixed;
      z-index: 1000;
      padding-top: 60px;
      left: 0; top: 0;
      width: 100%; height: 100%;
      background-color: rgba(0,0,0,0.9);
    }
    .modal img {
      margin: auto;
      display: block;
      max-width: 90%;
      max-height: 80%;
    }
    .modal:target { display: block; }
    .close {
      position: absolute;
      top: 20px; right: 40px;
      color: white;
      font-size: 40px;
      text-decoration: none;
    }

    /* Responsive */
    @media (max-width:600px) {
      header { padding: 2em 0 1.2em 0; }
      header h1 { font-size: 1.7em; }
      .about-card { padding: 0 0; font-size: 1em; }
      main { padding: 1em 0.3em; }
      .events-list li, .partners-list li { display: block; }
      .event-buttons { flex-direction: column; gap: 12px; }
      .event-button { width: 100%; }
      .news-photos { flex-direction: column; gap: 10px; align-items: flex-start; }
      .news-photos img { width: 100%; max-width: 260px; }
    }

    footer {
      text-align: center;
      color: #789;
      font-size: 0.96em;
      margin: 2.5em 0 1em 0;
    }
    
    /* ====== Main container ====== */
    .site-main{
      max-width: 1080px;
      margin: 2rem auto;
      background: #fff;
      border-radius: 12px;
      box-shadow: 0 4px 16px rgba(67,160,71,0.25);
      padding: 2rem 2.2rem;
    }
    .card{
      border: 1px solid #e6efe6;
      border-radius: 12px;
      padding: 1.4rem 1.4rem;
      margin: .6rem 0 1rem;
      background: #fff;
    }
    .card h3{
      margin: .2rem 0 .4rem;
      color: #123;
      font-size: 1.05rem;
      font-weight: 900;
    }
    .page-title{
      color: #223;
      text-align: left;
      margin: 0 0 6px 0;
      font-size: 1.7rem;
      line-height: 1.25;
      font-weight: 800;
    }
    .lead{
      margin:0 0 1.1rem 0;
      color: var(--muted);
      font-size: 1.02rem;
    }

    /* ====== Doc list ====== */
    .doc-list{
      list-style:none;
      padding:0;
      margin:0;
      display:grid;
      gap: 12px;
    }
    .doc-link{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 14px;
      padding: 14px 16px;
      border-radius: 12px;
      text-decoration:none;
      color:#123;
      background: #f2f7f2;
      border-left: 5px solid var(--green);
      transition: transform .12s ease, background .12s ease;
    }
    .doc-link:hover{
      background:#e7f4e7;
      transform: translateY(-1px);
    }
    .doc-title{
      font-weight: 700;
    }
    .badge{
      flex: 0 0 auto;
      font-size: .78rem;
      background:#fff;
      border:1px solid #d7dde5;
      color:#2b3440;
      padding: 4px 10px;
      border-radius: 999px;
      white-space: nowrap;
    }

    /* ====== Footer ====== */
    .site-footer{
      text-align:center;
      color:#6a7686;
      font-size:.95rem;
      padding: 1.2rem 0 2rem 0;
    }
    .page-lead{
      margin: 0 0 8px 0;
      color: #223;
      font-size: 1.05rem;
      font-weight: 600;
      opacity: 0.92;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    }
    .block{
      background: #fff;
      border-radius: 12px;
      box-shadow: 0 4px 16px rgba(67,160,71,0.18);
      padding: 1.25rem 1.4rem;
      margin-top: 1rem;
      border: 1px solid #e6efe6;
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    }

    .block h2{
      margin: 0.1rem 0 0.9rem 0;
      color: #2e7d32;
      font-size: 1.15rem;
      font-weight: 800;
    }
