body.catalog-is-open{overflow:hidden}
#product-dialog.catalog-dialog{width:min(1150px,calc(100% - 64px));max-width:1150px;height:min(920px,92svh);max-height:92svh;padding:0;border:1px solid #b28c59;border-radius:12px;background:#f6efe2;color:#352217;box-shadow:0 25px 120px #10070290;overflow:hidden}
.catalog-dialog[open]{display:flex;flex-direction:column}
.catalog-dialog [hidden]{display:none!important}
.catalog-top{position:relative;flex-shrink:0;padding:30px 38px 23px;color:#f7ebd6;background:radial-gradient(ellipse at 80% -40%,#805333,#29170e 80%)}
.catalog-top .eyebrow{color:#cfab73;font-size:9px;margin:0 50px 10px 0;letter-spacing:.19em}
#catalog-title{color:#fbf0dd;font-size:46px;line-height:1.12;letter-spacing:-.035em;margin:0 45px 10px 0;outline:none}
#catalog-subtitle{color:#d1b895;font-size:12px;line-height:1.6;margin:0;max-width:710px}
#catalog-close{position:absolute;right:22px;top:22px;color:#efdabb;background:none;border:1px solid #c4a07060;border-radius:50%;width:35px;height:35px;font-size:27px;line-height:1}
#catalog-close:hover{background:#b18b4933}
#catalog-back{background:none;color:#e4c69c;font-size:11px;padding:0 0 14px;min-height:29px}
#catalog-back:hover{text-decoration:underline;text-underline-offset:4px}
#catalog-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-color:#ba9c73 #f0e4d0;scroll-behavior:auto}
.catalog-controls{position:sticky;top:0;z-index:3;background:#f6efe2f5;backdrop-filter:blur(10px);border-bottom:1px solid #cbb99e88;padding:17px 28px 13px}
.catalog-categories{display:flex;gap:3px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#b79768 transparent;padding-bottom:9px;align-items:center}
.catalog-category{flex:0 0 auto;background:none;color:#70563a;font-size:12px;padding:10px 13px;border-radius:5px;min-height:38px;white-space:nowrap;transition:background .15s}
.catalog-category[aria-pressed=true]{background:#825a31;color:#fff0d5}
.catalog-category:hover:not([aria-pressed=true]){background:#e8dac2}
.catalog-search-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:9px}
.catalog-search-label{position:relative;flex:1;max-width:465px;display:flex;align-items:center}
.catalog-search-label>span[aria-hidden]{position:absolute;left:13px;font-size:21px;color:#9a7c58}
#catalog-search{width:100%;height:40px;padding:10px 12px 10px 38px;background:#fffbf4;border:1px solid #cbb696;border-radius:6px;color:#3e2c1d;font:12px Arial,sans-serif;outline-offset:3px}
#catalog-search::placeholder{color:#a18d74}
.catalog-stock-toggle{display:flex;align-items:center;gap:9px;font-size:11px;color:#72583e;white-space:nowrap;cursor:pointer;min-height:40px}
.catalog-stock-toggle input{width:16px;height:16px;accent-color:#80613c}
.catalog-list-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 30px 0;font-size:10px;color:#977c5c}
.catalog-list-summary>span:last-child{color:#a88c68}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:16px 30px 30px}
.catalog-item{position:relative;display:block;padding:7px;text-align:left;min-width:0;border:1px solid #d5bf9b80;border-radius:9px;background:#fff9ee;color:#3d2819;box-shadow:0 3px 10px #6c43200a;transition:border-color .18s,box-shadow .18s}
.catalog-item:hover{border-color:#b78c45;box-shadow:0 5px 20px #79512820}
.catalog-item:focus-visible{outline:2px solid #936d32;outline-offset:3px}
.catalog-photo{display:block;width:100%;aspect-ratio:1;background-color:#3e2617;background-repeat:no-repeat;border-radius:5px;overflow:hidden}
.catalog-item-info{display:flex;flex-direction:column;align-items:flex-start;padding:14px 9px 11px;min-height:133px}
.catalog-item-format{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#a28a6a;margin-bottom:7px}
.catalog-item-name{display:block;font:400 23px/1.2 Georgia,serif;letter-spacing:-.025em;min-height:28px;padding-right:8px}
.catalog-price{display:block;font:400 25px/1.2 Georgia,serif;color:#482c18;white-space:nowrap}
.catalog-price small{font:12px/1.2 Arial,sans-serif;color:#866d4f}
.catalog-item .catalog-price{margin-top:11px}
.catalog-stock{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:400;line-height:1.4}
.catalog-stock:before{content:'';display:block;width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:currentColor}
.catalog-stock.is-available{color:#52683c}
.catalog-stock.is-unavailable{color:#9a5a3e}
.catalog-stock.is-unavailable:before{background:transparent;border:1.5px solid currentColor}
.catalog-item .catalog-stock{margin-top:9px}
.catalog-item-arrow{position:absolute;bottom:16px;right:15px;color:#aa8249;font-size:18px}
.catalog-empty{text-align:center;padding:60px 25px}
.catalog-empty h3{font:30px Georgia,serif;margin:0 0 10px}
.catalog-empty p{font-size:13px;margin:0 0 20px;color:#8b7051}
#catalog-reset,#catalog-detail-back{min-height:42px;border:1px solid #bca17a;background:transparent;border-radius:5px;padding:10px 18px;font-size:12px;color:#6a4b2d}
#catalog-reset:hover,#catalog-detail-back:hover{background:#e9dac1}
.catalog-demo{flex-shrink:0;padding:10px 20px;text-align:center;background:#eadcc5;color:#8a6c45;font-size:9px;line-height:1.4;border-top:1px solid #d7c2a2}
.catalog-detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:30px}
#catalog-detail-photo{align-self:start;position:sticky;top:30px;min-width:0}
#catalog-detail-photo .catalog-photo{border-radius:7px}
.catalog-detail-info{min-width:0}
.catalog-facts{display:flex;flex-wrap:wrap;align-items:center;gap:18px;justify-content:space-between;padding:18px;border:1px solid #d7c09a88;border-radius:7px;background:#fff8e9}
.catalog-facts .catalog-stock{font-size:13px}
.catalog-facts .catalog-price{font-size:34px}
.catalog-weight-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:17px 0 0;font-size:12px;color:#785b3c}
.catalog-weight-row>span{padding:8px 11px;border:1px solid #d0b99880;border-radius:4px}
#catalog-detail-weight{font-weight:600;color:#5a3e24}
#product-dialog #catalog-detail-weight-note{font-size:10px;line-height:1.5;color:#9e8260;margin:12px 0 0}
.catalog-story{border-top:1px solid #cdb69499;margin-top:25px;padding-top:24px}
.catalog-story h3{font:400 29px/1.16 Georgia,serif;letter-spacing:-.025em;margin:0 0 19px;color:#53351f}
#product-dialog .catalog-story p{font-size:13px;line-height:1.8;margin:0 0 18px;color:#7c6146}
.catalog-family{border-left:2px solid #bf9c64;padding-left:17px}
.catalog-family span{display:block;font-size:8px;letter-spacing:.13em;text-transform:uppercase;color:#a68960;margin-bottom:8px}
#product-dialog .catalog-family p{font-size:13px;line-height:1.85;color:#7c6146;white-space:pre-line}
#catalog-detail-back{margin-top:9px}
@media(max-width:1000px){#product-dialog.catalog-dialog{width:calc(100% - 36px)}.catalog-top{padding:26px 28px 21px}#catalog-title{font-size:40px}.catalog-grid{padding:16px 22px 25px;gap:15px}.catalog-controls{padding-left:21px;padding-right:21px}.catalog-item-name{font-size:20px;min-height:48px}.catalog-item-info{padding:11px 6px 9px}.catalog-item .catalog-price{font-size:23px}.catalog-detail-layout{gap:23px;padding:23px}.catalog-facts{display:block}.catalog-facts .catalog-price{margin-top:12px}.catalog-story h3{font-size:27px}}
@media(max-width:640px){#product-dialog.catalog-dialog{width:calc(100% - 16px);height:94svh;max-height:94svh;border-radius:9px}.catalog-top{padding:22px 18px 18px}#catalog-title{font-size:33px;line-height:1.08;margin:0 30px 9px 0}#catalog-subtitle{font-size:10px;line-height:1.6;max-width:300px}.catalog-top .eyebrow{font-size:7px;margin-bottom:10px}#catalog-close{top:14px;right:13px;width:31px;height:31px;font-size:24px}.catalog-controls{padding:11px 12px 10px}.catalog-category{font-size:10px;padding:9px 10px;min-height:35px}.catalog-categories{padding-bottom:5px}.catalog-search-row{gap:10px;margin-top:7px;align-items:center}.catalog-search-label{min-width:0}.catalog-stock-toggle{font-size:9px;gap:5px;white-space:normal;max-width:99px;line-height:1.3}.catalog-stock-toggle input{width:15px;height:15px;flex:0 0 15px;margin:0}#catalog-search{font-size:11px;padding-left:29px;height:37px}.catalog-search-label>span[aria-hidden]{left:9px;font-size:19px}.catalog-list-summary{padding:12px 13px 0;font-size:9px}.catalog-list-summary>span:last-child{display:none}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.catalog-item{padding:5px;border-radius:6px}.catalog-item-info{padding:10px 5px 9px;min-height:126px}.catalog-item-name{font-size:18px;line-height:1.14;min-height:42px}.catalog-item-format{font-size:7px;margin-bottom:6px}.catalog-item .catalog-price{font-size:22px;margin-top:8px}.catalog-price small{font-size:10px}.catalog-stock{font-size:9px;gap:5px}.catalog-stock:before{width:6px;height:6px;flex-basis:6px}.catalog-item-arrow{right:10px;bottom:12px;font-size:13px}.catalog-demo{font-size:8px;padding:8px 12px}.catalog-detail-layout{display:block;padding:17px}.catalog-dialog.shows-detail .catalog-top{padding-top:18px}#catalog-back{font-size:10px;padding-bottom:12px}#catalog-detail-photo{position:static;max-width:310px;margin:0 auto 19px}.catalog-facts{display:flex;padding:15px;gap:14px}.catalog-facts .catalog-price{font-size:30px;margin-top:0}.catalog-facts .catalog-stock{font-size:12px}.catalog-weight-row{font-size:11px;margin-top:13px}.catalog-story{margin-top:20px;padding-top:21px}.catalog-story h3{font-size:28px}.catalog-story p{font-size:12px}#catalog-detail-back{width:100%;margin-top:9px;min-height:45px}.catalog-empty{padding:45px 18px}}
@media(max-width:360px){#catalog-title{font-size:29px}.catalog-grid{gap:8px;padding:10px}.catalog-item-name{font-size:16px}.catalog-price small{font-size:9px}.catalog-item .catalog-price{font-size:21px}.catalog-item-arrow{display:none}.catalog-stock{font-size:8px}.catalog-search-row{gap:8px}.catalog-stock-toggle{max-width:83px}.catalog-detail-layout{padding:13px}}

/* Photo inventory: categories retain the showcase order, groups stay within each category. */
.catalog-groups{display:flex;gap:7px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:thin;scrollbar-color:#b79768 transparent}
.catalog-group{flex:0 0 auto;border:1px solid #d2bd9d;border-radius:20px;padding:8px 13px;color:#795c3d;background:transparent;font:11px Arial,sans-serif;min-height:34px}
.catalog-group[aria-pressed=true]{background:#e7d6bb;border-color:#a17b49;color:#422d1c}
.catalog-photo{background-color:#f4e7d5}
.catalog-photo img{display:block;width:100%;height:100%;object-fit:contain}
.catalog-item-info{min-height:156px}.catalog-item-name{overflow-wrap:anywhere}
.catalog-stock.is-pending{color:#8a765a}.catalog-stock.is-pending:before{background:transparent;border:1px solid currentColor}
.catalog-item .catalog-stock{padding-right:17px}
.catalog-price.is-pending,.catalog-item .catalog-price.is-pending,.catalog-facts .catalog-price.is-pending{font:12px/1.45 Arial,sans-serif;white-space:normal;color:#8a7152}
.catalog-art{min-width:0;align-self:start;position:sticky;top:24px}#catalog-detail-photo{position:static}
#product-dialog #catalog-image-note{font:10px/1.6 Arial,sans-serif;color:#907858;margin:12px 3px 0}
@media(max-width:640px){.catalog-group{font-size:10px;padding:7px 11px;min-height:33px}.catalog-groups{padding-bottom:5px}.catalog-item-info{min-height:153px}.catalog-art{position:static;margin-bottom:20px}#catalog-detail-photo{margin-bottom:0}#catalog-title{font-size:29px}.catalog-dialog.shows-detail #catalog-title{font-size:25px}.catalog-top{padding-bottom:14px}.catalog-item .catalog-price.is-pending{font-size:10px}.catalog-stock.is-pending{font-size:9px}#product-dialog #catalog-image-note{max-width:310px;margin:10px auto 0}}

#catalog-list-view>.catalog-update-note{padding:0 30px}.catalog-group:focus-visible{outline:2px solid #936d32;outline-offset:2px}@media(max-width:640px){#catalog-list-view>.catalog-update-note{padding:0 13px}}
.catalog-item{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch}.catalog-item .catalog-photo{flex:0 0 auto}.catalog-item-info{width:100%;flex:1}

/* Keep shelf-photo crops proportional, including tall bottles and packages. */
.catalog-photo.has-crop{display:grid;place-items:center}.catalog-photo-crop{display:block;background-repeat:no-repeat;border-radius:4px}#product-dialog #catalog-item-updated{font:11px/1.6 Arial,sans-serif;color:#9e8260;margin:14px 0}

/* Keep the accessible search label available without taking visual space. */
.catalog-search-label .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
