/* LUISON — lsn-shop.css: catalogue (comercio.html: hero, filters, toolbar, grid, pagination, SEO text, FAQ), product page (producto.html:
   gallery, summary, chips, details, "comprados juntos", related, reviews, review dialog) and the wishlist page (wishlist.html).
   Loaded in the "shop" context; base components are reused, not redefined. */

/* ============ SHOP: hero ============ */
.lsn-shop-hero{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;height:260px;padding:0 var(--lsn-gutter);text-align:center;color:var(--lsn-cream);background:var(--lsn-darker);overflow:hidden}
.lsn-shop-hero__img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.lsn-shop-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(rgba(14,32,24,.7),rgba(14,32,24,.82))}
.lsn-shop-hero__eyebrow{margin:0 -.4em 12px 0;font-size:12px;font-weight:400;letter-spacing:.4em;text-transform:uppercase;color:var(--lsn-gold-light)}
.lsn-shop-hero__title{margin:0 -.12em 0 0;font-family:var(--lsn-serif);font-weight:400;font-size:clamp(40px,5vw,60px);line-height:1.1;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 20px rgba(14,32,24,.45)}

/* ============ SHOP: layout ============ */
.lsn-shop{padding:clamp(40px,5vw,72px) 0 clamp(64px,8vw,100px)}
.lsn-shop__layout{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:64px;align-items:start}
.lsn-shop__main{min-width:0}
.lsn-shop__filters-btn{display:none}
.lsn-shop__filters-icon{position:relative;flex:none;width:12px;height:12px}
.lsn-shop__filters-icon::before,.lsn-shop__filters-icon::after{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:currentColor;transition:transform .25s}
.lsn-shop__filters-icon::after{transform:rotate(90deg)}
.lsn-shop__filters-btn[aria-expanded="true"] .lsn-shop__filters-icon::after{transform:none}

/* ============ SHOP: filters (sidebar form) ============ */
.lsn-shop-filters{position:sticky;top:24px;display:grid;gap:36px;align-content:start;max-height:calc(100vh - 48px);margin:-6px;padding:6px;overflow-y:auto;scrollbar-width:thin}
.lsn-shop-filters__group{min-width:0;margin:0;padding:0;border:0}
.lsn-shop-filters__title{display:block;margin:0 0 12px;padding:0;font-family:var(--lsn-serif);font-size:22px;font-weight:400;line-height:1.3;color:var(--lsn-ink)}
.lsn-shop-filters__search{display:block;width:100%;min-width:0;margin:0;border:1px solid var(--lsn-line);border-radius:0;background:var(--lsn-paper);padding:10px 14px;font:inherit;font-size:14px;color:var(--lsn-ink);-webkit-appearance:none;appearance:none;transition:border-color .2s}
.lsn-shop-filters__search:focus{outline:0;border-color:var(--lsn-gold)}
.lsn-shop-filters__search::placeholder{color:var(--lsn-muted-2);opacity:1}
.lsn-shop-filters .lsn-check{align-items:center;padding:4px 0;font-size:15px}
.lsn-shop-filters .lsn-check input{margin:0;border-color:var(--lsn-gold)}
.lsn-shop-filters__label{display:flex;align-items:baseline;gap:10px}
.lsn-shop-filters__count{font-size:13px;color:var(--lsn-muted-2)}
.lsn-shop-filters__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}
.lsn-shop-swatches{display:flex;flex-wrap:wrap;margin-left:-5px}
.lsn-shop-swatch{position:relative;display:grid;place-items:center;width:36px;height:36px;cursor:pointer}
.lsn-shop-swatch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.lsn-shop-swatch__dot{display:block;width:26px;height:26px;border-radius:50%;border:1px solid var(--lsn-line);background:var(--lsn-sw);transition:box-shadow .2s}
.lsn-shop-swatch input:focus-visible + .lsn-shop-swatch__dot{outline:2px solid var(--lsn-gold-light);outline-offset:4px}
@media (hover:hover){
  .lsn-shop-swatch:hover .lsn-shop-swatch__dot{box-shadow:0 0 0 2px var(--lsn-cream),0 0 0 3px var(--lsn-gold)}
}
.lsn-shop-swatch input:checked + .lsn-shop-swatch__dot{box-shadow:0 0 0 2px var(--lsn-cream),0 0 0 3px var(--lsn-deep)}

