/* Carrusel nativo y bordes de vidrio: las ilustraciones conservan sus transparencias. */
.fauna-carousel{max-width:1400px;margin:0 auto;min-width:0}
.carousel-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:4px}
.carousel-hint{margin:0;color:var(--muted);font:12px/1.6 var(--body)}
.carousel-controls{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.carousel-position{min-width:95px;margin-right:8px;text-align:right;color:var(--muted);font:10px/1.5 var(--mono);white-space:nowrap}
.carousel-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(255,250,240,.38);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--pine);font:22px/1 var(--body);box-shadow:inset 0 1px 0 #fff8,0 4px 14px #102b2910;cursor:pointer;transition:background .2s,color .2s}
.carousel-controls button:hover:not(:disabled){background:var(--pine);color:var(--paper)}
.carousel-controls button:disabled{opacity:.35;cursor:default}
.carousel-controls button:focus-visible,.fauna-carousel-track:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
#faunaGrid.fauna-carousel-track{display:flex;gap:20px;max-width:none;margin:0;padding:20px 4px 24px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:4px;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:rgba(16,43,41,.3) transparent;-webkit-overflow-scrolling:touch}
.fauna-carousel-track::-webkit-scrollbar{height:6px}
.fauna-carousel-track::-webkit-scrollbar-thumb{border-radius:5px;background:rgba(16,43,41,.3)}
.fauna-carousel-track>.species-card{flex:0 0 clamp(290px,29vw,360px);scroll-snap-align:start;display:flex;flex-direction:column;min-width:0}
.fauna-carousel-track>.species-card[hidden]{display:none!important}
.fauna-carousel-track .species-info{display:flex;flex-direction:column;flex:1;padding:18px}
.fauna-carousel-track .species-info>.product-purchase{margin-top:auto;padding-top:16px}
.fauna-carousel-track .card-actions{gap:12px;margin-bottom:14px;flex-wrap:wrap}
.fauna-carousel-track .product-art.detail-trigger{position:relative;flex:0 0 auto;height:330px;min-height:0;aspect-ratio:auto;padding:0;display:block;border-radius:20px 20px 0 0}
/* Definite image bounds avoid intrinsic grid sizing pushing the sticker below its frame.
   The bottom reserve accommodates both the full artwork and its shadow during hover. */
.fauna-carousel-track .product-art img{position:absolute;inset:44px 22px 34px;width:calc(100% - 44px);height:calc(100% - 78px);min-height:0;max-width:none;max-height:none;padding:0;object-fit:contain;object-position:center;transform-origin:center}

