
[hidden] {
    display:none!important
}

.cropped-photo {
    display:block;
    width:100%;
    height:100%;
    overflow:hidden
}

.hero-photo>.cropped-photo,.philosophy-photo>.cropped-photo {
    position:absolute;
    inset:0
}

.fallback-image {
    width:100%;
    height:100%
}

.variant-picker {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:50px;
    margin:30px 0 45px
}

.variant-picker > * {
    min-width:0
}

.variant-picker h1 {
    font-size:40px
}

.variant-media .product-picture {
    aspect-ratio:1.08
}

.detail-price {
    font-family:Georgia,serif;
    font-size:26px;
    margin:20px 0
}


.variant-options {
    border:0;
    padding:0;
    margin:0
}

.variant-options legend {
    font-size:12px;
    font-weight:600;
    margin-bottom:12px
}

.swatches {
    display:flex;
    flex-wrap:wrap;
    gap:10px
}

.variant-chip {
    position:relative;
    cursor:pointer
}

.variant-chip input {
    position:absolute;
    opacity:0;
    width:1px;
    height:1px;
    margin:0
}

.variant-chip>span {
    display:flex;
    align-items:center;
    gap:8px;
    border:1px solid #ddd2ca;
    border-radius:30px;
    padding:8px 14px;
    background:white;
    transition:border-color .2s
}

.variant-chip input:checked+span {
    border-color:#25221f;
    box-shadow:0 0 0 1px #25221f
}

.variant-chip input:focus-visible+span {
    outline:3px solid #bb788b;
    outline-offset:3px
}

.swatch {
    width:24px;
    height:24px
}

.stock-note {
    font-size:12px;
    color:#7a7069;
    margin:0
}

.button:disabled {
    background:#ddd4ce;
    color:#736b65;
    border-color:#ddd4ce;
    cursor:not-allowed
}

.variant-thumbnails {
    display:flex;
    gap:10px;
    max-width:100%;
    overflow-x:auto;
    margin-top:12px;
    padding:2px 0 8px;
    scrollbar-width:thin;
    scrollbar-color:#c3aba0 #f7f1ec
}

.variant-thumbnails::-webkit-scrollbar {
    height:5px
}

.variant-thumbnails::-webkit-scrollbar-track {
    background:#f7f1ec;
    border-radius:10px
}

.variant-thumbnails::-webkit-scrollbar-thumb {
    background:#c3aba0;
    border-radius:10px
}

.variant-thumbnails::-webkit-scrollbar-thumb:hover {
    background:#a78b7d
}

.variant-thumbnails::-webkit-scrollbar-button {
    display:none;
    width:0;
    height:0
}

.quick-view .variant-thumbnails {
    scrollbar-color:#d58c90 #f8eeee
}

.quick-view .variant-thumbnails::-webkit-scrollbar-track {
    background:#f8eeee
}

.quick-view .variant-thumbnails::-webkit-scrollbar-thumb {
    background:#d58c90
}

.quick-view .variant-thumbnails::-webkit-scrollbar-thumb:hover {
    background:#cf595e
}

@supports selector(::-webkit-scrollbar) {
    .variant-thumbnails,
    .quick-view .variant-thumbnails {
        scrollbar-width:auto;
        scrollbar-color:auto
    }
}

.variant-thumbnail {
    flex:0 0 65px;
    width:65px;
    height:65px;
    border:1px solid #e5d6cc;
    border-radius:5px;
    background:#f7eee8;
    padding:0;
    overflow:hidden
}

.variant-thumbnail img {
    width:100%;
    height:100%;
    object-fit:cover
}

.product-information {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    background:#f9f3ee;
    border-radius:6px;
    padding:30px;
    margin-bottom:40px
}

.product-information dl {
    display:grid;
    grid-template-columns:100px 1fr;
    gap:12px;
    font-size:13px
}

.product-information dt {
    color:#7e756d
}
.product-information dd {
    margin:0
}

.product-reviews {
    border-top:1px solid #eee4dc;
    padding-top:30px
}

.review-item {
    padding:20px 0;
    border-bottom:1px solid #eee4dc
}

.review-item .stars-empty {
    color:#ddd3cb
}

.review-form {
    margin-top:24px;
    max-width:640px
}

.review-field {
    display:grid;
    gap:8px
}

.review-label {
    font-size:13px;
    font-weight:700;
    color:#292521
}

.star-rating {
    display:flex;
    align-items:center;
    gap:4px;
    direction:ltr;
    justify-content:flex-start
}