/* ============ SHOP: toolbar ============ */
.lsn-shop-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid var(--lsn-line);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--lsn-muted)}
.lsn-shop-bar__count{margin:0}
.lsn-shop-sort{display:flex;align-items:center;margin:0}
.lsn-shop-sort__select{max-width:100%;margin:0;border:0;border-radius:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' fill='none' stroke='%235c5642' stroke-width='1.3'%3E%3Cpath d='M1 1.5l4 4 4-4'/%3E%3C/svg%3E") right 0 center/10px no-repeat;padding:6px 22px 6px 0;font:inherit;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:inherit;text-align-last:right;cursor:pointer;-webkit-appearance:none;appearance:none}
.lsn-shop-sort__select:hover{color:var(--lsn-gold-dark)}
.lsn-shop-sort__select:focus-visible{outline:2px solid var(--lsn-gold-light);outline-offset:4px}

/* ============ SHOP: product cards (also used by "productos relacionados") ============ */
.lsn-shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:48px 28px;margin:0;padding:0;list-style:none}
.lsn-shop-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.lsn-shop-card__media{position:relative;width:100%}
.lsn-shop-card__img{position:relative;display:block;width:100%;margin-bottom:18px;overflow:hidden;background:var(--lsn-sand-deep)}
.lsn-shop-card__img img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform 1s cubic-bezier(.2,.65,.2,1)}
.lsn-shop-card__img::after{content:"";position:absolute;inset:14px;border:1px solid rgba(168,134,74,.85);opacity:0;transform:scale(1.04);transition:opacity .5s,transform .7s cubic-bezier(.2,.65,.2,1);pointer-events:none}
.lsn-shop-card__badge{position:absolute;z-index:1;top:12px;right:12px;background:var(--lsn-deep);color:var(--lsn-gold-light);padding:4px 12px;font-size:10px;letter-spacing:.2em;text-transform:uppercase}
.lsn-shop-card__name{margin:0;font-family:var(--lsn-serif);font-size:22px;font-weight:400;line-height:1.2;letter-spacing:.04em;text-transform:uppercase}
.lsn-shop-card__name a{color:var(--lsn-deep);transition:color .3s}
.lsn-shop-card__name a:hover{color:var(--lsn-gold)}
.lsn-shop-card__sizes{margin:10px 0 6px;font-size:12px;color:var(--lsn-muted)}
.lsn-shop-card__price{margin:0 0 14px;color:var(--lsn-gold);letter-spacing:.06em}
.lsn-shop-card__name + .lsn-shop-card__price{margin-top:6px}
.lsn-shop-card__price ins{text-decoration:none}
.lsn-shop-card__price del{font-size:13px;letter-spacing:0;color:var(--lsn-muted-2)}
.lsn-shop-card .lsn-btn{margin-top:auto}
@media (hover:hover){
  .lsn-shop-card:hover .lsn-shop-card__img img{transform:scale(1.07)}
  .lsn-shop-card:hover .lsn-shop-card__img::after{opacity:1;transform:none}
}

/* ============ SHOP: pagination ============ */
.lsn-shop-pager{margin-top:72px}
.lsn-shop-pager__list{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:0;list-style:none;font-size:13px}
.lsn-shop-pager__item{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--lsn-line);color:var(--lsn-ink)}
a.lsn-shop-pager__item{transition:border-color .2s,color .2s}
a.lsn-shop-pager__item:hover{border-color:var(--lsn-gold);color:var(--lsn-gold)}
.lsn-shop-pager__item[aria-current]{background:var(--lsn-gold);border-color:var(--lsn-gold);color:var(--lsn-deep)}
.lsn-shop-pager__prev{margin-right:auto}
.lsn-shop-pager__next{margin-left:auto}
.lsn-shop-pager__nextlink{display:inline-block;padding:8px 0;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--lsn-ink)}
.lsn-shop-pager__nextlink:hover{color:var(--lsn-gold)}

/* ============ PRODUCT: breadcrumb + main block ============ */
.lsn-prod-crumbs{padding-top:28px}
.lsn-prod{padding:32px 0 clamp(56px,7vw,80px)}
.lsn-prod__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(40px,5vw,72px);align-items:start}

