html{scroll-behavior:smooth;scroll-padding-top:120px}.nav{position:sticky;top:0;z-index:20;background:#fbf5eaf5;backdrop-filter:blur(12px);transition:box-shadow .35s}.nav.scrolled{box-shadow:0 5px 25px #28102e12}.scroll-progress{position:fixed;left:0;top:0;height:2px;background:var(--gold);width:100%;transform:scaleX(0);transform-origin:left;z-index:50;pointer-events:none}.reveal{opacity:0;transform:translateY(34px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.65,.25,1);transition-delay:var(--delay,0ms)}.reveal.visible{opacity:1;transform:none}.hero>img{animation:hero-drift 18s ease-in-out infinite alternate;will-change:transform}.hero-copy>*{animation:arrive 1.2s both}.hero-copy h1{animation-delay:.15s}.hero-copy .cta{animation-delay:.3s}.editorial img{transition:transform 1.2s cubic-bezier(.2,.65,.25,1)}.editorial:hover img{transform:scale(1.045)}.product{min-width:0}.product-photo{overflow:hidden}.product img{transition:transform .7s ease}.product:hover img{transform:scale(1.035)}.cta,.add-bag,.text-link,.actions button{transition:background .25s,color .25s,transform .25s,box-shadow .25s}.cta:hover{background:var(--cream);color:var(--plum);transform:translateY(-2px)}.text-link:hover{transform:translateY(-2px)}.add-bag{background:transparent;border:1px solid #42184a55;padding:12px 18px;margin-top:15px;font-size:11px;letter-spacing:.08em;min-height:44px}.product .add-bag{width:100%}.add-bag:hover{background:var(--plum);color:var(--cream);box-shadow:0 5px 15px #42184a12}.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:28px}.filters input{font:inherit;color:inherit;background:transparent;border:0;border-bottom:1px solid #42184a66;padding:12px 4px;width:260px;max-width:100%;margin-right:auto}.filters button{border:1px solid #42184a33;padding:10px 18px;min-height:44px;background:transparent;font-size:11px}.filters button[aria-pressed=true]{background:var(--plum);color:var(--cream)}.results-count{font-size:11px;width:100%;margin-top:3px}.bag-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:480px;max-width:100%;height:100dvh;max-height:100dvh;border:0;padding:0;overflow:hidden}.bag-drawer[open]{display:flex;flex-direction:column;animation:drawer-in .35s ease}.bag-drawer::backdrop{background:#28102e80;backdrop-filter:blur(3px)}.bag-head{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid #42184a22}.bag-head h2{font-size:32px;margin:0}.bag-head button{margin:0;background:transparent;color:var(--plum);padding:8px 12px;font-size:24px}.bag-lines{padding:0 24px;flex:1;overflow-y:auto}.bag-line{display:grid;grid-template-columns:70px 1fr;gap:15px;padding:22px 0;border-bottom:1px solid #42184a22}.bag-line img{width:70px;height:95px;object-fit:cover}.bag-line h3{font:500 13px/1.5 Manrope,Arial}.bag-line p{font-size:12px;margin:5px 0}.quantities{display:flex;align-items:center;gap:12px}.quantities button{margin:0;padding:4px 10px;min-width:36px;min-height:36px;background:transparent;color:var(--plum);border:1px solid #42184a44}.quantities .remove{margin-left:auto;border:0;text-decoration:underline;font-size:11px}.bag-bottom{padding:24px;border-top:1px solid #42184a22;background:#F5EBDC}.subtotal{display:flex;justify-content:space-between;font-size:17px;margin-bottom:10px}.bag-bottom>p{font-size:11px}.checkout{width:100%;min-height:48px}.checkout:disabled{opacity:.45;cursor:not-allowed}.empty-bag{text-align:center;padding:60px 0}.status-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;z-index:60;background:var(--plum);color:var(--cream);padding:12px 24px;pointer-events:none;transition:.25s;max-width:90%;width:max-content;font-size:12px}.status-toast.show{opacity:1;transform:translate(-50%,0)}.checkout-summary{font-size:14px}.checkout-summary p{margin:14px 0}.checkout-summary ul{padding-left:20px}.checkout-summary .payment-notice{background:#F5EBDC;padding:15px;border-left:2px solid var(--gold)}body.modal-open{overflow:hidden}@keyframes arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.065)}}@keyframes drawer-in{from{transform:translateX(100%)}to{transform:none}}@media(max-width:800px){html{scroll-padding-top:130px}.filters input{width:100%}.filters{gap:8px}.filters button{flex:1}.bag-head,.bag-bottom{padding:18px}.bag-lines{padding:0 18px}.product h3{min-height:38px}.add-bag{padding:10px}.hero>img{animation-duration:24s}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.shop-intro{padding:60px 5% 55px;text-align:center;background:#F5EBDC}.shop-intro>span,.breadcrumb{font-size:11px}.breadcrumb{text-decoration:underline;text-underline-offset:4px}.shop-intro .eyebrow{margin-top:35px}.shop-intro h1{font-size:clamp(42px,5vw,68px);margin:15px 0}.shop-description{max-width:520px;margin:auto;color:#705871}.collection-directory{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:45px 4%}.collection-tile{display:block;background:#F5EBDC;overflow:hidden}.collection-tile>img{width:100%;height:340px;object-fit:cover;transition:transform .7s}.collection-tile:hover>img{transform:scale(1.025)}.collection-tile>div{padding:26px}.collection-tile h2{font-size:32px;margin:10px 0}.collection-tile p{font-size:12px;margin-bottom:20px}.collection-tile small,.collection-tile span{font-size:10px;letter-spacing:.1em}.collection-tile span{border-bottom:1px solid var(--gold);padding-bottom:5px}.collection-discovery{padding-top:45px;text-align:center}.collection-discovery>h2{font-size:40px;margin:12px}.collection-directory{text-align:left}.collection-filter{display:flex;align-items:center;gap:8px;font-size:11px}.collection-filter select{font:inherit;padding:12px 8px;background:var(--cream);color:var(--plum);border:1px solid #42184a44;max-width:210px;min-height:44px}.links{gap:16px;white-space:nowrap}.links a[aria-current=page]{border-bottom:1px solid var(--gold);padding-bottom:4px}.filters button[hidden]{display:none}@media(max-width:1100px){.links{gap:9px;font-size:9px}.brand span{font-size:22px}.actions{gap:10px}}@media(max-width:800px){.nav{height:150px;gap:6px}.links{display:flex;order:3;gap:22px;font-size:10px;justify-content:center;width:100%}.actions{gap:30px}.brand span{font-size:22px}.collection-directory{grid-template-columns:1fr;padding:25px 5%}.collection-tile{display:grid;grid-template-columns:40% 60%}.collection-tile>img{height:240px}.collection-tile>div{padding:22px 16px}.collection-tile h2{font-size:27px}.shop-intro{padding:35px 6%}.collection-filter{width:100%;justify-content:space-between}.collection-filter select{flex:1;max-width:75%}html{scroll-padding-top:165px}}
.product-photo[data-detail]{display:block;width:100%;padding:0;border:0;background:#F5EBDC;color:inherit;text-align:left;cursor:pointer}.product-info{display:block;padding:10px 0;min-height:44px;border:0;background:transparent;font-size:11px;text-decoration:underline;text-underline-offset:4px}.product .add-bag{margin-top:5px}.product-photo[data-detail] img{object-fit:contain}.product-detail{width:960px;max-width:calc(100% - 32px);max-height:90dvh;padding:36px;border:0;background:var(--cream);color:var(--plum);overflow:auto}.product-detail::backdrop{background:#28102eb3;backdrop-filter:blur(3px)}.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:36px}.detail-close{display:block;margin:0 0 16px auto;padding:0;width:44px;height:44px;background:transparent;color:var(--plum);border:1px solid #42184a44;font-size:26px}.detail-main-image{width:100%;height:480px;object-fit:contain;background:#F5EBDC}.detail-copy h2{font-size:38px;margin:16px 0}.detail-copy p{font:14px/1.7 Manrope,Arial,sans-serif}.detail-copy .eyebrow{font-size:10px}.detail-copy .detail-price{font-size:22px;margin-bottom:20px}.detail-copy .detail-tagline{font-style:italic;margin-top:16px}.detail-copy .add-bag{width:100%;margin-top:24px}.detail-gallery{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.detail-gallery button{width:60px;height:70px;padding:3px;margin:0;background:transparent;border:1px solid #42184a44}.detail-gallery button[aria-pressed=true]{border:2px solid var(--plum)}.detail-gallery img{width:100%;height:100%;object-fit:contain}button:focus-visible,a:focus-visible{outline:2px solid var(--plum);outline-offset:4px}@media(max-width:800px){.product-detail{padding:18px;max-width:calc(100% - 20px)}.detail-layout{grid-template-columns:1fr;gap:22px}.detail-main-image{height:330px}.detail-copy h2{font-size:30px}.filters button{flex:1 1 auto}.collection-directory{grid-template-columns:1fr}}
.detail-copy .add-bag{color:var(--plum)}.detail-copy .add-bag:hover{color:var(--cream);background:var(--plum)}

/* Soft edges and gentle entrances throughout the storefront. */
:root{--photo-radius:28px;--panel-radius:36px}
button,.cta,.filters button,.collection-filter select,.status-toast{border-radius:999px}
.hero{margin:18px 2% 0;border-radius:var(--panel-radius);isolation:isolate}
.hero>img,.hero:after{border-radius:inherit}
.feature{padding:0 2%;gap:24px}
.editorial,.feature-product,.collection-tile,.story,.shop-intro,.notes{border-radius:var(--panel-radius);overflow:hidden}
.editorial span{border-radius:999px}
.feature-product{background:#F5EBDC}
.product-photo,.product-photo[data-detail],.product img,.feature-product img,.detail-main-image{border-radius:var(--photo-radius)}
.collection-tile>img{border-radius:var(--photo-radius)}
.bag-line img,.detail-gallery button,.detail-gallery img{border-radius:14px}
.stories{padding:0 2%;gap:24px}
.shop-intro,.notes{margin:18px 2%}
.filters input{border:1px solid #42184a33;border-radius:999px;padding:13px 20px;background:#fff9}
.collection-filter select{padding-left:16px}
.actions button{padding:8px 14px;background:#42184a08}
.actions button:hover{background:#42184a15}
dialog,.product-detail{border-radius:var(--panel-radius)}
.bag-drawer{border-radius:32px 0 0 32px}
.bag-bottom,.checkout-summary .payment-notice{border-radius:22px}
.detail-close,.close-bag{border-radius:50%}
.detail-gallery button{overflow:hidden}
.reveal{transform:translateY(42px) scale(.985);transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--delay,0ms)}
.reveal.visible,.reveal:focus-within{opacity:1;transform:none}
.product.reveal:not(.visible):not(:focus-within) img{transform:scale(1.07)}
.product img{transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
.hero-copy{transform:translateY(var(--hero-scroll,0px))}
@media(hover:hover){.add-bag:hover,.cta:hover{transform:translateY(-3px);box-shadow:0 8px 22px #42184a18}.collection-tile:hover img{transform:scale(1.04)}}
@media(max-width:800px){:root{--photo-radius:20px;--panel-radius:26px}.hero{margin:12px 3% 0}.feature,.stories{padding:0 3%;gap:18px}.shop-intro,.notes{margin:12px 3%}.bag-drawer{border-radius:26px 0 0 26px}.actions button{padding:6px 12px}.detail-main-image{border-radius:20px}}
@media(prefers-reduced-motion:reduce){.reveal,.reveal.visible,.hero-copy{transform:none}.reveal{opacity:1}.product.reveal:not(.visible) img{transform:none}.add-bag:hover,.cta:hover{transform:none}}
/* Clip the photograph itself, including images narrower than their frame. */
.product-photo[data-detail]{aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;padding:12px;background:#F5EBDC;box-shadow:inset 0 0 0 1px #42184a08}
.product-photo[data-detail] img{width:auto;height:auto;max-width:100%;max-height:100%;aspect-ratio:auto;border-radius:20px;object-fit:contain}
.feature-product img,.detail-main-image{border-radius:24px}
button:not(.product-photo):not(.detail-gallery button),.cta{border-radius:999px}
@media(max-width:800px){.product-photo[data-detail]{padding:8px}.product-photo[data-detail] img{border-radius:15px}}
/* The hero meets the viewport edges while retaining its rounded corners. */
.hero{margin:0;width:100%}
@media(max-width:800px){.hero{margin:0;width:100%}}
