/* =========================================================
   STOREZ — FOOD-GRADE WAREHOUSE STORAGE
   Fully scoped — does NOT override other sections
   ========================================================= */

.storez-food-section {
    width: 100% !important;

    background: #fff !important;

    padding: 90px 20px 80px !important;

    font-family: "Roboto", sans-serif !important;

    box-sizing: border-box !important;

    overflow: hidden !important;
}

.storez-food-section *,
.storez-food-section *::before,
.storez-food-section *::after {
    box-sizing: border-box !important;
}


/* =========================================================
   CONTAINER
   ========================================================= */

.storez-food-container {
    width: 100% !important;

    max-width: 1180px !important;

    margin: 0 auto !important;
}


/* =========================================================
   TOP
   ========================================================= */

.storez-food-top {
    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    padding-bottom: 20px !important;

    border-bottom: 1px solid #dfe3e6 !important;
}


.storez-food-label {
    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 10px !important;

    font-weight: 700 !important;

    letter-spacing: 2px !important;

    color: #e11d07 !important;
}


.storez-food-label span {
    width: 34px !important;

    height: 2px !important;

    display: inline-block !important;

    background: #e11d07 !important;
}


.storez-food-location {
    font-family: "Rubik", sans-serif !important;

    font-size: 10px !important;

    font-weight: 500 !important;

    letter-spacing: 2px !important;

    color: #899199 !important;
}


.storez-food-location b {
    margin: 0 5px !important;

    color: #e11d07 !important;
}


/* =========================================================
   MAIN INTRO
   ========================================================= */

.storez-food-intro {
    display: grid !important;

    grid-template-columns: 1.05fr 0.95fr !important;

    gap: 100px !important;

    padding: 65px 0 70px !important;

    align-items: end !important;
}


/* Heading */

.storez-food-eyebrow {
    margin-bottom: 18px !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 10px !important;

    font-weight: 700 !important;

    letter-spacing: 2px !important;

    color: #929aa1 !important;
}


.storez-food-heading h2 {
    margin: 0 !important;

    font-family: "Rubik", sans-serif !important;

    font-size: 48px !important;

    line-height: 1.06 !important;

    font-weight: 600 !important;

    letter-spacing: -1.3px !important;

    color: #17212b !important;
}


.storez-food-heading h2 em {
    font-style: normal !important;

    color: #e11d07 !important;
}


/* Description */

.storez-food-description {
    max-width: 610px !important;
}


.storez-food-description p {
    margin: 0 0 21px !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 15px !important;

    line-height: 1.85 !important;

    color: #6c7680 !important;
}


.storez-food-description .storez-food-lead {
    font-size: 19px !important;

    line-height: 1.7 !important;

    color: #17212b !important;
}


.storez-food-description strong {
    color: #17212b !important;

    font-weight: 600 !important;
}


/* =========================================================
   REQUIREMENT BANDS
   ========================================================= */

.storez-food-requirements {
    width: 100% !important;

    border-top: 1px solid #dfe3e6 !important;
}


.storez-food-requirement {
    display: grid !important;

    grid-template-columns: 65px 250px 1fr 35px !important;

    align-items: center !important;

    gap: 25px !important;

    min-height: 105px !important;

    padding: 18px 20px !important;

    border-bottom: 1px solid #dfe3e6 !important;

    background: #ffffff !important;

    transition:
        background 0.25s ease,
        padding-left 0.25s ease !important;
}


.storez-food-requirement:hover {
    background: #ffffff !important;

    padding-left: 27px !important;
}


/* Number */

.storez-food-requirement-number {
    font-family: "Rubik", sans-serif !important;

    font-size: 11px !important;

    font-weight: 500 !important;

    color: #e11d07 !important;
}


/* Title */

.storez-food-requirement-title span {
    display: block !important;

    margin-bottom: 5px !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 8px !important;

    font-weight: 700 !important;

    letter-spacing: 1.5px !important;

    color: #a0a7ad !important;
}