/* A luminous rim surrounds the sticker panels; the artwork stays sharp. */
.fauna-carousel-track>.species-card,.fauna-carousel-track>.species-card:hover,.landscape-grid>.landscape-card{border:1px solid rgba(255,255,255,.72);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.24),rgba(255,250,240,.06) 55%,rgba(144,185,181,.08));backdrop-filter:blur(14px) saturate(115%);-webkit-backdrop-filter:blur(14px) saturate(115%);box-shadow:inset 0 1px 0 rgba(255,255,255,.65),inset 0 -1px 0 rgba(255,255,255,.2),0 10px 24px rgba(16,43,41,.07);overflow:hidden;transform:none}
.landscape-grid>.landscape-card{padding-bottom:18px}
.landscape-art{border-radius:22px 22px 0 0}
.detail-dialog:not(.detail-dialog--vinyl) .detail-art-stage{border:1px solid rgba(255,255,255,.78);border-radius:20px;background:linear-gradient(145deg,rgba(242,248,242,.86),rgba(220,232,228,.6));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #fff9,0 8px 22px #091e1e18}
.hero-sticker{border:1px solid rgba(255,255,255,.22);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.01));backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);box-shadow:inset 0 1px 0 #fff2}
@media(max-width:760px){
 .carousel-toolbar{align-items:flex-start;gap:12px}.carousel-hint{max-width:210px;font-size:11px}.carousel-controls{gap:6px}.carousel-position{display:none}
 #faunaGrid.fauna-carousel-track{gap:14px;padding:16px 3px 22px}
 .fauna-carousel-track>.species-card{flex-basis:min(80vw,340px)}
 .fauna-carousel-track .product-art.detail-trigger{height:310px;padding:0}
 .fauna-carousel-track .species-info{padding:16px}.fauna-carousel-track .species-info h3{font-size:22px}.fauna-carousel-track .species-info>p{font-size:10px}
}
@media(max-width:359px){.carousel-hint{max-width:150px}.fauna-carousel-track>.species-card{flex-basis:calc(100vw - 58px)}.fauna-carousel-track .product-art.detail-trigger{height:285px}.fauna-carousel-track .species-info{padding:13px}}
@media(prefers-reduced-motion:reduce){#faunaGrid.fauna-carousel-track{scroll-behavior:auto}.carousel-controls button{transition:none}}

/* Shared tracks for fauna, landscapes and vehicle vinyls. */
.catalog-carousel{max-width:1400px;margin:0 auto;min-width:0}
#faunaGrid.catalog-carousel-track,#landscapeGrid.catalog-carousel-track,#vinylGrid.catalog-carousel-track{display:flex;gap:20px;max-width:none;margin:0;padding:20px 4px 24px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:4px;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:rgba(16,43,41,.3) transparent;-webkit-overflow-scrolling:touch}
.catalog-carousel-track>*{flex:0 0 clamp(290px,29vw,360px);scroll-snap-align:start;min-width:0}
.catalog-carousel-track>.landscape-card,.catalog-carousel-track>.vinyl-card{flex-basis:clamp(290px,40%,480px)}
.catalog-carousel-track>*[hidden]{display:none!important}
.catalog-carousel-track:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.catalog-carousel-track::-webkit-scrollbar{height:6px}
.catalog-carousel-track::-webkit-scrollbar-thumb{border-radius:5px;background:rgba(16,43,41,.3)}
.catalog-carousel-track>.landscape-card>.product-purchase{margin-top:auto;padding-top:16px}
.catalog-carousel-track>.landscape-card>.landscape-trigger{flex:1}
.catalog-carousel-track>.vinyl-card{display:flex;flex-direction:column;border-radius:22px;border:1px solid var(--line);overflow:hidden}
.catalog-carousel-track>.vinyl-card>.product-purchase{margin-top:auto;padding-top:16px}
.catalog-carousel-track .vinyl-art{position:relative;height:278px;min-height:0;display:block}
.catalog-carousel-track .vinyl-art img{position:absolute;inset:24px;width:calc(100% - 48px);height:calc(100% - 48px);max-width:none;max-height:none;object-fit:contain;object-position:center;transform-origin:center}
@media(max-width:760px){
 #faunaGrid.catalog-carousel-track,#landscapeGrid.catalog-carousel-track,#vinylGrid.catalog-carousel-track{--carousel-card-width:min(80vw,340px);gap:16px;padding:16px calc((100% - var(--carousel-card-width))/2) 24px;scroll-padding-inline:0;scroll-snap-type:x mandatory}
 .catalog-carousel-track>*,.fauna-carousel-track>.species-card,.catalog-carousel-track>.landscape-card,.catalog-carousel-track>.vinyl-card{flex:0 0 var(--carousel-card-width);scroll-snap-align:center}
 .catalog-carousel-track .product-art img{object-position:center}
 .catalog-carousel-track>.landscape-card{padding-bottom:10px}
 .catalog-carousel-track .landscape-art{height:278px}
 .catalog-carousel-track .landscape-art>img{display:block;margin-inline:auto;object-position:center}
 .catalog-carousel-track .vinyl-art{height:278px}
 .catalog-carousel-track .vinyl-trigger strong{font-size:22px}
 .catalog-carousel-track .purchase-main{flex-wrap:wrap;gap:10px}
 .catalog-carousel-track .add-to-cart{min-width:0}
}
@media(max-width:359px){.catalog-carousel-track .vinyl-art,.catalog-carousel-track .landscape-art{height:258px}}
@media(prefers-reduced-motion:reduce){#faunaGrid.catalog-carousel-track,#landscapeGrid.catalog-carousel-track,#vinylGrid.catalog-carousel-track{scroll-behavior:auto}}
