body {
    margin: 0;
    font-family: 'Segoe UI', Arial, sans-serif;
    background: #fff;
    color: #232323;
}

.header {
    background: #fff;
    border-bottom: 2px solid #f3e5c0;
    box-shadow: 0 2px 10px rgba(120,70,10,0.04);
    position: sticky;
    top: 0;
    z-index: 20;
}
.header__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1240px;
    margin: 0 auto;
    padding: 14px 18px 10px 18px;
}
.header__logo {
    height: 44px;
    width: auto;
    display: block;
}
.header__nav {
    display: flex;
    gap: 26px;
}
.header__nav-link {
    color: #5a3e18;
    text-decoration: none;
    font-weight: 500;
    font-size: 1.06rem;
    position: relative;
    transition: color 0.16s;
}
.header__nav-link:hover {
    color: #a77138;
}
.header__phone {
    margin-left: 28px;
}
.header__phone-link {
    color: #b58445;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.05rem;
    letter-spacing: 0.5px;
    transition: color 0.15s;
}
.header__phone-link:hover {
    color: #6b4516;
}

@media (max-width: 900px) {
    .header__top {
        flex-direction: column;
        align-items: flex-start;
        gap: 7px;
        padding: 11px 8px 8px 8px;
    }
    .header__nav {
        gap: 18px;
    }
    .header__phone {
        margin-left: 0;
    }
}
@media (max-width: 600px) {
    .header__top {
        padding: 7px 4px 6px 4px;
    }
    .header__logo {
        height: 32px;
    }
    .header__nav-link {
        font-size: 0.99rem;
    }
    .header__phone-link {
        font-size: 0.97rem;
    }
}
.footer {
    background: #fff8e1;
    border-top: 2px solid #f3e5c0;
    padding-top: 26px;
    padding-bottom: 20px;
    font-size: 1.02rem;
    color: #8a6842;
    margin-top: 40px;
}
.footer__container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 18px;
    display: flex;
    flex-direction: column;
    gap: 17px;
    align-items: center;
}
.footer__nav {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}
.footer__link {
    color: #866037;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.15s;
}
.footer__link:hover {
    color: #a77138;
}
.footer__info {
    display: flex;
    gap: 19px;
    flex-wrap: wrap;
    font-size: 0.98rem;
}
.footer__phone, .footer__email {
    color: #b09165;
}
.footer__copyright {
    color: #d7b679;
    font-size: 0.93rem;
    margin-top: 5px;
}

@media (max-width: 600px) {
    .footer__container {
        padding: 0 4px;
        gap: 11px;
    }
    .footer__nav {
        gap: 12px;
    }
    .footer__info {
        gap: 8px;
        font-size: 0.92rem;
    }
    .footer__copyright {
        font-size: 0.88rem;
    }
}
/* Hero Section */
.hero {
    background: linear-gradient(98deg, #f7e7c6 0%, #fff3e7 100%);
    padding: 44px 0 34px 0;
}
.hero__content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1240px;
    margin: 0 auto;
    gap: 46px;
    padding: 0 18px;
}
.hero__left {
    max-width: 540px;
}
.hero__title {
    font-size: 2.7rem;
    font-weight: 800;
    color: #5a3e18;
    margin-bottom: 15px;
    line-height: 1.12;
}
.hero__subtitle {
    font-size: 1.18rem;
    color: #684820;
    margin-bottom: 27px;
}
.hero__btn {
    display: inline-block;
    background: #cf9309;
    color: #fff;
    padding: 13px 28px;
    border-radius: 30px;
    font-weight: 600;
    font-size: 1.08rem;
    text-decoration: none;
    transition: background 0.17s;
    box-shadow: 0 3px 9px rgba(220,170,80,0.09);
}
.hero__btn:hover {
    background: #a77138;
}
.hero__right {
    flex: 1;
    display: flex;
    justify-content: flex-end;
}
.hero__img {
    width: 350px;
    max-width: 100%;
    border-radius: 32px;
    box-shadow: 0 6px 32px rgba(120,70,10,0.13);
}

