.hn-main{max-width:90rem;margin:auto;padding:3rem clamp(1rem,4vw,4rem)}.hn-intro{max-width:55rem;padding-block:1rem}.hn-grid,#hn-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.hn-category,.hn-card-link{display:block;text-decoration:none}.hn-category-picture,.hn-card-image{overflow:hidden;background:var(--flaeche)}.hn-card-image{aspect-ratio:4/5}.hn-category-picture{height:auto;aspect-ratio:auto}.hn-card,.hn-card-link{min-width:0}.hn-model{font-size:2rem;margin-block:.5rem}.hn-price{font-size:1.4rem}.hn-toolbar{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;position:sticky;top:5rem;background:var(--hintergrund);z-index:5;padding:1rem 0}.hn-dialog{max-width:min(94vw,70rem);max-height:90dvh;background:var(--hintergrund);color:var(--text);border:1px solid var(--linie);border-radius:1.5rem;padding:2rem}.hn-dialog::backdrop{background:var(--flaeche)}.hn-small{width:min(94vw,34rem)}#hn-cart,#hn-filters{margin:0 0 0 auto;max-height:100dvh;height:100dvh;border-radius:1.5rem 0 0 1.5rem}.hn-close{float:right;min-height:44px;min-width:44px}.hn-dialog form{display:grid;gap:1rem}.hn-dialog label{display:grid;gap:.5rem}.hn-product-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:4rem}.hn-product-copy{align-self:start;position:sticky;top:7rem}.hn-product-media{min-width:0}.hn-gallery-fallback{display:block}.hn-product-title{font-size:clamp(2rem,4vw,3.5rem)}.hn-spec-table div{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--linie)}.hn-spec-table dd{margin:0}.hn-cart-line{padding-block:1.5rem;border-bottom:1px solid var(--linie)}.hn-cart-controls{display:flex;gap:1rem}.hn-cart-controls input{max-width:6rem}.hn-field-error{color:var(--text)}.hn-photo{display:block;position:relative;width:100%;height:auto;aspect-ratio:var(--hn-photo-ratio,1);overflow:hidden}.hn .hn-photo>img{position:absolute;display:block;width:var(--hn-image-width,100%);height:var(--hn-image-height,100%);left:var(--hn-image-left,0);top:var(--hn-image-top,0);max-width:none;max-height:none;object-fit:contain}.hn-table-wrap{overflow:auto}.hn-category-picture:empty{aspect-ratio:auto}body[data-hn-public="true"] #hn-cart #hn-request{display:none} @media(max-width:48rem){.hn-grid,#hn-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.hn-product-layout{grid-template-columns:1fr;gap:1.5rem}.hn-product-copy{position:static}.hn-main{padding:1.5rem 1rem}.hn-dialog{padding:1.2rem}.hn-toolbar{position:static}}

.shop-filter-pills{display:flex;flex-wrap:wrap;gap:.5rem}.shop-filter-pills button{border-radius:99px;min-height:44px;border:1px solid var(--linie);padding:.5rem 1rem}.shop-filter-pills [aria-pressed="true"]{background:var(--gruen);color:var(--grund)}

/* Approved Shop C: one complete cover per article; further photos on its own page. */
body[data-hn-public="true"] #hn-products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; width:100%; max-width:1240px; margin-inline:auto; align-items:start; }
.hn-card--public .hn-card-image { width:100%; max-width:none; height:auto; aspect-ratio:auto; margin-inline:auto; background:transparent; overflow:visible; }
.hn-card--public .hn-card-photo-link { display:block; }
.hn-card--public .hn-card-info { padding-block-start:1rem; text-align:center; overflow-wrap:anywhere; }
.hn-card--public .hn-card-info p,.hn-card--public .hn-model { margin:0; }
.hn-card--public .hn-model { font-family:var(--schrift-titel); font-size:clamp(2rem,3vw,2.5rem); line-height:1.15; }
.hn-card--public .hn-card-info .hn-type { margin-block-start:.4rem; color:var(--text-leise); }
.hn-card--public .hn-card-colour,.hn-card--public .hn-card-unit,.hn-card--public .hn-muted { color:var(--text-leise); }
.hn-card--public .hn-card-info .hn-price { margin-block:.75rem .2rem; }
.hn-card--public .hn-price small { display:block; font:400 .875rem/1.5 var(--schrift-text); }
.hn-card--public .hn-card-unit,.hn-card--public .hn-muted { font-size:.875rem; line-height:1.5; }
.hn-card--public .hn-card-action { display:inline-flex; align-items:center; justify-content:center; gap:.75rem; min-height:48px; max-width:100%; margin-block-start:1rem; padding:.75rem 1.125rem; border:1px solid var(--linie); outline:1px solid var(--linie); border-radius:999px; background:transparent; box-shadow:none; color:var(--gruen); font:500 1rem/1.35 var(--schrift-text); text-decoration:none; }
.hn-card-action svg { width:18px; height:18px; flex:none; }
.hn-card-action:hover { outline-color:var(--gruen); }
.hn-card--public a:focus-visible { outline:2px solid var(--gruen); outline-offset:4px; }
[dir="rtl"] .hn-card-action svg { transform:scaleX(-1); }

