.ell-product-card{display:flex;flex-direction:column;min-width:0;border:1px solid #D8CDB8;background:#fff;border-radius:4px;overflow:hidden;color:#2A3A4F}
.ell-product-cover{display:block;width:100%;height:300px;padding:20px;border:0;border-bottom:1px solid #D8CDB8;background:#F5F0E6;cursor:pointer}
.ell-product-cover img{display:block;width:100%;height:100%;object-fit:contain;margin:auto;filter:drop-shadow(0 3px 4px #2a3a4f1a)}
.ell-product-copy{display:flex;flex-direction:column;flex:1;padding:22px}
.ell-product-card h3{font:500 24px/1.3 Lora,serif;color:#2A3A4F;margin:0 0 12px}
.ell-product-fact{font:400 13px/1.8 Poppins,sans-serif;color:#596575;margin:0 0 7px}
.ell-product-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:auto;padding-top:20px}
.ell-product-actions button,.ell-product-tpt,.ell-product-sample{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 13px;font:500 12px/1.5 Poppins,sans-serif;color:#2A3A4F;border:1px solid #D8CDB8;border-radius:3px;background:#fff;text-decoration:none;cursor:pointer}
.ell-product-tpt{background:#C99A3B;border-color:#C99A3B;gap:7px}
.ell-product-sample{border:0;justify-content:start;text-decoration:underline;text-underline-offset:4px;padding:10px 0 0;color:#A8502F}
.ell-product-card :focus-visible,.ell-product-dialog :focus-visible{outline:2px solid #A8502F;outline-offset:3px}
.ell-product-dialog{width:min(900px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;border:1px solid #D8CDB8;border-radius:5px;padding:0;color:#2A3A4F;background:white;font:15px/1.7 Poppins,sans-serif}
.ell-product-dialog::backdrop{background:#2a3a4f80}
.ell-product-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 24px;border-top:4px solid #C99A3B;border-bottom:1px solid #D8CDB8;font-size:12px}
.ell-product-dialog-close{min-width:44px;min-height:44px;border:1px solid #D8CDB8;border-radius:3px;color:#2A3A4F;background:white;font-size:24px;cursor:pointer}
.ell-product-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:32px;padding:30px}
.ell-product-detail>img{width:100%;height:360px;object-fit:contain;background:#F5F0E6;padding:16px;box-sizing:border-box}
.ell-product-detail h2{font:500 31px/1.25 Lora,serif;margin:0 0 18px;color:#2A3A4F}
.ell-product-detail p{font-size:14px;margin:0 0 12px}
.ell-product-detail .ell-product-note{font-size:12px;color:#596575;margin-top:18px}
.ell-product-detail .ell-product-actions{margin-top:20px;padding-top:0}
.ell-product-detail a{font-size:14px}
@media(max-width:640px){.ell-product-cover{height:330px}.ell-product-copy{padding:22px}.ell-product-actions{gap:10px}.ell-product-actions>*{flex:1}.ell-product-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.ell-product-dialog-head{padding:12px 16px}.ell-product-detail{grid-template-columns:1fr;padding:20px;gap:22px}.ell-product-detail>img{height:280px}.ell-product-detail h2{font-size:28px}}

.ell-shelf-details{font:500 13px/1.5 Poppins,sans-serif;min-height:44px;padding:10px 16px;margin:10px 0 0 12px;background:#fff;color:#2A3A4F;border:1px solid #D8CDB8;border-radius:3px;cursor:pointer}@media(max-width:640px){.ell-shelf-details{margin-left:0;display:flex}}

.ell-product-card{scroll-margin-top:100px}.ell-product-card:target{outline:2px solid #C99A3B;outline-offset:5px}.ell-product-actions>a:not(.ell-product-tpt){display:inline-flex;align-items:center;min-height:44px;padding:10px 13px;border:1px solid #D8CDB8;color:#2A3A4F;text-decoration:none;font:500 12px/1.5 Poppins,sans-serif;border-radius:3px}

.ell-cover-pair{height:100%;display:flex;align-items:center;justify-content:center;gap:10px;width:100%}
.ell-product-cover .ell-cover-pair img{width:calc(50% - 5px);height:auto;max-height:100%;object-fit:contain;margin:0}
.ell-detail-cover-pair{display:flex;align-items:center;gap:12px;background:#F5F0E6;padding:18px;min-width:0}
.ell-detail-cover-pair img{display:block;width:calc(50% - 6px);height:auto;max-height:360px;object-fit:contain;filter:drop-shadow(0 3px 4px #2a3a4f1a)}
