/* An illuminated showroom, scoped to the catalogue. */
.catalogue{padding-top:66px;padding-bottom:40px;isolation:isolate;background:radial-gradient(ellipse at 85% 48%,#9382bd14,transparent 55%)}
.catalogue:before{content:'';position:absolute;inset:130px -10% 0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 72% 64%,#b4a1db19,transparent 38%),linear-gradient(175deg,transparent 48%,#c6bce10a 49%,transparent 50%);mask-image:linear-gradient(transparent,#000 20%,#000 75%,transparent)}
.catalogue>.section-top{align-items:flex-end;gap:24px;margin-bottom:30px}
.catalogue .section-top h2{font-size:clamp(30px,3.5vw,49px);line-height:1.16;letter-spacing:-.055em;max-width:650px;text-wrap:balance}
.catalogue .section-top p{font-size:13px;line-height:1.8;margin-top:16px}
.catalogue .section-index{font-size:8px;letter-spacing:1.8px;padding:10px 12px;border:1px solid #ffffff12;border-radius:30px;background:#ffffff04;white-space:nowrap}
.catalogue .catalogue-controls{padding:14px;margin:0 0 30px;border:1px solid #ffffff15;border-radius:19px;background:linear-gradient(130deg,#ffffff09,#ffffff02);box-shadow:inset 0 1px #ffffff08,0 12px 32px #00000012;backdrop-filter:blur(18px);align-items:center;gap:12px}
.catalogue .filters{gap:6px}
.catalogue .filter{border-radius:11px;padding:11px 14px;min-height:42px;font-size:11px;line-height:1.4;color:#bcb7c8;border-color:transparent;background:transparent;transition:background .2s,color .2s,box-shadow .2s}
.catalogue .filter:hover{color:#f2eff8;background:#ffffff0a}
.catalogue .filter.active{background:linear-gradient(140deg,#f2edf8,#ccc5d9);color:#211d29;border-color:#ffffff36;box-shadow:inset 0 1px #fff9,0 3px 12px #0002}
.catalogue .search{border:1px solid #ffffff19;border-radius:12px;background:#08080d40;min-height:44px;box-shadow:inset 0 2px 6px #0002}
.catalogue .search:focus-within{border-color:#c7b9e4aa;box-shadow:0 0 0 3px #c7b9e414}
.catalogue .search input{font-size:11px}
.catalogue .product-grid{gap:24px;position:relative;z-index:1}
.catalogue .product-card{border-radius:23px;border:1px solid #ded7ed25;background:linear-gradient(145deg,#27242ddd,#131217ed);box-shadow:inset 0 1px #ffffff10,0 18px 45px #0003;backdrop-filter:blur(22px);min-width:0}
.catalogue .product-card:hover{border-color:#d5c8ee66;box-shadow:inset 0 1px #ffffff20,0 22px 48px #0005,0 0 28px #a895ce0c}
.catalogue .product-preview{border-bottom:1px solid #ffffff12;height:230px;background:radial-gradient(ellipse at 70% 20%,#b4a2d61c,transparent 70%),#131217}
.catalogue .product-info{padding:24px}
.catalogue .product-category{font-size:8px;letter-spacing:1.3px;line-height:1.8;display:block;color:#aaa2b9}
.catalogue .product-info h3{font-size:22px;letter-spacing:-.7px;margin:11px 0 9px;line-height:1.3}
.catalogue .product-info>p{font-size:12px;line-height:1.8;color:#b6afc2}
.catalogue .product-durations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:20px 0}
.catalogue .product-durations button{font-size:11px;padding:8px 3px;min-height:39px;border-radius:9px;background:#ffffff05;border-color:#ffffff18;white-space:normal}
.catalogue .product-durations button:hover{background:#cbb7ec18;border-color:#d7c4f16b}
.catalogue .product-price{font-size:29px;letter-spacing:-1px}
.catalogue .product-price>span{font-size:10px;letter-spacing:0;margin-bottom:5px}
.catalogue .product-price>em{font-size:10px;letter-spacing:0}
.catalogue .product-view{border-radius:12px;min-height:48px;font-size:12px;background:linear-gradient(125deg,#ece6f5,#cfc6dd);color:#24202c;border-color:#fff4;box-shadow:inset 0 1px #fffa,0 4px 16px #0002}
.catalogue .product-view:hover{color:#16111f;background:linear-gradient(125deg,#fff,#e6ddf1);border-color:#fff9}
.catalogue .product-view>span{background:#20182d0b;border-radius:7px}
.catalogue>.demo-note{position:relative;z-index:1;line-height:1.8;margin-top:24px;font-size:10px;color:#a59cad}
.catalogue>.spatial-art--catalog{top:150px;right:-9%;height:670px;width:78%;max-width:950px;opacity:.77;mask-image:linear-gradient(90deg,transparent,#000 24%,#000 86%,transparent);background:radial-gradient(ellipse at center,#b5a4d61c,transparent 65%)}
.spatial-art--catalog .spatial-orbit{inset:19% 13%;border-style:dashed;opacity:.4}
.spatial-art--catalog canvas{filter:drop-shadow(0 30px 30px #0007)}
html[data-theme=light] .catalogue{background:radial-gradient(ellipse at 85% 48%,#bcabd323,transparent 60%)}
html[data-theme=light] .catalogue:before{background:radial-gradient(ellipse at 72% 64%,#a591bf20,transparent 45%)}
html[data-theme=light] .catalogue :is(.catalogue-controls,.section-index){background:linear-gradient(135deg,#ffffffc9,#ebe5f281);border-color:#82718f26;box-shadow:inset 0 1px #fff,0 12px 32px #49305608}
html[data-theme=light] .catalogue .filter{color:#6a5d77}
html[data-theme=light] .catalogue .filter.active{background:linear-gradient(135deg,#51445f,#756284);color:#fff;box-shadow:inset 0 1px #fff3,0 4px 12px #66527722}
html[data-theme=light] .catalogue .filter:hover:not(.active){background:#7562840b;color:#352a40}
html[data-theme=light] .catalogue .search{background:#fff8;border-color:#82718f30;box-shadow:inset 0 1px 5px #66527708}
html[data-theme=light] .catalogue :is(.product-category,.demo-note,.product-info>p){color:#776983}
html[data-theme=light] .catalogue .product-durations button{background:#88719a08;border-color:#88719a30;color:#574562}
html[data-theme=light] .catalogue .product-view{background:linear-gradient(135deg,#554660,#746180);color:#fff;border-color:#7c688e;box-shadow:inset 0 1px #fff3,0 4px 16px #59426920}
html[data-theme=light] .catalogue .product-view:hover{background:#4b3c59;color:#fff}
html[data-theme=light] .catalogue>.spatial-art--catalog{opacity:.5}
@media(max-width:760px){.catalogue{padding-top:40px}.catalogue>.section-top{align-items:flex-start;margin-bottom:22px}.catalogue .section-index{font-size:7px}.catalogue .catalogue-controls{padding:10px;border-radius:16px;gap:10px;margin-bottom:22px}.catalogue .filters{gap:5px}.catalogue .filter{font-size:10px;padding:9px 10px;min-height:38px}.catalogue .product-grid{gap:18px}.catalogue .product-info{padding:22px}.catalogue .product-preview{height:220px}.catalogue>.spatial-art--catalog{width:500px;max-width:125%;height:520px;right:-160px;top:200px;opacity:.25}}
@media(prefers-reduced-motion:reduce){.catalogue :is(.filter,.product-card,.product-view){transition:none}}

@media(min-width:761px){.catalogue .product-grid:has(>.product-card:only-child){grid-template-columns:minmax(0,390px)}}

/* Keep the sculpture a quiet backdrop, with the product as the focal point. */
.catalogue>.spatial-art--catalog{width:53%;max-width:620px;height:460px;top:210px;right:0;opacity:.3}
.catalogue .spatial-art--catalog canvas{filter:blur(1.2px) drop-shadow(0 16px 24px #0004)}
html[data-theme=light] .catalogue>.spatial-art--catalog{opacity:.22}
@media(max-width:760px){.catalogue>.spatial-art--catalog{width:310px;max-width:85%;height:340px;right:-65px;top:230px;opacity:.14}html[data-theme=light] .catalogue>.spatial-art--catalog{opacity:.12}}

.product-availability{display:grid;gap:6px;margin:0 0 14px;font-size:10px;color:#a9d6bc}.product-availability>span{display:flex;align-items:center;gap:7px}.product-availability>span:before{content:"";width:6px;height:6px;background:currentColor;border-radius:50%}.product-availability[data-availability=maintenance]{color:#d3bb8e}.product-availability[data-availability=risk]{color:#db9299}.product-availability[data-availability=unavailable]{color:#9994a6}.product-availability small{color:var(--muted);line-height:1.7;overflow-wrap:anywhere}