/* Image controls retain their source proportions and bounded photo geometry. */
.hn-gallery,.hn-gallery-extras { width: 100%; min-width: 0; }
.hn-gallery-stage { position: relative; }
.hn-gallery-open { display: block; }
.hn-gallery .hn-swiper { height: auto; aspect-ratio: auto; }
.hn-gallery .swiper-slide { height: auto; align-self: flex-start; }
.hn-thumbnails { display: flex; gap: .5rem; width: 100%; max-width: 100%; overflow-x: auto; padding: 4px; margin-block: .5rem; scroll-padding: 4px; }
.hn-thumbnails .hn-thumb { display: block; flex: 0 0 64px; width: 64px; height: 64px; min-width: 64px; min-height: 64px; max-width: 64px; max-height: 64px; padding: 0; border: 2px solid transparent; border-radius: 4px; overflow: hidden; background: var(--grund); }
.hn-thumb[aria-pressed="true"] { border-color: var(--gruen); }
.hn-thumb:focus-visible { outline: 2px solid var(--gruen); outline-offset: 2px; }
.hn-dialog.hn-photoswipe-dialog { position: fixed; inset: 0; width: 100%; height: 100dvh; max-width: none; max-height: none; padding: 0; margin: 0; border: 0; border-radius: 0; overflow: hidden; }

/* Approved category overview: complete photographs, concise copy and a single link. */
.hn-categories,#hn-categories { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; width:100%; max-width:1240px; margin-inline:auto; align-items:start; }
.hn-category.category-card { display:grid; grid-template-columns:minmax(0,1fr); justify-items:start; gap:.55rem; min-width:0; color:var(--text); text-decoration:none; }
.hn-category .hn-category-picture { width:100%; height:auto; aspect-ratio:auto; background:transparent; }
.hn-category .category-card__title { display:block; margin:0; font-family:var(--schrift-titel); font-size:clamp(1.8rem,3vw,2.3rem); line-height:1.1; }
.hn-category .category-card__description { display:block; margin:0; color:var(--text-leise); font-family:var(--schrift-text); font-size:1rem; line-height:1.5; overflow-wrap:anywhere; }
.hn-category .category-card__description > span { display:inline; }
.hn-category .category-card__action { display:inline-flex; align-items:center; justify-content:center; min-height:44px; max-width:100%; padding:.65rem 1.25rem; margin:.2rem 0 0; border:1px solid var(--gruen); border-radius:999px; background:transparent; box-shadow:none; color:var(--gruen); font:500 1rem/1.3 var(--schrift-text); text-align:center; overflow-wrap:anywhere; }
.hn-category:hover .category-card__action { border-color:var(--gruen-hell); color:var(--gruen-hell); }
.hn-category:focus-visible { outline:2px solid var(--gruen); outline-offset:5px; }

/* The existing Shop PhotoSwipe fallback inherits the same light page surface. */
body[data-hn-public="true"] .hn-photoswipe-dialog .pswp { --pswp-bg:var(--grund,#F6F6F2); --pswp-placeholder-bg:var(--kalk,#E9E8E1); --pswp-icon-color:var(--tinte,#1D1F1C); --pswp-icon-color-secondary:var(--grund,#F6F6F2); --pswp-icon-stroke-color:var(--grund,#F6F6F2); --pswp-icon-stroke-width:1px; --pswp-error-text-color:var(--tinte,#1D1F1C); color:var(--tinte,var(--text)); }
body[data-hn-public="true"] .hn-photoswipe-dialog .pswp__button { display:block; min-width:44px; min-height:44px; padding:0; border:0; border-radius:0; background:transparent; color:var(--tinte,var(--text)); box-shadow:none; backdrop-filter:none; }
body[data-hn-public="true"] .hn-photoswipe-dialog .pswp__button--close { font:20px Arial,Helvetica,sans-serif; }
body[data-hn-public="true"] .hn-photoswipe-dialog .pswp__button--arrow { position:absolute; }
body[data-hn-public="true"] .hn-photoswipe-dialog .pswp__counter { color:var(--tinte,var(--text)); text-shadow:none; font-size:13px; }
body[data-hn-public="true"] .hn-photoswipe-dialog .pswp__top-bar { padding-top:env(safe-area-inset-top); }
body[data-hn-public="true"] .hn-photoswipe-dialog .pswp__zoom-hint { position:absolute; left:16px; right:16px; bottom:calc(18px + env(safe-area-inset-bottom)); text-align:center; color:var(--grau,var(--text)); font:12px/1.5 Arial,Helvetica,sans-serif; pointer-events:none; }
body[data-hn-public="true"] .hn-photoswipe-dialog .pswp :focus-visible { outline:2px solid var(--gruen,var(--linie)); outline-offset:-4px; }
/* Restore the cart label spacing from the retired hn-shop-sales stylesheet. */
body[data-hn-public="true"][data-sales-view="cart"] #sales-entry label:not(.hn-checkbox) { display: grid; gap: 8px; }

[data-seo-heading]{display:block}
.kitchen-planner-heading{padding-bottom:0}
