
/* ===== ОБЩАЯ ШАПКА ===== */
.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    font-family: 'Inter', sans-serif;
}

/* ===== ВЕРХНЯЯ ПОЛОСА ===== */
.top-bar {
    /* background: #8BC34A; салатовый */
    
    /* background: #006D6F;бирюза */
    background: rgba(255, 123, 0, 0.96);

    color: white;
    font-size: 14px;

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 6px 20px;
}

.top-bar a {
    color: white;
    text-decoration: none;
    margin-left: 15px;
    font-weight: 500;
}

.top-bar a:hover {
    text-decoration: underline;
}

/* ===== ОСНОВНОЕ МЕНЮ ===== */
.main-nav {
    background: #ffffff;
    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 14px 20px;

    border-bottom: 1px solid #eee;
}

/* ЛОГО */
.logo {
    font-family: 'Cormorant Garamond', serif;
    font-size: 22px;
    font-weight: 600;
    cursor: pointer;
}

/* МЕНЮ */
.menu {
    display: flex;
    gap: 20px;
}

.menu a {
    text-decoration: none;
    color: #222;
    font-weight: 500;
    font-size: 15px;
    position: relative;
}

.menu a:hover {
    /* color: #8BC34A; */
    color: rgba(255, 123, 0, 0.96);
}

/* ===== ЧТОБЫ КОНТЕНТ НЕ ЛЕЗ ПОД ШАПКУ ===== */
body {
    margin: 0;
    padding-top: 110px; /* важно под sticky шапку */
    padding: 0;
}

h1 {
    margin-top: 0;
}




.promo-bar {
    background: #000;
    color: #fff;

    text-align: center;
    font-size: 14px;
    padding: 8px 10px;

    letter-spacing: 0.3px;
}


.promo-bar {
    background: #000;
    color: #fff;

    display: flex;
    justify-content: center;
    align-items: center;

    position: relative;

    padding: 10px 20px;
}

.promo-text {
    font-size: 14px;
    font-weight: 500;
}


.promo-shop-btn {
    position: absolute;
    right: 20px;
    
    
    background: #fff;
    color: #000;

    border: 1px solid #fff;

    padding: 6px 14px;

    border-radius: 20px;

    font-size: 14px;
    font-weight: 600;

    cursor: pointer;

    transition: all 0.3s ease;
}

.promo-shop-btn:hover {

    
    /* background: #006D6F; */
    background: rgba(255, 123, 0, 0.96);

    /* background: #8BC34A; */
    border-color: #8BC34A;
    color: #fff;
}


.shop-toolbar {

    display: flex;

    align-items: center;

    justify-content: flex-end;
  

    gap: 10px;
    flex-wrap: wrap;
    position: sticky;
    top: 140px; 
    z-index: 950;
    background: white;
}


/* =========================
   ХЛЕБНЫЕ КРОШКИ
========================= */

.breadcrumbs {
    display: flex;
    justify-content: flex-start; /*прижать влево  */
    margin-left: 0;
    padding: 0;
    /* align-items: center; */

    /* width: 100%; */

    /* gap: 6px; */

    
}

.breadcrumbs a {
    color:  rgba(255, 123, 0, 0.96);
    text-decoration: none;
}

.breadcrumbs a:hover {
    color:  rgba(255, 123, 0, 0.96);
    text-decoration: underline;
}

.breadcrumbs span {
    color: #999;
}

.breadcrumbs span:last-child {
    color: #333;
    font-weight: 600;
}








/* =========================================================
   CONSULTATION PAGE
========================================================= */

.consultation-page {
    max-width: 1250px;

    margin: 0 auto;

    padding:
        70px 28px 100px;

    color: #292929;
}


/* =========================================================
   HERO
========================================================= */

.consultation-hero {
    display: grid;

    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(480px, 1.1fr);

    gap: 70px;

    align-items: start;
}


/* =========================================================
   INTRO
========================================================= */