/* Benefits Section */
.benefits {
    background: #fffdf8;
    padding: 32px 0;
}
.benefits__container {
    max-width: 1080px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 0 18px;
}
.benefits__item {
    background: #fffbe3;
    border-radius: 17px;
    box-shadow: 0 1px 7px rgba(180,120,40,0.08);
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 17px 20px;
    min-width: 250px;
    flex: 1;
}
.benefits__icon {
    width: 48px;
    height: 48px;
    object-fit: contain;
}
.benefits__title {
    font-weight: 700;
    color: #a77138;
    margin-bottom: 2px;
    font-size: 1.12rem;
}
.benefits__text {
    font-size: 1rem;
    color: #694b1c;
}

/* Catalog Preview */
.catalog-preview {
    padding: 44px 0 34px 0;
    background: #fff;
}
.section-title {
    text-align: center;
    font-size: 2.2rem;
    font-weight: 800;
    color: #5a3e18;
    margin-bottom: 28px;
}
.catalog-preview__list {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
}
.catalog-preview__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #fcf4e6;
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(180,120,40,0.07);
    padding: 19px 18px 14px 18px;
    text-decoration: none;
    width: 180px;
    transition: box-shadow 0.17s, background 0.17s;
}
.catalog-preview__item:hover {
    box-shadow: 0 4px 20px rgba(190,130,45,0.16);
    background: #fff8e2;
}
.catalog-preview__img {
    width: 78px;
    height: 78px;
    object-fit: contain;
    margin-bottom: 15px;
}
.catalog-preview__name {
    font-weight: 600;
    color: #a77138;
    font-size: 1.09rem;
    text-align: center;
}

/* Offer Section */
.offer {
    background: #fff3e1;
    padding: 38px 0 32px 0;
}
.offer__content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1050px;
    margin: 0 auto;
    gap: 34px;
    padding: 0 18px;
}
.offer__content h2 {
    font-size: 1.5rem;
    font-weight: 700;
    color: #5a3e18;
    margin-bottom: 13px;
}
.offer__content p {
    color: #684820;
    margin-bottom: 17px;
}
.offer__btn {
    display: inline-block;
    background: #cf9309;
    color: #fff;
    padding: 12px 25px;
    border-radius: 30px;
    font-weight: 600;
    font-size: 1.04rem;
    text-decoration: none;
    transition: background 0.17s;
}
.offer__btn:hover {
    background: #a77138;
}
.offer__img {
    width: 210px;
    max-width: 100%;
    border-radius: 22px;
    box-shadow: 0 3px 18px rgba(120,70,10,0.08);
}

/* Products */
.products {
    background: #fffdf8;
    padding: 40px 0 30px 0;
}
.products__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 28px;
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 18px;
}
.product-card {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 2px 10px rgba(160,110,30,0.07);
    padding: 20px 14px 17px 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    text-align: center;
}
.product-card__img {
    width: 92px;
    height: 92px;
    object-fit: contain;
    margin-bottom: 9px;
}
.product-card__name {
    font-weight: 600;
    color: #5a3e18;
    margin-bottom: 4px;
}
.product-card__price {
    color: #b58445;
    font-weight: 700;
    font-size: 1.09rem;
    margin-bottom: 6px;
}
.product-card__btn {
    background: #cf9309;
    color: #fff;
    border-radius: 25px;
    padding: 8px 21px;
    font-size: 0.99rem;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.14s;
}
.product-card__btn:hover {
    background: #a77138;
}

/* Recipes Preview */
.recipes-preview {
    background: #fff;
    padding: 38px 0 30px 0;
}
.recipes-preview__list {
    display: flex;
    justify-content: center;
    gap: 34px;
    flex-wrap: wrap;
    max-width: 1050px;
    margin: 0 auto;
}
.recipes-preview__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #fcf4e6;
    border-radius: 14px;
    box-shadow: 0 1px 7px rgba(180,120,40,0.08);
    padding: 17px 13px 13px 13px;
    text-decoration: none;
    width: 180px;
    transition: box-shadow 0.13s, background 0.13s;
}
.recipes-preview__item:hover {
    box-shadow: 0 4px 15px rgba(190,130,45,0.12);
    background: #fff8e2;
}
.recipes-preview__img {
    width: 66px;
    height: 66px;
    object-fit: contain;
    margin-bottom: 13px;
}
.recipes-preview__name {
    font-weight: 600;
    color: #a77138;
    font-size: 1.01rem;
    text-align: center;
}

