/* Motion language: editorial entrances, gentle depth, deliberate rhythm. */
.photo-thumbs{max-width:calc(100% - 16px);overflow-x:auto}
.motion-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.motion-line-inner{display:block;transform-origin:left center}
.motion-pending{opacity:0;translate:0 28px}.motion-visible{opacity:1;translate:0 0;transition:opacity .8s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms),translate .95s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms)}
.hero-image img{transform:translateY(var(--depth,0px)) scale(1.09);will-change:transform}.category-tile img{transform:translateY(var(--depth,0px)) scale(1.04)}.category-tile:hover img{transform:translateY(var(--depth,0px)) scale(1.075)}
.scroll-word{opacity:.3;transition:opacity .14s linear}.scroll-word.italic{font-family:Georgia,serif;font-style:italic}.manifesto h2 i{font-family:Georgia,serif}.manifesto{overflow:hidden}
.button,.round-link,.category-tile .circle{translate:var(--magnet-x,0px) var(--magnet-y,0px);transition:translate .35s cubic-bezier(.22,1,.36,1),background .3s,color .3s,box-shadow .3s}.button>span{display:inline-block;transition:transform .35s cubic-bezier(.22,1,.36,1)}.button:hover>span{transform:translate(3px,-3px)}.button:active{scale:.985}.round-link:hover,.category-tile:hover .circle{background:var(--wine);color:var(--cream);border-color:var(--wine);rotate:6deg}
/* Swap an opaque image layer; never blend two garment photos together. */
.product-image{isolation:isolate}.product-image img{transition:transform 1s cubic-bezier(.22,1,.36,1)}.product-image .alternate-image{position:absolute;inset:0;opacity:1;visibility:hidden;mix-blend-mode:normal;background:#e7e5dc}.product-image:focus-visible .alternate-image{visibility:visible}
@media(hover:hover) and (pointer:fine){.product-image:hover .alternate-image{visibility:visible}}
.product-image .card-open{transition:opacity .35s,transform .5s cubic-bezier(.22,1,.36,1)}.heart svg{transition:transform .3s,fill .3s}.heart:hover svg{transform:scale(1.15)}.heart.active svg{animation:save-pulse .4s cubic-bezier(.22,1,.36,1)}
.text-link{position:relative;border-bottom:0}.text-link::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:currentColor;transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1)}.text-link:hover{text-decoration:none}.text-link:hover::after{transform:scaleX(.45)}.primary-nav a{position:relative}.primary-nav a::after{content:'';position:absolute;left:0;bottom:-5px;width:100%;height:1px;background:currentColor;scale:0 1;transform-origin:left;transition:scale .3s}.primary-nav a:hover{text-decoration:none}.primary-nav a:hover::after{scale:1 1}.footer-wordmark{translate:0 var(--footer-lift,0px);transition:translate .15s linear}
.drawer[open]{animation:drawer-in .45s cubic-bezier(.22,1,.36,1)}#search-dialog[open],.product-dialog[open]{animation:dialog-in .4s cubic-bezier(.22,1,.36,1)}dialog[open]::backdrop{animation:backdrop-in .3s ease}.bag-item{animation:bag-item-in .4s cubic-bezier(.22,1,.36,1)}
.motion-ribbon{overflow:hidden;margin:0;background:var(--cream);border-block:1px solid var(--line);color:var(--wine);display:flex;align-items:center;position:relative}.ribbon-window{overflow:hidden;flex:1;padding:25px 0}.ribbon-track{display:flex;width:max-content;animation:ribbon-drift 38s linear infinite}.ribbon-track>span{flex:none;white-space:nowrap;font:500 clamp(24px,3.2vw,50px)/1.2 'Manrope',sans-serif;letter-spacing:-1.5px;padding-right:40px}.ribbon-track i{font-family:Georgia,serif;font-weight:400}.ribbon-track b{font-weight:400;font-size:.7em;vertical-align:middle;margin:0 38px}.ribbon-toggle{width:44px;height:44px;flex:none;position:relative;margin:0 20px;border:1px solid var(--line);border-radius:50%;font-size:12px}.motion-ribbon.is-paused .ribbon-track,.motion-ribbon:hover .ribbon-track,.motion-ribbon:focus-within .ribbon-track{animation-play-state:paused}
@keyframes ribbon-drift{to{transform:translateX(-50%)}}@keyframes drawer-in{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes dialog-in{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}@keyframes save-pulse{50%{transform:scale(1.25)}}@keyframes bag-item-in{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:700px){.motion-pending{translate:0 16px}.hero-image img{transform:scale(1.02);will-change:auto}.category-tile img{transform:scale(1.02)}.ribbon-window{padding:20px 0}.ribbon-track>span{letter-spacing:-.8px;padding-right:20px}.ribbon-track b{margin:0 20px}.ribbon-toggle{margin:0 12px;width:36px;height:36px}.button,.round-link,.category-tile .circle{translate:0 0}}
@media(prefers-reduced-motion:reduce){.motion-pending{opacity:1;translate:none}.motion-visible{transition:none}.hero-image img,.category-tile img,.category-tile:hover img{transform:none;will-change:auto}.scroll-word{opacity:1!important;transition:none}.ribbon-track{animation:none;transform:none}.ribbon-track>span[aria-hidden="true"]{display:none}.ribbon-toggle{display:none}.ribbon-window{overflow:auto}.ribbon-track>span{font-size:22px}.footer-wordmark{translate:none}.button,.round-link,.category-tile .circle{translate:none}dialog[open],dialog[open]::backdrop,.bag-item,.heart.active svg{animation:none}.product-image .alternate-image{transition:none}}
