.products-view__pagination {
    padding-bottom: 32px;
}

.site-header__logo {
    margin-right: 30px;
    /* margin-left: -18px; */
}

.site-header__logo img {
    width: 255px;
    height: 100%;
}

.departments__body {
    background-color: var(--primaryColor);
}

.product-card__prices {
    font-size: 21px;
}

.product-card__sku {
    font-size: 13px;
    margin-top: 2px;
}* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
ol, ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
/* Catalog descriptions carry real lists (Buero+ RTF→HTML export) — undo the
   global reset above inside the product description block only. */
.product__description ul,
.product__description ol {
    margin: 8px 0;
    padding-left: 1.4em;
}
.product__description ul { list-style: disc; }
.product__description ol { list-style: decimal; }
ul.contact-list {
    border-top: 1px solid #ccc;
    width: 100%;
    padding: 15px 0;
}
ul.contact-list li {
    display: inline-block;
    width: 49%;
    text-align: left;
    vertical-align: top;
    margin-bottom: 15px;
}
ul.contact-list li div {
    float: left !important; margin-right: 0px;width: 60%;
}
ul.contact-list li .kontakt-img {
    float: left;
    margin-right: 10px;
}
ul.country-list {
    border-top: 1px solid #ccc;
    width: 100%;
    padding: 15px 0;
}

ul.country-list li {
    display: inline-block;
    width: 150px;
    text-align: center;
    vertical-align: top;
    margin-bottom: 25px;
    margin-right: 15px;
}
ul.country-list li a {
    font-size: 11px;
    line-height: 1.42857143;
}
a {
    color: #013c0e;
    text-decoration: none !important;
    outline: none !important;
   
}
img {
    vertical-align: middle;
}
span.reverse {
    unicode-bidi: bidi-override;
    direction: rtl;
}
@media (min-width: 992px) and (max-width: 1199px) {
    [dir=ltr] .site-header__logo {
        margin-right: 65px;
}
}
@media (max-width: 800px) {
    ul.contact-list li {
        width: 100%;
    }
}
@media (min-width: 1400px) {
    .container {
        max-width: 1340px;
    }
    ul.contact-list li {
        width: 32%;
    }
}

@media (min-width: 1600px) {
    .container {
        max-width: 1600px;
    }
}
/* Partner badges in header (ported from webpage-2025 partner.php inline style) */
ul.sponsors {
    font-size: 9px;
    list-style: none;
    margin: 0 20px;
    padding: 0;
    white-space: nowrap;
}
ul.sponsors li {
    max-width: 90px;
    width: 90px;
    line-height: 11px;
    text-align: center;
    display: inline-block;
    vertical-align: top;
    margin: 0 4px;
    white-space: normal;   /* let the caption wrap instead of overlapping the next badge */
}
ul.sponsors li span { display: block; white-space: normal; margin-top: 4px; }
ul.sponsors a img {
    max-height: 50px;
    margin: 0 10px;
    width: unset !important;
}

/* Home hero slideshow — background-image slides need an explicit height */
.block-slideshow__slide { display: block; position: relative; }
.block-slideshow__slide-image { background-size: cover; background-position: center; }
.block-slideshow__slide-image--desktop { height: 400px; }
.block-slideshow__slide-image--mobile { display: none; }
@media (max-width: 991px) {
    .block-slideshow__slide-image--desktop { display: none; }
    .block-slideshow__slide-image--mobile { display: block; height: 220px; }
}
.block-slideshow__slide-content { position: absolute; left: 32px; bottom: 32px; right: 32px; }
.block-slideshow__slide-title { font-size: 26px; font-weight: 700; text-shadow: 0 1px 4px rgba(0,0,0,.5); }

