/* Matheria catalog navigation: isolated from the block-theme product grid. */
#matheria-catalog-index { box-sizing: border-box; display: flex !important; flex-direction: column !important; align-items: stretch !important; position: relative !important; left: 50% !important; width: min(1180px, calc(100vw - 96px)) !important; max-width: calc(100vw - 96px) !important; margin: 0 0 56px !important; transform: translateX(-50%) !important; color: #171717; }
.wp-block-woocommerce-product-collection.matheria-catalog-collection { display: block !important; width: 100% !important; max-width: none !important; }
#matheria-catalog-index .matheria-category-index-heading { width: 100% !important; max-width: 760px !important; margin: 0 auto 28px !important; text-align: center !important; }
#matheria-catalog-index h2, #matheria-catalog-index h3, #matheria-catalog-index h4 { color: #171717; font-family: Georgia, serif; font-weight: 400; }
#matheria-catalog-index h2 { margin: 0 0 10px; font-size: clamp(30px, 4vw, 46px); line-height: 1.12; }
#matheria-catalog-index .matheria-category-index-heading p { margin: 0; color: #665f55; font-size: 16px; line-height: 1.55; }

/* Landing page: exploration on the left, direct search on the right. */
#matheria-catalog-index .matheria-catalog-landing { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; width: 100% !important; margin: 0 !important; gap: 48px !important; }
#matheria-catalog-index .matheria-catalog-paths, #matheria-catalog-index .matheria-catalog-direct-search { display: flex; min-width: 0; padding: 30px; border: 1px solid #e1d5bd; background: rgba(255,250,240,.42); }
#matheria-catalog-index .matheria-catalog-paths { align-items: stretch; }
#matheria-catalog-index .matheria-catalog-direct-search { align-items: center; }
.matheria-catalog-direct-search-intro { width: 100%; margin: 0 0 22px; }
.matheria-catalog-direct-search-intro h3 { margin: 0; font-size: 30px; line-height: 1.15; }
.matheria-catalog-direct-search-intro p { margin: 8px 0 0; color: #665f55; font-size: 16px; }
#matheria-catalog-index .matheria-catalog-path-grid { display: grid !important; grid-template-columns: 1fr !important; width: 100% !important; max-width: none !important; margin: 0 !important; gap: 16px !important; }
#matheria-catalog-index .matheria-category-grid:not(.matheria-catalog-path-grid) { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100% !important; margin: 0 !important; gap: 20px; }
#matheria-catalog-index .matheria-macro-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 18px !important; align-content: start; }
#matheria-catalog-index .matheria-macro-grid .matheria-category-card { min-height: 220px; }
#matheria-catalog-index .matheria-macro-grid .matheria-category-card-content { padding: 22px 20px; }
#matheria-catalog-index .matheria-macro-grid .matheria-category-card-name { font-size: clamp(24px, 2.25vw, 34px); }
#matheria-catalog-index .matheria-macro-grid .matheria-category-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
.matheria-category-card { position: relative; display: flex; min-width: 0; min-height: 174px; overflow: hidden; border: 1px solid #e1d5bd; background: #fffaf0; color: #171717 !important; text-decoration: none !important; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.matheria-category-card:hover, .matheria-category-card:focus { border-color: #b88a41; box-shadow: 0 10px 24px rgba(74,52,19,.12); transform: translateY(-2px); }
.matheria-category-card:focus-visible, .matheria-back-to-categories:focus-visible, .matheria-shop-search-field:focus-within { outline: 2px solid #8a6a36; outline-offset: 3px; }
.matheria-category-card-media { position: absolute; inset: 0; background: #e8dfcd; }
.matheria-category-image { width: 100%; height: 100%; object-fit: cover; }
.matheria-category-card-monogram { position: absolute; right: 16px; bottom: -22px; color: rgba(138,106,54,.20); font-family: Georgia, serif; font-size: 152px; line-height: 1; }
.matheria-category-card-content { position: relative; z-index: 1; display: flex; flex-direction: column; align-self: flex-end; width: 100%; padding: 25px 52px 23px 24px; background: linear-gradient(90deg, rgba(255,250,240,.97), rgba(255,250,240,.82)); }
.matheria-category-card-name { font-family: Georgia, serif; font-size: 28px; line-height: 1.15; }
.matheria-category-card-count { margin-top: 5px; color: #765a2e; font-size: 13px; font-weight: 600; }
.matheria-category-card-arrow { position: absolute; z-index: 2; right: 18px; bottom: 24px; color: #8a6a36; font-size: 23px; }

#matheria-catalog-index .matheria-global-search { width: 100% !important; margin: 0 !important; padding: 0; border: 0; }
.matheria-shop-search-form { display: flex; align-items: stretch; width: min(100%, 880px); margin: 0 auto; gap: 10px; }
.matheria-shop-search-field { position: relative; display: flex; align-items: center; flex: 1 1 auto; min-width: 0; border: 1px solid #d8c59f; background: #fffaf0; }
.matheria-shop-search-icon { display: inline-flex; align-items: center; justify-content: center; width: 48px; flex: 0 0 48px; color: #8a6a36; font-size: 25px; line-height: 1; }
.matheria-shop-search-field input[type="search"] { width: 100%; min-width: 0; height: 54px; margin: 0; padding: 0 24px 0 0; border: 0 !important; outline: 0 !important; background: transparent !important; box-shadow: none !important; color: #111; font: inherit; font-size: 16px; }
.matheria-shop-search-field input[type="search"]::placeholder { color: #777; opacity: 1; }
.matheria-shop-search-button { flex: 0 0 auto; width: 130px; height: 54px; margin: 0; padding: 0 22px; border: 0 !important; border-radius: 0 !important; background: #ffb74d !important; color: #111 !important; font: inherit; font-size: 16px; cursor: pointer; }
.matheria-shop-search-button:hover { background: #e6a33f !important; }

.matheria-category-index-empty { padding: 28px; border: 1px solid #e3d9c6; text-align: center; }
.matheria-back-to-categories { display: inline-flex; align-items: center; margin: 0 0 14px; color: #765a2e !important; font-size: 14px; font-weight: 600; text-decoration: none !important; }
#matheria-catalog-index .matheria-back-to-categories { align-self: flex-start; }
.matheria-product-history-return { margin-top: 14px; margin-bottom: 24px; }
.matheria-shop-archive-tools { width: 100%; margin: 0 0 32px; }
.matheria-shop-search { width: 100%; margin: 0 0 32px; }
.matheria-shop-search-clear { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); color: #777 !important; font-size: 25px; line-height: 1; text-decoration: none !important; }
.matheria-shop-search-status { max-width: 820px; margin: 12px auto 0; color: #666; font-size: 14px; }

@media (max-width: 760px) {
    #matheria-catalog-index { left: 50% !important; width: calc(100vw - 32px) !important; max-width: calc(100vw - 32px) !important; transform: translateX(-50%) !important; }
    #matheria-catalog-index .matheria-catalog-landing { grid-template-columns: 1fr !important; gap: 16px !important; }
    #matheria-catalog-index .matheria-catalog-paths, #matheria-catalog-index .matheria-catalog-direct-search { padding: 22px; }
    #matheria-catalog-index .matheria-catalog-path-grid, #matheria-catalog-index .matheria-category-grid:not(.matheria-catalog-path-grid) { grid-template-columns: 1fr !important; gap: 14px !important; }
    #matheria-catalog-index .matheria-macro-grid { grid-template-columns: 1fr !important; }
    #matheria-catalog-index .matheria-macro-grid .matheria-category-card:last-child:nth-child(odd) { grid-column: auto; }
    .matheria-category-card { min-height: 180px; }
    .matheria-shop-search-form { flex-direction: column; }
    .matheria-shop-search-button { width: 100%; }
}
