.container { width: min(calc(100% - 2 * var(--page-gutter)), var(--content-max)); margin-inline: auto; }
.section, .site-footer { padding-block: var(--section-space); }
main > .section:not(.section--surface) + .section:not(.section--surface) { padding-block-start: 0; }
.section--surface { background: var(--color-surface); }
.stack { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-6); min-width: 0; }
.grid { display: grid; gap: var(--space-6); align-self: stretch; min-width: 0; }
.split { display: grid; gap: var(--space-12); width: 100%; align-items: center; }
.button-row { display: flex; align-items: stretch; flex-wrap: wrap; gap: var(--space-3) var(--space-4); }
.site-header { padding-block: var(--space-4); border-bottom: 1px solid var(--color-border); }
.site-header > .stack { gap: var(--space-4); }
.site-header__row { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-4) var(--space-6); width: 100%; }
.site-logo { display: block; width: 10rem; flex-shrink: 0; }
.site-logo img { display: block; width: 100%; height: auto; }
.site-header__account { display: flex; gap: var(--space-6); margin-inline-start: auto; }
.site-header__account a { display: inline-flex; align-items: center; min-height: 2.75rem; color: var(--color-text); text-decoration: none; padding-block: .5rem; }
.site-header__account a:hover { color: var(--color-primary); text-decoration: underline; }
.site-nav { width: 100%; }
.site-nav__list { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .25rem var(--space-2); margin: 0; padding: 0; list-style: none; }
.site-nav__list a { display: flex; align-items: center; justify-content: center; min-height: 2.75rem; color: var(--color-text); text-decoration: none; padding: .625rem var(--space-4); border-radius: var(--radius-control); }
.site-nav__list a:hover, .site-nav__list .current-menu-item > a, .site-nav__list a[aria-current=page] { background: var(--color-surface); }
.site-nav__list a:hover, .site-nav__list a[aria-current], .site-nav__list .current-menu-item > a { color: var(--color-primary); text-decoration: underline; }
.site-nav__toggle { min-height: 2.75rem; border: 1px solid var(--color-border); border-radius: var(--radius-control); background: var(--color-background); padding: .5rem 1rem; color: var(--color-text); }
.site-footer { background: var(--color-surface-neutral); }
.site-footer > .grid { gap: var(--space-8) clamp(1.5rem, 3vw, 3rem); }
.site-footer .stack { gap: var(--space-3); }
.site-footer .footer-heading { margin-block-end: var(--space-2); }
.site-footer a { color: var(--color-text); text-decoration: none; }
.site-footer a:hover { color: var(--color-primary); text-decoration: underline; }
.schulz-site > .german-market-withdrawal-button-wrap { margin: 0; padding: var(--space-6) var(--page-gutter); border-block-start: 1px solid var(--color-border); background: var(--color-surface-neutral); text-align: center; }
.intro .text-muted, .section > .stack > p { max-width: 70ch; }
.intro .split { align-items: stretch; gap: var(--panel-padding); }
.intro .split > .stack:not(.feature) { justify-content: center; }
.intro .feature { background: var(--color-background); border: 1px solid var(--color-border); }
.content-page { min-height: 35vh; }
.content-page > * + *, .content-page .entry-content > * + * { margin-block-start: var(--space-6); }
.content-page h2, .content-page h3 { margin-block-start: var(--space-8); }
.content-page table { border-collapse: collapse; max-width: 100%; }
.content-page td, .content-page th { padding: .75rem; border: 1px solid var(--color-border); }
@media (max-width: 767px) {
    .site-header__row { column-gap: var(--space-3); }
    .site-header .product-search { order: 3; flex-basis: 100%; }
    .site-logo { width: min(9rem, 43%); }
    .site-header__account { gap: var(--space-3); font-size: .875rem; }
    .site-nav__list { flex-direction: column; align-items: stretch; gap: 0; margin-block-start: .75rem; border-top: 1px solid var(--color-border); }
    .site-nav__list a { justify-content: flex-start; }
}
@media (max-width: 478px) { .button-row { width: 100%; } .button-row > .button { width: 100%; } }
@media (min-width: 479px) { .grid--three { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 768px) { .grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 992px) { .grid--two, .split { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