.consultation-intro {
    padding-top: 18px;
}

.consultation-badge {
    display: inline-flex;

    padding: 7px 13px;

    margin-bottom: 22px;

    border-radius: 999px;

    background: #fff1e3;

    color: #d96500;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.4px;
}

.consultation-intro h1 {
    margin: 0 0 25px;

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size:
        clamp(46px, 5vw, 68px);

    line-height: 1.02;

    font-weight: 600;

    letter-spacing: -1px;

    color: #242424;
}

.consultation-lead {
    max-width: 570px;

    margin: 0 0 18px;

    color: #4b4b4b;

    font-size: 18px;

    line-height: 1.75;
}

.consultation-description {
    max-width: 550px;

    margin: 0;

    color: #777;

    font-size: 15px;

    line-height: 1.8;
}


/* =========================================================
   POINTS
========================================================= */

.consultation-points {
    margin-top: 38px;

    display: flex;

    flex-direction: column;

    gap: 18px;
}

.consultation-point {
    display: grid;

    grid-template-columns: 48px 1fr;

    gap: 15px;

    align-items: start;
}

.consultation-point > span {
    color: #ff7b00;

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size: 20px;

    font-weight: 600;
}

.consultation-point strong {
    display: block;

    margin-bottom: 3px;

    color: #333;

    font-size: 15px;
}

.consultation-point p {
    margin: 0;

    color: #888;

    font-size: 13px;

    line-height: 1.6;
}

.consultation-note {
    margin-top: 32px;

    padding: 15px 18px;

    border-left:
        3px solid #ff7b00;

    background: #fff8f0;

    color: #775b43;

    font-size: 13px;
}


/* =========================================================
   FORM CARD
========================================================= */

.consultation-form-card {
    padding: 42px;

    border:
        1px solid rgba(0, 0, 0, .07);

    border-radius: 26px;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #faf8f5
        );

    box-shadow:
        0 20px 50px
        rgba(0, 0, 0, .08);
}

.form-heading {
    margin-bottom: 30px;
}

.form-heading > span {
    color: #ff7b00;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;
}

.form-heading h2 {
    margin: 9px 0 9px;

    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;

    font-size: 36px;

    font-weight: 600;

    line-height: 1.1;

    color: #242424;
}

.form-heading p {
    margin: 0;

    color: #888;

    font-size: 13px;

    line-height: 1.6;
}


/* =========================================================
   FORM
========================================================= */

.consultation-form {
    display: flex;

    flex-direction: column;

    gap: 20px;
}

.form-group {
    display: flex;

    flex-direction: column;

    gap: 8px;
}

.form-group label {
    color: #555;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: .3px;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;

    padding:
        14px 15px;

    border:
        1px solid #ddd8d2;

    border-radius: 12px;

    background: #ffffff;

    color: #333;

    outline: none;

    font-family: inherit;

    font-size: 14px;

    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        background .25s ease;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
    color: #aaa;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: #ff7b00;

    background: #fffdfb;

    box-shadow:
        0 0 0 3px
        rgba(255, 123, 0, .10);
}

.form-group textarea {
    min-height: 160px;

    resize: vertical;

    line-height: 1.65;
}


/* =========================================================
   CONSENT
========================================================= */

.consultation-consent {
    display: grid;

    grid-template-columns: 18px 1fr;

    gap: 10px;

    align-items: start;

    color: #888;

    font-size: 11px;

    line-height: 1.55;

    cursor: pointer;
}

.consultation-consent input {
    width: 15px;
    height: 15px;

    margin-top: 1px;

    accent-color: #ff7b00;

    cursor: pointer;
}


/* =========================================================
   SUBMIT
========================================================= */