/* gallery: thumbs column + main image (thumbs become a row under the image on mobile) */
.lsn-prod-gallery{display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-areas:"thumbs main";gap:14px;align-items:start}
.lsn-prod-gallery__main{grid-area:main;position:relative;overflow:hidden;background:var(--lsn-sand-deep)}
.lsn-prod-gallery__main img{width:100%;aspect-ratio:3/4;object-fit:cover}
.lsn-prod-gallery__thumbs{grid-area:thumbs;display:grid;gap:10px;margin:0;padding:0;list-style:none}
.lsn-prod-gallery__thumb{display:block;width:100%;padding:0;border:2px solid var(--lsn-cream);outline:1px solid transparent;background:var(--lsn-sand-deep);cursor:pointer;transition:outline-color .25s,opacity .25s}
.lsn-prod-gallery__thumb img{width:100%;aspect-ratio:3/4;object-fit:cover}
.lsn-prod-gallery__thumb[aria-current="true"]{outline-color:var(--lsn-gold)}
.lsn-prod-gallery__thumb:not([aria-current="true"]){opacity:.75}
.lsn-prod-gallery__thumb:hover{opacity:1}
.lsn-prod-gallery__thumb:focus-visible{outline:2px solid var(--lsn-gold-light);outline-offset:3px;opacity:1}

/* summary */
.lsn-prod-info .lsn-eyebrow{margin-bottom:14px}
.lsn-prod-info__title{margin:0 0 14px;font-family:var(--lsn-serif);font-weight:400;font-size:clamp(34px,3.8vw,52px);line-height:1.08;letter-spacing:.03em;text-transform:uppercase;text-wrap:balance}
.lsn-prod-rating{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:14px;font-size:13px}
.lsn-prod-rating__summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.lsn-prod-rating__summary[hidden]{display:none}
.lsn-prod-rating__stars{font-size:20px;line-height:1;letter-spacing:2px;color:var(--lsn-gold)}
.lsn-prod-rating__text{color:var(--lsn-muted)}
.lsn-prod-rating__sep{color:var(--lsn-line)}
.lsn-prod-linkbtn{padding:0;border-width:0 0 1px;border-style:solid;border-color:var(--lsn-gold);background:none;font-family:inherit;font-size:11px;font-weight:inherit;color:var(--lsn-gold);cursor:pointer;transition:color .2s}
.lsn-prod-linkbtn:hover{color:var(--lsn-gold-dark)}
.lsn-prod-info__price{margin:0 0 24px;font-family:var(--lsn-serif);font-size:32px;line-height:1.3;color:var(--lsn-gold)}
.lsn-prod-info__price ins{text-decoration:none}
.lsn-prod-info__price del{margin-left:10px;font-size:.62em;letter-spacing:0;color:var(--lsn-muted-2);text-decoration-thickness:1px}
.lsn-prod-info__intro{margin:0 0 24px;padding-top:24px;border-top:1px solid var(--lsn-line);font-size:17px}
.lsn-prod-facts{display:grid;grid-template-columns:100px minmax(0,1fr);gap:6px 16px;margin:0 0 12px;font-size:15px}
.lsn-prod-facts__k{color:var(--lsn-muted-2)}
.lsn-prod-facts__v{margin:0}

/* purchase: size chips, quantity, add to cart */
.lsn-prod-sizes{min-width:0;margin:32px 0;padding:0;border:0}
.lsn-prod-sizes__legend{margin-bottom:10px;padding:0;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--lsn-muted)}
.lsn-prod-sizes__list{display:flex;flex-wrap:wrap;gap:10px}
.lsn-prod-chip{position:relative;display:block;cursor:pointer}
.lsn-prod-chip input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.lsn-prod-chip__label{display:flex;align-items:center;justify-content:center;gap:8px;min-width:48px;height:44px;padding:0 14px;border:1px solid var(--lsn-deep);color:var(--lsn-deep);transition:background .25s,color .25s,border-color .25s}
.lsn-prod-chip input:checked + .lsn-prod-chip__label{background:var(--lsn-deep);color:var(--lsn-cream)}
.lsn-prod-chip input:focus-visible + .lsn-prod-chip__label{outline:2px solid var(--lsn-gold-light);outline-offset:3px}
@media (hover:hover){
  .lsn-prod-chip:hover .lsn-prod-chip__label{border-color:var(--lsn-gold)}
}
.lsn-prod-buy{margin:0 0 40px}
.lsn-prod-buy__row{display:flex;flex-wrap:wrap;gap:14px}
.lsn-prod-buy__add{flex:1;justify-content:center;min-width:200px;height:54px;padding:0 24px;font-size:12px;letter-spacing:.25em}
.lsn-prod-buy__status{margin-top:16px}
.lsn-prod-buy__status:empty{display:none}
.lsn-prod-buy__status a{margin-left:8px}
.lsn-prod-meta{display:grid;gap:4px;margin:28px 0 0;padding:0;list-style:none;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lsn-muted)}
.lsn-prod-meta__k{font-weight:500;color:var(--lsn-deep)}
.lsn-prod-meta a{color:inherit;transition:color .2s}
.lsn-prod-meta a:hover{color:var(--lsn-gold)}