.star-rating .star {
    border:0;
    background:none;
    padding:4px;
    font-size:30px;
    line-height:1;
    color:#d8cfc6;
    cursor:pointer;
    transition:color .15s,transform .15s
}

.star-rating .star span {
    display:block;
    text-shadow:0 1px 0 #fff
}

.star-rating .star.is-lit {
    color:#bf864a
}

.star-rating .star:hover {
    transform:scale(1.12)
}

.star-rating .star:focus-visible {
    outline:2px solid #1f1b18;
    outline-offset:3px;
    border-radius:4px
}

.star-hint {
    margin:0;
    min-height:20px;
    font-size:13px;
    color:#7e756d
}

.review-form textarea {
    min-height:130px;
    background:#fffdfb;
    border:1px solid #ded5ce;
    border-radius:12px;
    padding:14px 16px;
    font-size:14px;
    line-height:1.6;
    box-shadow:inset 0 1px 2px #2917110d;
    transition:border-color .15s,box-shadow .15s
}

.review-form textarea::placeholder {
    color:#a89e95
}

.review-form textarea:focus {
    outline:none;
    border-color:#1f1b18;
    box-shadow:0 0 0 3px #1f1b181f
}

.quick-view {
    border:0;
    border-radius:14px;
    padding:40px;
    width:min(850px,calc(100% - 40px));
    max-height:90vh;
    overflow:auto;
    box-shadow:0 30px 100px #0003;
    background:#fffdfb
}

.quick-view::backdrop {
    background:#2f211b99;
    backdrop-filter:blur(4px)
}

.quick-view .variant-picker {
    gap:30px;
    margin:5px 0 20px
}

.quick-view h1 {
    font-family:Georgia,serif;
    font-weight:400;
    font-size:30px;
    letter-spacing:-1px
}

.modal-close {
    position:absolute;
    top:12px;
    right:16px;
    z-index:5;
    border:0;
    background:#f1e8e0;
    border-radius:50%;
    width:32px;
    height:32px;
    font-size:22px
}

.toast-region {
    position:fixed;
    bottom:24px;
    right:24px;
    z-index:10000;
    display:grid;
    gap:10px;
    width:min(380px,calc(100% - 32px));
    pointer-events:none
}

.toast {
    --toast-color:#447365;
    --toast-bg:#f5faf7;
    display:grid;
    grid-template-columns:30px 1fr 24px;
    gap:12px;
    align-items:start;
    width:100%;
    padding:17px 18px;
    border:1px solid var(--toast-color);
    border-radius:9px;
    background:var(--toast-bg);
    color:#292521;
    box-shadow:0 10px 35px #2917111a;
    font:13px/1.5 Arial,sans-serif;
    pointer-events:auto;
    animation:toast-enter .22s ease-out
}

.toast-success {
    --toast-color:#447365;
    --toast-bg:#f5faf7
}

.toast-error {
    --toast-color:#ab5367;
    --toast-bg:#fff5f6
}

.toast-warning {
    --toast-color:#aa8543;
    --toast-bg:#fffbf1
}

.toast-info {
    --toast-color:#607b91;
    --toast-bg:#f4f8fb
}

.toast-icon {
    display:grid;
    place-items:center;
    width:27px;
    height:27px;
    border-radius:50%;
    color:white;
    background:var(--toast-color);
    font-weight:600
}

.toast-content p {
    margin:0
}
.toast-content a {
    display:inline-block;
    margin-top:5px;
    text-decoration:underline;
    font-weight:600
}

.toast-close {
    border:0;
    background:transparent;
    color:#655d57;
    font-size:20px;
    line-height:25px;
    padding:0
}

.wish-button [aria-pressed=true] {
    color:#b85273
}
.wish-button [aria-pressed=true] svg {
    fill:#f6c5d3
}

@keyframes toast-enter {
    from {
    opacity:0;
    transform:translateY(12px)
}
to {
    opacity:1;
    transform:translateY(0)
}

}

@media(prefers-reduced-motion:reduce) {
    * {
    animation:none!important;
    transition:none!important
}

}

@media(max-width:760px) {
    .variant-picker {
    grid-template-columns:1fr;
    gap:25px
}
.variant-picker h1 {
    font-size:34px
}
.product-information {
    grid-template-columns:1fr;
    gap:25px;
    padding:22px
}
.quick-view {
    padding:45px 22px 25px
}
.quick-view .variant-picker {
    grid-template-columns:1fr
}
.quick-view .variant-media {
    max-width:280px;
    width:100%;
    margin:auto
}
.toast-region {
    bottom:16px;
    right:16px
}

}



