.hoogers-winkel { background: #faf9f8; }
.hoogers-winkel__breadcrumb { margin-bottom: 1.5rem; color: #777; font-size: .875rem; }
.hoogers-winkel__breadcrumb .woocommerce-breadcrumb { margin: 0; }
.hoogers-winkel__breadcrumb a { color: #777; }
.hoogers-winkel__header { margin-bottom: 2rem; }
.hoogers-winkel__header h1 { margin: 0 0 .5rem; font-size: clamp(2.5rem, 6vw, 4rem); line-height: 1.06; }
.hoogers-winkel__header p { max-width: 45rem; margin: 0; color: #5c5855; }
.hoogers-winkel__layout { display: grid; gap: 2rem; align-items: start; }
.hoogers-winkel__filters { padding: 1.5rem; border: 1px solid #f0e4df; border-radius: 1.5rem; background: var(--wit, #fff); }
.hoogers-winkel__filter-heading { margin-bottom: 1.75rem; color: var(--roze, #d6aaa0); font-weight: 700; }
.hoogers-winkel__filter-heading span { margin-right: .5rem; }
.hoogers-winkel__filters fieldset { min-width: 0; margin: 0 0 1.75rem; padding: 0; border: 0; }
.hoogers-winkel__filters legend { width: 100%; margin-bottom: .8rem; padding-bottom: .5rem; border-bottom: 1px solid #e9e0dc; font-family: 'Playfair Display', serif; font-size: 1.15rem; font-style: italic; }
.hoogers-winkel__type { display: block; margin-bottom: .5rem; cursor: pointer; }
.hoogers-winkel__type input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.hoogers-winkel__type span { display: block; padding: .65rem 1rem; border-radius: .75rem; background: #f2e7e2; color: #3b3533; transition: background .2s, color .2s; }
.hoogers-winkel__type:hover span, .hoogers-winkel__type input:checked + span { background: var(--roze, #dbb9ad); color: #241b18; }
.hoogers-winkel__type input:focus-visible + span { outline: 2px solid #252525; outline-offset: 2px; }
.hoogers-winkel__brand { display: flex; align-items: center; gap: .7rem; margin: .55rem 0; cursor: pointer; }
.hoogers-winkel__brand input { width: 1.2rem; height: 1.2rem; margin: 0; accent-color: var(--roze, #c69789); }
.hoogers-winkel__filters button { width: 100%; border: 0; cursor: pointer; }
.hoogers-winkel__reset { display: inline-block; margin-top: .8rem; }
.hoogers-winkel__toolbar { display: flex; flex-wrap: wrap; gap: .75rem 1rem; justify-content: space-between; align-items: center; margin-bottom: 1.25rem; }
.hoogers-winkel__toolbar p { margin: 0; color: #625e5b; }
.hoogers-winkel__toolbar form { display: flex; gap: .5rem; align-items: center; }
.hoogers-winkel__toolbar select { max-width: 14rem; padding: .5rem; border: 1px solid #ded2cc; border-radius: .5rem; background: #fff; }
.hoogers-winkel__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
.hoogers-winkel__card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e5c9be; border-radius: 1.5rem; background: var(--wit, #fff); transition: transform .2s, box-shadow .2s; }
.hoogers-winkel__grid .hoogers-winkel__card { float: none; width: auto; margin: 0; }
.hoogers-winkel__card:hover { transform: translateY(-3px); box-shadow: 0 1rem 2rem rgba(49, 36, 31, .08); }
.hoogers-winkel__image { display: grid; place-items: center; aspect-ratio: 4 / 3; overflow: hidden; background: #f6f4f2; }
.hoogers-winkel__image img { width: 100%; height: 100%; object-fit: contain; transition: transform .25s; }
.hoogers-winkel__card:hover .hoogers-winkel__image img { transform: scale(1.03); }
.hoogers-winkel__card-content { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 1.25rem; }
.hoogers-winkel__card h2 { 
    margin: 0 0 15px 0;
    font-size: 2rem;
    line-height: 125%;
    text-decoration: none; 
}
.hoogers-winkel__card h2 a {
    text-decoration: none!important;
}
.hoogers-winkel__card h2 a { color: inherit; text-decoration: none; }
.hoogers-winkel__categories { margin-bottom: .5rem; color: #777; }
.hoogers-winkel__categories a { color: inherit; }
.hoogers-winkel__price { margin: .4rem 0 1.2rem; font-weight: 600; font-size: 1.1rem; }
.hoogers-winkel__card .button { display: inline-block; margin-top: auto; text-decoration: none; }
.hoogers-winkel a.button.button-roze,
.hoogers-winkel button.button-roze {
    background-color: var(--roze) !important;
    color: var(--grijs) !important;
    border: 1px solid var(--roze);
    border-radius: 25px;
    padding: 10px 30px 12px 25px;
    font-family: 'Playfair Display', serif;
    font-style: italic;
    font-size: 1rem;
    line-height: 1.25;
    text-decoration: none !important;
    font-weight: 400;
}
.hoogers-winkel a.button.button-roze::after,
.hoogers-winkel button.button-roze::after { color: var(--grijs); }
.hoogers-winkel a.button.button-roze:hover,
.hoogers-winkel button.button-roze:hover {
    background-color: var(--wit) !important;
    color: var(--roze) !important;
}
.hoogers-winkel a.button.button-roze:hover::after,
.hoogers-winkel button.button-roze:hover::after { color: var(--roze); }
.hoogers-winkel .woocommerce-pagination { margin-top: 2rem; }
.hoogers-winkel .woocommerce-pagination ul.page-numbers { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; padding: 0; border: 0; }
.hoogers-winkel .woocommerce-pagination ul.page-numbers li { border: 0; }
.hoogers-winkel .woocommerce-pagination .page-numbers a, .hoogers-winkel .woocommerce-pagination .page-numbers span { display: inline-block; min-width: 2.5rem; padding: .5rem; border-radius: .5rem; background: #fff; }
.hoogers-winkel .woocommerce-pagination .page-numbers .current { background: #e5c9be; }
@media (min-width: 768px) {
    .hoogers-winkel__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 992px) {
    .hoogers-winkel__layout { grid-template-columns: minmax(12rem, 1fr) minmax(0, 4fr); }
}
@media (min-width: 1200px) {
    .hoogers-winkel__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
}
