:root{--bg:#fbfbf7;--paper:#fff;--soft:#eef2e2;--soft2:#f5f4ec;--green:#6f845d;--green-dark:#58704a;--text:#20251d;--muted:#69705f;--line:#e6e4d9;--shadow:0 16px 40px rgba(58,72,48,.08);--radius:14px}.container{width:min(1120px,calc(100% - 32px));margin:auto}.narrow{max-width:820px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.site-header{background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.header-grid{height:86px;display:grid;grid-template-columns:220px 1fr auto auto;gap:22px;align-items:center}.brand{display:inline-flex;flex-direction:column;line-height:1}.brand__name{font-family:Georgia,serif;font-size:30px;font-weight:700;color:var(--green-dark)}.brand__sub{font-size:13px;letter-spacing:.08em;color:var(--muted);margin-top:6px}.custom-logo{max-width:190px;height:auto}.brand-logo{width:180px;max-width:100%;height:auto}.brand-logo--footer{width:190px}.main-nav ul{display:flex;gap:26px;align-items:center;justify-content:center;list-style:none;margin:0;padding:0}.main-nav a{font-size:14px}.header-contact{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}.header-phone{font-weight:700}.header-contact small{color:var(--muted);font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 24px;border-radius:8px;background:var(--soft);color:var(--text);font-weight:600;border:0}.btn--dark{background:var(--green-dark);color:#fff}.btn--soft{background:#e9eedb;color:#31402a}.btn--full{width:100%;box-sizing:border-box}.btn--wide{width:min(340px,100%)}.nav-toggle{display:none;border:0;background:var(--soft);border-radius:10px;font-size:24px;width:44px;height:44px}.hero{background:linear-gradient(90deg,#f8f8f1 0%,#f3f5eb 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1.15fr;min-height:360px;align-items:center;gap:34px}.hero-copy{position:relative;padding:56px 0;z-index:2}.leaf-line{position:absolute;left:-70px;top:58px;width:70px;height:170px;border-left:2px solid #9aab86;border-radius:50%;opacity:.55}.hero h1{font-family:Georgia,serif;font-size:clamp(34px,5vw,58px);line-height:1.08;color:var(--green-dark);margin:0 0 18px}.hero p{font-size:20px;color:#4e5749;max-width:440px}.hero-photo{height:360px;align-self:stretch;background:radial-gradient(circle at 55% 42%,rgba(255,255,255,.25),rgba(255,255,255,0) 48%),linear-gradient(120deg,rgba(111,132,93,.1),rgba(255,255,255,.22)),url('https://images.unsplash.com/photo-1561181286-d3fee7d55364?auto=format&fit=crop&w=1200&q=80') center/cover;border-bottom-left-radius:0;border-radius:0}.catalog-section{padding:52px 0}.catalog-section h2,.page-hero h1,.page-content h1{font-family:Georgia,serif;color:var(--green-dark);font-size:30px;margin:0 0 24px}.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.product-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.product-card__image{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:#eeeade;overflow:hidden}.product-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.product-card:hover img{transform:scale(1.03)}.product-card__placeholder{color:var(--muted)}.product-card__body{padding:16px}.product-card h3{font-size:16px;line-height:1.25;margin:0 0 10px;font-weight:500}.product-card__price{font-weight:800;margin-bottom:14px}.center{text-align:center;margin-top:34px}.features{padding:0 0 34px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.feature-grid div{padding:22px;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center}.feature-grid strong{display:block}.feature-grid span{grid-column:2;color:var(--muted);font-size:14px}.site-footer{background:#f4f4ec;border-top:1px solid var(--line);padding:38px 0}.footer-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:38px;align-items:start}.footer-col h3{text-transform:uppercase;letter-spacing:.06em;color:var(--green-dark);font-size:15px}.footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.footer-brand{text-align:center}.footer-logo-slot{min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center}.footer-phone{display:inline-flex;margin:12px 0;font-weight:700}.socials{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.social-link{display:inline-flex;align-items:center;gap:8px;background:var(--paper);padding:9px 14px;border-radius:10px;border:1px solid var(--line);font-weight:600}.social-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;font-size:11px;font-weight:800;line-height:1}.social-icon--vk{background:#4c75a3;color:#fff;letter-spacing:-1px}.social-icon--max{background:#eef2e2;color:#58704a;border:1px solid #d9dfca}.footer-bottom{margin-top:30px;padding-top:20px;border-top:1px solid var(--line);text-align:center;font-size:14px;color:var(--muted)}.footer-info{text-align:left}.page-hero{padding:48px 0;background:var(--soft2)}.single-product{padding:54px 0}.single-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px}.single-photo{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.single-photo img{width:100%;height:100%;object-fit:cover}.breadcrumbs{font-size:14px;color:var(--muted);margin-bottom:18px}.single-info h1{font-family:Georgia,serif;font-size:44px;line-height:1.1;color:var(--green-dark);margin:0 0 14px}.single-price{font-size:28px;font-weight:800;margin-bottom:20px}.single-info h2{font-size:20px;margin-top:26px}.page-content{padding:56px 0}.pagination{margin-top:34px}.pagination .nav-links{display:flex;gap:10px;justify-content:center}.pagination a,.pagination span{padding:10px 14px;background:var(--paper);border:1px solid var(--line);border-radius:8px}@media (max-width:980px){.header-grid{grid-template-columns:1fr auto auto;height:auto;min-height:72px}.nav-toggle{display:inline-block}.main-nav{display:none;grid-column:1/-1}.main-nav.is-open{display:block}.main-nav ul{display:grid;gap:8px;justify-content:stretch}.main-nav a{display:block;padding:12px;background:var(--soft2);border-radius:8px}.header-contact{display:none}.hero-grid{grid-template-columns:1fr}.hero-photo{height:260px;border-radius:0;order:0}.products-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-info{text-align:center}.single-grid{grid-template-columns:1fr}.single-info h1{font-size:34px}}@media (max-width:560px){.container{width:min(100% - 22px,1120px)}.header-grid{grid-template-columns:1fr auto}.header-grid>.btn{display:none}.brand__name{font-size:25px}.hero-copy{padding:34px 0}.hero p{font-size:17px}.products-grid{grid-template-columns:1fr;gap:18px}.product-card__body{padding:14px}.feature-grid{grid-template-columns:1fr}.catalog-section{padding:34px 0}.site-footer{padding:28px 0}.single-product{padding:34px 0}}


/* v1.0.5 — нормальная шапка и футер: логотип не растягивается */
.header-grid{height:78px;grid-template-columns:minmax(245px,auto) 1fr auto auto;gap:22px;align-items:center}.brand{display:inline-flex;flex-direction:row;align-items:center;gap:12px;min-width:0}.brand-mark{width:62px;height:62px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 62px;overflow:hidden}.brand-mark .custom-logo,.brand-mark img,.brand-logo{width:62px!important;height:62px!important;max-width:62px!important;max-height:62px!important;object-fit:contain}.brand-text{display:grid;gap:2px;line-height:1.1}.brand-text strong{font-family:Georgia,serif;font-size:22px;color:var(--green-dark);white-space:nowrap}.brand-text small{font-size:12px;color:var(--muted);white-space:nowrap}.custom-logo-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:62px!important;height:62px!important;overflow:hidden!important}.site-footer{padding:34px 0 24px}.footer-grid{grid-template-columns:1fr 1fr 1fr;align-items:start}.footer-col h3{margin:0 0 14px}.footer-contacts{text-align:center}.footer-contacts .footer-phone{margin:0 0 14px}.footer-logo-slot,.brand-logo--footer{display:none!important}.socials{justify-content:center}.footer-bottom{margin-top:26px;padding-top:18px}.page-hero{padding:44px 0}.page-hero h1{margin:0}
@media (max-width:980px){.header-grid{grid-template-columns:1fr auto;min-height:74px;height:auto;padding-top:8px;padding-bottom:8px}.brand-mark{width:54px;height:54px;flex-basis:54px}.brand-mark .custom-logo,.brand-mark img,.brand-logo,.custom-logo-link{width:54px!important;height:54px!important;max-width:54px!important;max-height:54px!important}.brand-text strong{font-size:20px}.brand-text small{font-size:11px}.footer-grid{grid-template-columns:1fr;gap:26px}.footer-col,.footer-info,.footer-contacts{text-align:center}.footer-col ul{justify-items:center}}
@media (max-width:560px){.brand{gap:9px}.brand-mark{width:48px;height:48px;flex-basis:48px}.brand-mark .custom-logo,.brand-mark img,.brand-logo,.custom-logo-link{width:48px!important;height:48px!important;max-width:48px!important;max-height:48px!important}.brand-text strong{font-size:17px;white-space:normal}.brand-text small{display:none}.nav-toggle{width:42px;height:42px}.site-header{position:sticky}.footer-grid{gap:22px}}

