.hf-page .rp-shop-layout--with-contents {
    grid-template-columns: minmax(0, 1fr) 300px;
    grid-template-areas: "feed sidebar" "article sidebar";
    align-items: start;
    row-gap: 28px;
}
.rp-shop-layout--with-contents > .rp-shop-description { grid-area: article; min-width: 0; margin: 0; }
.rp-shop-sidebar { grid-area: sidebar; min-width: 0; align-self: stretch; }
.rp-shop-sidebar-inner { position: sticky; top: calc(var(--hf-header-height, 76px) + 24px); }
.rp-shop-sidebar .hf-widget {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.rp-shop-sidebar .hf-widget + .hf-widget { margin-top: 32px; }
.rp-shop-sidebar h2 { font-size: 18px; line-height: 1.4; margin: 0 0 14px; color: #0f172a; }
.rp-shop-sidebar p { font-size: 15px; line-height: 1.65; color: #475569; margin: 0; overflow-wrap: anywhere; }
.rp-shop-toc ul { margin: 0; padding: 0; list-style: none; }
.rp-shop-toc li + li { margin-top: 4px; }
.rp-shop-toc a { display: block; padding: 6px 0; font-size: 15px; line-height: 1.45; color: #0b5ed7; text-decoration: none; overflow-wrap: anywhere; }
.rp-shop-toc a:hover { text-decoration: underline; }
.rp-shop-toc a:focus-visible { outline: 3px solid #0b5ed7; outline-offset: 3px; border-radius: 3px; }
.rp-shop-toc .rp-toc-subheading { padding-left: 14px; }
.rp-shop-page #angebote, .rp-shop-page #shop-beschreibung, .rp-shop-page #rp-shop-related-title,
.rp-shop-description h2[id], .rp-shop-description h3[id], .rp-shop-about h2[id], .rp-shop-about h3[id], .rp-shop-toc :is(p,h2,h3)[id] { scroll-margin-top: calc(var(--hf-header-height, 76px) + 24px); }
@media (max-width: 1023px) {
    .hf-page .rp-shop-layout--with-contents { grid-template-columns: minmax(0, 1fr); grid-template-areas: "feed" "sidebar" "article"; }
    .rp-shop-sidebar-inner { position: static; }
}
@media (prefers-reduced-motion: no-preference) { .rp-shop-page { scroll-behavior: smooth; } }

/* Rich editor content moves to the sidebar without its pasted page-sized typography. */
.rp-shop-about p { margin-bottom: 14px; }
.rp-shop-about p:last-child { margin-bottom: 0; }
.rp-shop-about :is(p,span,h2,h3), .rp-shop-toc :is(p,span) { background-color: transparent !important; }
.rp-shop-about span, .rp-shop-toc span { font-size: inherit !important; font-family: inherit !important; line-height: inherit !important; }
.rp-shop-toc ol { margin: 0; padding-left: 20px; font-size: 15px; line-height: 1.45; }
