/* Content section additions to the template's style.css (home product carousel, stores, public FAQ, errors). */

/* --- home: optional product cards carousel ------------------------------------------------------------------ */
.home-product-carousel{padding:4rem 0 3rem;background:#fff}
.home-product-carousel__wrapper{max-width:1400px;margin:0 auto;padding:0 1rem}
.home-product-carousel__title{margin:0 0 2rem;text-align:center;font-size:1.875rem;line-height:2.25rem;font-weight:300}
.home-product-carousel__cell{width:25%;min-width:260px;padding:0 .75rem}
.home-product-carousel__cell .product-item{height:100%}
@media (max-width:767px){.home-product-carousel__cell{width:80%}}

/* --- contact form status -------------------------------------------------------------------------------------- */
.contact-page .form-status{margin-top:1rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem}
.contact-page .form-status.-success{background:#eef7ee;color:#1e6b2a}
.contact-page .form-status.-error{background:#fbeeee;color:#a3161a}
.contact-page .field-error{margin:.25rem 0 0;color:#a3161a;font-size:.75rem}
.contact-page .c-f-form__error:not([hidden]){display:block;margin-top:.75rem;color:#a3161a}

/* --- stores ----------------------------------------------------------------------------------------------------- */
.stores-page .stores{width:100%}
.stores__group{margin-top:2.5rem}
.stores__title{margin:0 0 .5rem;font-size:1.5rem;line-height:2rem;font-weight:600}
.stores__text{margin:0 0 1.25rem;color:#535353}
.stores__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}
.store-card{display:flex;flex-direction:column;border:1px solid #e3e3e3;background:#fff}
.store-card__image img{display:block;width:100%;height:190px;object-fit:cover}
.store-card__body{display:flex;flex:1;flex-direction:column;padding:1.25rem}
.store-card__title{margin:0 0 .25rem;font-size:1.125rem;font-weight:600}
.store-card__city{margin:0 0 .75rem;color:#8c8c8c;font-size:.875rem;text-transform:uppercase;letter-spacing:.04em}
.store-card__address,.store-card__line{margin:0 0 .5rem;font-size:.9375rem;line-height:1.4}
.store-card__line a{text-decoration:underline}
.store-card__hours{margin:.5rem 0 0;font-size:.875rem}
.store-card__hours p{margin:.25rem 0 0}
.store-card__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:1rem}
.store-card__actions .pz-button{padding:.5rem 1rem}
.stores__empty{margin:2rem 0}
.stores__note{margin-top:2.5rem}

/* --- public FAQ: the account FAQ without the account menu --------------------------------------------------- */
.faq-public-page .account-wrapper{max-width:1100px;margin-left:auto;margin-right:auto;padding:0 1rem}

/* --- campaigns / voucher empty states ------------------------------------------------------------------------- */
.campaigns__empty,.voucher-products__empty{padding:2rem 0;text-align:center}

/* --- errors ------------------------------------------------------------------------------------------------------- */
.error-page .not-found{padding:4rem 1rem;text-align:center}
.not-found__text{max-width:36rem;margin:1rem auto 2rem}
.not-found__button{display:inline-flex}
.error-bare__header{display:flex;justify-content:center;padding:1.5rem 1rem;border-bottom:1px solid #e3e3e3}