/* ============ PRODUCT: description + additional information ============ */
.lsn-prod-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:clamp(32px,5vw,64px);padding-top:clamp(40px,5vw,56px);padding-bottom:clamp(56px,7vw,80px);border-top:1px solid var(--lsn-line)}
.lsn-prod-details .lsn-heading{margin-bottom:20px}
.lsn-prod-details__col p{margin-bottom:14px;font-size:17px}
.lsn-prod-details__col p:last-child{margin-bottom:0}
.lsn-prod-table{display:grid;grid-template-columns:minmax(100px,140px) minmax(0,1fr);margin:0;border-top:1px solid var(--lsn-line)}
.lsn-prod-table__k,.lsn-prod-table__v{margin:0;padding:12px 0;border-bottom:1px solid var(--lsn-line)}
.lsn-prod-table__k{color:var(--lsn-muted-2)}

/* ============ PRODUCT: section titles, "comprados juntos", related ============ */
.lsn-prod-section-title{margin:0 0 clamp(28px,4vw,48px);font-family:var(--lsn-serif);font-weight:400;font-size:clamp(30px,3.6vw,44px);line-height:1.15;letter-spacing:.08em;text-transform:uppercase}
.lsn-prod-bundle{padding:clamp(56px,7vw,90px) 0}
.lsn-prod-bundle .lsn-prod-section-title{margin-bottom:clamp(28px,3.4vw,40px)}
.lsn-prod-bundle__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:28px}
.lsn-prod-bundle__card{display:grid;align-content:start;gap:8px;min-width:0;padding:14px;border:1px solid var(--lsn-line);background:var(--lsn-paper);cursor:pointer;transition:border-color .25s,box-shadow .25s}
.lsn-prod-bundle__card.lsn-is-on{border-color:var(--lsn-gold);box-shadow:0 0 0 1px var(--lsn-gold)}
.lsn-prod-bundle__box{display:grid;place-items:center;width:16px;height:16px;margin:0;border:1px solid var(--lsn-gold);border-radius:0;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none}
.lsn-prod-bundle__box:checked{background:var(--lsn-gold)}
.lsn-prod-bundle__box:checked::after{content:"✓";color:var(--lsn-deep);font-size:11px;line-height:1}
.lsn-prod-bundle__box:focus-visible{outline:2px solid var(--lsn-gold-light);outline-offset:3px}
.lsn-prod-bundle__img{display:block;aspect-ratio:1;overflow:hidden;background:var(--lsn-sand-deep)}
.lsn-prod-bundle__img img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.lsn-prod-bundle__name{font-size:13px;line-height:1.3}
.lsn-prod-bundle__price{font-size:13px;color:var(--lsn-gold)}
.lsn-prod-bundle__price ins{text-decoration:none}
.lsn-prod-bundle__price del{margin-left:4px;color:var(--lsn-muted-2)}
.lsn-prod-bundle__notice{margin-top:28px}
.lsn-prod-related{padding:clamp(56px,7vw,90px) 0;background:var(--lsn-sand)}
.lsn-prod-related__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:28px;margin:0;padding:0;list-style:none}
.lsn-prod-related .lsn-shop-card__img{margin-bottom:16px;background:var(--lsn-sand-deep)}

