/* All presentation overrides are limited to the Shop landing page. */
html body:has(.shop-scene) :is(#siteHeader.archive-header,#footer[data-unified-footer]){--text-color:#fff;--editorial-line:#ffffff38;color:#fff!important}
html body:has(.shop-scene) :is(#siteHeader.archive-header,#footer[data-unified-footer]) *{color:#fff!important}
html:has(.shop-scene), body:has(.shop-scene){background:#101810!important;color:#f5f3e9!important;color-scheme:dark}
body:has(.shop-scene){--os-ink:#f5f3e9;--os-muted:#f5f3e9;--os-accent:#f5f3e9;--os-line:#f5f3e944;isolation:isolate}
body:has(.shop-scene)::before,body:has(.shop-scene)::after{display:none!important}
body:has(.shop-scene) :is(#archive-space,#archive-node,.pa-owner-switch){display:none!important}
body:has(.shop-scene) #main{position:static!important;margin:0!important;padding:0!important;max-width:none!important;min-height:0;background:transparent!important;transform:none!important;filter:none!important;opacity:1!important;animation:none!important}
.shop-scene{background:none;position:static}
.shop-video-layer{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#101810}
.shop-video{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:none;opacity:1;mix-blend-mode:normal}
.shop-video-hero{height:100vh;height:100svh;margin:0;padding:0;background:transparent}
.shop-genera{position:relative;padding:clamp(70px,12vh,140px) clamp(24px,7.5vw,144px) clamp(100px,17vh,190px);margin:0;background:transparent}
.shop-genus{display:flex;align-items:center;min-height:clamp(140px,22vh,250px);border-top:1px solid #f5f3e94d;color:#f5f3e9;text-decoration:none;position:relative}
.shop-genus:last-child{border-bottom:1px solid #f5f3e94d}
.shop-genus span{display:block;font:400 clamp(28px,5.55vw,96px)/1.16 Arial,Helvetica,sans-serif;letter-spacing:-.045em;text-shadow:0 2px 20px #0006;transition:transform .65s cubic-bezier(.2,.65,.2,1),opacity .65s}
@media(hover:hover){.shop-genus:hover span{transform:translateX(10px);opacity:.78}}
.shop-motion{background:transparent;border:0;border-bottom:1px solid #f5f3e94d;color:inherit;padding:12px 0;font:11px/1.5 Arial,sans-serif;cursor:pointer}
@media(max-width:900px){.shop-genus{min-height:180px}}
@media(max-width:480px){.shop-genus span{font-size:7.6vw;letter-spacing:-.045em}.shop-genus{min-height:160px}.shop-genera{padding-top:64px;padding-bottom:100px}}
@media(prefers-reduced-motion:no-preference){@supports(animation-timeline:view()){.shop-genus span{animation:shop-reveal both linear;animation-timeline:view();animation-range:entry 0% entry 100%}@keyframes shop-reveal{from{opacity:.15;translate:0 22px}to{opacity:1;translate:0 0}}}}
@media(prefers-reduced-motion:reduce){.shop-genus span{transition:none;animation:none}.shop-genus:hover span{transform:none}}

/* Proportionaler Videohintergrund, auch bei mobilen Browserleisten. */
.shop-video-layer{width:100%;height:100vh;bottom:auto}
@supports(height:100lvh){.shop-video-layer{height:100lvh}}
.shop-video-layer>.shop-video{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:50% 50%;aspect-ratio:auto}
/* Gattungen ohne leeren Vorlauf unmittelbar unter der Kopfzeile. */
.shop-video-hero{display:none}
body:has(.shop-scene) .shop-genera{padding-top:20px}
html body:has(.shop-scene) header#siteHeader.archive-header{position:relative!important}
.shop-genera>.shop-genus:first-child{border-top:0}
@media(max-width:600px){
 .shop-genera{padding-inline:24px}
 .shop-genus{min-height:clamp(104px,17svh,150px)}
 .shop-genus span{font-size:clamp(23px,7.6vw,44px)}
}
@media(max-height:500px) and (orientation:landscape){.shop-genus{min-height:96px}}


/* iPhone: stable compositor layer, original 4K source unchanged. */
.shop-video-layer{transform:translateZ(0);backface-visibility:hidden;contain:paint}
@media(max-width:600px){
 body:has(.shop-scene) header#siteHeader.archive-header{padding-inline:16px!important}
 body:has(.shop-scene) #siteHeader.archive-header .brand-main{font-size:15px!important;letter-spacing:.035em!important}
 .shop-genus span{font-size:clamp(26px,8.8vw,48px)!important}
 .shop-genus span{animation:none!important;translate:none!important;opacity:1!important}
}

@media(max-width:600px){html body:has(.shop-scene) #siteHeader.archive-header .brand{justify-self:start!important;text-align:left!important;margin-left:0!important;width:auto!important}html body:has(.shop-scene) #siteHeader.archive-header{grid-template-columns:1fr auto!important}html body:has(.shop-scene) #siteHeader.archive-header .brand-main{font-size:15px!important}}

@media(max-width:600px){html body:has(.shop-scene) header#siteHeader.archive-header{display:grid!important;grid-template-columns:1fr auto!important;justify-items:start!important}html body:has(.shop-scene) header#siteHeader.archive-header nav{grid-column:1/-1!important;justify-self:start!important}}


/* White genus collections; existing catalog and filters preserved. */
html:has(.genus-page),html body:has(.genus-page){background:#fff!important;color:#202522!important;--os-paper:#fff;--os-ink:#202522;--os-muted:#626962;--os-line:#dfe3df;--line:#dfe3df;--ink:#202522}
body:has(.genus-page)::before,body:has(.genus-page) #archive-space,body:has(.shop-scene) #archive-space{display:none!important}
html body:has(.genus-page) #siteHeader.archive-header{background:#fff!important;backdrop-filter:none!important;border-color:#dfe3df!important}
html body:has(.genus-page) #siteHeader.archive-header :is(a,span,button){color:#202522!important}
html body .genus-page{width:100%;max-width:1280px!important;box-sizing:border-box;padding:44px clamp(20px,4vw,56px) 64px!important}
html body .genus-page .detail-title{margin:0 0 32px!important;font-size:clamp(30px,5vw,62px)!important;line-height:1.12!important;letter-spacing:-.035em!important;overflow-wrap:anywhere}
html body .genus-page .collection-filters{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1.3fr);gap:20px!important;margin:0 0 32px!important;padding:24px 0!important;border:0!important;border-block:1px solid #dfe3df!important;background:#fff!important;box-shadow:none!important}
html body .genus-page .collection-filters label{display:grid;gap:10px;font:400 11px/1.5 Arial,sans-serif!important;letter-spacing:.05em!important;color:#535d55!important}
html body .genus-page .collection-filters :is(input,select){min-height:48px!important;width:100%;box-sizing:border-box;border:1px solid #cbd2cb!important;border-radius:3px!important;background:#fff!important;color:#202522!important;font:400 16px/1.4 Arial,sans-serif!important;padding:12px!important;box-shadow:none!important}
html body .genus-page .collection-filters :is(input,select):focus-visible{outline:1px solid #717d73!important;outline-offset:2px!important}
html body .genus-page .collection-filters button{justify-self:start;padding:8px 0!important;min-height:36px!important;font-size:12px!important;color:#404b42!important}
html body .genus-page .filter-count{grid-column:1/-1;font-size:11px!important;color:#636d65!important;letter-spacing:.04em}
html body .genus-page .product-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:32px 24px!important}
html body .genus-page .product-card{padding:0!important;border:1px solid #e1e5e1!important;border-radius:4px!important;background:#fff!important;box-shadow:none!important;transform:none!important;overflow:hidden}
html body .genus-page .product-link{display:block!important;padding:0!important}
html body .genus-page .preview{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:1!important;background:#f7f8f6!important;transform:none!important;border:0!important;border-bottom:1px solid #e1e5e1!important}
html body .genus-page .preview img{object-fit:contain!important;width:100%!important;height:100%!important;transform:none!important}
html body .genus-page .product-caption{padding:20px!important}
html body .genus-page .product-title{font-size:clamp(17px,1.5vw,22px)!important;line-height:1.4!important;margin:0!important;letter-spacing:-.01em!important}
html body .genus-page .product-family{font-size:10px!important;margin:10px 0!important;color:#626962!important}
html body .genus-page .product-price{display:block!important;color:#202522!important;font-size:15px!important;margin:12px 0 0!important}
html body .genus-page :is(.os-record-label,.os-card-action,.archive-module-id){display:none!important}
html body:has(.genus-page) #footer{background:#fff!important;color:#626962!important}
html body:has(.genus-page) #footer :is(a,h2,h3){color:#202522!important}
@media(max-width:800px){html body .genus-page .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:540px){html body .genus-page{padding-top:30px!important}html body .genus-page .collection-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important}html body .genus-page .filter-search{grid-column:1/-1}html body .genus-page .product-grid{grid-template-columns:1fr!important;gap:24px!important}html body .genus-page .product-caption{padding:18px!important}}

/* Avoid per-frame backdrop filtering over the unchanged video layer. */
html body:has(.shop-scene) :is(header#siteHeader.archive-header,footer#footer){backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.shop-video-diagnostics{position:fixed;inset:auto 12px 12px;z-index:2147483641;max-width:440px;white-space:pre-line;padding:12px;background:rgba(0,0,0,.85);color:#fff;font:12px/1.5 monospace;border:1px solid #ffffff70;border-radius:4px;pointer-events:none}
.shop-video-diagnostics[hidden]{display:none!important}

/* Slightly larger, more open genus lettering. */
html body .shop-scene .shop-genus span{font-size:clamp(32px,6.3vw,108px)!important;letter-spacing:.005em!important}
@media(max-width:600px){html body .shop-scene .shop-genus span{font-size:clamp(26px,8.8vw,48px)!important;letter-spacing:0!important}}