.storez-food-requirement-title h3 {
    margin: 0 !important;

    font-family: "Rubik", sans-serif !important;

    font-size: 17px !important;

    font-weight: 500 !important;

    color: #17212b !important;
}


/* Description */

.storez-food-requirement > p {
    margin: 0 !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 13px !important;

    line-height: 1.65 !important;

    color: #737c84 !important;
}


/* Arrow */

.storez-food-arrow {
    width: 30px !important;

    height: 30px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    border: 1px solid #e0e4e7 !important;

    font-size: 15px !important;

    color: #e11d07 !important;

    transition: all 0.25s ease !important;
}


.storez-food-requirement:hover
.storez-food-arrow {
    background: #e11d07 !important;

    border-color: #e11d07 !important;

    color: #ffffff !important;
}


/* =========================================================
   CHECK SECTION
   ========================================================= */

.storez-food-check {
    display: grid !important;

    grid-template-columns: 0.8fr 1.2fr !important;

    gap: 70px !important;

    margin-top: 45px !important;

    padding: 35px 40px !important;

    background: #17212b !important;
}


/* Check heading */

.storez-food-check-heading > span {
    display: block !important;

    margin-bottom: 12px !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 9px !important;

    font-weight: 700 !important;

    letter-spacing: 1.7px !important;

    color: #e11d07 !important;
}


.storez-food-check-heading h3 {
    margin: 0 !important;

    font-family: "Rubik", sans-serif !important;

    font-size: 25px !important;

    line-height: 1.3 !important;

    font-weight: 500 !important;

    color: #ffffff !important;
}


.storez-food-check-heading h3 em {
    font-style: normal !important;

    color: #e11d07 !important;
}


/* Check content */

.storez-food-check-content p {
    margin: 0 0 23px !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 14px !important;

    line-height: 1.75 !important;

    color: #aeb6bd !important;
}


/* Checklist */

.storez-food-check-list {
    display: flex !important;

    flex-wrap: wrap !important;

    gap: 10px !important;
}


.storez-food-check-list span {
    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    padding: 8px 11px !important;

    border: 1px solid rgba(255,255,255,0.12) !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 10px !important;

    color: #c4cbd0 !important;
}


.storez-food-check-list b {
    font-size: 11px !important;

    font-weight: 500 !important;

    color: #e11d07 !important;
}


/* =========================================================
   BOTTOM CTA
   ========================================================= */

.storez-food-bottom {
    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    gap: 30px !important;

    margin-top: 28px !important;

    padding-top: 23px !important;

    border-top: 1px solid #dfe3e6 !important;
}


.storez-food-bottom > div span {
    display: block !important;

    margin-bottom: 4px !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 9px !important;

    font-weight: 700 !important;

    letter-spacing: 1.5px !important;

    color: #e11d07 !important;
}


.storez-food-bottom > div p {
    margin: 0 !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 12px !important;

    color: #7d868e !important;
}


.storez-food-bottom > a {
    display: inline-flex !important;

    align-items: center !important;

    gap: 12px !important;

    padding: 12px 17px !important;

    background: #e11d07 !important;

    color: #ffffff !important;

    font-family: "Roboto", sans-serif !important;

    font-size: 12px !important;

    font-weight: 600 !important;

    text-decoration: none !important;

    transition: background 0.25s ease !important;
}


.storez-food-bottom > a b {
    font-size: 16px !important;

    font-weight: 400 !important;

    transition: transform 0.2s ease !important;
}


.storez-food-bottom > a:hover {
    background: #c91805 !important;

    color: #ffffff !important;

    text-decoration: none !important;
}