.consultation-submit {
    width: 100%;

    min-height: 56px;

    border: none;

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            #ff7b00,
            #ff9634
        );

    color: #ffffff;

    font-size: 14px;

    font-weight: 600;

    cursor: pointer;

    box-shadow:
        0 12px 25px
        rgba(255, 123, 0, .20);

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.consultation-submit:hover {
    transform: translateY(-2px);

    background:
        linear-gradient(
            135deg,
            #df6800,
            #f08724
        );

    box-shadow:
        0 16px 30px
        rgba(255, 123, 0, .26);
}

.consultation-submit:disabled {
    opacity: .65;

    cursor: wait;

    transform: none;
}

.consultation-submit.loading {
    position: relative;
}


/* =========================================================
   RESULT
========================================================= */

.consultation-result {
    min-height: 0;

    font-size: 13px;

    line-height: 1.6;
}

.consultation-result.success {
    padding: 14px 16px;

    border-radius: 12px;

    background: #edf8ef;

    border:
        1px solid #c9e6cf;

    color: #397246;
}

.consultation-result.error {
    padding: 14px 16px;

    border-radius: 12px;

    background: #fff1ef;

    border:
        1px solid #edcfca;

    color: #a04b43;
}


/* =========================================================
   BOTTOM INFO
========================================================= */

.consultation-bottom {
    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 20px;

    margin-top: 70px;
}

.consultation-bottom-card {
    display: flex;

    align-items: flex-start;

    gap: 18px;

    padding: 26px;

    border-radius: 20px;

    border:
        1px solid rgba(0, 0, 0, .06);

    background: #ffffff;

    box-shadow:
        0 8px 24px
        rgba(0, 0, 0, .045);
}

.bottom-icon {
    width: 44px;
    height: 44px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff1e3;

    color: #ff7b00;

    font-size: 19px;
}

.consultation-bottom-card h3 {
    margin: 0 0 5px;

    color: #333;

    font-size: 15px;
}