/* Slide anchor must carry the height; image is an absolute background layer */
.block-slideshow__slide { height: 400px; overflow: hidden; }
.block-slideshow__slide-image--desktop,
.block-slideshow__slide-image--mobile { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
@media (max-width: 991px) { .block-slideshow__slide { height: 220px; } }

/* Startseite hero + category menu +12% (395px -> 442px; the departments menu
   sizes itself to the slideshow bottom via data-departments-fixed-by) */
@media (min-width: 992px) {
    .block-slideshow--layout--with-departments .block-slideshow__body,
    .block-slideshow--layout--with-departments .block-slideshow__slide { height: 442px; }
}

/* Home marketing post-cards (GOLFTURNIERE / GOLFPLATZ / GOLFER / PARTNER …).
   Let images scale with the carousel column (height:auto), like the reference —
   larger in the 3-up side-by-side blocks, smaller in the 10-up full-width rows.
   A fixed height here made every image a uniform size (too small side-by-side,
   too big full-width). */
.block-posts__slider .post-card { padding: 0 8px; }
/* Vertical card (image on top, name below) whose image FILLS its carousel column,
   so it scales with items-per-view like the reference: bigger in the 3-up
   side-by-side blocks (Golfturniere/Mailings ~215px), smaller with more breathing
   room in the 10-up full-width rows (Golfplatz/Golfer/Partner ~100px). Overrides
   the theme's fixed 140px horizontal list-layout image. */
@media (min-width: 576px) {
    .block-posts[data-layout="list"] .post-card { display: block; }
    [dir=ltr] .block-posts[data-layout="list"] .post-card .post-card__image,
    [dir=rtl] .block-posts[data-layout="list"] .post-card .post-card__image {
        width: 100%;
        margin: 0;
    }
}
.block-posts__slider .post-card__image img { width: 100%; height: auto; }
.block-posts__slider .post-card__name { margin-top: 8px; line-height: 1.3; text-align: center; }
.block-posts__slider .post-card__name a { color: inherit; text-decoration: none; }

/* Topbar items: spacing + dropdown carets (#3) */
.topbar__item { margin-left: 20px; }
.topbar__item--link { margin-left: 0; }
.topbar__caret { margin-left: 6px; fill: currentColor; opacity: .55; vertical-align: middle; }

/* Shop-Kategorien tiles (#7) */
.block-categories .category-card { display: block; padding: 0 8px; color: inherit; }
/* full tile width (theme caps .category-card__image at 130px + margin, which
   left the centered title visually offset from the image) */
.block-categories .category-card__image { width: 100%; margin: 0; }
/* portrait 3:4 like the sepia category photos (~480x640) */
.block-categories .category-card__image img { border-radius: 2px; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.block-categories .category-card__name { font-size: 15px; line-height: 1.3; }

/* "Shop Kategorien" heading + "Suche nach Kategorien" label link to /kategorien */
.block-header__title a { color: inherit; }
.block-header__title a:hover { color: inherit; text-decoration: underline; }
.departments__button-link { color: inherit; }
.departments__button-link:hover { color: inherit; text-decoration: underline; }
/* The theme's <button> centered its label natively; our <div role="button">
   leaves the inline link top-aligned in the 42px box (icon/caret are absolute
   and stay centered). Center the single-line label via line-height. */
.departments__button { line-height: 42px; }

/* Header phone is a tel: link — keep the plain-text look */
.site-header__phone-number a { color: inherit; }

/* Hero slide caption text + CTA button (#6) */
.block-slideshow__slide-title { color: #fff; }
.block-slideshow__slide-text { margin-top: 8px; max-width: 480px; color: #fff;
    font-size: 15px; line-height: 1.4; text-shadow: 0 1px 4px rgba(0,0,0,.5); }
.block-slideshow__slide-button { margin-top: 14px; }

/* Footer social heading (#12; newsletter box removed 2026-07-15) */
.footer-newsletter__text--social { margin-top: 6px; font-weight: 500; }

/* Kontakt page: department person cards + Distribution country grid */
.kontakt-dept { margin-top: 32px; }
.kontakt-dept__title { font-size: 22px; font-weight: 500; padding-bottom: 8px;
    border-bottom: 2px solid #f0f0f0; margin-bottom: 20px; }
.kontakt-dept__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 24px 20px; }
.kontakt-person__avatar img { width: 110px; height: auto; border-radius: 2px; }
.kontakt-person__avatar { margin-bottom: 10px; }
.kontakt-person__prefix { font-size: 13px; line-height: 1.2; }
.kontakt-person__email { font-size: 14px; margin-top: 4px; }
.kontakt-person__extra { font-size: 13px; margin-top: 4px; }
.kontakt-countries { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 24px 20px; }
.kontakt-country__flag img { width: 80px; height: auto; border: 1px solid #eaeaea; }
.kontakt-country__flag { margin-bottom: 8px; }

/* Startpage sections: uniform vertical gap, +25% over the theme's .block
   (50px → 62.5px desktop, 30px → 37.5px mobile). Also gives the full-width
   marketing carousels (block-posts without .block) a bottom margin at all. */
.home-section { margin-bottom: 62.5px; }
@media (max-width: 991px) { .home-section { margin-bottom: 37.5px; } }

/* Kategorien Übersicht (/kategorien): category blocks with subcategory lists */
.category-overview__group { margin-bottom: 28px; }
.category-overview__title { font-size: 17px; font-weight: 500; padding-bottom: 6px;
    border-bottom: 2px solid #f0f0f0; margin-bottom: 10px; }
.category-overview__title a { color: inherit; }
.category-overview__list { list-style: none; margin: 0; padding: 0; }
.category-overview__list li { padding: 2px 0; font-size: 14px; }
.category-overview__list a { color: #6c757d; }
.category-overview__list a:hover { color: inherit; }

/* Product-list sidebar: the Kategorien filter list can get very long (some
   branches have dozens of subcategories) — cap + scroll like the Marke list */
.filter-categories__list { max-height: 340px; overflow-y: auto; }

/* Product-list sidebar: widen from the theme's 255px (content keeps the 30px gutter) */
@media (min-width: 992px) {
    .shop-layout__sidebar { width: 310px; }
    .shop-layout__content { width: calc(100% - 340px); }
}

/* Product list: removable applied-filter badges above the toolbar */
.products-view__applied { margin-bottom: 12px; }
.applied-filter__x { margin-left: 6px; font-weight: 700; opacity: .55; }
.tags__list a.applied-filter:hover .applied-filter__x { opacity: 1; }