.storez-food-bottom > a:hover b {
    transform: translate(3px, -3px) !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .storez-food-section {
        padding: 70px 20px 65px !important;
    }

    .storez-food-intro {
        grid-template-columns: 1fr !important;

        gap: 35px !important;

        padding: 50px 0 55px !important;
    }

    .storez-food-heading h2 {
        font-size: 42px !important;
    }

    .storez-food-requirement {
        grid-template-columns: 50px 210px 1fr 30px !important;

        gap: 18px !important;
    }

    .storez-food-check {
        grid-template-columns: 1fr !important;

        gap: 25px !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .storez-food-section {
        padding: 55px 16px 50px !important;
    }

    .storez-food-top {
        align-items: flex-start !important;

        gap: 15px !important;
    }

    .storez-food-label {
        font-size: 9px !important;

        letter-spacing: 1.5px !important;
    }

    .storez-food-location {
        font-size: 9px !important;

        letter-spacing: 1px !important;
    }

    .storez-food-intro {
        padding: 40px 0 45px !important;

        gap: 30px !important;
    }

    .storez-food-heading h2 {
        font-size: 34px !important;

        line-height: 1.08 !important;

        letter-spacing: -0.7px !important;
    }

    .storez-food-description .storez-food-lead {
        font-size: 17px !important;

        line-height: 1.65 !important;
    }

    .storez-food-description p {
        font-size: 14px !important;

        line-height: 1.75 !important;
    }


    /* Requirement rows become cards */

    .storez-food-requirement {
        grid-template-columns: 35px 1fr 30px !important;

        gap: 12px !important;

        min-height: auto !important;

        padding: 18px 15px !important;
    }

    .storez-food-requirement-number {
        align-self: flex-start !important;

        padding-top: 2px !important;
    }

    .storez-food-requirement-title h3 {
        font-size: 16px !important;
    }

    .storez-food-requirement > p {
        grid-column: 2 / 4 !important;

        font-size: 12px !important;

        line-height: 1.65 !important;
    }

    .storez-food-arrow {
        grid-column: 3 !important;

        grid-row: 1 !important;
    }


    /* Check panel */

    .storez-food-check {
        margin-top: 35px !important;

        padding: 25px 20px !important;

        gap: 25px !important;
    }

    .storez-food-check-heading h3 {
        font-size: 21px !important;
    }

    .storez-food-check-content p {
        font-size: 13px !important;
    }

    .storez-food-check-list {
        gap: 7px !important;
    }

    .storez-food-check-list span {
        font-size: 9px !important;
    }


    /* Bottom */

    .storez-food-bottom {
        flex-direction: column !important;

        align-items: flex-start !important;

        gap: 18px !important;
    }

    .storez-food-bottom > a {
        width: 100% !important;

        justify-content: center !important;
    }

}



/* =========================================================
   STOREZ FOOD-GRADE FAQ
   IMPORTANT:
   - Fully scoped under .storez-food-faq-section
   - Does NOT override existing STOREZ/theme CSS
   - Existing style.css and vendor.min.css remain untouched
   ========================================================= */

.storez-food-faq-section {
    position: relative !important;
    width: 100% !important;
    padding: 110px 0 0 !important;
    background: #ffffff !important;
    overflow: hidden !important;
    font-family: "Roboto", sans-serif !important;
}


/* ---------------------------------------------------------
   SUBTLE BACKGROUND DETAIL
   --------------------------------------------------------- */

.storez-food-faq-section::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 42% !important;
    height: 100% !important;
    background:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(23, 33, 43, 0.018) 100%
        ) !important;
    pointer-events: none !important;
}


/* ---------------------------------------------------------
   MAIN CONTAINER
   --------------------------------------------------------- */

.storez-food-faq-container {
    position: relative !important;
    z-index: 2 !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 30px 95px !important;
    display: grid !important;
    grid-template-columns: 0.82fr 1.45fr !important;
    gap: 95px !important;
    align-items: start !important;
}


/* ---------------------------------------------------------
   LEFT INTRO
   --------------------------------------------------------- */

.storez-food-faq-intro {
    position: relative !important;
    padding-top: 5px !important;
}


.storez-food-faq-label {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 28px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    color: #e11d07 !important;
}


