.catalog-2026{background:linear-gradient(180deg,#f8f2eb 0%,#fcf8f4 100%)}
.shipping-note{display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;padding:10px 16px;border:1px solid rgba(196,154,73,.55);border-radius:999px;background:#fff8ec;color:var(--wine);font-size:12px;font-weight:700;letter-spacing:.04em;box-shadow:0 8px 24px rgba(76,23,34,.08)}
.hero,.catalog-2026{position:relative;isolation:isolate;overflow:hidden}
.hero:before,.catalog-2026:before{content:"🐾";position:absolute;z-index:0;color:rgba(196,154,73,.13);font-size:110px;line-height:1;transform:rotate(-18deg);pointer-events:none}
.hero>*,.catalog-2026>*{position:relative;z-index:1}
.hero:before{left:2%;bottom:5%}.catalog-2026:before{right:2%;top:90px;transform:rotate(18deg)}
.catalog-2026 .catalog{grid-template-columns:repeat(4,minmax(0,1fr))}
.catalog-2026 .product{position:relative;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.catalog-2026 .product:after{content:"🐾";position:absolute;right:15px;bottom:14px;color:rgba(196,154,73,.22);font-size:24px;transform:rotate(-12deg);pointer-events:none}
.catalog-2026 .product:hover{transform:translateY(-7px);border-color:rgba(196,154,73,.75);box-shadow:0 18px 42px rgba(76,23,34,.13)}
.catalog-2026 .badge{transition:transform .25s ease,background-color .25s ease}.catalog-2026 .product:hover .badge{transform:translateY(-2px);background:#efdcae}
.catalog-2026 .text-link{position:relative;z-index:1;transition:color .2s ease,letter-spacing .2s ease}.catalog-2026 .text-link:hover{color:var(--gold);letter-spacing:.025em}
.catalog-2026 .visual{height:520px;padding:14px;background:#f1e3d1}
.catalog-2026 .visual img{display:block;width:100%;height:100%;object-fit:contain!important;object-position:center center!important;filter:none;background:#f1e3d1}
.catalog-2026 .visual img{cursor:zoom-in}
.catalog-2026 .product:hover .visual img{transform:none}
.catalog-2026 .product-copy>p:not(.kicker){min-height:68px}
.catalog-2026 .product-copy .price{min-height:0!important;margin:14px 0 12px;color:var(--wine);font:700 25px/1.1 'Cormorant Garamond',serif}
.catalog-note{margin-top:42px;padding:28px;border:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}
.catalog-note p{margin:0;max-width:680px;color:var(--muted);line-height:1.7;font-size:13px}
@media(max-width:1100px){.catalog-2026 .catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.catalog-2026 .catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-note{align-items:flex-start;flex-direction:column}}
@media(max-width:1000px){.catalog-2026 .visual{height:560px}}
@media(max-width:560px){.catalog-2026 .catalog{grid-template-columns:1fr}.catalog-2026 .visual{height:min(680px,160vw);padding:10px}}
@media(prefers-reduced-motion:reduce){.catalog-2026 .product,.catalog-2026 .badge,.catalog-2026 .text-link{transition:none}.catalog-2026 .product:hover{transform:none}}
.product-viewer{width:min(940px,94vw);max-width:none;padding:0;border:0;border-radius:22px;background:#f8f2eb;color:#2a211a;box-shadow:0 25px 90px rgba(42,23,8,.35)}
.product-viewer::backdrop{background:rgba(28,18,12,.78);backdrop-filter:blur(4px)}
.viewer-close{position:absolute;z-index:3;right:14px;top:12px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:#5c3c1c;font-size:28px;cursor:pointer}
.viewer-stage{position:relative;min-height:420px;display:grid;grid-template-columns:56px 1fr 56px;align-items:center;background:#211811;border-radius:22px 22px 0 0;overflow:hidden}
.viewer-stage img{width:100%;height:min(72vh,760px);object-fit:contain}
.viewer-arrow{height:100%;border:0;background:transparent;color:#fff;font-size:48px;cursor:pointer;z-index:2}
.viewer-arrow[hidden]{visibility:hidden}
.viewer-info{padding:20px 24px 24px}.viewer-info h2{font:700 30px 'Cormorant Garamond',serif;color:#5c3c1c;margin:0}.viewer-count{margin:4px 0 14px;color:#5f5145;font-size:12px}
.viewer-thumbs{display:flex;gap:10px;overflow:auto}.viewer-thumbs button{width:78px;height:78px;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:#fff;cursor:pointer}.viewer-thumbs button.active{border-color:#d5b26f}.viewer-thumbs img{width:100%;height:100%;object-fit:cover}
@media(max-width:600px){.viewer-stage{min-height:300px;grid-template-columns:42px 1fr 42px}.viewer-stage img{height:65vh}.viewer-info{padding:16px}.viewer-thumbs button{width:62px;height:62px}}