/* ============ PRODUCT: review dialog + stars ============ */
.lsn-prod-review{width:min(520px,calc(100% - 32px));max-height:calc(100% - 32px);margin:auto;padding:0;border:1px solid var(--lsn-gold);background:var(--lsn-cream);color:var(--lsn-ink);overflow:auto}
.lsn-prod-review::backdrop{background:rgba(14,32,24,.7)}
.lsn-prod-review__body{position:relative;margin:0;padding:clamp(28px,5vw,44px)}
.lsn-prod-review__body .lsn-eyebrow{margin-bottom:10px}
.lsn-prod-review__close{position:absolute;top:8px;right:8px;width:44px;height:44px;padding:0;border:0;background:none;font-family:inherit;font-size:30px;line-height:1;color:var(--lsn-deep);cursor:pointer;transition:color .2s}
.lsn-prod-review__close:hover{color:var(--lsn-gold)}
.lsn-prod-review__title{margin:0 0 20px;font-family:var(--lsn-serif);font-weight:400;font-size:clamp(28px,4vw,34px);line-height:1.2}
.lsn-prod-review__field{margin-bottom:14px}
.lsn-prod-review__field:last-of-type{margin-bottom:20px}
.lsn-prod-review__err{margin:12px 0 0;font-size:13px;color:var(--lsn-danger)}
.lsn-prod-review__err:empty{margin:0}
.lsn-stars{display:flex;gap:2px;margin:0 0 20px -4px;padding:0;border:0}
.lsn-stars__item{position:relative;display:grid;place-items:center;width:44px;height:44px;cursor:pointer}
.lsn-stars__item input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.lsn-stars__star{display:block;font-family:var(--lsn-sans);font-size:36px;line-height:1;color:var(--lsn-gold);transition:transform .2s}
.lsn-stars__star::before{content:"☆"}
.lsn-stars__star.lsn-is-on::before{content:"★"}
.lsn-stars__item input:focus-visible + .lsn-stars__star{outline:2px solid var(--lsn-gold-light);outline-offset:2px}

/* ============ SHOP: additions for the WordPress build ============ */

/* archive: crumbs, intro, SEO text, FAQ, empty state */
.lsn-shop-crumbs{margin-bottom:clamp(20px,3vw,32px)}
.lsn-shop__layout--plain{grid-template-columns:minmax(0,1fr)}
.lsn-shop-intro{max-width:760px;margin:0 0 28px;font-size:17px;color:var(--lsn-muted)}
.lsn-shop-intro p{margin:0 0 12px}
.lsn-shop-intro>:last-child{margin-bottom:0}
.lsn-shop-seo{padding-bottom:clamp(56px,7vw,90px)}
.lsn-shop-seo__text{font-size:17px}
.lsn-shop-seo__text p{margin:0 0 14px}
.lsn-shop-seo__text :is(h2,h3){margin:28px 0 12px;font-family:var(--lsn-serif);font-weight:400;font-size:26px;line-height:1.2}
.lsn-shop-seo__text a{border-bottom:1px solid var(--lsn-gold)}
.lsn-shop-faq{margin-top:clamp(36px,5vw,56px)}
.lsn-shop-seo__text+.lsn-shop-faq{padding-top:clamp(28px,4vw,44px);border-top:1px solid var(--lsn-line)}
.lsn-shop-faq .lsn-heading{margin:0 0 20px}
.lsn-shop-faq__item{border-bottom:1px solid var(--lsn-line)}
.lsn-shop-faq__item:first-of-type{border-top:1px solid var(--lsn-line)}
.lsn-shop-faq__q{position:relative;display:block;padding:18px 40px 18px 0;list-style:none;font-family:var(--lsn-serif);font-size:21px;line-height:1.3;cursor:pointer}
.lsn-shop-faq__q::-webkit-details-marker{display:none}
.lsn-shop-faq__q::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-family:var(--lsn-sans);font-size:24px;line-height:1;color:var(--lsn-gold)}
.lsn-shop-faq__item[open] .lsn-shop-faq__q::after{content:"−"}
.lsn-shop-faq__q:focus-visible{outline:2px solid var(--lsn-gold-light);outline-offset:-2px}
.lsn-shop-faq__a{padding:0 40px 20px 0;color:var(--lsn-muted)}
.lsn-shop-faq__a p{margin:0 0 10px}
.lsn-shop-empty{padding:clamp(32px,5vw,56px) 24px;text-align:center;background:var(--lsn-sand)}
.lsn-shop-empty__title{margin:0 0 8px;font-family:var(--lsn-serif);font-size:clamp(23px,2.4vw,28px);line-height:1.25}
.lsn-shop-empty__text{margin:0 0 24px;color:var(--lsn-muted)}
.lsn-shop-empty p:last-child{margin-bottom:0}
.lsn-shop-searchform{display:flex;gap:10px}