/* Social icons: real VK/MAX images, no button frames */
.footer-contacts .socials{justify-content:center;gap:16px;align-items:center}
.footer-contacts .social-link{background:transparent!important;border:0!important;padding:0!important;border-radius:0!important;box-shadow:none!important;line-height:0}
.footer-contacts .social-img{width:38px;height:38px;object-fit:contain;display:block;transition:transform .18s ease,opacity .18s ease}
.footer-contacts .social-link:hover .social-img{transform:scale(1.06);opacity:.9}
@media (max-width:560px){.footer-contacts .social-img{width:34px;height:34px}}


/* Product gallery */
.single-gallery {
    min-width: 0;
}

.single-photo {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5f6ef;
    border-radius: 24px;
    overflow: hidden;
    min-height: 430px;
    cursor: zoom-in;
}

.single-photo img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 560px;
    object-fit: cover;
}

.single-thumbs {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    margin-top: 14px;
}

.single-thumb {
    display: block;
    border: 2px solid transparent;
    border-radius: 14px;
    overflow: hidden;
    background: #f5f6ef;
    transition: border-color .2s ease, transform .2s ease;
}

.single-thumb:hover,
.single-thumb.is-active {
    border-color: #6f875f;
}

.single-thumb:hover {
    transform: translateY(-1px);
}

