/* Gerardus Braas Pro 2.0. A restrained storefront, not another theme overlay. */
body.gbpro-site {
  --gb-ink:#17231d; --gb-green:#1e4d3a; --gb-gold:#d9b65d;
  --gb-muted:#5e6862; --gb-line:#dfe3df; --gb-paper:#f3f4f1;
  --ss-green:#1e4d3a; --ss-grad-primary:#1e4d3a; --ss-r-pill:5px;
  --ss-r:5px; --ss-r-lg:6px; --ss-r-sm:4px; --ss-shadow-green:none;
  --ss-font-body:Arial,Helvetica,sans-serif; --ss-font-display:Arial,Helvetica,sans-serif;
  color:var(--gb-ink); background:#fff; font-family:Arial,Helvetica,sans-serif;
  font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased;
}
.gbpro-site *, .gbpro-site *::before, .gbpro-site *::after { box-sizing:border-box }
.gbpro-site [hidden] { display:none!important }
.gbpro-site [data-ss-reveal] { opacity:1; transform:none; transition:none; will-change:auto }
.gbpro-site :focus-visible { outline:3px solid #9a6c0d; outline-offset:4px }
.gbpro-site a { text-underline-offset:4px }
.gbpro-site button, .gbpro-site input { font:inherit }
.gbpro-shell { width:calc(100% - 80px); max-width:1320px; margin-inline:auto }
.gbpro-main h1, .gbpro-main h2, .gbpro-main h3 { color:inherit; font-family:inherit; font-weight:600; letter-spacing:-.025em; line-height:1.14; margin:0 }
.gbpro-main h2 { font-size:clamp(28px,3vw,40px) }
.gbpro-main p { margin:0 }
.gbpro-main a, .gbpro-header a, .gbpro-footer a { color:inherit; text-decoration:none }
.gbpro-skip { position:fixed; top:0; left:16px; z-index:100000; padding:14px 22px; color:#fff; background:var(--gb-green); transform:translateY(-150%) }
.gbpro-skip:focus { transform:translateY(0) }
.gbpro-announcement { background:#173e2e; color:#fff; font-size:12px; letter-spacing:.025em }
.gbpro-announcement .gbpro-shell { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:16px }
.gbpro-announcement a { color:inherit; text-decoration:none }
.gbpro-header { position:relative; z-index:50; background:#fff; border-bottom:1px solid var(--gb-line) }
.gbpro-header__inner { min-height:82px; display:flex; align-items:center; gap:40px }
.gbpro-brand { flex:0 0 auto; line-height:1 }
.gbpro-brand .ss-logo, .gbpro-footer .ss-logo { display:inline-flex; align-items:center }
.gbpro-brand svg, .gbpro-footer__brand .ss-logo svg { width:204px; height:34px; max-width:100% }
.gbpro-brand img, .gbpro-footer__brand .custom-logo { width:auto; height:auto; max-width:204px; max-height:44px; object-fit:contain }
.gbpro-primary-nav { display:flex; align-items:center; justify-content:center; gap:32px; flex:1 }
.gbpro-primary-nav a { display:flex; align-items:center; min-height:48px; font-size:14px; font-weight:600; border-bottom:2px solid transparent }
.gbpro-primary-nav a:hover { border-color:var(--gb-green) }
.gbpro-header-actions { display:flex; align-items:center; gap:6px; margin-left:auto }
.gbpro-icon-button { position:relative; display:inline-flex; flex-shrink:0; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:0; border-radius:4px; color:var(--gb-ink); background:transparent; cursor:pointer }
.gbpro-icon-button:hover { background:var(--gb-paper) }
.gbpro-cart-count { position:absolute; right:0; top:0; display:grid; place-items:center; min-width:17px; height:17px; padding:0 3px; font-size:10px; background:var(--gb-green); color:#fff; border-radius:50% }
.gbpro-menu-toggle { display:none }
.gbpro-search-panel { border-top:1px solid var(--gb-line) }
.gbpro-search { max-width:800px; padding-block:22px }
.gbpro-search label { display:block; margin-bottom:8px; font-size:14px; font-weight:600 }
.gbpro-search>div { display:flex; align-items:center; gap:10px }
.gbpro-search input[type=search] { flex:1; width:100%; min-width:0; height:48px; padding:10px 14px; border:1px solid #9ea7a0; border-radius:4px; background:#fff; color:var(--gb-ink) }
.gbpro-mobile-menu { max-height:70vh; overflow-y:auto; padding-block:8px 24px; border-top:1px solid var(--gb-line) }
.gbpro-mobile-menu a { display:flex; align-items:center; justify-content:space-between; padding:16px 0; border-bottom:1px solid var(--gb-line); font-size:17px }
.gbpro-site .gbpro-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:48px; padding:13px 22px; border:1px solid transparent; border-radius:4px; background:var(--gb-green); color:#fff; font-size:14px; font-weight:600; text-decoration:none; line-height:1.4; cursor:pointer; box-shadow:none; transition:background .15s }
.gbpro-site .gbpro-button:hover { background:#143c2b }
.gbpro-site .gbpro-button--gold { background:var(--gb-gold); color:#1b291f }
.gbpro-site .gbpro-button--gold:hover { background:#e5c676 }
.gbpro-eyebrow { font-size:11px; font-weight:700; letter-spacing:.15em; line-height:1.5; margin:0 0 16px!important }
.gbpro-hero { position:relative; min-height:570px; color:#fff; background:#233f28; isolation:isolate }
.gbpro-hero__image { position:absolute; inset:0; z-index:-2 }
.gbpro-hero__image img { display:block; width:100%; height:100%; object-fit:cover; object-position:56% center }
.gbpro-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(8,22,13,.73),rgba(8,22,13,.2) 75%,rgba(8,22,13,.05)) }
.gbpro-hero__inner { min-height:570px; display:flex; align-items:center; padding-block:70px }
.gbpro-hero__copy { max-width:720px }
.gbpro-hero h1 { font-size:clamp(42px,4.6vw,64px); letter-spacing:-.035em; line-height:1.06; color:#fff; margin-bottom:26px }
.gbpro-hero__copy>p:not(.gbpro-eyebrow) { font-size:17px; color:#f1f4ef; line-height:1.7; max-width:520px }
.gbpro-hero__actions { display:flex; flex-wrap:wrap; align-items:center; gap:28px; margin-top:32px }
.gbpro-hero__secondary { display:inline-flex; align-items:center; min-height:44px; font-size:14px; border-bottom:1px solid #d2dacf }
.gbpro-section { padding-block:80px }
#kategorien { scroll-margin-top:24px }
.gbpro-section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:32px; margin-bottom:34px }
.gbpro-section-head>p { color:var(--gb-muted); font-size:14px; line-height:1.7 }
.gbpro-section-head .gbpro-eyebrow { color:var(--gb-muted) }
.gbpro-text-link { display:inline-flex; align-items:center; gap:14px; min-height:44px; font-size:14px; font-weight:600 }
.gbpro-text-link:hover { text-decoration:underline }
.gbpro-category-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px }
.gbpro-category-card { min-width:0 }
.gbpro-category-card__media { aspect-ratio:1/1; padding:13px; border-radius:5px; background:#f3f4f1; display:flex; align-items:center; justify-content:center; overflow:hidden; border:1px solid transparent }
.gbpro-category-card__media img { display:block; width:100%; height:100%; object-fit:contain; mix-blend-mode:darken }
.gbpro-category-card:hover .gbpro-category-card__media { border-color:#9caea0 }
.gbpro-category-card__text { position:relative; padding:17px 22px 0 0 }
.gbpro-category-card__text h3 { font-size:15px; line-height:1.3; letter-spacing:-.012em; overflow-wrap:anywhere; min-height:39px }
.gbpro-category-card__text>span { display:block; font-size:12px; color:var(--gb-muted); margin-top:4px }
.gbpro-category-card__text>svg { position:absolute; right:0; top:17px; width:17px; height:17px }
.gbpro-feature { background:#f1f2ef }
.gbpro-feature__inner { display:grid; grid-template-columns:1fr 1.15fr; align-items:center; min-height:520px; gap:60px; padding-block:42px }
.gbpro-feature h2 { font-size:clamp(34px,3.7vw,50px); margin-bottom:22px }
.gbpro-feature__copy>p:not(.gbpro-eyebrow) { color:var(--gb-muted); max-width:400px; margin-bottom:28px }
.gbpro-feature figure { margin:0; min-width:0; text-align:center }
.gbpro-feature figure img { display:block; width:100%; height:390px; object-fit:contain; mix-blend-mode:darken }
.gbpro-feature figcaption { font-size:12px; color:var(--gb-muted); margin-top:10px }
.gbpro-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:24px; row-gap:44px }
.gbpro-product-card { display:flex; flex-direction:column; min-width:0; border:1px solid var(--gb-line); border-radius:6px; overflow:hidden; background:#fff }
.gbpro-product-card__media { display:flex; align-items:center; justify-content:center; aspect-ratio:4/3; padding:28px; background:#f5f6f3 }
.gbpro-product-card__media img { display:block; width:100%; height:100%; object-fit:contain; mix-blend-mode:darken }
.gbpro-product-card__body { display:flex; flex-direction:column; flex:1; padding:24px }
.gbpro-product-card__category { color:var(--gb-muted); font-size:11px; margin:0 0 10px!important; letter-spacing:.07em; text-transform:uppercase }
.gbpro-product-card h3 { font-size:19px; line-height:1.35; min-height:52px; letter-spacing:-.015em; margin-bottom:18px }
.gbpro-product-card h3 a:hover { text-decoration:underline }
.gbpro-product-card__price { margin-top:auto; display:flex; flex-wrap:wrap; gap:8px; align-items:baseline; font-size:21px; font-weight:600 }
.gbpro-product-card__price ins { text-decoration:none }
.gbpro-product-card__price del { color:var(--gb-muted); font-size:14px; font-weight:400 }
.gbpro-product-card__body .stock { margin:8px 0 0; font-size:12px }
.gbpro-product-card__body .in-stock { color:var(--gb-green) }
.gbpro-product-card__body .out-of-stock { color:#923830 }
.gbpro-product-card__cta { display:flex; justify-content:space-between; align-items:center; min-height:47px; padding-top:16px; margin-top:20px; border-top:1px solid var(--gb-line); font-size:14px; font-weight:600 }
.gbpro-product-card__cta:hover { color:var(--gb-green); text-decoration:underline }
.gbpro-rating { display:flex; align-items:center; gap:10px; font-size:12px; margin-bottom:12px }
.gbpro-guidance { padding-block:70px; background:#f1f3ee }
.gbpro-guidance__inner { display:grid; grid-template-columns:1fr 1fr; gap:80px }
.gbpro-guidance h2 { font-size:34px; margin-bottom:22px }
.gbpro-guidance__details>div+div { border-top:1px solid #d3dbd2; padding-top:20px; margin-top:20px }
.gbpro-guidance h3 { font-size:18px; margin-bottom:8px }
.gbpro-guidance p:not(.gbpro-eyebrow) { color:var(--gb-muted); font-size:14px; max-width:52ch }
.gbpro-guidance p a { text-decoration:underline }
.gbpro-footer { background:#132b20; color:#e1e7e1 }
.gbpro-footer__main { display:grid; grid-template-columns:1.5fr 1fr 1fr .8fr; gap:52px; padding-block:60px 48px }
.gbpro-footer__brand { font-size:14px; max-width:320px }
.gbpro-footer__brand .ss-logo svg text { fill:#fff }
.gbpro-footer__brand p { color:#c3cec5; margin-block:22px }
.gbpro-footer__brand>a { display:inline-flex; align-items:center; gap:15px; min-height:44px }
.gbpro-footer nav h2 { font-size:14px; color:#fff; font-weight:600; margin:0 0 17px; line-height:1.5; letter-spacing:0 }
.gbpro-footer nav a { display:block; font-size:13px; min-height:36px; padding-block:6px; color:#c3cec5 }
.gbpro-footer a:hover { color:#fff; text-decoration:underline }
.gbpro-footer__bottom { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:22px; min-height:82px; padding-block:22px; border-top:1px solid #385044; color:#bdc9c0; font-size:12px }
.gbpro-payments { display:flex; align-items:center; gap:8px }
.gbpro-payments>span { margin-right:10px }
.gbpro-payments img { display:block; width:48px; height:30px }
/* Parent shop/PDP templates keep WooCommerce behavior, with corrected frames. */
.gbpro-site .ss-main { background:#fff; padding-block:40px 72px }
.gbpro-site .ss-container { max-width:1400px }
.gbpro-site .woocommerce-products-header { max-width:none; padding:0; margin-bottom:28px }
.gbpro-site .woocommerce-products-header__title { max-width:none; font-size:40px; font-weight:600; letter-spacing:-.025em; margin-bottom:16px }
.gbpro-site .term-description { font-size:15px; max-width:70ch }
.gbpro-shop-categories { display:flex; flex-wrap:wrap; gap:8px; margin:28px 0; clear:both }
.gbpro-shop-categories a { display:flex; align-items:center; padding:10px 14px; min-height:44px; border:1px solid var(--gb-line); border-radius:4px; color:var(--gb-ink); font-size:13px; text-decoration:none }
.gbpro-shop-categories a:hover, .gbpro-shop-categories a[aria-current] { background:var(--gb-green); border-color:var(--gb-green); color:#fff }
.gbpro-site ul.products { gap:30px 22px }
.gbpro-site .ss-product-card { border:1px solid var(--gb-line); border-radius:6px; overflow:hidden; box-shadow:none; transform:none }
.gbpro-site .ss-product-card:hover { box-shadow:none; transform:none; border-color:#a9b6aa }
.gbpro-site .ss-product-card__media { aspect-ratio:4/3; border-radius:0; background:#f5f6f3 }
.gbpro-site .ss-product-card__media>a { padding:24px; display:flex; align-items:center; justify-content:center }
.gbpro-site .ss-product-card__media img, .gbpro-site .ss-product-card__media svg { position:static; width:100%; height:100%; object-fit:contain; mix-blend-mode:darken; transform:none; will-change:auto }
.gbpro-site .ss-product-card__body { padding:20px; align-items:stretch }
.gbpro-site .ss-product-card .ss-stars--empty, .gbpro-site .ss-product-card [data-buy-now] { display:none }
.gbpro-site .ss-product-card__title { display:block; overflow:visible; font-size:18px; line-height:1.35; font-weight:600; min-height:49px }
.gbpro-site .ss-product-card__price { font-size:20px; margin-top:16px }
.gbpro-site .ss-product-card__footer { margin-top:auto; padding-top:20px; grid-template-columns:1fr }
.gbpro-site .ss-product-card__footer .ss-btn { min-height:44px; padding:11px 13px; font-size:13px; border-radius:4px; box-shadow:none; transform:none }
.gbpro-site.single-product div.product .summary .product_title { font-size:34px; font-weight:600; line-height:1.18; letter-spacing:-.025em }
.gbpro-site.single-product div.product .summary .price { font-size:28px; color:var(--gb-ink) }
.gbpro-site.single-product div.product .woocommerce-product-gallery { background:#fff; border:1px solid var(--gb-line); border-radius:6px }
.gbpro-site.single-product .woocommerce-product-gallery__image>a { display:flex; align-items:center; justify-content:center; aspect-ratio:1/1; padding:30px }
.gbpro-site.single-product div.product .woocommerce-product-gallery__image>a>img { width:100%; height:100%; object-fit:contain }
.gbpro-site.single-product div.product .woocommerce-product-gallery .flex-control-thumbs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin:12px; max-height:300px; overflow:auto }
.gbpro-site.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li { width:auto!important; float:none!important; margin:0 }
.gbpro-site.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img { width:100%; height:auto; aspect-ratio:1/1; object-fit:contain; padding:5px; border:1px solid var(--gb-line); border-radius:3px }
.gbpro-site.single-product div.product form.cart .single_add_to_cart_button { border-radius:4px; box-shadow:none; background:var(--gb-green); transform:none }
.gbpro-site .ss-btn { border-radius:4px; box-shadow:none }
@media(min-width:1500px) { .gbpro-hero,.gbpro-hero__inner { min-height:640px } }
@media(max-width:1100px) {
  .gbpro-header__inner { gap:20px }
  .gbpro-primary-nav { gap:20px }
  .gbpro-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 20px }
  .gbpro-category-card__media { aspect-ratio:4/3; padding:20px }
  .gbpro-category-card__text h3 { min-height:0 }
  .gbpro-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .gbpro-footer__main { gap:28px; grid-template-columns:1.3fr 1fr 1fr }
  .gbpro-footer__main>nav:last-child { grid-column:2 }
}
@media(max-width:800px) {
  .gbpro-shell { width:calc(100% - 40px) }
  .gbpro-header__inner { min-height:72px }
  .gbpro-primary-nav,.gbpro-account { display:none }
  .gbpro-menu-toggle { display:inline-flex }
  .gbpro-hero,.gbpro-hero__inner { min-height:510px }
  .gbpro-section { padding-block:55px }
  .gbpro-section-head { gap:20px; margin-bottom:28px }
  .gbpro-section-head>p { display:none }
  .gbpro-feature__inner { gap:25px; grid-template-columns:1fr 1fr; min-height:420px }
  .gbpro-feature figure img { height:300px }
  .gbpro-feature h2 { font-size:34px }
  .gbpro-feature__copy>p { font-size:14px }
  .gbpro-guidance__inner { gap:36px }
  .gbpro-guidance h2 { font-size:28px }
  .gbpro-site.single-product div.product .summary .product_title { font-size:28px }
}
@media(max-width:600px) {
  .gbpro-announcement .gbpro-shell { justify-content:center; min-height:30px; font-size:10px }
  .gbpro-announcement a { display:none }
  .gbpro-brand svg { width:174px; height:29px }
  .gbpro-brand img { max-width:174px; max-height:38px }
  .gbpro-header__inner { gap:8px; min-height:66px }
  .gbpro-header-actions { gap:0 }
  .gbpro-hero,.gbpro-hero__inner { min-height:500px }
  .gbpro-hero__inner { padding-block:52px }
  .gbpro-hero h1 { font-size:42px; max-width:350px; line-height:1.08 }
  .gbpro-hero__copy>p:not(.gbpro-eyebrow) { font-size:15px; max-width:32ch }
  .gbpro-hero__copy>p br { display:none }
  .gbpro-hero__actions { align-items:flex-start; flex-direction:column; gap:14px; margin-top:26px }
  .gbpro-hero::after { background:rgba(8,22,13,.56) }
  .gbpro-eyebrow { font-size:10px; margin-bottom:12px!important }
  .gbpro-main h2 { font-size:29px }
  .gbpro-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 12px }
  .gbpro-category-card__media { aspect-ratio:1.05/1; padding:13px }
  .gbpro-category-card__text { padding-top:12px; padding-right:0 }
  .gbpro-category-card__text h3 { font-size:14px; min-height:36px }
  .gbpro-category-card__text>svg { display:none }
  .gbpro-feature__inner { grid-template-columns:1fr; gap:14px; padding-block:42px 28px }
  .gbpro-feature h2 { font-size:36px }
  .gbpro-feature figure img { height:280px }
  .gbpro-feature__copy>p:not(.gbpro-eyebrow) { max-width:36ch; margin-bottom:22px }
  .gbpro-section-head { flex-wrap:wrap; align-items:flex-start; gap:12px }
  .gbpro-selection .gbpro-section-head .gbpro-text-link { min-height:32px }
  .gbpro-product-grid { column-gap:12px; row-gap:20px }
  .gbpro-product-card__media { aspect-ratio:1.1/1; padding:14px }
  .gbpro-product-card__body { padding:14px 12px }
  .gbpro-product-card h3 { font-size:15px; min-height:62px; line-height:1.35; overflow-wrap:anywhere; margin-bottom:16px }
  .gbpro-product-card__category { font-size:9px; overflow-wrap:anywhere }
  .gbpro-product-card__price { font-size:18px }
  .gbpro-product-card__price del { font-size:12px }
  .gbpro-product-card__cta { font-size:12px; gap:5px; padding-top:13px; margin-top:16px }
  .gbpro-product-card__cta svg { width:16px; height:16px }
  .gbpro-guidance { padding-block:45px }
  .gbpro-guidance__inner { grid-template-columns:1fr; gap:32px }
  .gbpro-footer__main { grid-template-columns:1fr 1fr; gap:32px 20px; padding-block:42px }
  .gbpro-footer__brand { grid-column:1/-1 }
  .gbpro-footer__main>nav:last-child { grid-column:auto }
  .gbpro-footer nav a { min-height:44px; padding-block:11px }
  .gbpro-payments { flex-wrap:wrap }
  .gbpro-payments>span { width:100%; margin:0 0 4px }
  .gbpro-site .woocommerce-products-header__title { font-size:30px }
  .gbpro-site .ss-product-card__media>a { padding:13px }
  .gbpro-site .ss-product-card__body { padding:13px }
  .gbpro-site .ss-product-card__title { font-size:15px; min-height:62px }
  .gbpro-site .ss-product-card__price { font-size:18px }
  .gbpro-site ul.products { gap:22px 12px }
  .gbpro-site.single-product .woocommerce-product-gallery__image>a { padding:20px }
}
@media(max-width:370px) { .gbpro-shell { width:calc(100% - 28px) } .gbpro-brand svg { width:151px } .gbpro-hero h1 { font-size:37px } }
@media(prefers-reduced-motion:reduce) { .gbpro-site *, .gbpro-site *::before, .gbpro-site *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important } }
