#majestic-bag-menu { width: 170px; margin: 9px 0 4px; }
#majestic-bag-menu .majestic-menu-link {
    position: relative; display: flex; align-items: center; gap: 7px;
    box-sizing: border-box; min-height: 76px; padding: 10px 7px;
    border: 1px solid #b99248; border-radius: 3px;
    background: linear-gradient(135deg, #163d36, #092822); color: #f5dfac;
    box-shadow: inset 0 0 0 2px #0d221d, 0 2px 5px #0008;
    text-decoration: none;
}
#majestic-bag-menu .majestic-menu-link:hover,
#majestic-bag-menu .majestic-menu-link[aria-current="page"] { background: #225144; border-color: #eed18c; }
#majestic-bag-menu .majestic-menu-link:focus-visible { outline: 3px solid #ffe9a6; outline-offset: 3px; }
#majestic-bag-menu img { width: 48px; height: 48px; flex-shrink: 0; image-rendering: pixelated; }
#majestic-bag-menu .majestic-menu-copy { display: grid; gap: 5px; }
#majestic-bag-menu strong { font: bold 15px/1.2 Georgia, serif; color: #ffe8b2; white-space: nowrap; }
#majestic-bag-menu .majestic-menu-copy > span { font: 11px/1.3 Arial, sans-serif; color: #deeadb; }
#majestic-bag-menu .majestic-menu-active { visibility: hidden; position: absolute; right: 5px; bottom: 4px; color: #e6c86e; font-size: 9px; }

#majestic-catalog { color: #302a20; font: 14px/1.55 Arial, sans-serif; }
#majestic-catalog * { box-sizing: border-box; }
#majestic-catalog [hidden] { display: none !important; }
#majestic-catalog .majestic-hero {
    display: flex; align-items: center; gap: 22px; padding: 26px 24px;
    border: 1px solid #9b763a; border-radius: 5px;
    background: radial-gradient(ellipse at top left, #396653, #123c31 65%, #0b2c25);
    box-shadow: inset 0 0 0 3px #ffffff08; color: #f7edce;
}
#majestic-catalog .majestic-hero-art {
    display: grid; place-items: center; flex: 0 0 112px; height: 112px;
    border: 1px solid #c29f554d; border-radius: 50%; background: #d6b7640a;
}
#majestic-catalog .majestic-hero img { width: 96px; height: 96px; image-rendering: pixelated; }
#majestic-catalog .majestic-eyebrow { margin: 0 0 6px; font-size: 10px; letter-spacing: 1.7px; color: #ecd18d; font-weight: bold; }
#majestic-catalog h1 { margin: 0 0 10px; font: bold 34px/1.15 Georgia, serif; color: #ffe7ab; text-shadow: 0 2px 2px #0004; }
#majestic-catalog .majestic-intro { margin: 0; max-width: 530px; font-size: 14px; }
#majestic-catalog .majestic-store-info { padding: 15px 0 22px; border-bottom: 1px solid #b6a080; }
#majestic-catalog .majestic-store-info p { margin: 0 0 10px; }
#majestic-catalog .majestic-prices { display: flex; flex-wrap: wrap; gap: 8px; }
#majestic-catalog .majestic-prices span { padding: 5px 11px; border: 1px solid #b39b70; border-radius: 3px; background: #f5e9ce; color: #4b351a; font-size: 12px; }
#majestic-catalog .majestic-list-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; margin: 24px 0 7px; }
#majestic-catalog h2 { margin: 0; font: bold 23px/1.2 Georgia, serif; color: #254638; }
#majestic-catalog .majestic-total { border-radius: 20px; padding: 4px 10px; background: #214d3d; color: #f6e5bd; font-size: 11px; font-weight: bold; }
#majestic-catalog .majestic-description { margin: 0 0 19px; color: #625440; font-size: 12px; }
#majestic-catalog .majestic-search label { display: block; font-weight: bold; margin-bottom: 6px; font-size: 13px; }
#majestic-catalog .majestic-search-row { display: flex; gap: 8px; }
#majestic-catalog input[type="search"] { min-width: 0; width: 100%; height: 43px; border: 1px solid #8d7e63; border-radius: 4px; background: #fffaf0; padding: 10px 12px; font: 14px Arial, sans-serif; color: #222; }
#majestic-catalog button { flex-shrink: 0; min-height: 43px; padding: 8px 15px; border: 1px solid #254638; border-radius: 4px; background: #254638; color: #fff5dc; font: bold 13px Arial, sans-serif; cursor: pointer; }
#majestic-catalog button:hover { background: #37654f; }
#majestic-catalog input:focus-visible, #majestic-catalog button:focus-visible { outline: 3px solid #ac792a; outline-offset: 2px; }
#majestic-catalog .majestic-results-count { margin: 12px 0; font-size: 12px; color: #625440; }
#majestic-catalog .majestic-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 9px; list-style: none; padding: 0; margin: 0; }
#majestic-catalog .majestic-item { display: flex; align-items: center; gap: 10px; min-height: 81px; padding: 10px; border: 1px solid #c2af8c; border-radius: 4px; background: #fffaf0b8; }
#majestic-catalog .majestic-item:hover { background: #fff9e9; border-color: #8e774f; }
#majestic-catalog .majestic-item-art { flex: 0 0 48px; width: 48px; height: 48px; display: grid; place-items: center; }
#majestic-catalog .majestic-item-art img { max-width: 48px; max-height: 48px; width: auto; height: auto; image-rendering: pixelated; }
#majestic-catalog .majestic-item-name { font-size: 13px; line-height: 1.4; font-weight: bold; overflow-wrap: anywhere; }
#majestic-catalog .majestic-empty { padding: 24px; border: 1px dashed #a98a55; text-align: center; background: #fff6df; }
#majestic-catalog .majestic-footer-note { margin: 20px 0 0; padding-top: 14px; border-top: 1px solid #baa585; font-size: 12px; color: #625440; }
@media (max-width: 1100px) {
    #majestic-catalog .majestic-hero { padding: 20px 16px; gap: 14px; }
    #majestic-catalog .majestic-hero-art { flex-basis: 88px; height: 88px; }
    #majestic-catalog .majestic-hero img { width: 80px; height: 80px; }
    #majestic-catalog h1 { font-size: 28px; }
    #majestic-catalog .majestic-grid { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); }
}
