/* Corrections based on the live shop, FAQ and delivery screenshots. */
body.sf-store-catalog #primary,
body.sf-store-catalog .ast-woocommerce-container {
    background: transparent !important;
    box-shadow: none;
}
body.sf-store-catalog .ast-woocommerce-container { padding: 0 !important; }
body.sf-store-catalog #primary { padding-block: 32px; }
body.sf-store-catalog .woocommerce-products-header,
body.sf-store-catalog .ast-archive-description {
    padding: 0 0 24px !important;
    margin: 0 0 24px;
    background: transparent !important;
    border: 0;
    border-bottom: 1px solid #dce2d4;
}
body.sf-store-catalog .woocommerce-products-header .ast-archive-description {
    margin: 0;
    padding: 0 !important;
    border: 0;
}
body.sf-store-catalog :is(.woocommerce-products-header,.ast-archive-description) h1 {
    font-size: clamp(32px, 3.5vw, 46px);
    line-height: 1.15;
    letter-spacing: -.035em;
    margin: 0;
}
body.sf-store-catalog .woocommerce-breadcrumb {
    display: block !important;
    height: auto !important;
    min-height: 0;
    padding: 0;
    margin: 0 0 22px;
    font-size: 13px;
    line-height: 1.6;
}
body.sf-store-catalog ul.products {
    padding: 0 !important;
    margin: 16px 0 40px !important;
    gap: 30px 22px !important;
}
body.sf-store-catalog .sf-shop-categories {
    height: auto;
    min-height: 0;
    padding: 0;
    margin: 0 0 24px;
    justify-content: flex-start;
    align-items: center;
}
body.sf-store-catalog ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
}
body.sf-store-catalog :is(.woocommerce-result-count,.woocommerce-ordering) {
    margin: 0 0 20px;
    font-size: 14px;
}
body.sf-store-catalog .woocommerce-ordering select { font-size: 14px; }
body.sf-help-page .pagehero { padding: 48px 0; }
body.sf-help-page .pagehero h1 {
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.15;
    letter-spacing: -.035em;
}
body.sf-help-page .content {
    width: 100%;
    max-width: 880px;
    margin-inline: auto;
    padding: 44px 28px 64px;
    box-sizing: border-box;
    font-size: 17px;
    color: #253d2d;
}
body.sf-help-page .content :is(p,li) { font-size: 17px; line-height: 1.8; color: #465a49; }
body.sf-help-page .content h2 { font-size: 28px; line-height: 1.3; margin: 34px 0 14px; color: #193e2d; }
body.sf-help-page .content h3 { font-size: 23px; line-height: 1.4; }
body.sf-help-page .content > :first-child { margin-top: 0; }
body.sf-help-page .content a { text-underline-offset: 3px; overflow-wrap: anywhere; }
body.sf-help-page .content :is(a,summary):focus-visible { outline: 3px solid #779642; outline-offset: 5px; border-radius: 3px; }
body.sf-help-page .content details {
    margin: 0 0 14px;
    padding: 0;
    border: 1px solid #dce2d4;
    border-radius: 12px;
    background: #fffdf8;
}
body.sf-help-page .content summary {
    padding: 18px 22px;
    font-size: 17px;
    line-height: 1.5;
    font-weight: 600;
    color: #193e2d;
    cursor: pointer;
}
body.sf-help-page .content summary::marker { color: #51763b; }
body.sf-help-page .content details[open] summary { border-bottom: 1px solid #e7ebdf; }
body.sf-help-page .content details > :not(summary) { margin: 0; padding: 16px 22px 20px; }
body.sf-help-page .content .contactcard { background: #eeefe5; padding: 26px; border-radius: 14px; }
@media(max-width:767px) {
    body.sf-store-catalog #primary { padding-block: 24px; }
    body.sf-store-catalog ul.products { gap: 26px 14px !important; }
    body.sf-store-catalog ul.products li.product .woocommerce-loop-product__title { font-size: 15px !important; }
    body.sf-help-page .pagehero { padding: 34px 0; }
    body.sf-help-page .content { padding: 30px 20px 44px; }
    body.sf-help-page .content :is(p,li,summary) { font-size: 16px; }
    body.sf-help-page .content h2 { font-size: 25px; margin-top: 28px; }
    body.sf-help-page .content summary { padding: 16px; }
    body.sf-help-page .content details > :not(summary) { padding: 14px 16px 18px; }
    body.sf-help-page .contactgrid { grid-template-columns: minmax(0,1fr); }
}