.hero-photo img.banner-artwork{inset:0;width:100%;height:100%;object-fit:cover}.promo-photo{position:absolute;right:0;top:0;width:48%;height:100%;overflow:hidden}.promo-photo picture{display:block;width:100%;height:100%}.promo>h2,.promo>p,.promo>small,.promo>.mini-button{position:relative;z-index:1;max-width:58%}.policy-body{white-space:pre-wrap;overflow-wrap:anywhere}

.bundle-contents{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px}
.bundle-item a{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;padding:10px;border:1px solid #eee0d6;border-radius:6px;background:#fff;text-decoration:none;color:inherit}
.bundle-item a:hover{border-color:#c9a68f}
.bundle-item-image{display:block;width:72px;height:72px;border-radius:5px;overflow:hidden;background:#f7eee8}
.bundle-item-image img{width:100%;height:100%;object-fit:cover;display:block}
.bundle-item-info strong{display:block;font-size:14px}
.bundle-item-info small{color:#7e756d;font-size:12px}

/* Product chooser modal and product page finishing details */
.quick-view {
    width:min(940px,calc(100% - 40px));
    padding:34px;
    border-radius:10px;
    background:#fff;
    color:#29262b
}
.quick-view .variant-picker {
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    align-items:start;
    gap:28px;
    margin:0 0 15px
}
.quick-view .variant-media .product-picture {
    aspect-ratio:1/1;
    border-radius:6px;
    background:#f7f5f3
}
.quick-view .variant-media .own-image {
    padding:20px;
    object-fit:contain;
    transform-origin:var(--zoom-x, 50%) var(--zoom-y, 50%);
    transition:transform .3s ease
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
    .quick-view .variant-media .product-picture { cursor:zoom-in }
    .quick-view .variant-media .product-picture:hover .own-image { transform:scale(1.55) }
}
.quick-view .variant-picker .eyebrow {
    margin:0 0 8px;
    color:#857d78;
    font-size:10px;
    font-weight:600;
    letter-spacing:.13em;
    text-transform:uppercase
}
.quick-view h1 {
    margin:0 25px 10px 0;
    color:#29262b;
    font-family:Georgia,serif;
    font-size:29px;
    font-weight:400;
    letter-spacing:-.3px;
    line-height:1.2
}
.quick-view .description {
    margin:0;
    color:#777179;
    font-size:13px;
    line-height:1.65
}
.quick-view-rating {
    margin:11px 0 0;
    color:#777179;
    font-size:12px
}
.quick-view-rating span {
    color:#ad7947;
    letter-spacing:.08em
}
.quick-view .detail-price {
    margin:14px 0 19px;
    color:#29262b;
    font-family:inherit;
    font-size:20px;
    font-weight:700
}
.quick-view .variant-options legend {
    margin-bottom:10px;
    color:#49454b;
    font-size:12px
}
.quick-view .variant-chip>span {
    gap:7px;
    border-radius:6px;
    padding:7px 10px;
    color:#403c42;
    font-size:12px
}
.quick-view .variant-chip input:checked+span {
    border-color:#c9575c;
    box-shadow:0 0 0 1px #c9575c
}
.quick-view .swatch { width:18px; height:18px }
.quick-view .stock-note {
    margin-top:10px;
    color:#777179;
    font-size:11px
}
.quick-view .variant-picker form[data-add-to-bag].stack {
    grid-template-columns:minmax(105px,130px) minmax(0,1fr);
    align-items:end;
    gap:11px;
    max-width:none
}
.quick-view .variant-picker form[data-add-to-bag].stack .variant-options,
.quick-view .variant-picker form[data-add-to-bag].stack .stock-note {
    grid-column:1/-1
}
.quick-view .variant-picker form[data-add-to-bag].stack>label {
    grid-column:1;
    gap:6px;
    color:#69636b;
    font-size:11px
}
.quick-view .variant-picker form[data-add-to-bag].stack>label input {
    min-height:40px;
    padding:8px 10px;
    border-color:#e4e0e3;
    border-radius:5px
}
.quick-view .variant-picker form[data-add-to-bag].stack>.button {
    grid-column:2;
    width:100%;
    min-height:40px;
    border:0;
    border-radius:5px;
    background:#cf595e;
    color:#fff;
    font-size:12px;
    font-weight:600
}
.quick-view-details-link {
    display:inline-flex;
    padding-top:10px;
    border-top:1px solid #eee9eb;
    color:#a44d52;
    font-size:12px
}
.modal-close {
    top:9px;
    right:11px;
    background:transparent;
    color:#777179
}
.product-detail-page>.text-link {
    display:inline-flex;
    margin-bottom:3px;
    color:#716b72
}
.product-detail-page>.variant-picker {
    align-items:start;
    gap:48px;
    margin-top:20px
}
.product-detail-page .variant-media .product-picture {
    aspect-ratio:4/3;
    border:1px solid #eee8e5;
    border-radius:9px;
    background:var(--paper);
    overflow:hidden
}
.product-detail-page .variant-media .own-image {
    padding:18px;
    object-fit:contain;
    transform-origin:var(--zoom-x, 50%) var(--zoom-y, 50%);
    transition:transform .3s ease
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
    .product-detail-page .variant-media .product-picture {
        cursor:zoom-in
    }
    .product-detail-page .variant-media .product-picture:hover .own-image {
        transform:scale(1.55)
    }
}
.product-detail-page .variant-picker h1 {
    margin:0 0 12px;
    color:#29262b;
    font-family:Georgia,serif;
    font-weight:400;
    letter-spacing:-.4px
}
.product-detail-page .variant-picker .eyebrow {
    margin:2px 0 8px;
    color:#857d78;
    font-size:10px;
    font-weight:600;
    letter-spacing:.13em;
    text-transform:uppercase
}
.product-detail-page .variant-picker .description {
    max-width:520px;
    color:#777179;
    font-size:14px;
    line-height:1.7
}
.product-detail-page .detail-price {
    color:#29262b;
    font-family:Georgia,serif;
    font-size:25px
}
.product-detail-page .variant-options legend {
    color:#49454b
}
.product-detail-page .variant-chip>span {
    border-radius:7px;
    color:#403c42
}
.product-detail-page .variant-chip input:checked+span {
    border-color:var(--ink);
    background:#f7e6e3;
    box-shadow:0 0 0 1px var(--ink)
}
.variant-chip--color>span,
.quick-view .variant-chip--color>span,
.product-detail-page .variant-chip--color>span {
    width:42px;
    height:42px;
    justify-content:center;
    padding:5px;
    border-radius:50%
}
.variant-chip--color .swatch {
    display:block;
    width:28px;
    height:28px
}
.variant-chip--color input:checked+span {
    border-color:#25221f;
    box-shadow:0 0 0 2px #fff,0 0 0 4px #25221f
}
.quick-view .variant-chip--color input:checked+span {
    border-color:#c9575c;
    box-shadow:0 0 0 2px #fff,0 0 0 4px #c9575c
}
.product-detail-page .variant-chip--color input:checked+span {
    border-color:var(--ink);
    background:#fff;
    box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ink)
}
.product-detail-page .stock-note {
    margin-top:10px
}
.product-detail-page .variant-picker form[data-add-to-bag].stack {
    grid-template-columns:minmax(120px,150px) minmax(0,220px);
    align-items:end;
    gap:12px;
    max-width:500px
}
.product-detail-page .variant-picker form[data-add-to-bag].stack .variant-options,
.product-detail-page .variant-picker form[data-add-to-bag].stack .stock-note {
    grid-column:1/-1
}
.product-detail-page .variant-picker form[data-add-to-bag].stack>label {
    grid-column:1;
    gap:6px;
    color:#69636b;
    font-size:12px
}
.product-detail-page .variant-picker form[data-add-to-bag].stack>label input {
    min-height:42px;
    border-color:#e4e0e3;
    border-radius:5px
}
.product-detail-page .variant-picker form[data-add-to-bag].stack>.button {
    grid-column:2;
    width:100%;
    min-height:42px;
    border:0;
    border-radius:5px;
    background:var(--ink);
    color:#fffaf7;
    font-size:12px;
    font-weight:600
}
@media(max-width:760px) {
    .quick-view {
        width:calc(100% - 28px);
        max-height:92vh;
        padding:38px 20px 22px
    }
    .quick-view .variant-picker,
    .product-detail-page>.variant-picker {
        grid-template-columns:minmax(0,1fr);
        gap:20px
    }
    .quick-view .variant-media,
    .product-detail-page .variant-media {
        max-width:360px;
        width:100%;
        margin:0 auto
    }
    .quick-view .variant-picker h1 { font-size:26px }
    .product-detail-page .variant-picker h1 { font-size:34px }
    .quick-view .variant-picker form[data-add-to-bag].stack,
    .product-detail-page .variant-picker form[data-add-to-bag].stack {
        grid-template-columns:minmax(100px,130px) minmax(0,1fr)
    }
}