.storez-food-faq-label span {
    display: inline-block !important;
    width: 28px !important;
    height: 2px !important;
    background: #e11d07 !important;
}


.storez-food-faq-intro h2 {
    margin: 0 0 24px !important;
    font-family: "Rubik", sans-serif !important;
    font-size: 44px !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
    letter-spacing: -1.5px !important;
    color: #17212b !important;
}


.storez-food-faq-intro h2 strong {
    display: block !important;
    font-weight: 700 !important;
    color: #17212b !important;
}


.storez-food-faq-intro > p {
    max-width: 390px !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
    color: #68727c !important;
}


/* ---------------------------------------------------------
   FAQ COUNT STAMP
   --------------------------------------------------------- */

.storez-food-faq-stamp {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    margin-top: 55px !important;
    padding-top: 20px !important;
    border-top: 1px solid #e4e7e9 !important;
    max-width: 180px !important;
}


.storez-food-faq-stamp span {
    font-family: "Rubik", sans-serif !important;
    font-size: 42px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    color: #e11d07 !important;
}


.storez-food-faq-stamp small {
    font-size: 9px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    letter-spacing: 1.4px !important;
    color: #8a939b !important;
}


/* ---------------------------------------------------------
   FAQ LIST
   --------------------------------------------------------- */

.storez-food-faq-list {
    position: relative !important;
    border-top: 1px solid #dfe3e6 !important;
}


/* ---------------------------------------------------------
   FAQ ITEM
   --------------------------------------------------------- */

.storez-food-faq-item {
    border-bottom: 1px solid #dfe3e6 !important;
}


/* ---------------------------------------------------------
   QUESTION BUTTON
   --------------------------------------------------------- */

.storez-food-faq-question {
    width: 100% !important;
    min-height: 92px !important;
    padding: 22px 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    display: grid !important;
    grid-template-columns: 55px 1fr 40px !important;
    align-items: center !important;
    gap: 15px !important;
    text-align: left !important;
    cursor: pointer !important;
    font-family: "Roboto", sans-serif !important;
}


/* ---------------------------------------------------------
   NUMBER
   --------------------------------------------------------- */

.storez-food-faq-number {
    font-family: "Rubik", sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #9ba2a8 !important;
    letter-spacing: 1px !important;
    transition: all 0.3s ease !important;
}


/* ---------------------------------------------------------
   QUESTION TITLE
   --------------------------------------------------------- */

.storez-food-faq-title {
    font-family: "Rubik", sans-serif !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
    font-weight: 500 !important;
    color: #17212b !important;
    transition: color 0.3s ease !important;
}


/* ---------------------------------------------------------
   PLUS / MINUS
   --------------------------------------------------------- */

.storez-food-faq-icon {
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #d7dcdf !important;
    border-radius: 50% !important;
    font-size: 19px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    color: #17212b !important;
    transition: all 0.3s ease !important;
}


/* ---------------------------------------------------------
   ANSWER
   --------------------------------------------------------- */

.storez-food-faq-answer {
    display: grid !important;
    grid-template-rows: 0fr !important;
    transition: grid-template-rows 0.35s ease !important;
}


.storez-food-faq-answer p {
    min-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 55px 0 70px !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
    color: #69737c !important;
    transition: padding 0.35s ease !important;
}


/* ---------------------------------------------------------
   ACTIVE FAQ
   --------------------------------------------------------- */

.storez-food-faq-item.storez-food-faq-active
.storez-food-faq-answer {
    grid-template-rows: 1fr !important;
}


.storez-food-faq-item.storez-food-faq-active
.storez-food-faq-answer p {
    padding-top: 0 !important;
    padding-bottom: 28px !important;
}


.storez-food-faq-item.storez-food-faq-active
.storez-food-faq-number {
    color: #e11d07 !important;
}


.storez-food-faq-item.storez-food-faq-active
.storez-food-faq-title {
    color: #e11d07 !important;
}