.consultation-bottom-card p {
    margin: 0;

    color: #888;

    font-size: 13px;

    line-height: 1.6;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 900px) {

    .consultation-page {
        padding:
            50px 18px 70px;
    }

    .consultation-hero {
        grid-template-columns: 1fr;

        gap: 45px;
    }

    .consultation-intro h1 {
        font-size: 50px;
    }

    .consultation-form-card {
        padding: 30px 24px;
    }

    .consultation-bottom {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 560px) {

    .consultation-intro h1 {
        font-size: 42px;
    }

    .consultation-lead {
        font-size: 16px;
    }

    .consultation-form-card {
        padding: 24px 18px;

        border-radius: 20px;
    }

    .form-heading h2 {
        font-size: 31px;
    }

    .consultation-bottom-card {
        padding: 21px;
    }

}


/* Футер */

.footer {
    margin-top: 80px;

    background: linear-gradient(
    135deg,
    #fff6ea 0%,
    #ffe0b8 45%,
    #ffc26b 100%
    );

    padding: 60px 40px;

    color: #2f2f2f;

    border-top: 1px solid rgba(0,0,0,.08);
}



.footer-container {

    max-width: 1400px;

    margin: 0 auto;

    display: grid;

    grid-template-columns:
        repeat(auto-fit, minmax(250px, 1fr));

    gap: 40px;
}




.footer-column h3,
.footer-column h4 {

    color: #6b4ca5;

    font-weight: 600;
}

.footer-column p {

    margin-bottom: 10px;

    /* color: rgba(255,255,255,.8); */
    color: #333;

    line-height: 1.6;
}





.footer-column a {

    /* color: #3a7f7a; */
    color: rgba(255, 123, 0, 0.96);

    text-decoration: none;

    transition: .3s;
}

.footer-column a:hover {

    color: #6b4ca5;
}


/*  Ниже мобильные версии шапки футера и крошек 06.10.26 */

/* НИЖЕ МОБИЛЬНЫЕ СТИЛИ */



/* =========================================================
   МОБИЛЬНАЯ ВЕРСИЯ
   DESKTOP НЕ ТРОГАЕМ
   ========================================================= */

@media (max-width: 1024px) {

    /* =====================================================
       ЗАЩИТА ОТ ВЫЛЕЗАНИЯ ЗА ЭКРАН
       ===================================================== */

    .site-header,
    .site-header *,
    .breadcrumbs,
    .breadcrumbs * {
        box-sizing: border-box;
    }

    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }


    /* =====================================================
       ВСЯ ШАПКА
       ===================================================== */

    .site-header {
        position: relative;
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }


    /* =====================================================
       ВЕРХНЯЯ ПОЛОСА
       ===================================================== */

    .top-bar {
        width: 100%;
        max-width: 100%;

        display: flex;
        flex-direction: column;

        justify-content: center;
        align-items: center;

        gap: 6px;

        padding: 9px 10px;

        font-size: 15px;
        line-height: 1.4;

        text-align: center;

        overflow: hidden;
    }

    .top-bar-left,
    .top-bar-right {
        width: 100%;
        max-width: 100%;

        display: flex;

        justify-content: center;
        align-items: center;

        flex-wrap: wrap;

        gap: 5px 10px;

        min-width: 0;
    }

    .top-bar-left {
        overflow-wrap: anywhere;
    }

    .top-bar a {
        display: inline-block;

        font-size: 15px;

        margin: 0;
        padding: 3px 0;

        white-space: nowrap;
    }


    /* =====================================================
       ОСНОВНАЯ НАВИГАЦИЯ
       ===================================================== */

    .main-nav {
        width: 100%;
        max-width: 100%;

        display: flex;
        flex-direction: column;

        justify-content: center;
        align-items: center;

        gap: 12px;

        padding: 14px 8px 12px;

        overflow: hidden;
    }


    /* =====================================================
       ЛОГОТИП
       ===================================================== */

    .logo {
        width: 100%;
        max-width: 100%;

        text-align: center;

        font-size: 30px !important;
        line-height: 1.15;

        font-weight: 600;

        padding: 3px 5px;

        overflow-wrap: break-word;
        word-break: normal;
    }


    /* =====================================================
       МЕНЮ
       ===================================================== */

    .menu {
        width: 100%;
        max-width: 100%;

        display: flex;

        flex-wrap: wrap;

        justify-content: center;
        align-items: stretch;

        gap: 7px;

        min-width: 0;

        overflow: hidden;
    }


    /* =====================================================
       ПУНКТЫ МЕНЮ
       ===================================================== */

    .menu a {
        display: flex;

        align-items: center;
        justify-content: center;

        min-height: 44px;

        max-width: 100%;

        padding: 9px 11px;

        border: 1px solid #e5e5e5;
        border-radius: 8px;

        background: #fafafa;

        color: #222;

        font-size: 16px !important;
        font-weight: 600;

        line-height: 1.2;

        text-align: center;

        white-space: normal;

        overflow-wrap: break-word;
        word-break: normal;

        flex: 0 1 auto;

        transition: all 0.2s ease;
    }


    .menu a:active {
        background: rgba(255, 123, 0, 0.96);
        color: white;
    }


    /* =====================================================
       ПРОФИЛЬ
       ===================================================== */

    .menu .profile-link {
        font-size: 16px !important;
    }


    /* =====================================================
       КОРЗИНА
       ===================================================== */

    .menu .cart-link {
        min-width: 50px;

        font-size: 23px !important;

        padding-left: 12px;
        padding-right: 12px;
    }


    /* =====================================================
       PROMO
       ===================================================== */

    .promo-bar {
        position: relative;

        width: 100%;
        max-width: 100%;

        display: flex;

        justify-content: center;
        align-items: center;

        padding: 11px 10px;

        font-size: 15px !important;

        line-height: 1.45;

        text-align: center;

        letter-spacing: 0.1px;

        white-space: normal;

        overflow-wrap: anywhere;

        overflow: hidden;
    }


    .promo-text {
        width: 100%;
        max-width: 100%;

        font-size: 15px !important;
        font-weight: 500;

        line-height: 1.45;

        white-space: normal;

        overflow-wrap: anywhere;
    }


    /* =====================================================
       КНОПКА МАГАЗИНА В PROMO
       ===================================================== */

    .promo-shop-btn {
        position: static;

        margin-top: 7px;

        padding: 8px 14px;

        font-size: 15px;

        border-radius: 20px;

        max-width: 100%;
    }


    /* =====================================================
       TOOLBAR
       ===================================================== */

    .shop-toolbar {
        position: relative;

        top: auto;

        width: 100%;
        max-width: 100%;

        display: block;

        padding: 10px;

        background: #fff;

        border-bottom: 1px solid #eee;

        z-index: 10;

        overflow: hidden;
    }


    /* =====================================================
       ХЛЕБНЫЕ КРОШКИ
       ===================================================== */

    .breadcrumbs {
        width: 100%;
        max-width: 100%;

        display: flex;

        flex-wrap: wrap;

        justify-content: flex-start;
        align-items: center;

        gap: 4px 7px;

        margin: 0;
        padding: 8px 10px;

        font-size: 16px;

        line-height: 1.45;

        overflow: hidden;
    }


    .breadcrumbs a {
        max-width: 100%;

        font-size: 16px !important;

        font-weight: 500;

        padding: 3px 0;

        color: rgba(255, 123, 0, 0.96);

        white-space: normal;

        overflow-wrap: anywhere;
    }


    .breadcrumbs span {
        font-size: 16px !important;

        color: #999;

        line-height: 1.45;

        max-width: 100%;
    }


    .breadcrumbs span:last-child {
        font-size: 16px !important;

        color: #333;

        font-weight: 700;

        overflow-wrap: anywhere;
    }


    /* =====================================================
       НАЗАД
       ===================================================== */

    .breadcrumbs .crumb-back {
        font-size: 17px !important;

        font-weight: 600;

        white-space: nowrap;
    }
}


