:root {
    --green-dark: #1b5e20;
    --green: #2e7d32;
    --green-light: #4caf50;
    --green-accent: #66bb6a;
    --green-bg: #e8f5e9;
    --white: #ffffff;
    --gray-100: #f5f5f5;
    --gray-200: #e0e0e0;
    --gray-600: #757575;
    --gray-800: #424242;
    --gray-900: #212121;
    --radius: 12px;
    --radius-sm: 30px;
    --shadow: 0 2px 12px rgba(0,0,0,0.08);
    --shadow-lg: 0 8px 24px rgba(0,0,0,0.1);
    --font: 'Segoe UI', system-ui, -apple-system, sans-serif;
    --transition: 0.2s ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--font);color:var(--gray-800);background:var(--white);line-height:1.6}
a{color:var(--green);text-decoration:none}
a:hover{color:var(--green-dark)}
img{max-width:100%;height:auto}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.header{background:var(--white);box-shadow:var(--shadow);position:sticky;top:0;z-index:1000}
.header__inner{display:flex;align-items:center;justify-content:space-between;padding:12px 0;gap:24px}
.header__logo{display:flex;align-items:center;gap:12px}
.header__site-name{font-weight:700;font-size:1.1rem;color:var(--green-dark)}
.header__menu{display:flex;list-style:none;gap:8px}
.header__link{padding:8px 16px;border-radius:6px;font-weight:500;color:var(--gray-800)}
.header__link:hover,.header__link.active{color:var(--green);text-decoration:underline}
.header__burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer}
.header__burger span{display:block;width:24px;height:2px;background:var(--gray-800)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:var(--transition);border:2px solid transparent;font-size:0.95rem}
.btn--primary{background:var(--green);color:var(--white)}
.btn--primary:hover{background:var(--green-dark);color:var(--white)}
.btn--second{background:var(--white);color:var(--green); border: 1px solid var(--green)}
.btn--second:hover{background:var(--green);color:var(--white); border: 1px solid var(--green)}
.btn--outline{border-color:var(--green);color:var(--green);background:transparent}
.btn--outline:hover{background:var(--green);color:var(--white)}
.btn--white{background:var(--white);color:var(--green-dark)}
.btn--white:hover{background:var(--green-bg)}
.btn--lg{padding:14px 32px;font-size:1.05rem}
.btn--sm{padding:6px 16px;font-size:0.85rem}
.btn--link{background:none;border:none;color:var(--green);text-decoration:none;padding:0}
.btn--danger{background:#d32f2f;color:white}
.hero{background:linear-gradient(135deg, #1b5e20, #4caf50);color:white;padding:80px 0 40px;position:relative}
.hero__inner{display:flex;align-items:center;margin-bottom:50px;min-height:300px}
.hero__content{max-width:600px}
.hero__title{font-size:2.5rem;font-weight:800;margin-bottom:20px;line-height:1.2}
.hero__text{font-size:1.15rem;margin-bottom:30px;opacity:0.95}
.hero__wave{position:absolute;bottom:-10px;left:0;width:100%}
.hero__wave svg{width:100%;height:80px}
.section{padding:60px 0}
.section__title{font-size:2rem;font-weight:700;margin-bottom:32px;color:var(--gray-900)}
.text-center{text-align:center}
.about-preview__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.advantages__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}
.advantage-card{background:white;padding:24px;border-radius:var(--radius);text-align:center;box-shadow:var(--shadow);transition:0.3s}
.advantage-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.advantage-card__icon{font-size:2.5rem;margin-bottom:12px}
.news-gallery__grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.news-mini{display:flex;align-items:flex-start;gap:16px;padding:16px 0;border-bottom:1px solid var(--gray-200)}
.news-mini__date{flex-shrink:0;background:var(--green-bg);color:var(--green-dark);padding:6px 12px;border-radius:6px;font-weight:600;font-size:0.85rem}
.news-mini__content h4{font-size:1rem;margin-bottom:4px}
.news-mini__arrow{flex-shrink:0;font-size:1.2rem;color:var(--green)}
.gallery-mini{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.gallery-mini__item{border-radius:var(--radius-sm);overflow:hidden}
.gallery-mini__item img{width:100%;height:140px;object-fit:cover;transition:0.3s}
.gallery-mini__item:hover img{transform:scale(1.05)}
.footer{background:var(--gray-900);color:var(--gray-200);padding:48px 0 0}
.footer__inner{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.footer__bottom{text-align:center;padding:24px 0;border-top:1px solid rgba(255,255,255,0.1);margin-top:32px;font-size:0.85rem}
.breadcrumbs{margin-bottom:16px;font-size:0.9rem;color:var(--gray-600)}
.news-grid{display:flex;flex-direction:column;gap:24px}
.news-card{display:flex;background:white;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.news-card__image{width:280px;min-height:200px;object-fit:cover}
.news-card__body{padding:20px}
.pagination{display:flex;justify-content:center;gap:8px;margin-top:40px}
.pagination__item{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--gray-100);color:var(--gray-800);font-weight:600}
.pagination__item.active{background:var(--green);color:white}
.tabs{display:flex;gap:8px;margin-bottom:20px}
.tabs__tab{padding:8px 16px;background:var(--gray-100);border:none;border-radius:6px;cursor:pointer}
.tabs__tab.active{background:var(--green);color:white}
.document-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--gray-200)}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gallery-item img{width:100%;height:200px;object-fit:cover;border-radius:var(--radius-sm)}
/* ===== Общие стили форм ===== */
form {
    max-width: 600px;
}
form label {
    display: block;
    margin-top: 16px;
    margin-bottom: 4px;
    font-weight: 600;
    font-size: 0.95rem;
    color: #333;
}
form input,
form textarea,
form select {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 0.95rem;
    font-family: inherit;
    transition: border-color 0.2s, box-shadow 0.2s;
    background: #fff;
    outline: none;
}
form input:focus,
form textarea:focus,
form select:focus {
    border-color: #4caf50;
    box-shadow: 0 0 0 3px rgba(76,175,80,0.2);
}
form textarea {
    resize: vertical;
    min-height: 100px;
}
form select[multiple] {
    min-height: 120px;
}
form input[type="file"] {
    padding: 8px;
    border: 1px dashed #ccc;
    border-radius: 8px;
    background: #fafafa;
    width: 100%;
}
form input[type="checkbox"],
form input[type="radio"] {
    margin-right: 8px;
    transform: scale(1.15);
    accent-color: #4caf50;
}
form input[type="checkbox"] + label,
form input[type="radio"] + label {
    display: inline;
    font-weight: 400;
    margin: 0;
}
form .btn,
form button[type="submit"] {
    margin-top: 20px;
    padding: 12px 28px;
    background: #4caf50;
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
}
form .btn:hover,
form button[type="submit"]:hover {
    background: #388e3c;
}
form .btn--outline {
    background: transparent;
    color: #4caf50;
    border: 1px solid #4caf50;
}
form .btn--outline:hover {
    background: #4caf50;
    color: white;
}
form .btn--danger {
    background: #d32f2f;
}
form .btn--danger:hover {
    background: #b71c1c;
}
form .btn--sm {
    padding: 6px 16px;
    font-size: 0.9rem;
}
form input:disabled,
form textarea:disabled,
form select:disabled {
    background: #f5f5f5;
    color: #999;
    cursor: not-allowed;
}
form .form-error {
    color: #d32f2f;
    font-size: 0.85rem;
    margin-top: 4px;
}
form .form-help {
    color: #666;
    font-size: 0.8rem;
    margin-top: 4px;
}
.header__account-icon {
    display: none;
}
.header__account-text {
    display: inline;
}

@media (max-width: 768px) {
    .header__account-text {
        display: none;
    }
    .header__account-icon {
        display: inline;
    }
}
/* Десктопная кнопка ЛК */
.header__desktop-account {
    display: flex;
    align-items: center;
}

/* Мобильные кнопки (скрыты на десктопе) */
.header__mobile-actions {
    display: none;
}

@media (max-width: 768px) {
    .header__desktop-account {
        display: none;
    }
    .header__mobile-actions {
        display: flex;
        align-items: center;
        gap: 16px;
    }
    .header__mobile-account {
        font-size: 1.6rem;
        text-decoration: none;
        line-height: 1;
    }
    .header__burger {
        display: flex;               /* показываем бургер */
        flex-direction: column;
        gap: 5px;
        background: none;
        border: none;
        cursor: pointer;
        padding: 8px;
    }
    .header__burger span {
        display: block;
        width: 24px;
        height: 2px;
        background: #333;
        border-radius: 2px;
    }
    .header__menu {
        display: none;               /* скрываем меню */
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: #fff;
        flex-direction: column;
        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
        padding: 16px;
    }
    .header__menu.open {
        display: flex;
    }
}
/* Flex-контейнер для шапки: элементы идут в ряд */
.header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

/* Навигация (меню + мобильные кнопки) */
.header__nav {
    display: flex;
    align-items: center;
    flex: 1;               /* займёт доступное пространство */
    justify-content: center; /* меню по центру */
}

/* Десктопная кнопка справа */
.header__desktop-account {
    flex-shrink: 0;
}

/* Мобильные иконки скрыты по умолчанию */
.header__mobile-actions {
    display: none;
}

@media (max-width: 768px) {
    /* На мобильных меню скрываем, бургер и иконка ЛК показываются */
    .header__menu {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: #fff;
        flex-direction: column;
        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
        padding: 16px;
    }
    .header__menu.open {
        display: flex;
    }
    .header__mobile-actions {
        display: flex;
        align-items: center;
        gap: 16px;
    }
    .header__mobile-account {
        font-size: 1.6rem;
        text-decoration: none;
        line-height: 1;
    }
    /* Скрываем десктопную кнопку */
    .header__desktop-account {
        display: none;
    }
    /* Бургер-иконка */
    .header__burger {
        display: flex;
        flex-direction: column;
        gap: 5px;
        background: none;
        border: none;
        cursor: pointer;
        padding: 8px;
    }
    .header__burger span {
        display: block;
        width: 24px;
        height: 2px;
        background: #333;
        border-radius: 2px;
    }
}
.news-gallery__gallery {
    background: var(--green-bg);
    padding: 0 20px;
    border-radius: 10px;
}