.single-thumb img {
    display: block;
    width: 100%;
    height: 92px;
    object-fit: cover;
}

.gb-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(18, 24, 15, .82);
}

.gb-lightbox.is-open {
    display: flex;
}

.gb-lightbox__image {
    max-width: min(1100px, 92vw);
    max-height: 86vh;
    object-fit: contain;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 25px 90px rgba(0,0,0,.35);
}

.gb-lightbox__close,
.gb-lightbox__prev,
.gb-lightbox__next {
    position: fixed;
    border: 0;
    background: rgba(255,255,255,.92);
    color: #405b35;
    cursor: pointer;
    transition: transform .2s ease, background .2s ease;
}

.gb-lightbox__close:hover,
.gb-lightbox__prev:hover,
.gb-lightbox__next:hover {
    transform: scale(1.04);
    background: #fff;
}

.gb-lightbox__close {
    top: 22px;
    right: 22px;
    width: 44px;
    height: 44px;
    border-radius: 999px;
    font-size: 28px;
    line-height: 44px;
}

.gb-lightbox__prev,
.gb-lightbox__next {
    top: 50%;
    width: 48px;
    height: 58px;
    margin-top: -29px;
    border-radius: 14px;
    font-size: 34px;
}

.gb-lightbox__prev { left: 22px; }
.gb-lightbox__next { right: 22px; }

@media (max-width: 720px) {
    .single-photo {
        min-height: 300px;
        border-radius: 18px;
    }

    .single-thumbs {
        grid-template-columns: repeat(4, 1fr);
        gap: 8px;
    }

    .single-thumb img {
        height: 72px;
    }

    .gb-lightbox {
        padding: 14px;
    }

    .gb-lightbox__close {
        top: 12px;
        right: 12px;
    }

    .gb-lightbox__prev,
    .gb-lightbox__next {
        width: 42px;
        height: 52px;
        font-size: 30px;
    }

    .gb-lightbox__prev { left: 10px; }
    .gb-lightbox__next { right: 10px; }
}