/* =========================================================
   МАЛЕНЬКИЕ ТЕЛЕФОНЫ
   ========================================================= */

@media (max-width: 430px) {

    .top-bar {
        padding: 8px 7px;
        font-size: 14px;
    }

    .top-bar a {
        font-size: 14px;
    }


    .main-nav {
        padding: 12px 6px 10px;
        gap: 11px;
    }


    .logo {
        font-size: 28px !important;
        padding-left: 3px;
        padding-right: 3px;
    }


    .menu {
        gap: 6px;
    }


    .menu a {
        min-height: 42px;

        padding: 8px 9px;

        font-size: 15px !important;
    }


    .menu .cart-link {
        min-width: 48px;
        font-size: 22px !important;
    }


    .promo-bar {
        padding: 10px 8px;

        font-size: 14px !important;
    }


    .promo-text {
        font-size: 14px !important;
    }


    .breadcrumbs {
        padding: 7px 8px;

        gap: 3px 6px;

        font-size: 15px;
    }


    .breadcrumbs a,
    .breadcrumbs span {
        font-size: 15px !important;
    }


    .breadcrumbs .crumb-back {
        font-size: 16px !important;
    }
}

/* =========================================
   ANNACOS — ЛОГОТИП СЛЕВА В ШАПКЕ
========================================= */

.logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;

    width: 250px;
    height: 44px;

    padding: 0;
    margin: 0;

    flex-shrink: 0;
    overflow: visible;

    cursor: pointer;
    text-decoration: none;
}

.logo-img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: contain;
    object-position: left center;

    transform: scale(1.35);
    transform-origin: left center;
}

/* МОБИЛЬНАЯ ВЕРСИЯ */

@media (max-width: 768px) {
    .logo {
        width: 150px;
        height: 38px;
    }

    .logo-img {
        transform: scale(1.1);
        transform-origin: left center;
    }
}