/* wishlist heart (cards, product page) */
.lsn-wish{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0;border:0;background:none;font:inherit;color:var(--lsn-deep);cursor:pointer;transition:color .2s,background .2s,border-color .2s}
.lsn-wish__icon{flex:none;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;transition:fill .2s,stroke .2s}
.lsn-wish.lsn-is-on .lsn-wish__icon{fill:var(--lsn-gold);stroke:var(--lsn-gold)}
.lsn-wish:hover{color:var(--lsn-gold)}
.lsn-wish__text{font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.lsn-wish--card{position:absolute;z-index:2;top:8px;left:8px;width:44px;height:44px;border-radius:50%;background:rgba(246,241,231,.9)}
.lsn-wish--card:hover{background:var(--lsn-cream)}
.lsn-wish--product{flex:none;min-width:54px;height:54px;padding:0 15px;border:1px solid var(--lsn-deep)}
.lsn-wish--product:hover{border-color:var(--lsn-gold)}
.lsn-wish[disabled]{opacity:.5;pointer-events:none}

/* product summary */
.lsn-prod-rating__summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:inherit}
.lsn-prod-info__intro>:last-child{margin-bottom:0}
.lsn-prod-info__intro :is(p,strong,b){font-weight:400}
.lsn-prod-info__intro p{margin:0 0 10px}
.lsn-prod-guide{margin-top:4px}
.lsn-prod-info .stock,.lsn-prod-buy .stock{margin:0 0 16px;font-size:13px;color:var(--lsn-muted)}
.lsn-prod-info .out-of-stock{color:var(--lsn-danger)}
.lsn-prod-sizes:first-child{margin-top:28px}
.lsn-prod-sizes__select{display:none}
.lsn-prod-chip input:disabled{cursor:not-allowed}
.lsn-prod-chip input:disabled + .lsn-prod-chip__label{border-color:var(--lsn-line);color:var(--lsn-muted-2);text-decoration:line-through;background:transparent}
.lsn-prod-chip input:disabled:checked + .lsn-prod-chip__label{background:transparent;color:var(--lsn-muted-2)}
.lsn-prod-chip--swatch .lsn-prod-chip__label{padding:0 16px 0 12px}
.lsn-prod-chip__dot{display:block;flex:none;width:18px;height:18px;border-radius:50%;border:1px solid var(--lsn-line);background:var(--lsn-sw,transparent)}
.lsn-prod-chip input:checked + .lsn-prod-chip__label .lsn-prod-chip__dot{border-color:var(--lsn-cream)}
.lsn-prod-buy__add.disabled,.lsn-prod-buy__add[disabled]{opacity:.45;cursor:not-allowed}
.lsn-prod-buy__add.disabled:hover{background:var(--lsn-deep);color:var(--lsn-cream)}
.lsn-prod-buy .single_variation_wrap{display:grid;gap:14px}
.lsn-prod-buy .woocommerce-variation:empty{display:none}
.lsn-prod-buy .woocommerce-variation-price{display:none}
.lsn-prod-buy .woocommerce-variation-description p,.lsn-prod-buy .woocommerce-variation-availability p{margin:0;font-size:14px;color:var(--lsn-muted)}
.lsn-prod-buy .woocommerce-variation-availability .out-of-stock{color:var(--lsn-danger)}
.lsn-prod-buy .reset_variations{display:none}
.lsn-prod-buy__row .wc-stripe-clear{flex-basis:100%;height:0}
.lsn-prod-buy__row .wc-stripe-product-checkout-container{flex:1 0 100%;min-width:0}
.lsn-prod-buy__row .wc_stripe_product_payment_methods{display:grid;gap:10px;margin:0;padding:0}
.lsn-prod-buy__row .wc-stripe-product-checkout-container .payment-box{margin:0;padding:0}
.lsn-prod-desc :is(h2,h3):not(.lsn-heading){margin:0 0 14px;font-family:var(--lsn-serif);font-weight:400;font-size:24px;line-height:1.25}
.lsn-prod-desc :is(p,ul,ol){margin:0 0 14px;font-size:17px}
.lsn-prod-table__v p{margin:0}
.lsn-prod-table__v a{border-bottom:1px solid var(--lsn-gold)}

/* "comprados juntos": link card (variable items), total + button */
.lsn-prod-bundle__card--link{color:inherit}
.lsn-prod-bundle__card--link:hover{border-color:var(--lsn-gold)}
.lsn-prod-bundle__box--arrow{border:0;color:var(--lsn-gold);font-size:16px;line-height:1;cursor:inherit}
.lsn-prod-bundle__choose{display:inline-block;margin-left:8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lsn-deep);border-bottom:1px solid var(--lsn-gold)}
.lsn-prod-bundle__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;margin-top:28px;padding-top:24px;border-top:1px solid var(--lsn-line)}
.lsn-prod-bundle__total{margin:0;font-family:var(--lsn-serif);font-size:28px;line-height:1.2;color:var(--lsn-gold)}
.lsn-prod-bundle__total-label{margin-right:12px;font-family:var(--lsn-sans);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--lsn-muted)}
.lsn-prod-bundle__notice[hidden]{display:none}
.lsn-prod-bundle__notice a{margin-left:8px}

