/* Mantis / three expressions suspended in a common breeze. */
.fabric-installation{position:relative;isolation:isolate;overflow:clip;padding:1.8rem 5% 2rem;background:radial-gradient(ellipse at 49% 48%,#5a35454d,transparent 64%),#1c1118;border-bottom:1px solid #e1bdcf21}
.fabric-installation #fabric-atmosphere{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:-1;pointer-events:none}
.fabric-installation #fabric-atmosphere[hidden]{display:none}
.fabric-topline{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;max-width:1600px;margin:auto;color:#c6aebc}
.fabric-topline h1{font:400 .8125rem/1.5 var(--body);letter-spacing:.025em;margin:0;color:#debfce}
.fabric-topline>span{font:italic 1.25rem/1.3 var(--editorial);color:#b58e9f}
.fabric-stage{position:relative;width:calc(100% + 6%);margin:0 -3%;height:clamp(430px,67svh,780px);isolation:isolate}
.fabric-stage #signal-field{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:1;opacity:1;mix-blend-mode:normal;touch-action:pan-y;pointer-events:auto;cursor:grab}
.fabric-stage #signal-field[hidden]{display:none}
.fabric-stage #signal-field.is-grabbing{cursor:grabbing}
.fabric-prints{position:absolute;inset:8% 9%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:6%;pointer-events:none}
.fabric-prints img{display:block;width:100%;max-height:100%;aspect-ratio:2/3;object-fit:contain;background:#d2c1c7;transform:rotate(-9deg)}
.fabric-prints img:nth-child(2){background:#c28da3;transform:translateY(5%) rotate(6deg)}
.fabric-prints img:nth-child(3){background:#645066;transform:translateY(-3%) rotate(-6deg)}
.cloth-ready .fabric-prints{visibility:hidden}
.fabric-bottomline{max-width:1600px;margin:.3rem auto 0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1.5rem}
.fabric-caption{min-width:0}
.fabric-caption p{margin:0 0 .4rem;color:#e4cbd7;font:400 .875rem/1.5 var(--body)}
.fabric-caption span{font-size:.75rem;color:#b799a9;letter-spacing:.025em}
.fabric-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:.4rem;border:1px solid #e4c5d633;background:#b886a013;border-radius:100px;padding:.25rem;box-shadow:inset 0 1px 0 #ffe3ed1c}
.fabric-actions button{min-height:44px;padding:.65rem 1rem;border:0;border-radius:100px;background:transparent;color:#e1c4d3;font:400 .8125rem var(--body);white-space:nowrap}
.fabric-actions button:hover:not(:disabled){background:#f1d1e01a;color:#fff0f6}
.fabric-actions .motion-toggle{background:#dcc0d319;border:1px solid #edd3e233}
.fabric-actions button:disabled{opacity:.4;cursor:default}
.fabric-next{justify-self:end;display:flex;gap:2rem;align-items:center;min-height:48px;color:#e3c3d3;border-bottom:1px solid #cba2b552;font-size:.9375rem}
.fabric-next:hover{color:#fff4fa;border-color:currentColor}
.fabric-colophon{max-width:1600px;margin:1.1rem auto 0;display:flex;justify-content:space-between;gap:1rem;font-size:.6875rem;line-height:1.5;color:#b395a4}
.fabric-colophon a{text-underline-offset:3px}
.fabric-colophon a:hover{text-decoration:underline}
.gallery-image .portrait-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.gallery-image .portrait-canvas[hidden]{display:none}
.gallery-image:not(.view-worn) .portrait-canvas{display:none}
@media(max-width:1000px){.fabric-bottomline{grid-template-columns:1fr auto;gap:1.2rem}.fabric-actions{grid-column:1/-1;grid-row:2;justify-self:center}.fabric-next{grid-column:2;grid-row:1}.fabric-stage{height:clamp(430px,61svh,660px)}}
@media(max-width:650px){.fabric-installation{padding:1.2rem 5% 1.5rem}.fabric-topline h1{font-size:.75rem}.fabric-topline>span{font-size:1.0625rem}.fabric-stage{width:110%;margin:0 -5%;height:clamp(490px,145vw,700px)}.fabric-prints{inset:7% 10%;display:block}.fabric-prints img{position:absolute;width:48%;height:auto;max-height:none;left:0;top:0}.fabric-prints img:nth-child(2){left:auto;right:0;top:8%}.fabric-prints img:nth-child(3){left:27%;top:auto;bottom:0;width:48%}.fabric-bottomline{gap:1rem .75rem}.fabric-caption p{font-size:.75rem;max-width:12rem}.fabric-caption span{font-size:.6875rem}.fabric-next{gap:.6rem;font-size:.8125rem}.fabric-actions{width:100%;gap:0;justify-content:space-between}.fabric-actions button{padding:.6rem .75rem;font-size:.75rem}.fabric-colophon{font-size:.625rem;gap:.5rem}.fabric-colophon>span{max-width:12rem}}
@media(prefers-reduced-transparency:reduce){.fabric-actions{background:#352432}.fabric-actions .motion-toggle{background:#503448}}
