/* Shared collection names match the owner's Pinterest filing system. */
.menu.collection-menu{overflow-y:auto;gap:2rem;padding-top:7rem;justify-content:flex-start}
.menu-collections{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem}
.menu-label,.collections-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:#666;margin:0 0 1rem}
.menu-univers,.menu-categories{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem}
.menu-univers a{font-size:clamp(1.65rem,3.4vw,3.5rem);letter-spacing:-.045em;line-height:1.15}
.menu-categories a{font-size:clamp(1rem,1.5vw,1.4rem);line-height:1.3}
.collection-menu a:hover,.collection-menu a:focus-visible{ text-decoration:underline;text-underline-offset:.2em}
.collection-menu a[aria-current]{font-weight:700}
.menu-secondary{display:flex;flex-wrap:wrap;gap:1rem 1.7rem;border-top:1px solid #ccc;padding-top:1.3rem;font-size:.85rem}
.menu.collection-menu>p{color:#666;font-size:.65rem;margin-top:auto;padding-top:.8rem}
.gallery .collection-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;overflow:visible;gap:.6rem;margin-bottom:1.5rem}
.gallery .collection-filters .filter{font-size:.72rem;letter-spacing:.025em;white-space:normal;text-align:left;min-height:3rem}
.gallery .filter--collection{min-height:2.6rem;padding:.7rem 1rem;text-transform:none;font-size:.8rem;letter-spacing:0}
.collection-summary{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin:1rem 0 2rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.collection-summary h3{margin:0 0 .6rem;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:400;letter-spacing:-.035em}
.collection-summary p{margin:0;max-width:36rem;font-size:.9rem;line-height:1.6;color:#666}
.collection-summary a{flex-shrink:0;border-bottom:1px solid #999;padding:.5rem 0;font-size:.78rem}
.collection-summary a[hidden],.collection-empty[hidden]{display:none}
.collection-empty{padding:clamp(3rem,8vw,6rem) 1.5rem;text-align:center;border:1px solid var(--line);background:#eeeeea}
.collection-empty>span{font-size:2rem;color:#999}.collection-empty>p:first-of-type{font-size:1.6rem;letter-spacing:-.04em;margin:1rem 0}.collection-empty>p:nth-of-type(2){color:#666;font-size:.9rem;line-height:1.6}.collection-empty>a{display:inline-block;font-size:.8rem;border-bottom:1px solid #888;padding:.5rem 0;margin-top:1rem}
.collections-label{scroll-margin-top:6rem}.collection-summary h3:focus{outline:none}.filter:focus-visible,.collection-menu a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:680px){.menu-collections{grid-template-columns:1fr;gap:1.8rem}.menu-univers{gap:.65rem}.menu-univers a{font-size:1.7rem}.menu-categories{display:grid;grid-template-columns:1fr 1fr;gap:.9rem 1rem}.menu-categories .menu-label{grid-column:1/-1;margin-bottom:0}.menu-categories a{font-size:.9rem}.menu.collection-menu{padding-top:6rem;gap:1.5rem}.menu-secondary{font-size:.78rem;gap:.9rem 1.1rem}.gallery .collection-filters .filter{font-size:.67rem;padding:.7rem .75rem;min-height:2.75rem}.gallery .filter--collection{font-size:.73rem}.collection-summary{display:block}.collection-summary a{display:inline-block;margin-top:1rem}.collection-summary p{font-size:.85rem}.gallery .filters-hint{display:none}}

/* Every collection has the same footprint, including the longest label. */
.collection-picker{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;scroll-margin-top:6rem}
.collection-picker .collection-filters{margin-bottom:0}
.collection-picker .filter{transition:opacity .18s ease,background-color .18s ease,color .18s ease}
.collection-picker.is-fading .filter:not(.is-active){opacity:0;pointer-events:none}
.collection-picker.is-focused{position:relative;grid-template-columns:minmax(0,1fr);max-width:43.65rem;gap:0;align-items:stretch;background:#111}
.gallery .collection-picker.is-focused .collection-filters{grid-template-columns:minmax(0,1fr);gap:0}
.collection-picker .filter[hidden],.collection-reset[hidden]{display:none!important}
.collection-reset{display:grid;place-items:center;width:3rem;height:3rem;padding:0;border:1px solid #111;border-radius:0;background:transparent;color:#111;font:300 2rem/1 Inter,Arial,sans-serif;cursor:pointer}
.collection-reset:hover{background:#111;color:#fff}.collection-reset:focus-visible{outline:2px solid #111;outline-offset:4px}
.gallery.is-collection-focused .collections-label,.gallery.is-collection-focused .filters-hint,.gallery.is-collection-focused #collection-title{display:none}
.gallery.is-collection-focused .collection-summary{margin:1rem 0 1.5rem;padding-top:0;border-top:0}
@media(prefers-reduced-motion:reduce){.collection-picker .filter{transition:none}}
.gallery .collection-filters .filter{width:100%;min-width:0;min-height:4.5rem;height:100%;margin:0;padding:.85rem .75rem;justify-content:center;align-items:center;text-align:center;line-height:1.45;overflow-wrap:anywhere}
.gallery .collection-filters .filter>span{flex-shrink:0}
.project-model-link{position:absolute;left:.8rem;top:.8rem;z-index:3;padding:.65rem .85rem;background:rgba(17,17,17,.88);color:#fff;font-size:.75rem;text-decoration:none;min-height:2.75rem;display:flex;align-items:center}
.project-model-link:focus-visible{outline:2px solid #fff;outline-offset:3px}
.menu-collections--unified{display:block}
.menu-collection-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem 2rem}
.menu-collection-list .menu-label{grid-column:1/-1}
.menu-collection-list>a{font-size:clamp(1rem,2.4vw,2rem);line-height:1.35;letter-spacing:-.03em}
@media(max-width:680px){.menu-collection-list{gap:1.2rem .9rem}.menu-collection-list>a{font-size:1rem}}
.projects:is([data-collection="wallpanel"],[data-collection="papiers"],[data-collection="sculptures"],[data-collection="separations"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]){min-height:40vh;background:#000}
.projects:is([data-collection="wallpanel"],[data-collection="papiers"],[data-collection="sculptures"],[data-collection="separations"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]){display:block;position:relative;min-height:0}
.projects:is([data-collection="wallpanel"],[data-collection="papiers"],[data-collection="sculptures"],[data-collection="separations"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"])>.project:is([data-category="wallpanel"],[data-category="papiers"],[data-category="sculptures"],[data-category="separations"],[data-category="portes"],[data-category="mobilier"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]):not([hidden]){position:absolute;display:block;margin:0;border-radius:0;overflow:hidden}
.project:is([data-category="wallpanel"],[data-category="papiers"],[data-category="sculptures"],[data-category="separations"],[data-category="portes"],[data-category="mobilier"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]) .image-slot{aspect-ratio:auto;background:#000;min-height:0}
.project:is([data-category="wallpanel"],[data-category="papiers"],[data-category="sculptures"],[data-category="separations"],[data-category="portes"],[data-category="mobilier"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]) .image-slot>img{position:static;display:block;width:100%;height:auto;object-fit:contain}
.project:is([data-category="wallpanel"],[data-category="papiers"],[data-category="sculptures"],[data-category="separations"],[data-category="portes"],[data-category="mobilier"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]) .carousel-slide{aspect-ratio:var(--wallpanel-carousel-ratio,1/1)}
.project:is([data-category="wallpanel"],[data-category="papiers"],[data-category="sculptures"],[data-category="separations"],[data-category="portes"],[data-category="mobilier"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]) .carousel-slide img{object-fit:contain}

/* Black canvas behind the wall-panel mosaic and contained images. */
.projects:is([data-collection="wallpanel"],[data-collection="papiers"],[data-collection="sculptures"],[data-collection="separations"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"])>.project,.project:is([data-category="wallpanel"],[data-category="papiers"],[data-category="sculptures"],[data-category="separations"],[data-category="portes"],[data-category="mobilier"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]) .carousel,.project:is([data-category="wallpanel"],[data-category="papiers"],[data-category="sculptures"],[data-category="separations"],[data-category="portes"],[data-category="mobilier"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]) .carousel-track,.project:is([data-category="wallpanel"],[data-category="papiers"],[data-category="sculptures"],[data-category="separations"],[data-category="portes"],[data-category="mobilier"],[data-collection="portes"],[data-collection="mobilier"],[data-collection="consoles"]) .carousel-slide{background:#000}

/* Keep the collection close control inside its selected menu bar. */
.gallery .collection-picker.is-focused .filter{padding-inline:3.5rem}
.collection-picker.is-focused .collection-reset{position:absolute;right:0;top:0;width:3rem;height:100%;border:0;background:#111;color:#fff}
.collection-picker.is-focused .collection-reset:hover{background:#292929}
.collection-picker.is-focused .collection-reset:focus-visible{outline:2px solid #fff;outline-offset:-5px}

/* Small swipe hints appear only around the selected collection name. */
.collection-direction{display:none}
.gallery .collection-picker.is-focused .filter{gap:.85rem}
.collection-picker.is-focused .collection-direction{display:inline-block;flex:0 0 auto;font:300 .8rem/1 Arial,sans-serif;opacity:.55;pointer-events:none}

/* Match the swipe limits at the beginning and end of the collection list. */
.collection-picker.is-focused .collection-filters>.filter:first-child .collection-direction:first-child,
.collection-picker.is-focused .collection-filters>.filter:last-child .collection-direction:last-child{visibility:hidden}

/* Reserve the same label width using the longest collection name. */
.collection-label{display:inline-grid;min-width:0}
.collection-label-text,.collection-label-sizing{grid-area:1/1}
.collection-label-sizing{display:none}
.collection-picker.is-focused .collection-label-sizing{display:block;visibility:hidden;text-transform:none;white-space:nowrap}
.collection-picker.is-focused .collection-label-text{text-align:center;white-space:nowrap}

/* A fine, readable WhatsApp control stays attached to each gallery image. */
.project .image-slot,.project .carousel-slide{position:relative}
.project .project-enquiry{position:absolute;inset:auto .7rem .7rem auto;z-index:4;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:10px;border:0;border-radius:0;background:transparent;color:#fff;opacity:.8;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;transition:none}
.project .project-enquiry svg{display:block;width:24px;height:24px;flex-shrink:0}
.project .project-enquiry:hover{background:transparent;opacity:.8}
.project .project-enquiry:focus-visible{outline:1px solid #fff;outline-offset:2px;background:transparent;opacity:.8}
@media(prefers-reduced-motion:reduce){.project .project-enquiry{transition:none}}

/* The image canvas is black in every collection, including grid and carousel views. */
.gallery [data-gallery],.gallery [data-gallery] .project,.gallery [data-gallery] .image-slot,.gallery [data-gallery] .carousel,.gallery [data-gallery] .carousel-track,.gallery [data-gallery] .carousel-slide{background:#000}