/* reviews list */
.lsn-prod-reviews{padding:clamp(56px,7vw,90px) 0;border-top:1px solid var(--lsn-line)}
.lsn-prod-reviews .lsn-prod-section-title{margin-bottom:clamp(20px,3vw,28px)}
.lsn-prod-reviews__avg{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:0 0 28px}
.lsn-prod-reviews__avg-num{font-family:var(--lsn-serif);font-size:44px;line-height:1;color:var(--lsn-gold)}
.lsn-prod-reviews__avg-stars{font-size:20px;letter-spacing:2px;color:var(--lsn-gold)}
.lsn-prod-reviews__avg-count{font-size:13px;color:var(--lsn-muted)}
.lsn-prod-reviews__list{display:grid;margin:0;padding:0;list-style:none}
.lsn-review{padding:24px 0;border-top:1px solid var(--lsn-line)}
.lsn-review:last-child{border-bottom:1px solid var(--lsn-line)}
.lsn-review__top{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:10px}
.lsn-review__stars{font-size:17px;letter-spacing:2px;color:var(--lsn-gold)}
.lsn-review__author{font-weight:500}
.lsn-review__badge{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--lsn-gold-dark)}
.lsn-review__date{margin-left:auto;font-size:12px;color:var(--lsn-muted-2)}
.lsn-review__pending{margin:0 0 12px}
.lsn-review__text p{margin:0 0 10px;font-size:16px}
.lsn-review__text>:last-child{margin-bottom:0}
.lsn-review__photos{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0;padding:0;list-style:none}
.lsn-review__photos a{display:block;width:88px;aspect-ratio:1;overflow:hidden;background:var(--lsn-sand-deep)}
.lsn-review__photos img{width:100%;height:100%;object-fit:cover}
.lsn-prod-reviews__pager ul{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0;padding:0;list-style:none}
.lsn-prod-reviews__pager :is(a,span){display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;border:1px solid var(--lsn-line)}
.lsn-prod-reviews__pager .current{background:var(--lsn-gold);border-color:var(--lsn-gold);color:var(--lsn-deep)}

/* review dialog: photos, honeypot, note */
.lsn-prod-review__photos{margin-bottom:20px}
.lsn-prod-review__photos-label{display:block;margin-bottom:8px;font-size:12px;line-height:1.5;color:var(--lsn-muted)}
.lsn-prod-review__file{display:block;width:100%;font:inherit;font-size:13px}
.lsn-prod-review__file::file-selector-button{margin-right:12px;padding:10px 18px;border:1px solid var(--lsn-deep);background:transparent;font:inherit;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--lsn-deep);cursor:pointer}
.lsn-prod-review__file::file-selector-button:hover{background:var(--lsn-deep);color:var(--lsn-cream)}
.lsn-prod-review__previews{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;list-style:none}
.lsn-prod-review__previews:empty{display:none}
.lsn-prod-review__previews img{display:block;width:64px;height:64px;object-fit:cover;border:1px solid var(--lsn-line)}
.lsn-prod-review__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lsn-prod-review__note{margin:14px 0 0;font-size:12px;color:var(--lsn-muted)}
.lsn-prod-review__note a{border-bottom:1px solid var(--lsn-gold)}
.lsn-prod-review__body.lsn-is-busy{opacity:.6;pointer-events:none}
.lsn-prod-review__ok{margin:0}

/* wishlist page */
.lsn-wlist{padding:clamp(40px,4.5vw,64px) 0 clamp(80px,10vw,140px)}
.lsn-wlist__head{margin-bottom:clamp(28px,3.4vw,48px)}
.lsn-wlist__head .lsn-eyebrow{margin-bottom:10px}
.lsn-wlist__head .lsn-title{overflow-wrap:anywhere}
.lsn-shop-grid[hidden]{display:none}
.lsn-wlist-page .lsn-shop-grid{margin-bottom:clamp(36px,5vw,56px)}
.lsn-wlist-empty{padding:clamp(32px,4vw,44px) 32px;text-align:center;background:var(--lsn-sand)}
.lsn-wlist-empty[hidden]{display:none}
.lsn-wlist-empty__icon{font-family:var(--lsn-serif);font-size:clamp(44px,5vw,56px);line-height:1;color:var(--lsn-gold)}
.lsn-wlist-empty__text{margin:8px 0 0;font-family:var(--lsn-serif);font-size:clamp(23px,2.4vw,28px);line-height:1.25}
.lsn-wlist-cta{margin-top:36px;text-align:center}

