@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#261b32;background:#faf8fb;font-size:16px;line-height:1.5;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.wrap{max-width:1320px;margin:auto;padding-left:clamp(18px,4vw,56px);padding-right:clamp(18px,4vw,56px)}.announcement{background:#e3d1eb;padding:9px 20px;text-align:center;color:#31213b;font-size:.875rem}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7e0eb}.brand{display:flex;gap:12px;align-items:center;font-size:1.35rem;letter-spacing:-.07em;font-weight:700;line-height:1}.brand-mark{width:38px;height:38px;display:grid;place-items:center;background:#261b32;color:#e1c0e8;border-radius:11px;font-size:1.45rem;line-height:1}.brand-accent{color:#94699d}.brand small{display:block;font-size:.51rem;font-weight:700;letter-spacing:.22em;margin-top:5px;color:#796a80}.header-order{border:1px solid #cfc4d4;border-radius:100px;padding:9px 13px;font-weight:700;font-size:.88rem;white-space:nowrap}.header-order span,.order-heading h2 span{display:inline-grid;place-items:center;background:#d9c4e1;border-radius:50%;min-width:24px;height:24px;font-size:.77rem;margin-left:4px}.intro{display:flex;justify-content:space-between;align-items:center;background:#281c34;color:#fff;border-radius:18px;margin-top:25px;margin-bottom:48px;padding:clamp(24px,5vw,65px);min-height:250px;overflow:hidden;position:relative}.intro:after{content:'';position:absolute;width:360px;height:360px;border:1px solid #ffffff24;border-radius:50%;right:-55px;top:-50px;pointer-events:none}.intro:before{content:'';position:absolute;width:250px;height:250px;border:1px solid #ffffff20;border-radius:50%;right:0;top:4px;pointer-events:none}.eyebrow{font-size:.75rem;letter-spacing:.19em;font-weight:700;color:#9771a0;margin:0 0 12px}.intro .eyebrow{color:#d7b6df}.intro h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.05rem,4.1vw,3.9rem);line-height:1.12;font-weight:500;letter-spacing:-.03em;margin:0}.intro h1 em{color:#d4b0df}.intro-text{color:#e4dce7;max-width:460px;margin:17px 0 0;font-size:1rem}.intro-stamp{width:165px;height:165px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #9d83a6;border-radius:50%;color:#e5cae9;transform:rotate(-13deg);z-index:1;margin-right:65px;flex-shrink:0}.intro-stamp span{font-size:4rem;line-height:1}.intro-stamp small{font-size:.63rem;letter-spacing:.19em}.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,340px);gap:36px;align-items:start}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:22px}.section-heading h2,.order h2{font-family:'Playfair Display',Georgia,serif;font-size:2.1rem;line-height:1.1;margin:0;font-weight:600}.item-total{color:#897b91;font-size:.84rem;margin-bottom:4px}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.product-card{background:#fff;border:1px solid #eee8ef;border-radius:14px;overflow:hidden;box-shadow:0 8px 26px #3e29400a}.product-media{aspect-ratio:4/4.3;background:#efe9f2;overflow:hidden;position:relative}.product-media img{width:100%;height:100%;object-fit:cover;display:block}.product-media .image-fallback{height:100%;display:grid;place-items:center;font-size:4rem;color:#b29abb}.photo-nav{position:absolute;bottom:12px;right:12px;background:#ffffffeb;border:0;border-radius:100px;padding:7px 13px;font-size:.8rem;font-weight:700}.product-body{padding:21px}.product-meta{display:flex;justify-content:space-between;gap:10px;align-items:start}.product-code{color:#8c7794;font-size:.75rem;letter-spacing:.12em;font-weight:700}.product-body h3{font-family:'Playfair Display',Georgia,serif;font-size:1.55rem;margin:6px 0 6px;line-height:1.2}.price{font-size:1.16rem;font-weight:700;color:#542e5e;white-space:nowrap}.price.pending{font-size:.82rem;white-space:normal;text-align:right;max-width:88px}.product-description{color:#6e6272;font-size:.875rem;margin:0 0 16px;min-height:42px}.option-label{display:block;color:#463b4c;font-size:.85rem;font-weight:700;margin:13px 0 7px}.variant-select{width:100%;border:1px solid #d9cfdd;border-radius:8px;background:white;padding:10px 36px 10px 11px;color:#2d2133;min-height:44px}.variant-select:disabled{background:#f6f3f7;color:#756a79}.availability{font-size:.84rem;min-height:21px;margin:10px 0;color:#79517f}.availability.unavailable{color:#9b4553}.size-details{font-size:.82rem;margin:12px 0;color:#6d536f}.size-details summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.measurements{border-collapse:collapse;margin-top:8px;width:100%;font-size:.75rem}.measurements th,.measurements td{padding:6px;border-bottom:1px solid #eee8ef;text-align:left}.quantity-row{display:flex;gap:10px;align-items:center;margin-top:12px}.quantity-row label{font-size:.83rem;color:#665a6b}.quantity-row input{width:67px;padding:9px 7px;border:1px solid #d9cfdd;border-radius:8px;text-align:center}.add-button,.primary-button{background:#402449;color:white;border:0;border-radius:9px;padding:12px 16px;font-weight:700;min-height:46px}.add-button{flex:1}.add-button:disabled,.primary-button:disabled{background:#e5dfe7;color:#83798a;cursor:not-allowed}.order{border:1px solid #e7dfeb;background:#fff;border-radius:14px;padding:24px;position:sticky;top:20px;box-shadow:0 8px 30px #3723420b}.order-heading{padding-bottom:18px;border-bottom:1px solid #ede7ef}.order-heading h2{font-size:1.7rem}.cart-empty{color:#7e7183;font-size:.9rem;padding:16px 0}.cart-line{display:grid;grid-template-columns:1fr auto;gap:8px;padding:16px 0;border-bottom:1px solid #f0ebf1}.cart-line strong{display:block;font-size:.92rem}.cart-line small{color:#786b7d;display:block}.cart-line .line-subtotal{font-weight:700;font-size:.91rem}.cart-actions{display:flex;align-items:center;gap:7px;margin-top:8px}.cart-actions button{width:27px;height:27px;background:#f3eef5;border:0;border-radius:6px;font-size:1rem}.cart-actions .remove{width:auto;background:none;color:#8d4967;text-decoration:underline;font-size:.77rem;margin-left:6px}.cart-totals{display:flex;align-items:center;justify-content:space-between;margin:19px 0 6px;font-size:1.02rem}.cart-totals strong{font-size:1.22rem}.wholesale-hint{font-size:.8rem;color:#765a80;background:#f6f1f7;padding:9px 11px;border-radius:7px;margin:12px 0}.delivery{border:0;padding:0;margin:19px 0 0}.delivery legend{font-weight:700;font-size:.92rem;margin-bottom:10px}.radio-row{display:flex;align-items:center;gap:7px;margin:10px 0;font-size:.9rem;cursor:pointer}.radio-row input{accent-color:#694072;width:17px;height:17px}.radio-row span{margin-left:auto;color:#786b7e;font-size:.76rem}.shipping-fields{display:grid;gap:10px;margin:14px 0}.shipping-fields label{font-size:.82rem;font-weight:700}.shipping-fields input{display:block;width:100%;margin-top:4px;padding:9px;border:1px solid #d9cfdd;border-radius:7px}.delivery-note{color:#6e6272;font-size:.78rem;margin:12px 0}.cart-message{color:#9b4553;font-size:.82rem;margin:7px 0;min-height:1px}.primary-button{width:100%;display:flex;align-items:center;justify-content:space-between}.small-note{font-size:.73rem;color:#897e8c;line-height:1.45;margin:10px 0 0}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid #e8e0eb;margin:65px 0 70px;padding-top:30px}.info-grid>div{padding:10px 15px 12px}.info-icon{font-family:'Playfair Display',Georgia,serif;font-size:1.35rem;color:#a67caf}.info-grid h3{font-size:1.05rem;margin:9px 0 5px}.info-grid p{font-size:.88rem;color:#6f6274;margin:0;line-height:1.55}.site-footer{background:#281c34;color:white;padding:27px 0}.site-footer .wrap{display:flex;justify-content:space-between;gap:12px}.site-footer span{font-weight:700;letter-spacing:.08em}.site-footer small{color:#c6b9ca}.loading{padding:25px;color:#776b7c}.mobile-bar{display:none}
@media(max-width:1050px){.layout{grid-template-columns:minmax(0,1fr) 290px;gap:18px}.product-grid{gap:14px}.product-body{padding:15px}.intro-stamp{margin-right:10px}}
@media(max-width:820px){.layout{display:flex;flex-direction:column}.layout>section,.order{width:100%}.order{position:static}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.intro{margin-bottom:31px}.intro-stamp{width:115px;height:115px}.intro-stamp span{font-size:2.8rem}.info-grid{margin:40px 0 90px}.mobile-bar{display:flex;position:fixed;z-index:10;bottom:0;left:0;right:0;padding:11px 18px calc(11px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;background:#281c34;color:white;box-shadow:0 -4px 22px #1b0f2666}.mobile-bar strong,.mobile-bar small{display:block}.mobile-bar small{color:#d7c9dc;font-size:.75rem}.mobile-bar a{background:#d6b6dd;color:#281c34;border-radius:8px;padding:9px 14px;font-weight:700;font-size:.85rem}}
@media(max-width:570px){.site-header{height:70px}.brand{font-size:1.12rem;gap:8px}.brand-mark{width:33px;height:33px}.brand small{font-size:.43rem}.header-order{font-size:.8rem}.intro{min-height:0;padding:24px 22px;margin-top:13px;border-radius:12px}.intro h1{font-size:2rem}.intro-text{font-size:.86rem;margin-top:12px}.intro-stamp{display:none}.section-heading h2{font-size:1.8rem}.product-grid{grid-template-columns:1fr;gap:17px}.product-media{aspect-ratio:4/3.7}.product-body{padding:20px}.product-description{min-height:0}.info-grid{grid-template-columns:1fr;gap:9px}.info-grid>div{padding:7px 0}.site-footer .wrap{display:block}.site-footer small{display:block;margin-top:4px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}
[hidden]{display:none!important}
.product-media .crop-image{width:100%;height:100%;background-repeat:no-repeat;background-color:#201b2c}.price-note{display:block;color:#765a80;font-size:.69rem;font-weight:600;white-space:nowrap;text-align:right}
.category-tabs{display:flex;gap:7px;border-bottom:1px solid #ded3e2;margin:-3px 0 0}.category-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:#75677a;padding:11px 15px 12px;font-size:.94rem;font-weight:700;min-height:47px}.category-tabs button[aria-selected="true"]{color:#402449;border-color:#795084}.category-tabs button:focus-visible,.color-option:focus-visible{outline:3px solid #a56db3;outline-offset:2px}.category-tabs button span{font-size:.75rem;font-weight:600;margin-left:4px}.category-note{color:#776a7b;font-size:.82rem;margin:10px 0 20px}.color-options{display:flex;gap:9px;flex-wrap:wrap;margin:6px 0 8px}.color-option{border:1px solid #ddd2e1;background:#fff;border-radius:8px;min-height:43px;padding:6px 9px;display:inline-flex;gap:7px;align-items:center;color:#5a4e60;font-size:.78rem}.color-option[aria-pressed="true"]{border:2px solid #694072;box-shadow:0 0 0 2px #e4d2e9;color:#34243e;font-weight:700}.swatch-dot{width:19px;height:19px;border:1px solid #807587;border-radius:5px;flex-shrink:0;background:var(--swatch)}.order-type{border:0;padding:0;margin:18px 0 10px}.order-type legend{font-weight:700;font-size:.92rem;margin-bottom:8px}.order-type-note{color:#765a80;font-size:.8rem;line-height:1.45;margin:8px 0 0}.order-type-note:empty{display:none}
@media(max-width:570px){.category-tabs button{padding:10px 8px;font-size:.84rem}.color-option{padding:6px 8px}}
.intro{gap:clamp(18px,3vw,48px)}.intro>div:first-child{min-width:0;position:relative;z-index:1}.intro-logo{width:clamp(165px,20vw,230px);aspect-ratio:1.22;position:relative;overflow:hidden;border:1px solid #9d83a680;border-radius:12px;flex-shrink:0;background:#1a1124;z-index:1}.intro-logo img{display:block;width:100%;height:auto}
@media(max-width:820px){.intro-logo{width:clamp(135px,21vw,170px)}}
@media(max-width:570px){.intro{display:grid;grid-template-columns:1fr auto;gap:10px}.intro>div:first-child{grid-column:1/-1}.intro-logo{display:block;grid-column:2;width:clamp(135px,45vw,175px);margin-top:5px}}
.info-grid.with-contact{grid-template-columns:repeat(4,minmax(0,1fr))}.contact-links{display:grid;gap:8px;font-size:.88rem}.contact-links a{color:#542e5e;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
@media(max-width:820px){.info-grid.with-contact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:570px){.info-grid.with-contact{grid-template-columns:1fr}}