/* v1.1.5 hero rebuild */
.hero {
    background: linear-gradient(90deg, #f8f9f3 0%, #f0f3e8 100%);
    overflow: hidden;
}

.hero-grid {
    min-height: 390px;
    display: grid;
    grid-template-columns: minmax(360px, .88fr) minmax(460px, 1.12fr);
    align-items: center;
    gap: 46px;
}

.hero-copy {
    position: relative;
    z-index: 2;
    padding: 58px 0;
}

.leaf-line {
    left: -76px;
    top: 54px;
    width: 72px;
    height: 185px;
    border-left: 2px solid rgba(111, 132, 93, .45);
    border-radius: 50%;
}

.hero h1 {
    max-width: 520px;
    font-size: clamp(46px, 5vw, 68px);
    line-height: .98;
    margin-bottom: 22px;
}

.hero p {
    max-width: 470px;
    font-size: 21px;
    line-height: 1.55;
    margin: 0 0 26px;
}

.hero-photo {
    width: 100%;
    height: 390px;
    align-self: stretch;
    border-radius: 0;
    background:
        radial-gradient(circle at 48% 46%, rgba(255,255,255,.55), rgba(255,255,255,0) 43%),
        linear-gradient(90deg, rgba(246,248,242,.08), rgba(246,248,242,.38)),
        url('https://images.unsplash.com/photo-1561181286-d3fee7d55364?auto=format&fit=crop&w=1400&q=85') center center / cover no-repeat;
}

/* mobile hero: no broken two-column layout */
@media (max-width: 980px) {
    .hero {
        padding: 0;
    }

    .hero-grid {
        min-height: auto;
        grid-template-columns: 1fr;
        gap: 0;
        width: 100%;
    }

    .hero-copy {
        padding: 38px 0 28px;
        max-width: 560px;
    }

    .leaf-line {
        display: none;
    }

    .hero h1 {
        font-size: clamp(40px, 10vw, 58px);
        line-height: 1.02;
    }

    .hero p {
        font-size: 18px;
        max-width: 100%;
    }

    .hero-photo {
        order: 2;
        width: min(100%, 680px);
        height: 280px;
        margin: 0 auto 34px;
        border-radius: 22px;
        background-position: center;
        box-shadow: 0 18px 38px rgba(65, 80, 55, .10);
    }
}

@media (max-width: 560px) {
    .hero {
        background: #f5f6ef;
    }

    .hero-grid {
        width: min(100% - 22px, 1120px);
    }

    .hero-copy {
        padding: 28px 0 20px;
    }

    .hero h1 {
        font-size: 42px;
        line-height: 1.03;
        margin-bottom: 16px;
    }

    .hero p {
        font-size: 16px;
        line-height: 1.55;
        margin-bottom: 20px;
    }

    .hero-photo {
        height: 210px;
        margin-bottom: 26px;
        border-radius: 18px;
    }

    .hero .btn {
        width: 100%;
        max-width: 220px;
        justify-content: center;
    }
}


/* v1.1.9 legal page */
.legal-hero {
    background: linear-gradient(135deg, #f8faf4 0%, #eef3e7 100%);
    border-bottom: 1px solid var(--line);
}

.legal-hero__inner {
    padding: 58px 0 46px;
    max-width: 820px;
}

.legal-hero span {
    display: inline-flex;
    margin-bottom: 14px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #e3ead8;
    color: var(--green-dark);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.legal-hero h1 {
    margin: 0 0 16px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(40px, 5vw, 64px);
    line-height: 1;
    color: var(--green-dark);
}

.legal-hero p {
    max-width: 720px;
    margin: 0;
    color: #4e5749;
    font-size: 19px;
    line-height: 1.55;
}

.legal-page {
    padding: 48px 0 64px;
    background: #fbfcf8;
}

.legal-layout {
    display: grid;
    grid-template-columns: 270px minmax(0, 1fr);
    gap: 34px;
    align-items: start;
}

.legal-sidebar {
    position: sticky;
    top: 104px;
}

.legal-sidebar__box {
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 22px;
    background: #f2f4ea;
    box-shadow: 0 14px 34px rgba(64, 91, 53, .07);
}

.legal-sidebar strong {
    display: block;
    margin-bottom: 14px;
    color: var(--green-dark);
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 20px;
}

.legal-sidebar a {
    display: block;
    padding: 10px 0;
    border-top: 1px solid rgba(64, 91, 53, .12);
    color: #4f6044;
    font-size: 14px;
}

.legal-sidebar a:hover {
    color: var(--green-dark);
}

.legal-card {
    padding: clamp(24px, 4vw, 46px);
    border: 1px solid var(--line);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(64, 91, 53, .08);
}

.legal-section {
    padding: 0 0 28px;
    margin: 0 0 28px;
    border-bottom: 1px solid #e3e7dc;
}

.legal-section:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.legal-section h2 {
    margin: 0 0 16px;
    font-family: Georgia, 'Times New Roman', serif;
    color: var(--green-dark);
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.15;
}

.legal-section p {
    margin: 0 0 12px;
    color: #30382d;
    font-size: 16px;
    line-height: 1.75;
}

.legal-section p:last-child {
    margin-bottom: 0;
}

.legal-section a {
    color: var(--green-dark);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.legal-numbered,
.legal-dash {
    padding-left: 16px;
    border-left: 3px solid #dfe8d2;
}

@media (max-width: 980px) {
    .legal-layout {
        grid-template-columns: 1fr;
    }

    .legal-sidebar {
        position: static;
    }

    .legal-sidebar__box {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: center;
    }

    .legal-sidebar strong {
        width: 100%;
        margin-bottom: 2px;
    }

    .legal-sidebar a {
        border: 1px solid rgba(64, 91, 53, .14);
        border-radius: 999px;
        padding: 8px 12px;
        background: #fff;
    }
}

@media (max-width: 560px) {
    .legal-hero__inner {
        padding: 36px 0 30px;
    }

    .legal-page {
        padding: 28px 0 42px;
    }

    .legal-card {
        padding: 20px 16px;
        border-radius: 18px;
    }

    .legal-section {
        padding-bottom: 22px;
        margin-bottom: 22px;
    }

    .legal-section p {
        font-size: 15px;
        line-height: 1.65;
    }
}