/* ============ responsive ============ */
@media (max-width:1100px){
  .lsn-shop__layout{gap:40px}
  .lsn-shop-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:40px 24px}
}
@media (max-width:960px){
  .lsn-shop__layout{grid-template-columns:minmax(0,1fr);gap:24px}
  .lsn-js .lsn-shop__filters-btn{display:flex;justify-content:space-between;min-height:48px}
  .lsn-shop-filters{position:static;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:28px 36px;max-height:none;margin:0;padding:clamp(20px,4vw,28px);overflow:visible;background:var(--lsn-paper);border:1px solid var(--lsn-line)}
  .lsn-js .lsn-shop-filters{display:none}
  .lsn-js .lsn-shop-filters.lsn-is-open{display:grid}
  .lsn-shop-filters__search{font-size:16px}
  .lsn-shop-filters__actions{grid-column:1/-1}
  .lsn-prod__grid{grid-template-columns:minmax(0,1fr)}
  .lsn-prod-gallery{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "thumbs";max-width:600px}
  .lsn-prod-gallery__thumbs{grid-template-columns:repeat(auto-fill,72px);min-width:0}
}
@media (max-width:700px){
  .lsn-shop-hero{height:220px}
  .lsn-shop-filters .lsn-check{min-height:44px}
  .lsn-shop-swatch{width:44px;height:44px}
  .lsn-shop-bar{margin-bottom:24px}
  .lsn-shop-sort__select{min-height:44px;padding-block:12px}
  .lsn-shop-grid,.lsn-prod-related__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 14px}
  .lsn-shop-card__name{font-size:18px}
  .lsn-shop-card .lsn-btn{width:100%;justify-content:center;min-height:44px;padding:12px 6px;font-size:10px;letter-spacing:.12em}
  .lsn-shop-card__badge{top:8px;right:8px;padding:3px 8px;font-size:9px}
  .lsn-shop-pager{margin-top:48px}
  .lsn-shop-pager__list{justify-content:center}
  .lsn-shop-pager__item{width:44px;height:44px}
  .lsn-shop-pager__next{margin-left:0}
  .lsn-shop-pager__prev{margin-right:0}
  .lsn-shop-pager__nextlink{padding:12px 8px}
  .lsn-prod-crumbs{padding-top:20px}
  .lsn-prod{padding-top:24px}
  .lsn-prod-info__price{font-size:30px}
  .lsn-prod-facts{grid-template-columns:80px minmax(0,1fr)}
  .lsn-prod-table{grid-template-columns:minmax(80px,120px) minmax(0,1fr)}
  .lsn-prod-buy__add{min-width:160px}
  .lsn-prod-bundle__grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .lsn-prod-bundle__card{grid-template-columns:20px 96px minmax(0,1fr);grid-template-areas:"box img name" "box img price";align-content:center;align-items:center;gap:4px 14px;padding:12px 14px}
  .lsn-prod-bundle__box{grid-area:box}
  .lsn-prod-bundle__img{grid-area:img}
  .lsn-prod-bundle__name{grid-area:name;align-self:end}
  .lsn-prod-bundle__price{grid-area:price;align-self:start}
  .lsn-prod-bundle__name,.lsn-prod-bundle__price{font-size:14px}
}
@media (max-width:700px){
  .lsn-shop-crumbs{margin-bottom:20px}
  .lsn-shop-faq__q{font-size:19px}
  .lsn-wish--card{top:6px;left:6px}
  .lsn-prod-buy__row .lsn-prod-buy__add{order:3;flex:1 0 100%}
  .lsn-prod-buy__row .lsn-wish--product{order:2;margin-left:auto}
  .lsn-prod-bundle__card--link{grid-template-columns:20px 96px minmax(0,1fr)}
  .lsn-prod-bundle__foot{flex-direction:column;align-items:stretch}
  .lsn-prod-bundle__foot .lsn-btn{justify-content:center}
  .lsn-review__date{margin-left:0;flex-basis:100%}
  .lsn-wlist-empty{padding:32px 20px}
}
@media (prefers-reduced-motion:reduce){
  .lsn-shop-card__img img,.lsn-shop-card__img::after,.lsn-stars__star,.lsn-shop__filters-icon::before,.lsn-shop__filters-icon::after{transition:none}
  .lsn-shop-card:hover .lsn-shop-card__img img{transform:none}
}
