.product-card__visual{height:250px;min-height:0;padding:0;background:#eef1eb;overflow:hidden}
.product-card__visual img{width:100%;height:100%;display:block;object-fit:cover;mix-blend-mode:multiply;transition:transform .35s}
.product-card:hover .product-card__visual img{transform:scale(1.05)}
.show-more{grid-column:1/-1;justify-self:center;border:1px solid var(--ink);border-radius:999px;background:#fff;color:var(--ink);font:700 1rem "DM Sans";padding:.9rem 1.4rem;cursor:pointer}
.show-more:hover{background:var(--ink);color:#fff}
.cart-line__icon{overflow:hidden;font-size:0}
.cart-line__icon img{width:100%;height:100%;object-fit:cover}
@media(max-width:580px){.product-card__visual{height:150px;min-height:0}}

.product-card__visual--button{width:100%;border:0;cursor:pointer}
.product-card__title-button{border:0;background:transparent;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}
.product-card__title-button:hover{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:4px}
.review-line{display:block;margin:.3rem 0 .55rem;font-size:.78rem;color:#586561}
.stars{letter-spacing:1px;color:var(--orange);font-size:.86rem}.review-line b{color:var(--ink);font-weight:700}
.product-card__actions{display:flex;gap:.55rem;margin-top:1rem}.product-card__actions button{margin-top:0}
.product-card__details{flex:1;border:1px solid var(--teal);border-radius:.8rem;background:#fff;color:var(--teal);font:700 .85rem "DM Sans";padding:.8rem .35rem;cursor:pointer}.product-card__details:hover{background:#e7f0ee}
.product-card__add{flex:1}.product-card__body h3{margin-bottom:.1rem}

.product-dialog{width:min(1080px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);border:0;border-radius:1.25rem;padding:1.5rem;background:#fff;color:var(--ink);box-shadow:0 24px 80px rgba(10,51,58,.28)}
.product-dialog::backdrop{background:rgba(7,35,39,.64);backdrop-filter:blur(3px)}
.product-dialog .modal__close{position:sticky;float:right;top:0;right:0;z-index:5}
.product-detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:2.25rem;align-items:start;padding:.25rem .4rem 1rem}
.product-detail__gallery{min-width:0}.product-detail__main-image{background:#f0f4f1;border-radius:1rem;overflow:hidden;aspect-ratio:1/1}.product-detail__main-image img{width:100%;height:100%;display:block;object-fit:contain;background:#fff}
.product-detail__thumbs{display:flex;gap:.65rem;overflow-x:auto;padding:.8rem .1rem .2rem}.detail-thumb{width:76px;height:76px;flex:0 0 76px;padding:0;border:2px solid transparent;border-radius:.6rem;overflow:hidden;background:#fff;cursor:pointer}.detail-thumb.active,.detail-thumb:hover{border-color:var(--orange)}.detail-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.product-detail__info h2{margin:.25rem 0 .6rem;font:700 clamp(1.7rem,3vw,2.55rem)/1.08 "Outfit",sans-serif}.review-line--detail{margin-bottom:1.25rem;font-size:.92rem}.review-empty{display:block;margin:.4rem 0 1.2rem;color:#60716c;font-size:.88rem}
.detail-price{display:flex;align-items:center;gap:.8rem;margin:.7rem 0}.detail-price span{color:#8c9895;text-decoration:line-through}.detail-price strong{font:700 1.8rem "Outfit",sans-serif;color:var(--teal)}.detail-price small{border-radius:99px;background:var(--orange);padding:.28rem .48rem;color:#fff;font-weight:700;font-size:.72rem}
.availability{display:inline-block;margin:.15rem 0 1.1rem;border-radius:99px;background:#e1f1e9;padding:.38rem .68rem;color:#226747;font-weight:700;font-size:.8rem}.availability--off{background:#f8ece4;color:#a05c31}
.detail-options{margin:1rem 0 1.25rem}.detail-options h3,.product-detail__description h3{margin:0 0 .7rem;font:700 1.05rem "Outfit",sans-serif}.variant-list{display:grid;gap:.55rem}.variant{display:grid;grid-template-columns:1fr auto;gap:.12rem .7rem;border:1px solid #dfe8e4;border-radius:.65rem;padding:.65rem .75rem;font-size:.88rem}.variant b{color:var(--teal)}.variant small{grid-column:1/-1;color:#61726d;font-size:.77rem}.detail-note{margin:.7rem 0 0;color:#61726d;font-size:.8rem;text-align:center}
.product-detail__description{grid-column:1/-1;border-top:1px solid #dbe5e1;margin-top:.2rem;padding-top:1.5rem}.description-content{max-width:850px;color:#40504c;line-height:1.65}.description-content h1,.description-content h2,.description-content h3,.description-content h4{color:var(--ink);font-family:"Outfit",sans-serif}.description-content img{max-width:100%;height:auto;margin:1rem 0;border-radius:.75rem}.description-content table{display:block;max-width:100%;overflow:auto}.description-content a{color:inherit}.detail-loading{min-height:300px;display:grid;place-items:center;color:#60716c;text-align:center}
@media(max-width:720px){.product-dialog{padding:1rem;width:calc(100vw - 1rem);max-height:calc(100vh - 1rem)}.product-detail{grid-template-columns:1fr;gap:1.3rem;padding-top:.8rem}.product-detail__description{grid-column:auto}.product-card__actions{flex-direction:column}.product-card__details,.product-card__add{width:100%}}
