.shop-page{background:var(--clr-bg)}.shop-page .shop-hero{padding:30px 20px;background:var(--clr-bg);color:var(--clr-text);text-align:center}.shop-page .shop-hero h1{margin:0 0 12px;font-size:2.8rem}.shop-page .shop-hero p{max-width:720px;margin:0 auto;color:var(--clr-text-muted);font-size:1.1rem}.shop-page .shop-section{padding:40px 0 60px}.shop-page .container.shop-section{width:60%;padding:0 24px;box-sizing:border-box}.shop-page .product-card{display:grid;grid-template-columns:3fr 2fr;gap:0;width:100%;overflow:hidden;border:1px solid rgb(from var(--clr-black) r g b / 0.12);border-radius:var(--radius-lg);background:var(--clr-text);box-shadow:0 25px 50px rgb(from var(--clr-black) r g b / 0.28);transition:transform 0.4s ease,box-shadow 0.4s ease}.shop-page .product-card:hover{box-shadow:0 35px 60px rgb(from var(--clr-black) r g b / 0.38);transform:translateY(-6px)}.shop-page .product-list{display:flex;flex-direction:column;gap:28px;padding-bottom:32px}.shop-page .product-media{display:flex;flex-direction:column;justify-content:stretch;background:var(--clr-white)}.shop-page .product-image{position:relative;overflow:hidden}.shop-page .product-image img{display:block;width:100%;height:100%;min-height:320px;object-fit:cover;transition:transform 0.5s ease}.shop-page .product-main-image{transform:scale(1);transition:transform 0.5s ease}.shop-page .product-main-image.zoomed{transform:scale(1.3)}.shop-page .product-badge{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:var(--radius-pill);background:rgb(from var(--clr-white) r g b / 0.94);color:var(--clr-bg-elevated);font-size:0.85rem;font-weight:600}.shop-page .product-badge.unavailable{border:1px solid rgb(from var(--clr-black) r g b / 0.08);background:rgb(from var(--clr-white) r g b / 0.9)}.shop-page .product-body{display:flex;flex:1;flex-direction:column;gap:10px;padding:18px 20px 22px;font-size:0.95rem}.shop-page .product-body h2{margin:0;color:var(--clr-bg-elevated);font-size:1.15rem}.shop-page .product-description{margin:0;color:var(--clr-text-dim);font-size:1rem;line-height:1.5;white-space:pre-line}.shop-page .product-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;padding:10px 0 0;border-top:1px solid rgb(from var(--clr-black) r g b / 0.1);font-size:1rem}.shop-page .product-price .price-label{flex-basis:100%;color:var(--clr-text-dim);font-size:0.78rem;font-weight:600;line-height:1;text-transform:uppercase}.shop-page .product-price .current{color:var(--clr-bg-elevated);font-size:1.55rem;font-weight:700;line-height:1}.shop-page .product-price .old{color:var(--clr-text-dim);font-size:0.95rem;text-decoration:line-through}.shop-page .product-price .discount{padding:2px 8px;border-radius:var(--radius-pill);background:rgb(from var(--clr-black) r g b / 0.08);color:var(--clr-bg-elevated);font-size:0.85rem;font-weight:600}.shop-page .product-price-note{color:var(--clr-text-dim);font-size:0.85rem}.shop-page .product-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto}.shop-page .product-links{display:flex;flex-wrap:wrap;gap:10px}.shop-page .product-links a{flex:1 1 auto}.shop-page .product-links .btn-market{border-radius:var(--radius-pill);font-weight:600}.shop-page .product-links .btn-allegro{background:var(--clr-market-allegro);color:var(--clr-text)}.shop-page .product-links .btn-allegro:hover{background:var(--clr-market-allegro-hover);color:var(--clr-text)}.shop-page .product-thumbs{display:flex;flex-wrap:nowrap;gap:10px;padding:8px 0 4px;overflow-x:auto}.shop-page .product-thumbs.product-thumbs-grid{display:grid;grid-template-columns:repeat(4,64px);gap:10px 12px;overflow:visible}.shop-page .product-thumb{padding:0;border:0;background:transparent;cursor:pointer}.shop-page .product-thumb img{width:64px;height:64px;border:2px solid transparent;border-radius:var(--radius-sm);object-fit:cover;transition:border-color 0.2s ease,transform 0.2s ease}.shop-page .product-thumb.active img{border-color:var(--clr-bg-elevated)}.shop-page .product-thumb:hover img{transform:scale(1.04)}@media (max-width:768px){.shop-page .shop-hero{padding:60px 16px 50px}.shop-page .shop-hero h1{font-size:2.2rem}.shop-page .product-image img{min-height:240px}.shop-page .product-card{grid-template-columns:1fr}.shop-page .container.shop-section{width:100%;padding:0}}@media (min-width:769px) and (max-width:1024px){.shop-page .container.shop-section{width:90%}}@media (min-width:1025px) and (max-width:1200px){.shop-page .container.shop-section{width:75%}}