/* Brands */
.brands {
    background: #fffdf8;
    padding: 34px 0 22px 0;
}
.brands__list {
    display: flex;
    justify-content: center;
    gap: 34px;
    flex-wrap: wrap;
    max-width: 900px;
    margin: 0 auto;
    align-items: center;
}
.brands__logo {
    width: 108px;
    height: 36px;
    object-fit: contain;
    opacity: 0.94;
    transition: opacity 0.14s;
}
.brands__logo:hover {
    opacity: 1;
}

/* CTA Section */
.cta {
    background: linear-gradient(99deg, #fff3e7 0%, #f7e7c6 100%);
    padding: 36px 0 34px 0;
    border-radius: 0 0 32px 32px;
    margin-bottom: -24px;
}
.cta__content {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 36px;
    padding: 0 18px;
}
.cta__title {
    font-weight: 800;
    font-size: 1.33rem;
    color: #5a3e18;
    margin-bottom: 8px;
}
.cta__subtitle {
    color: #684820;
    font-size: 1rem;
    margin-bottom: 5px;
}
.cta__btn {
    background: #cf9309;
    color: #fff;
    border-radius: 30px;
    padding: 14px 36px;
    font-size: 1.07rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.14s;
}
.cta__btn:hover {
    background: #a77138;
}

@media (max-width: 1100px) {
    .hero__content, .offer__content, .benefits__container, .products__grid, .catalog-preview__list,
    .recipes-preview__list, .brands__list, .cta__content {
        flex-wrap: wrap;
        gap: 18px;
    }
    .hero__right, .offer__img {
        justify-content: center;
    }
}
@media (max-width: 700px) {
    .hero__content, .offer__content, .cta__content {
        flex-direction: column;
        align-items: flex-start;
    }
    .hero__img, .offer__img {
        width: 100%;
        max-width: 300px;
        margin: 0 auto;
    }
    .section-title {
        font-size: 1.35rem;
    }
    .products__grid, .benefits__container, .catalog-preview__list, .recipes-preview__list {
        grid-template-columns: 1fr;
        flex-direction: column;
        gap: 13px;
    }
}
.about-intro {
    background: #fffdf8;
    padding: 38px 0 0 0;
    text-align: center;
}
.about-intro__desc {
    max-width: 700px;
    margin: 0 auto 26px auto;
    font-size: 1.14rem;
    color: #684820;
}

.about-mission, .about-experience, .about-brand, .about-team {
    max-width: 700px;
    margin: 0 auto 30px auto;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 1px 9px rgba(200,180,100,0.07);
    padding: 26px 22px 18px 22px;
}
.about-mission h2,
.about-experience h2,
.about-brand h2,
.about-team h2 {
    font-size: 1.25rem;
    color: #a77138;
    font-weight: 700;
    margin-bottom: 9px;
}
.about-mission p,
.about-brand p,
.about-team p {
    color: #694b1c;
    font-size: 1.07rem;
}
.about-list {
    color: #6d4b1c;
    font-size: 1.07rem;
    padding-left: 18px;
    margin: 0;
    list-style-type: disc;
}
.about-list li {
    margin-bottom: 6px;
}

@media (max-width: 700px) {
    .about-intro__desc,
    .about-mission, .about-experience, .about-brand, .about-team {
        padding: 14px 7px 11px 7px;
        font-size: 1.01rem;
    }
}
.contacts {
    background: #fffdf8;
    padding: 38px 0 38px 0;
}
.contacts__row {
    max-width: 950px;
    margin: 0 auto;
    display: flex;
    gap: 40px;
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 0 18px;
}
.contacts__info {
    flex: 1;
    min-width: 260px;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 1px 9px rgba(200,180,100,0.08);
    padding: 26px 22px 18px 22px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.contacts__block {
    margin-bottom: 4px;
}
.contacts__label {
    color: #a77138;
    font-weight: 600;
    font-size: 1.04rem;
    margin-bottom: 2px;
}
.contacts__value {
    color: #694b1c;
    font-size: 1.07rem;
    text-decoration: none;
}
.contacts__formmap {
    flex: 1.2;
    min-width: 300px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.contacts__form {
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 1px 9px rgba(200,180,100,0.08);
    padding: 21px 17px 14px 17px;
    display: flex;
    flex-direction: column;
    gap: 11px;
}
.contacts__form-title {
    font-weight: 700;
    color: #a77138;
    font-size: 1.08rem;
    margin-bottom: 4px;
}
.contacts__form input,
.contacts__form textarea {
    border: 1px solid #f3e5c0;
    border-radius: 9px;
    padding: 8px 10px;
    font-size: 1.01rem;
    margin-bottom: 6px;
    font-family: inherit;
    resize: none;
}
.contacts__form input:focus,
.contacts__form textarea:focus {
    outline: none;
    border-color: #cf9309;
    background: #fffef8;
}
.contacts__form-btn {
    background: #cf9309;
    color: #fff;
    border-radius: 30px;
    padding: 10px 25px;
    font-size: 1rem;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background 0.13s;
    margin-top: 4px;
}
.contacts__form-btn:hover {
    background: #a77138;
}
.contacts__map {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 1px 9px rgba(200,180,100,0.07);
    margin-top: 9px;
    overflow: hidden;
}

@media (max-width: 900px) {
    .contacts__row {
        flex-direction: column;
        gap: 18px;
    }
    .contacts__formmap {
        min-width: 0;
    }
}
@media (max-width: 700px) {
    .contacts {
        padding: 18px 0 18px 0;
    }
    .contacts__info,
    .contacts__form {
        padding: 13px 7px 9px 7px;
        font-size: 0.97rem;
    }
    .contacts__map iframe {
        height: 130px;
    }
}
.recipes-main {
    background: #fffdf8;
    padding: 38px 0 22px 0;
}
.recipes-main__desc {
    max-width: 720px;
    margin: 0 auto 22px auto;
    text-align: center;
    color: #684820;
    font-size: 1.13rem;
}

.recipes-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 28px;
    max-width: 1150px;
    margin: 0 auto;
    padding: 0 18px;
}
.recipe-card {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 2px 10px rgba(160,110,30,0.07);
    padding: 19px 14px 17px 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.recipe-card__img {
    width: 82px;
    height: 82px;
    object-fit: contain;
    margin-bottom: 11px;
}
.recipe-card__title {
    font-weight: 600;
    color: #5a3e18;
    margin-bottom: 7px;
    font-size: 1.11rem;
}
.recipe-card__desc {
    color: #694b1c;
    font-size: 1rem;
    margin-bottom: 9px;
}
.recipe-card__link {
    background: #cf9309;
    color: #fff;
    border-radius: 25px;
    padding: 8px 21px;
    font-size: 0.97rem;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.14s;
    margin-top: auto;
}
.recipe-card__link:hover {
    background: #a77138;
}

.recipes-inspire {
    max-width: 780px;
    margin: 36px auto 18px auto;
    background: #fff;
    border-radius: 17px;
    box-shadow: 0 1px 8px rgba(200,180,100,0.08);
    padding: 27px 22px 16px 22px;
}
.recipes-inspire__title {
    font-weight: 700;
    color: #a77138;
    font-size: 1.14rem;
    margin-bottom: 8px;
}
.recipes-inspire__list {
    color: #684820;
    font-size: 1.06rem;
    padding-left: 18px;
    margin: 0;
    list-style-type: disc;
}
.recipes-inspire__list li {
    margin-bottom: 5px;
}

/* Упоминание morsika.ru */
.recipes-morsika {
    max-width: 740px;
    margin: 35px auto 0 auto;
    background: #f7e7c6;
    border-radius: 14px;
    box-shadow: 0 1px 7px rgba(180,120,40,0.04);
    padding: 17px 19px 13px 19px;
    font-size: 1.06rem;
    color: #866037;
    text-align: center;
}
.recipes-morsika__text a {
    color: #b58445;
    text-decoration: underline dotted;
    transition: color 0.13s;
}
.recipes-morsika__text a:hover {
    color: #cf9309;
    text-decoration: underline;
}

@media (max-width: 800px) {
    .recipes-list {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .recipes-inspire {
        padding: 13px 7px 8px 7px;
    }
    .recipes-morsika {
        padding: 9px 5px 6px 5px;
    }
}