.storez-food-faq-item.storez-food-faq-active
.storez-food-faq-icon {
    background: #e11d07 !important;
    border-color: #e11d07 !important;
    color: #ffffff !important;
}


/* ---------------------------------------------------------
   HOVER
   --------------------------------------------------------- */

.storez-food-faq-question:hover
.storez-food-faq-title {
    color: #e11d07 !important;
}


.storez-food-faq-question:hover
.storez-food-faq-icon {
    border-color: #e11d07 !important;
}


/* ---------------------------------------------------------
   BOTTOM CTA
   --------------------------------------------------------- */

.storez-food-faq-bottom {
    position: relative !important;
    background: #17212b !important;
    overflow: hidden !important;
}


.storez-food-faq-bottom::after {
    content: "STOREZ" !important;
    position: absolute !important;
    right: 6% !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-family: "Rubik", sans-serif !important;
    font-size: 90px !important;
    font-weight: 700 !important;
    letter-spacing: 8px !important;
    color: rgba(255, 255, 255, 0.025) !important;
    pointer-events: none !important;
}


.storez-food-faq-bottom-inner {
    position: relative !important;
    z-index: 2 !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 34px 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 30px !important;
}


.storez-food-faq-bottom-label {
    display: block !important;
    margin-bottom: 7px !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    color: #e11d07 !important;
}


.storez-food-faq-bottom h3 {
    margin: 0 !important;
    font-family: "Rubik", sans-serif !important;
    font-size: 21px !important;
    line-height: 1.3 !important;
    font-weight: 500 !important;
    color: #ffffff !important;
}


.storez-food-faq-cta {
    display: inline-flex !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 13px 20px !important;
    border: 1px solid rgba(255,255,255,0.25) !important;
    color: #ffffff !important;
    font-family: "Roboto", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: all 0.3s ease !important;
}


.storez-food-faq-cta span {
    font-size: 18px !important;
    line-height: 1 !important;
    transition: transform 0.3s ease !important;
}


.storez-food-faq-cta:hover {
    background: #e11d07 !important;
    border-color: #e11d07 !important;
    color: #ffffff !important;
}


.storez-food-faq-cta:hover span {
    transform: translateX(4px) !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .storez-food-faq-container {
        grid-template-columns: 1fr !important;
        gap: 55px !important;
    }

    .storez-food-faq-intro > p {
        max-width: 600px !important;
    }

    .storez-food-faq-stamp {
        margin-top: 30px !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .storez-food-faq-section {
        padding-top: 70px !important;
    }

    .storez-food-faq-container {
        padding: 0 20px 65px !important;
        gap: 45px !important;
    }

    .storez-food-faq-intro h2 {
        font-size: 34px !important;
        letter-spacing: -1px !important;
    }

    .storez-food-faq-intro > p {
        font-size: 14px !important;
        line-height: 1.7 !important;
    }

    .storez-food-faq-stamp {
        margin-top: 30px !important;
    }

    .storez-food-faq-question {
        min-height: 80px !important;
        grid-template-columns: 35px 1fr 35px !important;
        gap: 10px !important;
    }

    .storez-food-faq-title {
        font-size: 15px !important;
    }

    .storez-food-faq-number {
        font-size: 10px !important;
    }

    .storez-food-faq-icon {
        width: 28px !important;
        height: 28px !important;
        font-size: 17px !important;
    }

    .storez-food-faq-answer p {
        padding-left: 45px !important;
        padding-right: 10px !important;
        font-size: 14px !important;
        line-height: 1.7 !important;
    }

    .storez-food-faq-item.storez-food-faq-active
    .storez-food-faq-answer p {
        padding-bottom: 24px !important;
    }

    .storez-food-faq-bottom-inner {
        padding: 28px 20px !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .storez-food-faq-bottom h3 {
        font-size: 18px !important;
    }

    .storez-food-faq-cta {
        width: auto !important;
    }

    .storez-food-faq-bottom::after {
        display: none !important;
    }

}