/* Real local collection: preserve the existing orbit, shared navigation and footer. */
.shop-real-catalog .shop-logo img,
.shop-real-product .shop-logo img { height: auto; }
.shop-real-catalog .shop-category h2 { margin: 8px 0 14px; }
.shop-real-catalog .shop-product-link,
.shop-real-product .shop-product-link { display: inline-block; margin-top: 12px; font-weight: 600; line-height: 1.2; }
.shop-real-catalog .shop-all-products { margin: 0 3%; padding-top: 64px; }
.shop-real-catalog .shop-all-products > h2 { margin: 0 0 16px; font-size: var(--type-section); line-height: 1.05; }
.shop-real-catalog .shop-product-group > h2 { margin: 48px 0 0; padding: 18px 0; border-top: 1px solid; font-size: 28px; scroll-margin-top: 90px; }
.shop-real-catalog #maglie { border-top: 0; }
.shop-real-catalog .shop-orbit-image { background: #fabbc1; }
.shop-real-catalog .shop-collection-entry .shop-orbit-image img { padding: 4%; object-fit: contain; transform: none; }
.shop-real-catalog .shop-collection-entry a:is(:hover,:focus-visible) .shop-card-product-art { transform: none; }
.shop-real-catalog .shop-orbit--collection .shop-orbit-type { animation-direction: reverse; }
.shop-real-catalog .shop-product-grid .shop-card { display: flex; flex-direction: column; }
.shop-real-catalog .shop-product-grid .shop-card-meta { flex-grow: 1; }
.shop-real-catalog .shop-product-grid .shop-product-link { align-self: flex-end; margin: 24px 0 12px; }
.shop-real-catalog .shop-product-grid { margin: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.shop-real-catalog .shop-product-grid .shop-card { padding: 20px 0 30px; }
.shop-real-catalog .shop-card-meta { flex-wrap: wrap; }
.shop-real-catalog .shop-card-meta > div { flex: 1 1 210px; min-width: 0; }
.shop-real-catalog .shop-card h3 { margin: 8px 0 0; font-size: clamp(24px, 2vw, 34px); line-height: 1.08; font-weight: 600; overflow-wrap: anywhere; }
.shop-real-catalog .shop-card .price { padding-top: 0; }
.shop-real-catalog .shop-card-product-art,
.shop-real-catalog .shop-orbit-alternate { object-fit: contain; padding: 6%; }
.shop-real-catalog .shop-orbit--poster .shop-card-product-art,
.shop-real-catalog .shop-orbit--poster .shop-orbit-alternate { object-fit: contain; padding: 6%; }
.shop-real-catalog .shop-orbit--poster img { transform: scale(1.3); }
.shop-real-catalog .shop-card a:is(:hover,:focus-visible) .shop-orbit--poster .shop-card-product-art { transform: scale(1.3); }
.shop-real-catalog .shop-card:is(:hover,:focus-within) .shop-card-product-art { opacity: 0; }
.shop-real-catalog .shop-card:is(:hover,:focus-within) .shop-orbit-alternate { opacity: 1; }
.shop-real-catalog .shop-card:is(:hover,:focus-within) .shop-orbit-type { animation-play-state: paused; }
.shop-real-catalog .shop-card[data-static-preview]:is(:hover,:focus-within) .shop-card-product-art { opacity: 1; }
.shop-real-catalog .shop-category[data-category-sequence] .shop-orbit-image img[data-preview-composition="collection"] { padding: 4%; object-fit: contain; transform: none; }
/* Category layers are controlled only after decoding a distinct product front. */
.shop-real-catalog :is(.shop-category,[data-hover-sequence],[data-preview-managed]) .shop-orbit-image img { transition: none; }
.shop-real-catalog [data-hover-sequence] .shop-orbit-image img[data-preview-composition="edge"] {
  object-fit: cover; object-position: left center; padding: 0;
}
.shop-real-catalog :is(.shop-category,[data-hover-sequence]):is(:hover,:focus-within) .shop-card-product-art,
.shop-real-catalog :is(.shop-category,[data-hover-sequence]) a:is(:hover,:focus-visible) .shop-card-product-art { opacity: 1; }
.shop-real-catalog :is(.shop-category,[data-hover-sequence]):is(:hover,:focus-within) .shop-orbit-alternate,
.shop-real-catalog :is(.shop-category,[data-hover-sequence]) a:is(:hover,:focus-visible) .shop-orbit-alternate { opacity: 0; }
.shop-real-catalog .shop-footer-information,
.shop-real-product .shop-footer-information { background: #ee2c3d; color: #fff; border-top-color: #ee2c3d; }
.shop-real-catalog .shop-footer-information a,
.shop-real-product .shop-footer-information a { color: inherit; }
.shop-real-catalog .shop-footer-information a:focus-visible,
.shop-real-product .shop-footer-information a:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.shop-real-catalog .shop-note p + p { margin-top: 20px; }
.shop-real-product .shop-header { min-height: 0; padding: 20px 3%; grid-template-columns: 88px 1fr; }
.shop-real-product .shop-logo { width: 88px; }
.shop-real-product .shop-header .shop-section-name { grid-column: 2; font-size: 32px; }
.shop-real-product .product-breadcrumb { line-height: 1.5; overflow-wrap: anywhere; }
.shop-real-product .product-info h1 { font-size: clamp(32px, 3.2vw, 56px); line-height: 1.06; overflow-wrap: anywhere; }
.shop-real-product .description p { margin: 0 0 18px; line-height: 1.4; }
.shop-real-product .description .shop-artwork-title { color: var(--shop-red); font-weight: 600; }
.shop-real-product .product-gallery { align-self: start; }
.shop-real-product .product-gallery-thumbs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.shop-real-product .product-zoom img { height: auto; aspect-ratio: 3 / 4; object-fit: contain; }
.shop-real-product .product-gallery-thumbs img { object-fit: contain; }
.shop-real-product .product-info details p { line-height: 1.4; }
.shop-real-product .product-info details li { margin-bottom: 8px; }
.shop-real-product .shop-size-guide { display: block; width: 100%; height: auto; margin-top: 20px; }
.shop-real-product .product-buy { flex-wrap: wrap; }
.shop-real-product .product-buy .shop-primary { white-space: normal; }
.shop-real-product input:focus-visible,
.shop-real-product button:focus-visible,
.shop-real-catalog button:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
@media (min-width: 761px) {
  .shop-real-product .product-layout { grid-template-columns: 44% 56%; }
  .shop-real-product .product-gallery { display: flex; flex-direction: column; min-height: calc(100svh - 195px); padding: 20px 24px; }
  .shop-real-product .product-zoom img { height: clamp(380px, calc(100svh - 390px), 720px); aspect-ratio: auto; }
  .shop-real-product .product-zoom { overflow: hidden; }
  .shop-real-product .product-zoom img[data-gallery-front="true"] { transform: scale(1.18); }
  .shop-real-product .product-caption { margin-top: auto; padding-top: 18px; }
  .shop-real-product .product-gallery-thumbs { grid-template-columns: repeat(6, minmax(0, 1fr)); width: 100%; max-width: 480px; margin: 14px auto 0; }
  .shop-real-product .product-gallery-thumbs button { max-height: 86px; }
  .shop-real-product .product-info { display: flex; flex-direction: column; padding: 20px 28px; }
  .shop-real-product .product-info h1 { font-size: clamp(28px, 2.5vw, 38px); margin: 8px 0 12px; }
  .shop-real-product .product-options { order: 1; }
  .shop-real-product .description { order: 2; margin-top: 24px; }
  .shop-real-product .product-info > details,
  .shop-real-product .product-info > p:not(.shop-meta) { order: 3; }
  .shop-real-product .product-price { font-size: 24px; margin: 4px 0; }
  .shop-real-product .product-info fieldset { margin: 16px 0; }
}
@media (min-width: 761px) and (max-width: 1050px) {
  .shop-real-catalog .shop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .shop-real-product .product-info { padding-inline: 22px; }
}
@media (max-width: 760px) {
  .shop-real-catalog .shop-all-products { margin: 0 20px; padding-top: 36px; }
  .shop-real-catalog .shop-all-products > h2 { font-size: 36px; }
  .shop-real-catalog .shop-product-grid { grid-template-columns: 1fr; gap: 0; }
  .shop-real-catalog .shop-product-group > h2 { margin-top: 28px; }
  .shop-real-catalog .shop-card .price { padding-top: 0; }
  .shop-real-product .shop-header { padding: 22px 20px; }
  .shop-real-product .product-info h1 { font-size: 36px; }
}
@media (hover: none), (pointer: coarse) {
  .shop-real-catalog .shop-card a:is(:hover,:focus-visible) .shop-card-product-art,
  .shop-real-catalog .shop-card:is(:hover,:focus-within) .shop-card-product-art { opacity: 1; }
  .shop-real-catalog .shop-card a:is(:hover,:focus-visible) .shop-orbit-alternate,
  .shop-real-catalog .shop-card:is(:hover,:focus-within) .shop-orbit-alternate { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .shop-real-catalog .shop-orbit-type { animation: none; }
}
.shop-real-catalog .shop-group-navigation { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 24px 0 36px; }
.shop-real-catalog .shop-model-heading { margin: 12px 0 4px; font-size: 18px; font-weight: 400; }
.shop-real-catalog .shop-model-group + .shop-model-group { margin-top: 32px; padding-top: 24px; border-top: 1px solid; }
.shop-real-catalog .shop-collection-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; margin: 40px 3% 0; line-height: 1.4; }
.shop-real-catalog .shop-collection-intro > p { font-size: clamp(22px, 2vw, 30px); margin: 0; max-width: 36ch; }
.shop-real-catalog .shop-collection-intro > div { align-self: end; }
.shop-real-catalog .shop-collection-intro > div p { margin: 0; }
.shop-real-product .shop-series-navigation { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 24px; padding: 32px 3%; border-top: 1px solid; }
.shop-communis-collection .shop-card { scroll-margin-top: 90px; }
@media (max-width: 760px) {
  .shop-real-catalog .shop-collection-intro { grid-template-columns: 1fr; gap: 24px; margin: 28px 20px 0; }
}
.shop-cart-content { margin: 36px 3% 64px; max-width: 880px; }
.shop-cart-content h1 { font-size: var(--type-section); margin: 0 0 24px; }
.shop-cart-content .cart-row h2 { font-size: 20px; margin: 0 0 10px; }
.shop-cart-content .cart-row select { margin-right: 20px; padding: 6px; }
.shop-cart-content .cart-row > p { text-align: right; }
.shop-toolbar-actions { display: flex; flex-wrap: wrap; gap: 16px; }
@media (max-width: 760px) {
  .shop-cart-content { margin-inline: 20px; }
  .shop-cart-content .cart-row { grid-template-columns: 54px 1fr; gap: 16px; }
  .shop-cart-content .cart-row > p { grid-column: 2; text-align: left; }
  .shop-cart-content .cart-row img { width: 54px; height: 72px; }
}
