.hl-catalog { padding-top: 0; }
.hl-jump { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 56px; }
.hl-jump a { padding: 12px 24px; border: 1px solid #404725; border-radius: 30px; color: #404725; font-weight: 600; }
.hl-jump a:hover { background: #404725; color: #ece5dd; }
.hl-collection { scroll-margin-top: 120px; margin-bottom: 88px; }
.hl-collection-heading { border-bottom: 1px solid rgba(64,71,37,.25); padding-bottom: 24px; margin-bottom: 32px; }
.hl-collection-heading p { font-size: 12px; letter-spacing: .18em; margin-bottom: 12px; }
.hl-collection-heading h2 { font-size: clamp(30px,4vw,48px); color: #404725; margin: 0; }
.hl-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px 28px; align-items: start; }
.hl-item { min-width: 0; background: #f8f5f0; border-radius: 16px; overflow: hidden; }
.hl-photo { position: relative; aspect-ratio: 1; overflow: hidden; background: white; }
.hl-photo img { position: absolute; width: var(--photo-width); max-width: none; height: auto; left: var(--photo-left); top: var(--photo-top); }
.hl-info { padding: 24px; }
.hl-type { font-size: 13px; color: #61664e; margin: 0 0 8px; }
.hl-info h3 { font-family: 'Playfair Display',serif; font-size: 23px; line-height: 1.3; color: #404725; margin: 0 0 12px; min-height: 60px; }
.hl-volume { font-size: 14px; margin-bottom: 24px; }
.hl-action { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; border-top: 1px solid #deded0; padding-top: 20px; }
.hl-action > span { color: #6b6e5f; font-size: 13px; }
.hl-action a { color: #404725; font-weight: 600; padding: 8px 0; text-decoration: underline; text-underline-offset: 5px; }
.hl-catalog a:focus-visible { outline: 2px solid #404725; outline-offset: 5px; }
.catalog-lang { display: none; }
html[lang="de"] .catalog-lang[data-catalog-lang="de"],html[lang="ru"] .catalog-lang[data-catalog-lang="ru"],html[lang="en"] .catalog-lang[data-catalog-lang="en"] { display: inline; }
@media(max-width:1000px) { .hl-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:540px) { .hl-grid { grid-template-columns:minmax(0,1fr);gap:24px; }  .hl-collection {margin-bottom:56px;} .hl-jump {margin-bottom:32px;} }

.hl-crop {position:absolute;width:88%;aspect-ratio:var(--crop-ratio);overflow:hidden;left:6%;top:50%;transform:translateY(-50%);}
/* Hide the shop control at the edge of the supplied screenshot viewport. */
#bio .hl-crop::after { content: ''; position: absolute; right: 0; bottom: 0; width: 12%; height: 22%; background: #fff; }

/* Use the site's product cards, typography, palette and pill buttons throughout. */
.hl-grid { align-items: stretch; gap: 28px; }
.hl-item.product-card { display:flex; flex-direction:column; border-radius:22px; background:var(--color-background); border:1px solid rgba(64,71,37,.13); }
.hl-photo { background:#e2ded3; aspect-ratio:4/3; }
.hl-crop { width:64%; left:18%; mix-blend-mode:multiply; }
.hl-info { display:flex; flex-direction:column; flex:1; padding:24px; }
.hl-info .product-category { margin-bottom:12px; }
.hl-info h3 { font-family:inherit; font-size:1.25rem; font-weight:600; line-height:1.4; min-height:3em; }
.hl-type { order:1; margin:0 0 16px; }
.hl-volume { order:2; margin-bottom:20px; }
.hl-action { order:3; margin-top:auto; border:0; padding:0; gap:16px; }
.hl-action a.cta-button { display:flex; align-items:center; justify-content:center; width:100%; min-height:46px; padding:12px 20px; border-radius:50px; color:var(--color-background); background:var(--color-primary); text-decoration:none; font-weight:600; }
.hl-action a.cta-button:hover { background:#525a33; }
.hl-action > span { font-size:.9rem; color:var(--color-primary); }
.hl-collection-heading { text-align:center; border:0; margin-bottom:36px; padding-bottom:0; }
.hl-collection-heading h2 { font-family:inherit; font-size:clamp(28px,3vw,40px); font-weight:500; }
.hl-jump { justify-content:center; }
.hl-jump a { border-color:rgba(64,71,37,.25); }
#products .hl-home-grid { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; }
#products .hl-item { min-height:0; }
.hl-home-grid .hl-crop::after { content:''; position:absolute;right:0;bottom:0;width:12%;height:22%;background:white; }
@media(max-width:800px) { #products .hl-home-grid {grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:540px) { #products .hl-home-grid {grid-template-columns:minmax(0,1fr);} }

/* Refined product presentation shared by the homepage and catalogue. */
.hl-item.product-card {
  position:relative;
  border:1px solid rgba(64,71,37,.16);
  background:#f1ece4;
  box-shadow:0 4px 12px rgba(44,47,31,.04);
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.hl-item .hl-photo {
  background:radial-gradient(ellipse at 50% 40%,#f4f0e8 0%,#e4dfd3 75%);
  border-bottom:1px solid rgba(64,71,37,.1);
  aspect-ratio:1.15;
}
.hl-item .hl-crop {
  width:76%;left:12%;
  transform:translateY(-50%) scale(1);
  transition:transform .65s cubic-bezier(.22,1,.36,1);
}
.hl-item .hl-info {padding:26px;}
.hl-item .product-category {
  color:var(--color-primary);opacity:.75;
  font-size:.7rem;letter-spacing:.16em;
}
.hl-item .hl-info h3 {
  font-family:'Playfair Display',serif;
  font-size:clamp(1.35rem,1.7vw,1.65rem);
  font-weight:500;line-height:1.3;
  margin:0 0 14px;min-height:2.6em;
}
.hl-item .hl-type {color:#61654f;line-height:1.55;}
.hl-item .hl-volume {
  align-self:flex-start;
  font-size:.75rem;letter-spacing:.06em;
  border:1px solid rgba(64,71,37,.18);
  border-radius:999px;padding:5px 12px;
}
.hl-item .hl-action {border-top:1px solid rgba(64,71,37,.14);padding-top:20px;}
.hl-item .hl-action a.cta-button {
  box-shadow:0 3px 8px rgba(64,71,37,.1);
  transition:background-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
.hl-item .hl-action a > span[aria-hidden] {
  margin-left:10px;
  transition:transform .25s ease;
}
.hl-item:focus-within {border-color:rgba(64,71,37,.45);}
@media(hover:hover) and (pointer:fine) {
  .hl-item.product-card:hover {
    transform:translateY(-6px);
    border-color:rgba(64,71,37,.3);
    box-shadow:0 18px 36px -14px rgba(44,47,31,.24);
  }
  .hl-item:hover .hl-crop {transform:translateY(-50%) scale(1.045);}
  .hl-item .hl-action a.cta-button:hover {
    transform:translateY(-2px);
    box-shadow:0 7px 16px rgba(64,71,37,.2);
  }
  .hl-item .hl-action a:hover > span[aria-hidden] {transform:translate(2px,-2px);}
}
@media(hover:none) {
  .hl-item.product-card:hover {transform:none;}
}
@media(prefers-reduced-motion:reduce) {
  .hl-item.product-card,.hl-item .hl-crop,.hl-item .hl-action a.cta-button,.hl-item .hl-action a > span[aria-hidden] {transition:none;}
  .hl-item.product-card:hover,.hl-item .hl-action a.cta-button:hover {transform:none;}
  .hl-item:hover .hl-crop {transform:translateY(-50%);}
}

/* Match the established service-card surface and motion. */
.hl-item.product-card {
 background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(250,248,245,.95));
 border-radius:24px;border:1px solid rgba(255,255,255,.8);cursor:pointer;
 box-shadow:0 4px 6px -1px rgba(64,71,37,.05),0 10px 20px -5px rgba(64,71,37,.08),0 25px 50px -12px rgba(64,71,37,.06);
 transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s cubic-bezier(.22,1,.36,1);
}
.hl-item.product-card::before {content:'';position:absolute;inset:0 0 auto;height:4px;z-index:1;background:linear-gradient(90deg,#eedca7,#c9b896,#eedca7,#d4c4a0);transition:height .4s cubic-bezier(.22,1,.36,1);}
.hl-item .hl-info h3 {font-family:inherit;font-weight:500;}
.hl-details-trigger {width:100%;min-height:46px;}
.hl-crop::after,#bio .hl-crop::after,.hl-home-grid .hl-crop::after {content:'';position:absolute;right:0;bottom:0;width:25%;height:30%;background:white;}
@media(hover:hover) and (pointer:fine) {
 .hl-item.product-card:hover {transform:translateY(-8px);box-shadow:0 20px 40px -10px rgba(64,71,37,.15),0 8px 20px -5px rgba(64,71,37,.1);}
 .hl-item.product-card:hover::before {height:6px;}
}
.hl-dialog {position:fixed;inset:0;margin:auto;width:min(620px,calc(100% - 32px));max-height:88dvh;padding:0;border:1px solid rgba(238,220,167,.2);border-radius:24px;background:var(--color-primary);color:var(--color-background);overflow:auto;box-shadow:0 32px 64px rgba(0,0,0,.4);}
.hl-dialog::backdrop {background:rgba(36,38,26,.75);backdrop-filter:blur(10px);}
.hl-dialog[open] {animation:hl-dialog-in .4s cubic-bezier(.22,1,.36,1);}
.hl-dialog-close {position:absolute;right:16px;top:16px;z-index:2;width:44px;height:44px;border:0;border-radius:50%;background:var(--color-background);color:var(--color-primary);display:grid;place-items:center;cursor:pointer;}
.hl-dialog-close svg {width:20px;height:20px;}
.hl-dialog-photo {background:#e4dfd3;display:flex;justify-content:center;}
.hl-dialog-photo .hl-photo {width:260px;height:240px;aspect-ratio:auto;background:transparent;}
.hl-dialog-body {padding:28px;}
.hl-dialog-body h2,.hl-dialog-body h3,.hl-dialog-body p {color:inherit;}
.hl-dialog-body h2 {font-size:28px;margin:8px 0 24px;}
.hl-dialog-series {font-size:12px;letter-spacing:.12em;color:var(--color-secondary)!important;}
.hl-dialog-body dl {display:grid;gap:14px;margin:0 0 24px;}
.hl-dialog-body dl div {display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(238,220,167,.2);padding-bottom:12px;}
.hl-dialog-body dt {opacity:.7;}.hl-dialog-body dd {margin:0;text-align:right;}
.hl-dialog-body h3 {font-size:18px;margin-bottom:12px;}
.hl-dialog-body p {line-height:1.7;margin-bottom:20px;}
.hl-dialog-body .cta-button {width:100%;text-align:center;white-space:normal;}
@keyframes hl-dialog-in {from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.hl-dialog[open]{animation:none}.hl-item.product-card,.hl-item.product-card::before{transition:none}.hl-item.product-card:hover{transform:none}}

/* Service-style hover: fill the button when the whole card is hovered. */
.hl-item .hl-details-trigger {
 display:flex;justify-content:center;align-items:center;gap:8px;
 position:relative;isolation:isolate;overflow:hidden;
 border:1.5px solid var(--color-primary);border-radius:50px;
 background:transparent;color:var(--color-primary);
 transition:color .35s cubic-bezier(.22,1,.36,1),border-color .35s ease;
}
.hl-item .hl-details-trigger::before {
 content:'';position:absolute;inset:0;background:var(--color-primary);
 transform:scaleX(0);transform-origin:right;z-index:-1;
 transition:transform .35s cubic-bezier(.22,1,.36,1);
}
.hl-item .hl-details-trigger span,.hl-item .btn-arrow {position:relative;z-index:1;}
.hl-item .btn-arrow {width:16px;height:16px;flex:none;transition:transform .3s ease;}
.hl-item .hl-info {position:relative;}
.hl-item .hl-info::before {
 content:'';position:absolute;inset:0;pointer-events:none;
 background:linear-gradient(135deg,rgba(238,220,167,.03),rgba(64,71,37,.01) 50%,rgba(238,220,167,.05));
 opacity:0;transition:opacity .5s ease;
}
.hl-item .hl-info h3 {transition:color .35s ease;}
@media(hover:hover) and (pointer:fine) {
 body .hl-item.product-card:hover {transform:translateY(-8px)!important;transition-delay:0s!important;}
 .hl-item:hover .hl-details-trigger {color:var(--color-background);background:transparent;}
 .hl-item:hover .hl-details-trigger::before {transform:scaleX(1);transform-origin:left;}
 .hl-item:hover .btn-arrow {transform:translateX(3px);}
 .hl-item:hover .hl-info::before {opacity:1;}
 .hl-item:hover .hl-info h3 {color:#2d331a;}
}
.hl-item:focus-within .hl-details-trigger {color:var(--color-background);}
.hl-item:focus-within .hl-details-trigger::before {transform:scaleX(1);transform-origin:left;}
@media(prefers-reduced-motion:reduce) {
 body .hl-item.product-card:hover {transform:none!important;}
 .hl-item .hl-details-trigger,.hl-item .hl-details-trigger::before,.hl-item .btn-arrow,.hl-item .hl-info::before,.hl-item .hl-info h3 {transition:none;}
}

/* Original packshots and a clearer editorial hierarchy. */
.hl-item .hl-original {display:grid;place-items:center;background:#e9e5dc;aspect-ratio:1.2;}
.hl-photo.hl-original img {position:static;width:88%;height:88%;max-width:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .6s cubic-bezier(.22,1,.36,1);}
.hl-item .hl-info {padding:24px 26px 26px;gap:0;}
.hl-item .hl-info h3 {font-family:'Playfair Display',serif;font-size:1.5rem;line-height:1.25;min-height:2.5em;margin:0 0 12px;}
.hl-item .hl-type {order:0;font-size:.78rem;margin:0 0 10px;color:#687052;}
.hl-item .hl-volume {order:0;margin:0 0 16px;font-size:.72rem;}
.hl-summary {order:1;font-size:.92rem;line-height:1.6;color:#535944;min-height:4.8em;margin:0 0 24px;}
.hl-item .hl-action {order:2;padding-top:18px;gap:14px;}
.hl-item .product-category {font-size:.65rem;letter-spacing:.18em;margin-bottom:12px;}
.hl-collection-heading h2 {font-family:'Playfair Display',serif;}
.hl-dialog-photo .hl-original {display:grid;place-items:center;width:280px;height:230px;background:transparent;}
.hl-dialog-photo .hl-original img {width:90%;height:90%;}
.hl-dialog-lead {font-size:1.08rem;color:#eedca7!important;}
.hl-detail-section {border-top:1px solid rgba(238,220,167,.18);padding:20px 0 0;margin-top:18px;}
.hl-detail-section small {display:block;line-height:1.6;opacity:.7;margin-bottom:20px;}
.hl-source {display:inline-block;font-size:.8rem;color:#eedca7;text-decoration:underline;text-underline-offset:4px;margin:0 0 22px;}
.hl-consult {padding:20px;border-radius:14px;background:rgba(238,220,167,.07);margin-bottom:24px;}
.hl-consult p {margin-bottom:0;}
@media(hover:hover) and (pointer:fine) {.hl-item:hover .hl-original img{transform:scale(1.06);}}
@media(prefers-reduced-motion:reduce){.hl-photo.hl-original img{transition:none}.hl-item:hover .hl-original img{transform:none}}
@media(max-width:540px){.hl-summary{min-height:0}.hl-item .hl-info h3{min-height:0}.hl-dialog-body{padding:24px}}

/* Light supporting information, using the site's body typography. */
.product-benefits.section {
 background:var(--color-white, #fff);
 padding:56px 0;
 border-top:1px solid rgba(64,71,37,.07);
 border-bottom:1px solid rgba(64,71,37,.07);
}
.product-benefits .benefits-grid {
 grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;
}
.product-benefits .benefit-item {text-align:center;padding:12px 8px;}
.product-benefits .benefit-item h4 {
 font-family:inherit;font-size:1.05rem;font-weight:600;line-height:1.45;
 margin:0 0 10px;color:var(--color-primary);
}
.product-benefits .benefit-item p {
 font-size:.9rem;line-height:1.65;margin:0;color:var(--color-text);opacity:.7;
}
@media(max-width:900px) {
 .product-benefits .benefits-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
}
@media(max-width:540px) {
 .product-benefits.section {padding:36px 0;}
 .product-benefits .benefits-grid {grid-template-columns:1fr;gap:0;}
 .product-benefits .benefit-item {padding:20px 8px;}
 .product-benefits .benefit-item + .benefit-item {border-top:1px solid rgba(64,71,37,.08);}
}
.hl-item .hl-action > .hl-price {font-size:1.12rem;font-weight:600;color:var(--color-primary);line-height:1.65;}

/* Product detail windows: match the olive surface in both Firefox and Chromium. */
.hl-dialog{scrollbar-width:thin;scrollbar-color:#b5b58c #404725;overscroll-behavior:contain}
.hl-dialog::-webkit-scrollbar{width:8px;height:8px}
.hl-dialog::-webkit-scrollbar-track{background:#404725;border-radius:24px;margin-block:20px}
.hl-dialog::-webkit-scrollbar-thumb{background:#b5b58c;border:2px solid #404725;border-radius:12px}
.hl-dialog::-webkit-scrollbar-thumb:hover{background:#eaddaa}
.hl-dialog::-webkit-scrollbar-button{display:none;width:0;height:0}
.hl-dialog::-webkit-scrollbar-corner{background:#404725}
