.mobile-shop-start { display: none; }

@media (max-width: 767px) {
    .home-pages-2 { background: #fff; }

    .mobile-shop-start {
        display: block;
        padding: 14px 0 5px;
        background: #fff;
    }

    .mobile-shop-search {
        display: flex;
        height: 52px;
        padding: 0 7px 0 16px;
        align-items: center;
        border: 1px solid #dce8d2;
        border-radius: 17px;
        background: #f7faf4;
        box-shadow: 0 8px 22px rgba(25, 58, 68, .06);
        gap: 10px;
    }

    .mobile-shop-search > i { color: #6fa92e; font-size: 18px; }
    .mobile-shop-search input {
        min-width: 0;
        height: 100%;
        flex: 1;
        border: 0;
        outline: 0;
        background: transparent;
        color: #173947;
        font-size: 14px;
    }
    .mobile-shop-search input::placeholder { color: #7e8d91; opacity: 1; }
    .mobile-shop-search button {
        display: grid;
        width: 39px;
        height: 39px;
        flex: 0 0 39px;
        padding: 0;
        place-items: center;
        border: 0;
        border-radius: 13px;
        background: #79b934;
        color: #fff;
    }

    .mobile-shop-shortcuts {
        display: flex;
        margin: 10px -12px 0 0;
        padding: 0 12px 7px 0;
        overflow-x: auto;
        scrollbar-width: none;
        gap: 8px;
    }
    .mobile-shop-shortcuts::-webkit-scrollbar { display: none; }
    .mobile-shop-shortcuts a {
        display: inline-flex;
        min-height: 34px;
        padding: 0 13px;
        flex: 0 0 auto;
        align-items: center;
        border: 1px solid #e0ead8;
        border-radius: 999px;
        background: #fff;
        color: #31515d;
        font-size: 12px;
        font-weight: 800;
        text-decoration: none;
        gap: 6px;
    }
    .mobile-shop-shortcuts a:first-child { border-color: #d9eac9; background: #eff7e6; color: #5c9222; }

    /* En celular se prioriza empezar a comprar. */
    .home-intro { padding: 10px 0 4px; }
    .home-intro__inner {
        min-height: 0;
        padding: 23px 21px;
        display: block;
        border-radius: 21px;
    }
    .home-intro__inner > div:first-child > span,
    .home-intro p,
    .home-intro__symbol { display: none; }
    .home-intro h1 { max-width: 300px; margin: 0 0 16px; font-size: 27px; line-height: 1.05; }
    .home-intro a { padding: 10px 14px; border-radius: 12px; font-size: 12px; }

    /* Orden específico de compra para móvil, independientemente del orden editorial de escritorio. */
    .professional-home [data-home-section="categories"] { order: 1 !important; }
    .professional-home > .home-swapped-hero { order: 2 !important; }
    .professional-home [data-home-section="personal"] { order: 2 !important; }
    .professional-home [data-home-section="featured"] { order: 3 !important; }
    .professional-home [data-home-section="needs"] { order: 4 !important; }
    .professional-home [data-home-section="recommendations"] { order: 5 !important; }
    .professional-home [data-home-section="promotions_featured"] { order: 6 !important; }
    .professional-home [data-home-section="repurchase"] { order: 7 !important; }
    .professional-home [data-home-section="news"] { order: 8 !important; }
    .professional-home [data-home-section="brands"] { order: 9 !important; }
    .professional-home [data-home-section="viewed"] { order: 10 !important; }
    .professional-home [data-home-section="promotions_brands"] { order: 11 !important; }
    .professional-home [data-home-section="benefits"] { order: 12 !important; }

    .professional-home .home3-categoty-area { padding-top: 20px !important; margin-bottom: 28px !important; }
    .home3-categoty-area .row.mb-60 { margin-bottom: 18px !important; }
    .home3-categoty-area .section-title3 h2 { justify-content: flex-start; font-size: 23px !important; text-align: left; }
    .home3-categoty-area .section-title3 h2 img { width: 17px; }
    .home3-categoty-area .category-card { width: 100%; max-width: 164px; height: 184px; border-radius: 23px; }
    .home3-categoty-area .category-card .category-card-inner .category-card-front { padding: 15px 10px 14px; border-radius: 23px; }
    .home3-categoty-area .category-card .category-card-inner .category-card-front::before { width: 103px; height: 103px; top: 9px; }
    .home3-categoty-area .category-card .category-card-inner .category-card-front .category-icon { width: 94px; height: 94px; margin-bottom: 4px; }
    .home3-categoty-area .category-card .category-card-inner .category-card-front .category-icon img { width: 84px; height: 84px; }
    .home3-categoty-area .category-card .category-card-inner .category-card-front .content h4 { font-size: 14px; }
    .home3-categoty-area .category-card .content span { font-size: 10px; }
    .home3-categoty-area .category-arrow { right: 10px; bottom: 10px; width: 27px; height: 27px; }

    .showcase-section,
    .featured-brands,
    .shop-by-need,
    .showcase-section--personal { margin-bottom: 42px; }
    .showcase-section--personal { padding: 34px 0; }
    .showcase-heading { margin-bottom: 18px; gap: 10px; }
    .showcase-heading span { margin-bottom: 5px; font-size: 9px; }
    .showcase-heading h2 { font-size: 24px; line-height: 1.08; }
    .showcase-heading p { display: none; }
    .showcase-heading__actions { width: 100%; justify-content: space-between; }
    .showcase-heading__actions > a { margin-right: auto; padding: 8px 12px; }
    .home-carousel-button { width: 35px; height: 35px; }

    /* El pedido activo sí es útil; el saludo largo no. */
    .personal-home { padding: 0 0 30px; }
    .personal-home__shell { display: block; padding: 0; border: 0; background: transparent; box-shadow: none; }
    .personal-home__shell::after,
    .personal-home__welcome { display: none; }
    .personal-home__shell--simple { display: none; }
    .active-order-card { padding: 17px; border-color: #dce8d3; box-shadow: 0 10px 24px rgba(18,52,69,.07); }
    .active-order-card h3 { margin-top: 16px; font-size: 18px; }
    .active-order-card > p { display: none; }
    .active-order-card__steps { margin-bottom: 13px; }

    .home-needs-carousel { margin-right: -12px; padding-right: 12px; }
    .need-card { min-width: 0; min-height: 112px; padding: 16px; border-radius: 19px; }
    .need-card__icon { width: 42px; height: 42px; flex-basis: 42px; border-radius: 13px; }
    .need-card h3 { font-size: 14px; }
    .need-card p { display: none; }
    .need-card small { display: block; margin-top: 9px; }

    .home-promotions { padding: 6px 0 32px; }
    .home-promo,
    .home-promotions__grid--3 .home-promo {
        min-height: 0;
        padding: 17px;
        align-items: center;
        flex-direction: row;
        border-radius: 20px;
        gap: 13px;
    }
    .home-promo__visual,
    .home-promotions__grid--3 .home-promo__visual { width: 50px; height: 50px; flex-basis: 50px; border-radius: 15px; }
    .home-promo__visual i,
    .home-promotions__grid--3 .home-promo__visual i { font-size: 23px; }
    .home-promo__content > span { margin-bottom: 4px; font-size: 8px; }
    .home-promo__content h2,
    .home-promotions__grid--3 .home-promo__content h2 { font-size: 18px; }
    .home-promo__content p { display: none; }
    .home-promo__content a { margin-top: 10px; padding: 7px 10px; font-size: 10px; }

    .brand-heading-tools form { display: none; }
    .brand-heading-tools { width: 100%; justify-content: flex-start; }
    .brand-heading-tools > a { margin-right: auto; }
    .featured-brand-card { min-width: 72vw; min-height: 205px; padding: 16px; border-radius: 20px; }
    .featured-brand-card__products { min-height: 82px; margin: 12px 0 10px; }
    .featured-brand-card__products img { height: 76px; }

    .store-promises { margin: 0 0 30px !important; }
    .store-promises__inner {
        display: flex;
        margin-right: -12px;
        padding-right: 12px;
        overflow-x: auto;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        scrollbar-width: none;
        gap: 9px;
    }
    .store-promises__inner::-webkit-scrollbar { display: none; }
    .store-promises__inner > div {
        min-width: 205px;
        padding: 12px 13px;
        flex: 0 0 205px;
        border: 1px solid #e1eadb !important;
        border-radius: 16px;
        background: #f8fbf5;
        gap: 10px;
    }
    .store-promises i { width: 35px; height: 35px; flex-basis: 35px; border-radius: 11px; font-size: 15px; }
    .store-promises strong { font-size: 12px; }
    .store-promises small { font-size: 10px; }
}
