@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap");

/* One visual language for browsing, saving, and exploring a complete look. */
body.rk-experience {
    --font-body: "Montserrat", "Segoe UI", sans-serif;
    --font-title: "Montserrat", "Segoe UI", sans-serif;
    --rk-gold: #ffbd6c;
    --rk-cream: #fff0da;
    --rk-line: #ba8e6b38;
    --rk-panel: #21162d;
    --rk-soft: #bba5c6;
    background: radial-gradient(ellipse at 90% 4%, #522b583d, transparent 38%), radial-gradient(ellipse at 0 38%, #7c442522, transparent 40%), #100b19;
    font-family: var(--font-body);
}
.rk-experience .rk-halloween-strip { display: none; }
.rk-experience .rk-reading-progress { position: fixed; inset: 0 0 auto; z-index: 49; height: 2px; background: linear-gradient(90deg, #9c65ba, #ffc071); transform: scaleX(var(--rk-reading-progress, 0)); transform-origin: left; pointer-events: none; }
.rk-experience .rk-motion-tools { position: relative; z-index: 10; display: flex; align-items: center; justify-content: space-between; gap: 16px; width: min(1280px, calc(100% - 48px)); min-height: 32px; margin: 0 auto 10px; border-bottom: 1px solid #b68a6a20; }
.rk-season-label { display: flex; align-items: center; gap: 9px; color: #aa8eb6; font-size: 8px; font-weight: 600; letter-spacing: .13em; }
.rk-season-label > span { color: var(--rk-gold); font-size: 13px; }
.rk-experience .haunt-motion-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 30px; padding: 5px 0 5px 10px; border: 0; background: none; color: #c7b3cf; font: 500 9px var(--font-body); cursor: pointer; }
.rk-experience .haunt-motion-toggle svg { width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.rk-experience .haunt-motion-toggle:disabled { opacity: .6; cursor: default; }
.rk-experience :is(.haunt-motion-toggle, .favorites-empty, .favorites-clear-btn, [data-favorites-count])[hidden] { display: none !important; }
.rk-experience main :is(a, button, input, select, summary):focus-visible { outline: 2px solid var(--rk-gold); outline-offset: 4px; }
.rk-experience .site-footer-link-group strong { color: #d1a76c; }

/* All campaign decoration is pointer-transparent, with a shared pause setting. */
.rk-experience .haunt-definitions { position: absolute; width: 0; height: 0; overflow: hidden; pointer-events: none; }
.rk-experience .haunt-atmosphere { position: fixed; inset: 0; z-index: 8; overflow: hidden; contain: strict; pointer-events: none; }
.rk-experience .haunt-web { position: absolute; top: -15px; width: 205px; height: 190px; background: url("../img/halloween/web.3533d87252d8.svg") top left / contain no-repeat; opacity: .12; }
.rk-experience .haunt-web-left { left: -30px; }
.rk-experience .haunt-web-right { right: -30px; transform: scaleX(-1); }
.rk-experience .haunt-bat { position: absolute; width: 76px; overflow: visible; filter: drop-shadow(0 5px 7px #0007); opacity: .6; }
.rk-experience .haunt-bat-one { top: 16%; left: 3%; width: 64px; rotate: -14deg; }
.rk-experience .haunt-bat-two { top: 14%; right: 9%; width: 88px; rotate: 17deg; }
.rk-experience .haunt-bat-three { top: 55%; right: 3%; width: 46px; rotate: -15deg; opacity: .45; }
.rk-experience .haunt-bat-four { top: 81%; left: 42%; width: 38px; rotate: 12deg; opacity: .3; }
.rk-experience .haunt-bat-five { top: 28%; left: -120px; width: 62px; }
.rk-experience .haunt-bat-six { top: 66%; right: -120px; width: 45px; }
.rk-experience .haunt-leaf { position: absolute; top: -60px; left: var(--x); width: var(--size); height: auto; opacity: .35; backface-visibility: visible; }
.rk-experience .haunt-leaf:nth-of-type(3n) { filter: hue-rotate(-12deg); opacity: .22; }
.rk-hanging-spider { position: absolute; top: -45px; right: 4.5%; width: 27px; transform-origin: 50% 0; opacity: .6; }
.rk-hanging-spider i { display: block; width: 1px; height: 190px; margin: 0 auto; background: linear-gradient(transparent, #d7bcd266); }
.rk-hanging-spider svg { display: block; width: 27px; height: 30px; margin-top: -4px; filter: drop-shadow(0 5px 5px #0008); }
.rk-ember { position: absolute; top: 100%; left: var(--x); width: 3px; height: 3px; border-radius: 50%; background: #ffd097; box-shadow: 0 0 12px #ff9d49; opacity: 0; }

/* Secondary pages get the same art, typography, and warm glass surfaces. */
.rk-experience.rk-halloween :is(.rg-products-page, .favorites-page) { background: transparent; overflow: clip; }
.rk-experience.rk-halloween :is(.rg-products-page, .favorites-page)::before { display: none; }
.rk-experience.rk-halloween :is(.outfits-page, .outfit-detail-page, .favorites-shell) { max-width: 1320px; margin-inline: auto; padding: 8px 24px 48px; }
.rk-experience.rk-halloween .rg-products-page:not(.favorites-page) { max-width: 1320px; margin-inline: auto; padding: 8px 24px 50px; }
.rk-experience.rk-halloween .favorites-page { min-height: 70vh; padding: 0; }
.rk-experience.rk-halloween .rk-page-hero { position: relative; z-index: 1; display: flex; align-items: center; min-height: 262px; margin: 0 0 25px; padding: 34px 38px; overflow: hidden; border: 1px solid var(--rk-line); border-radius: 27px; background: radial-gradient(ellipse at 90% 40%, #6d3d5440, transparent 62%), linear-gradient(115deg, #281b34, #191222); text-align: left; isolation: isolate; }
.rk-page-hero-copy { position: relative; z-index: 2; width: min(67%, 730px); }
.rk-experience.rk-halloween .rk-page-hero h1 { margin: 0; color: var(--rk-cream); font: 900 clamp(37px, 4.5vw, 64px)/.98 var(--font-title); letter-spacing: -.055em; text-transform: none; text-shadow: none; overflow-wrap: anywhere; }
.rk-experience .rk-page-hero h1 em { color: var(--rk-gold); font-style: normal; }
.rk-experience.rk-halloween .rk-page-hero :is(.outfits-kicker, .favorites-kicker, .rk-detail-kicker) { margin: 0 0 15px; color: #b695c6; font-size: 8px; line-height: 1.6; font-weight: 700; letter-spacing: .14em; }
.rk-experience.rk-halloween .rk-page-hero-copy > p:not(:first-child) { max-width: 485px; margin: 17px 0 0; color: #bfaacb; font-size: 12px; line-height: 1.8; }
.rk-page-art { position: absolute; z-index: 0; top: -12%; right: 2%; width: 36%; height: 125%; transform: perspective(1000px) rotateX(var(--haunt-tilt-x, 0deg)) rotateY(var(--haunt-tilt-y, 0deg)); transform-style: preserve-3d; transition: transform .4s ease-out; pointer-events: none; }
.rk-page-art .haunt-stage-float { position: absolute; inset: 0; z-index: 1; }
.rk-page-art :is(picture, img) { display: block; width: 100%; height: 100%; object-fit: contain; }
.rk-page-art img { filter: drop-shadow(0 18px 25px #05020a66); }
.rk-page-moon { position: absolute; top: 18%; left: 12%; width: 76%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 30% 25%, #ffe7b5, #c68c52); box-shadow: 0 0 70px #ba773326; opacity: .3; }
.rk-page-orbit { position: absolute; inset: 17% 0; border: 1px solid #dca96b30; border-radius: 50%; transform: rotate(-25deg); }
.rk-page-orbit::before { content: "✦"; position: absolute; top: 10%; left: 13%; color: #eac18e; font-size: 17px; }
.rk-experience .rk-text-action { display: inline-flex; align-items: center; gap: 15px; min-height: 40px; margin-top: 13px; color: var(--rk-gold); font-size: 10px; font-weight: 700; text-decoration: none; }
.rk-text-action > span { font-size: 17px; }
.rk-community-inline { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 15px; }
.rk-community-inline a { min-height: 28px; color: #ddbd99; font-size: 9px; font-weight: 600; text-decoration: none; }
.rk-experience.rk-halloween .gender-filter { max-width: none; margin: 18px 0; padding: 0; justify-content: flex-start; gap: 8px; }
.rk-experience.rk-halloween .gender-btn { min-height: 42px; padding: 12px 23px; border: 1px solid #ad85ba4d; border-radius: 13px; background: #261b32; color: #d4bedf; font: 700 10px var(--font-body); letter-spacing: .04em; box-shadow: none; }
.rk-experience.rk-halloween .gender-btn.active { border-color: #ffd29888; background: linear-gradient(135deg, #ffdc9f, #f4b35b); color: #291b2c; box-shadow: 0 5px 20px #ffb65718; }
.rk-experience.rk-halloween .category-filter { max-width: none; padding: 0; margin-bottom: 18px; }
.rk-experience.rk-halloween .category-options { gap: 7px; }
.rk-experience.rk-halloween .category-btn { min-height: 34px; padding: 9px 12px; border: 1px solid #a37eaf38; border-radius: 11px; background: #21172d; color: #baa5c8; font: 600 9px var(--font-body); letter-spacing: .01em; text-transform: none; box-shadow: none; }
.rk-experience.rk-halloween .category-btn.active { border-color: #c3966580; background: #4a3035; color: #ffd292; }
.rk-experience.rk-halloween .category-load-more { border-color: #ad85ba4d; border-radius: 10px; background: #30213d; color: #e7cfeb; box-shadow: none; }
.rk-experience.rk-halloween .search-line { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; align-items: center; gap: 13px; max-width: none; min-height: 62px; margin: 0 0 25px; padding: 6px 7px 6px 18px; border: 1px solid #c18c5477; border-radius: 16px; background: #1c1428; box-shadow: 0 7px 25px #0003; }
.rk-experience.rk-halloween .search-line input[type="search"] { width: 100%; min-height: 42px; padding: 0; border: 0; border-radius: 0; outline: none; background: none; box-shadow: none; color: #f1e1e9; font: 500 13px var(--font-body); }
.rk-experience .rk-search-icon { width: 21px; height: 21px; fill: none; stroke: #bda5c8; stroke-width: 1.7; stroke-linecap: round; }
.rk-experience.rk-halloween .rk-catalog-search-submit { display: inline-flex; align-items: center; justify-content: center; gap: 15px; min-height: 46px; padding: 0 22px; border: 1px solid #ffdb9c88; border-radius: 11px; background: linear-gradient(135deg, #ffdc9f, #f4b35b); color: #291b2c; font: 800 10px var(--font-body); cursor: pointer; }
.rk-experience.rk-halloween .search-line:focus-within { outline: 2px solid var(--rk-gold); outline-offset: 4px; }
.rk-experience.rk-halloween .search-empty-state { grid-column: 1 / -1; padding: 32px; border: 1px solid var(--rk-line); border-radius: 20px; background: #281c34; }
.rk-experience.rk-halloween .search-empty-state h2 { color: var(--rk-cream); font: 800 25px var(--font-title); letter-spacing: -.03em; }
.rk-experience.rk-halloween .search-empty-state p { color: #bca3ca; line-height: 1.8; }
.rk-experience.rk-halloween .search-empty-state strong { color: #edd4b0; }
.rk-experience.rk-halloween .search-empty-action { min-height: 44px; padding: 12px 18px; border: 1px solid #eec08d66; border-radius: 12px; background: #513540; color: #ffd49b; box-shadow: none; }
.rk-experience.rk-halloween .loader-pill { border-color: #ad85ba44; border-radius: 12px; background: #281a35; color: #bda6cb; box-shadow: none; font-size: 10px; }
.rk-experience.rk-halloween #infinite-loader.loading .loader-pill { border-color: #e2b67977; box-shadow: 0 0 20px #b18b481a; }
.rk-experience.rk-halloween .scroll-top-btn { border-color: #b58c6b55; border-radius: 12px; background: #36233f; color: #e8c99d; box-shadow: 0 7px 24px #0005; }
.rk-experience.rk-halloween :is(.product-grid, .outfit-products-grid, .similar-products-grid) { max-width: none; gap: 18px; padding: 0; }

/* Product cards remain stable; light and perspective move over the surface. */
.rk-experience.rk-halloween :is(.product-card, .outfit-card, .rk-featured-card) { position: relative; isolation: isolate; min-width: 0; border: 1px solid var(--rk-line); border-radius: 21px; background: linear-gradient(145deg, #2b1e37, #1b1327); box-shadow: 0 12px 30px #0003, inset 0 1px 0 #ffffff08; animation: none; transform: none; transition: transform .35s, border-color .3s, box-shadow .3s, opacity .5s, translate .5s; }
.rk-experience.rk-halloween .product-card { display: flex; flex-direction: column; }
.rk-experience .product-card > .product-link { display: block; flex: 1; min-width: 0; color: inherit; text-decoration: none; }
.rk-experience.rk-halloween :is(.product-card, .outfit-card, .rk-featured-card)::after { content: ""; position: absolute; z-index: 3; inset: 0; padding: 1px; border-radius: inherit; background: conic-gradient(from var(--rk-orbit-angle), transparent 0deg 265deg, #c98bd75c 305deg, #ffcf8d 334deg, transparent 355deg); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); mask-composite: exclude; opacity: .42; pointer-events: none; }
.rk-experience.rk-halloween :is(.product-card, .outfit-card, .rk-featured-card)::before { content: ""; position: absolute; z-index: 2; inset: 0; border-radius: inherit; background: radial-gradient(250px circle at var(--rk-pointer-x, 50%) var(--rk-pointer-y, 20%), #ffe8bf13, transparent 65%); opacity: 0; transition: opacity .3s; pointer-events: none; }
.rk-experience.rk-halloween .product-card .product-image { width: calc(100% - 16px); margin: 8px; aspect-ratio: 1; border: 1px solid #b78bc526; border-radius: 15px; background: radial-gradient(ellipse at 50% 78%, #51395c, #2b1d38); box-shadow: none; }
.rk-experience.rk-halloween .product-card .product-image img { width: 100%; height: 100%; object-fit: contain; padding: 9px; transition: transform .5s cubic-bezier(.22, 1, .36, 1); }
.rk-experience.rk-halloween .product-card .product-image::after { background: none; }
.rk-experience.rk-halloween .product-card .product-info { padding: 12px 15px 6px; text-align: left; }
.rk-experience.rk-halloween .product-card .product-info h3 { display: -webkit-box; min-height: 36px; margin: 0 0 8px; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; color: #f1e2e9; font: 700 12px/1.5 var(--font-body); letter-spacing: 0; text-transform: none; overflow-wrap: anywhere; }
.rk-experience.rk-halloween .product-card .product-price { margin: 0 0 5px; color: var(--rk-gold); font-size: 18px; font-weight: 800; letter-spacing: -.02em; }
.rk-experience.rk-halloween .product-card .card-actions { display: flex; gap: 0; padding: 7px 14px 15px; border: 0; background: none; }
.rk-experience.rk-halloween .product-card .card-actions .card-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 100%; min-height: 41px; padding: 10px; border: 1px solid #ffd29866; border-radius: 11px; background: linear-gradient(135deg, #ffdc9f, #f4b35b); color: #2d1b2e; font: 800 10px var(--font-body); letter-spacing: 0; text-decoration: none; text-transform: none; box-shadow: none; }
.rk-experience.rk-halloween .product-card .card-actions .favorite-toggle { position: absolute; z-index: 5; top: 17px; right: 17px; width: 34px; height: 34px; min-height: 34px; padding: 0; border: 1px solid #bc97cc66; border-radius: 11px; background: #24182fde; color: #efdbf5; box-shadow: 0 5px 12px #0003; }
.rk-experience .product-card .favorite-toggle-label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.rk-experience.rk-halloween .product-card .favorite-toggle-icon { font-size: 22px; line-height: 1; }
.rk-experience.rk-halloween .product-card .favorite-toggle.is-active { border-color: #ffc780aa; background: #51303c; color: #ffcf89; }
.rk-experience.rk-halloween .hot-badge { top: 12px; left: 12px; padding: 5px 8px; border-color: #ffd39666; background: #f6b65d; color: #291b2c; font-size: 8px; box-shadow: 0 4px 12px #0003; }
.rk-experience .rk-flying-heart { position: fixed; z-index: 1300; display: grid; place-items: center; width: 30px; height: 30px; color: #ffcc86; font-size: 27px; text-shadow: 0 0 18px #ffb95188; pointer-events: none; }
.rk-experience .rk-click-ripple { position: fixed; z-index: 1100; width: 12px; height: 12px; border: 1px solid #ffce8daa; border-radius: 50%; background: #ffd18a11; pointer-events: none; }

.rk-experience.rk-halloween .outfit-grid { gap: 20px; }
.rk-experience.rk-halloween .outfit-card { padding: 8px; overflow: hidden; }
.rk-experience.rk-halloween .outfit-image { width: 100%; margin: 0; aspect-ratio: 4 / 5; border: 1px solid #b58cc52b; border-radius: 15px; background: radial-gradient(ellipse at 50% 75%, #4b3454, #21182e); }
.rk-experience.rk-halloween .outfit-image img { width: 100%; max-width: 100%; height: 100%; object-fit: contain; transition: transform .5s; }
.rk-experience.rk-halloween .outfit-info { padding: 17px 10px 11px; }
.rk-experience.rk-halloween .outfit-info h3 { display: -webkit-box; min-height: 42px; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; color: #f1e1ed; font: 700 14px/1.5 var(--font-body); letter-spacing: 0; text-transform: none; }
.rk-experience.rk-halloween .outfit-info p { color: #ad95ba; font-size: 11px; line-height: 1.6; }
.rk-experience.rk-halloween .pieces-count { display: inline-flex; width: fit-content; padding: 7px 11px; border: 1px solid #caa16a40; border-radius: 9px; background: #aa753114; color: #d9b68d; font-size: 9px; font-weight: 600; letter-spacing: .02em; text-transform: none; }
.rk-experience.rk-halloween .outfit-card .card-actions { padding: 5px 9px 11px; border: 0; }
.rk-experience.rk-halloween .outfit-card .outfit-view-btn { display: flex; justify-content: space-between; min-height: 44px; padding: 12px 15px; border: 1px solid #ffd49955; border-radius: 11px; background: linear-gradient(135deg, #ffdc9f, #f4b35b); box-shadow: none; color: #2d1b2e; font: 800 10px var(--font-body); letter-spacing: 0; text-transform: none; }

/* The same card treatment continues inside an individual outfit and product. */
.rk-experience.rk-halloween .outfit-detail-layout { gap: 30px; margin-top: 22px; align-items: start; }
.rk-experience.rk-halloween :is(.outfit-gallery, .gallery) { position: relative; min-width: 0; padding: 10px; border: 1px solid var(--rk-line); border-radius: 25px; background: linear-gradient(150deg, #30203b, #1b1427); box-shadow: 0 14px 35px #0003, inset 0 1px 0 #ffffff07; }
.rk-experience.rk-halloween .gallery-track { border-radius: 17px; background: #21172f; scrollbar-width: thin; scrollbar-color: #9d729b #21172f; }
.rk-experience.rk-halloween :is(.outfit-gallery, .gallery) .gallery-track img { height: clamp(320px, 48vw, 600px); border: 0; border-radius: 17px; background: radial-gradient(ellipse at 50% 70%, #3d2b4b, #1c1428); box-shadow: none; object-fit: contain; }
.rk-experience .rk-gallery-count { position: absolute; z-index: 3; top: 24px; right: 24px; padding: 8px 11px; border: 1px solid #d5b18055; border-radius: 10px; background: #20162cdd; color: #f1d6b3; font-size: 9px; font-weight: 700; pointer-events: none; }
.rk-experience.rk-halloween :is(.outfit-details, .details) { min-width: 0; padding: 30px; border: 1px solid var(--rk-line); border-radius: 25px; background: radial-gradient(ellipse at 100% 0, #8d536521, transparent 65%), linear-gradient(135deg, #291d35, #1b1326); box-shadow: 0 12px 30px #0002; }
.rk-experience.rk-halloween :is(.outfit-details, .details) h1 { margin: 0 0 18px; color: var(--rk-cream); font: 800 clamp(25px, 2.6vw, 39px)/1.18 var(--font-title); letter-spacing: -.035em; text-transform: none; overflow-wrap: anywhere; }
.rk-experience.rk-halloween :is(.outfit-details, .details) > p { color: #bea8ca; font-size: 13px; line-height: 1.85; }
.rk-experience.rk-halloween :is(.outfit-details, .details) > :is(.outfit-kicker, .rk-detail-kicker) { margin: 0 0 17px; color: #b58cc5; font-size: 9px; font-weight: 700; line-height: 1.6; letter-spacing: .13em; text-transform: uppercase; }
.rk-experience .rk-look-actions { display: grid; gap: 10px; margin: 27px 0; }
.rk-experience :is(.rk-primary-action, .rk-secondary-action) { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 48px; padding: 13px 17px; border: 1px solid #ffd49977; border-radius: 13px; background: linear-gradient(135deg, #ffdc9f, #f4b35b); color: #2d1b2e; font-size: 11px; font-weight: 800; text-decoration: none; }
.rk-experience .rk-secondary-action { border-color: #ab83b449; background: #36223f; color: #d9c1e3; font-weight: 600; }
.rk-look-guide { display: grid; gap: 16px; margin: 20px 0; padding: 22px 0; border-block: 1px solid #b695bf29; }
.rk-look-guide > span { display: flex; align-items: center; gap: 13px; color: #bda6c7; font-size: 11px; line-height: 1.5; }
.rk-look-guide b { display: grid; flex: 0 0 auto; place-items: center; width: 29px; height: 29px; border: 1px solid #bd906b33; border-radius: 9px; background: #b3835112; color: #d7a971; font-size: 9px; }
.rk-experience.rk-halloween .outfit-details .rk-look-note { margin: 0; font-size: 10px; line-height: 1.8; color: #a78bb4; }
.rk-experience .rk-collection-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin: 55px 0 24px; }
.rk-experience.rk-halloween .rk-collection-heading h2 { margin: 0; color: var(--rk-cream); font: 800 clamp(28px, 3.3vw, 44px)/1.05 var(--font-title); letter-spacing: -.045em; text-transform: none; }
.rk-collection-heading h2 em { color: var(--rk-gold); font-style: normal; }
.rk-collection-heading > span { color: #a88eb5; font-size: 10px; }
.rk-experience.rk-halloween .back-btn { min-height: 38px; padding: 10px 15px; border-color: #ac85ba3d; border-radius: 11px; background: #281b33; color: #cfb8db; font-size: 9px; letter-spacing: .02em; text-transform: none; }
.rk-experience.rk-halloween .product-page { max-width: 1320px; margin-inline: auto; gap: 27px; padding: 16px 24px 45px; align-items: start; }
.rk-experience.rk-halloween .product-price.detail { color: var(--rk-gold); font-size: 39px; letter-spacing: -.04em; }
.rk-experience .rk-agent-shortcut { margin: 0 0 18px; }
.rk-experience.rk-halloween .detail-favorite-btn { min-height: 44px; padding: 11px 16px; border-color: #be94ca55; border-radius: 12px; background: #38233f; color: #e6cbee; font: 600 11px var(--font-body); letter-spacing: 0; text-transform: none; }
.rk-experience.rk-halloween .detail-favorite-btn.is-active { border-color: #efb46b88; background: #51313b; color: #ffce8d; }
.rk-experience.rk-halloween .product-link-disclaimer { padding: 16px; border: 1px solid #ad8bb530; border-radius: 14px; background: #160f20; color: #b7a2c2; font: 400 11px/1.8 var(--font-body); }
.rk-experience.rk-halloween .product-link-disclaimer p { margin-top: 9px; color: #b7a2c2; font-size: 11px; line-height: 1.8; }
.rk-experience.rk-halloween .product-link-disclaimer a { color: #dfb981; }
.rk-experience.rk-halloween .buy-buttons { gap: 10px; padding: 0; border: 0; background: none; box-shadow: none; scroll-margin-top: 120px; }
.rk-experience.rk-halloween .buy-buttons .buy-btn { min-height: 48px; border-color: #f2d3ac66; border-radius: 13px; background: linear-gradient(135deg, #fff0dd, #e4cfdd); color: #36203e; font-size: 12px; letter-spacing: .01em; box-shadow: 0 6px 17px #0002; }
.rk-experience.rk-halloween .buy-btn :is(img, span) { position: relative; z-index: 1; }
.rk-experience.rk-halloween .buy-btn::before { opacity: .35; }
.rk-experience.rk-halloween .copy-link-btn { width: 46px; height: 48px; border-color: #ad84ba49; border-radius: 12px; background: #34213e; color: #debae6; box-shadow: none; }
.rk-experience.rk-halloween .gallery-thumb { border-color: #a67bb43d; border-radius: 12px; background: #261b33; transition: border-color .2s, transform .2s; }
.rk-experience.rk-halloween .gallery-thumb.active { border-color: var(--rk-gold); box-shadow: 0 0 0 2px #ffbf6c14; }
.rk-experience.rk-halloween .gallery-thumb img { background: #261b33; }
.rk-experience.rk-halloween .qc-data-note { margin: 5px 4px; color: #a58aad; font-size: 9px; font-weight: 500; letter-spacing: 0; text-transform: none; line-height: 1.75; }
.rk-experience.rk-halloween .similar-products-section { max-width: 1320px; padding: 10px 24px 35px; margin-inline: auto; }
.rk-experience.rk-halloween .similar-products-header h2 { color: var(--rk-cream); font: 800 32px var(--font-title); letter-spacing: -.04em; text-transform: none; }
.rk-experience.rk-halloween .image-lightbox-shell { border: 1px solid #b68bc149; border-radius: 22px; background: #191222; }
.rk-experience.lightbox-open main { z-index: 1500; }
.rk-experience.rk-halloween :is(.image-lightbox-btn, .image-lightbox-nav) { border-color: #b68bc155; border-radius: 11px; background: #31213e; color: #f2dbb7; }

/* Shared dialogs keep the same palette as the page beneath them. */
.rk-experience.rk-halloween :is(.marketing-popup-dialog, .purchase-disclaimer-dialog) { border: 1px solid #c09ac153; border-radius: 25px; background: radial-gradient(ellipse at 100% 0, #8d53652b, transparent 65%), #21162e; color: #d9c2e1; box-shadow: 0 25px 90px #0008; }
.rk-experience.rk-halloween :is(.marketing-popup-kicker, .purchase-disclaimer-kicker) { color: #d5a66d; font-size: 9px; letter-spacing: .12em; }
.rk-experience.rk-halloween :is(#marketing-popup-title, #purchase-disclaimer-title) { color: var(--rk-cream); font-family: var(--font-title); letter-spacing: -.035em; }
.rk-experience.rk-halloween :is(.marketing-popup-copy, .purchase-disclaimer-copy) { color: #bea5cb; line-height: 1.8; }
.rk-experience.rk-halloween :is(.marketing-popup-close, .purchase-disclaimer-close) { border-color: #b38ab44d; background: #34213e; color: #e3c9e8; }
.rk-experience.rk-halloween .marketing-popup-field input { min-height: 46px; border: 1px solid #b48ab44d; border-radius: 12px; background: #171020; color: #f3e0eb; box-shadow: none; font-size: 16px; }
.rk-experience.rk-halloween :is(.marketing-popup-field, .marketing-popup-consent) { color: #c7aed2; }
.rk-experience.rk-halloween :is(.marketing-popup-submit, .purchase-disclaimer-continue) { min-height: 46px; border: 1px solid #ffcd8b88; border-radius: 12px; background: linear-gradient(135deg, #ffdc9f, #f4b35b); color: #2d1b2e; font-weight: 800; box-shadow: none; }
.rk-experience.rk-halloween .purchase-disclaimer-cancel { border-color: #b08bb34d; border-radius: 12px; background: #38253f; color: #dcc1e4; }
.rk-experience.rk-halloween .purchase-disclaimer-icon { border-color: #d4a36b44; background: #cc95441a; color: #edc18b; }
.rk-experience.rk-halloween .site-notice { border-color: #a87d9e55; border-radius: 13px; background: #281b34f5; box-shadow: 0 8px 28px #0005; color: #dac0df; }
.rk-experience.rk-halloween .site-notice-dot { background: #f5bb70; box-shadow: 0 0 12px #eab47477; }

/* Favorites show the saved products first, followed by the optional email form. */
.rk-experience.rk-halloween .favorites-toolbar { margin: 0 0 23px; padding: 15px 18px; border: 1px solid var(--rk-line); border-radius: 15px; background: #281b33; }
.rk-experience.rk-halloween .favorites-count-copy { color: #bea8c9; font-size: 11px; }
.rk-experience.rk-halloween #favorites-count-label { display: inline-block; color: #ffca87; font-size: 19px; margin-left: 5px; }
.rk-experience.rk-halloween .favorites-clear-btn { min-height: 36px; padding: 9px 12px; border: 1px solid #af7e9e44; border-radius: 10px; background: #3c253d; box-shadow: none; color: #d9b5cf; font-size: 9px; }
.rk-experience.rk-halloween :is(.favorites-capture, .favorites-empty) { margin: 35px 0 0; padding: 30px; border: 1px solid var(--rk-line); border-radius: 24px; background: radial-gradient(ellipse at 80% 10%, #9d5e5c1c, transparent 60%), #21162c; color: #bca4c8; }
.rk-experience.rk-halloween .favorites-empty { display: grid; justify-items: center; min-height: 310px; padding: 27px 25px 40px; text-align: center; }
.rk-experience.rk-halloween :is(.favorites-empty, .favorites-capture) h2 { margin-bottom: 13px; color: var(--rk-cream); font: 800 clamp(24px, 2.6vw, 34px)/1.1 var(--font-title); letter-spacing: -.035em; }
.rk-experience.rk-halloween :is(.favorites-capture-copy, .favorites-empty) p { max-width: 460px; color: #b69bc5; font-size: 11px; line-height: 1.8; }
.rk-experience.rk-halloween :is(.favorites-capture-kicker, .favorites-empty .favorites-capture-kicker) { margin: 0 0 12px; color: #b18bc3; font-size: 8px; font-weight: 700; letter-spacing: .13em; }
.rk-experience.rk-halloween :is(.favorites-empty-link, .favorites-signup-btn) { display: inline-flex; justify-content: center; align-items: center; gap: 15px; min-height: 45px; padding: 12px 19px; border: 1px solid #ffcf8b88; border-radius: 12px; background: linear-gradient(135deg, #ffdc9f, #f4b35b); box-shadow: none; color: #2d1b2e; font: 800 10px var(--font-body); text-decoration: none; }
.rk-experience.rk-halloween .favorites-field input { min-height: 47px; padding: 12px 15px; border: 1px solid #bb95c54d; border-radius: 12px; background: #171021; color: #f1dfed; font-size: 14px; box-shadow: none; }
.rk-experience.rk-halloween :is(.favorites-field span, .favorites-consent) { color: #bda4c9; font-size: 10px; line-height: 1.7; }
.rk-experience.rk-halloween .favorites-signup-btn:disabled { opacity: .5; cursor: default; }
.rk-experience.rk-list-empty .favorites-capture { display: none; }
.rk-empty-orbit { position: relative; display: grid; place-items: center; width: 116px; height: 105px; margin: 0 auto 18px; }
.rk-empty-orbit > svg { width: 50px; height: 50px; fill: #b5733b15; stroke: #ffd092; stroke-width: 1.2; filter: drop-shadow(0 0 14px #dc9a4633); }
.rk-empty-orbit > span { position: absolute; inset: 4px; border: 1px solid #c4a07040; border-radius: 50%; transform: rotateX(50deg) rotateZ(-25deg); }
.rk-empty-orbit > span::before { content: ""; position: absolute; top: 14px; left: 3px; width: 5px; height: 5px; border-radius: 50%; background: #ffce8a; box-shadow: 0 0 10px #ffbf6b; }
.rk-empty-orbit i { position: absolute; top: 2px; right: 2px; color: #bd8ebd; font-size: 14px; font-style: normal; }

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .rk-experience.rk-halloween:not([data-effects-paused]) :is(.product-card, .outfit-card, .rk-featured-card):hover { transform: perspective(900px) rotateX(var(--rk-tilt-x, 2deg)) rotateY(var(--rk-tilt-y, -3deg)) translateY(-6px); border-color: #d5a77199; box-shadow: 0 18px 38px #0005, 0 0 22px #ac699421; }
    .rk-experience.rk-halloween :is(.product-card, .outfit-card, .rk-featured-card):hover::before { opacity: 1; }
    .rk-experience.rk-halloween:not([data-effects-paused]) .product-card:hover .product-image img { transform: scale(1.035); }
    .rk-experience.rk-halloween:not([data-effects-paused]) .outfit-card:hover .outfit-image img { transform: scale(1.025); }
    .rk-experience.rk-halloween .gallery-thumb:hover { transform: translateY(-3px); border-color: #d0a173; }
}
@media (prefers-reduced-motion: no-preference) {
    html:has(.rk-experience) { scroll-behavior: smooth; }
    .rk-experience .haunt-stage-float { animation: rk-exp-float 7s ease-in-out infinite; }
    .rk-experience .haunt-bat { animation: rk-exp-bat 12s ease-in-out infinite alternate; }
    .rk-experience .haunt-bat-two { animation-delay: -7s; animation-duration: 15s; }
    .rk-experience .haunt-bat-three { animation-delay: -3s; animation-duration: 18s; }
    .rk-experience .haunt-bat-five { animation: rk-exp-bat-cross 24s linear -9s infinite; }
    .rk-experience .haunt-bat-six { animation: rk-exp-bat-cross-back 29s linear -19s infinite; }
    .rk-experience .haunt-wing-left { transform-origin: 48px 23px; animation: rk-exp-wing-left .36s ease-in-out infinite alternate; }
    .rk-experience .haunt-wing-right { transform-origin: 48px 23px; animation: rk-exp-wing-right .36s ease-in-out infinite alternate; }
    .rk-experience .haunt-leaf { animation: rk-exp-leaf var(--fall) linear var(--delay) infinite; }
    .rk-hanging-spider { animation: rk-exp-spider 8s ease-in-out infinite alternate; }
    .rk-ember { animation: rk-exp-ember 18s linear var(--delay) infinite; }
    .rk-experience .haunt-chip-one { animation: rk-exp-chip 6s ease-in-out infinite alternate; }
    .rk-experience .haunt-chip-two { animation: rk-exp-chip 7s ease-in-out -3s infinite alternate-reverse; }
    .rk-experience .rk-page-orbit { animation: rk-exp-orbit 27s linear infinite; }
    .rk-experience .rk-empty-orbit > svg { animation: rk-exp-heart 4s ease-in-out infinite; }
    .rk-experience .rk-empty-orbit > span { animation: rk-exp-empty-orbit 12s linear infinite; }
    .rk-experience.rk-halloween :is(.product-card, .outfit-card, .rk-featured-card)::after { animation: rk-exp-edge 12s linear infinite; animation-play-state: paused; }
    .rk-experience.rk-halloween :is(.product-card, .outfit-card, .rk-featured-card).rk-in-view::after { animation-play-state: running; }
    .rk-experience .rk-page-hero-copy { animation: rk-exp-arrive .7s cubic-bezier(.22, 1, .36, 1) both; }
    .rk-experience [data-rk-reveal] { opacity: 0; translate: 0 18px; transition: opacity .6s, translate .6s cubic-bezier(.22, 1, .36, 1); transition-delay: var(--rk-reveal-delay, 0ms); }
    .rk-experience [data-rk-reveal].rk-revealed { opacity: 1; translate: 0 0; }
    .rk-experience .rk-gallery-flash { animation: rk-exp-gallery .55s ease-out; }
    .rk-experience .image-lightbox.is-open .image-lightbox-shell { animation: rk-exp-arrive .25s ease-out; }
}
@keyframes rk-exp-edge { to { --rk-orbit-angle: 360deg; } }
@keyframes rk-exp-arrive { from { opacity: 0; translate: 0 12px; } to { opacity: 1; translate: 0 0; } }
@keyframes rk-exp-float { 50% { translate: 0 -12px; rotate: 1deg; } }
@keyframes rk-exp-chip { to { translate: 0 -8px; } }
@keyframes rk-exp-heart { 50% { transform: translateY(-7px) scale(1.04); } }
@keyframes rk-exp-orbit { to { transform: rotate(335deg); } }
@keyframes rk-exp-empty-orbit { to { transform: rotateX(50deg) rotateZ(335deg); } }
@keyframes rk-exp-bat { to { translate: 26px 17px; transform: rotate(8deg); } }
@keyframes rk-exp-bat-cross { 0% { translate: -100px 9vh; opacity: 0; } 8%, 82% { opacity: .5; } 100% { translate: calc(100vw + 250px) -18vh; opacity: 0; } }
@keyframes rk-exp-bat-cross-back { 0% { translate: 100px 0; opacity: 0; } 8%, 84% { opacity: .4; } 100% { translate: calc(-100vw - 250px) -17vh; opacity: 0; } }
@keyframes rk-exp-wing-left { to { transform: scaleX(.58) skewY(15deg); } }
@keyframes rk-exp-wing-right { to { transform: scaleX(.58) skewY(-15deg); } }
@keyframes rk-exp-spider { to { transform: rotate(6deg) translateY(25px); } }
@keyframes rk-exp-leaf { 0% { transform: translate3d(0, -30px, 0) rotate3d(1, .4, .7, 0deg); } 50% { transform: translate3d(calc(var(--sway) * .5), 50vh, 0) rotate3d(.5, 1, .7, 250deg); } 100% { transform: translate3d(var(--sway), calc(100vh + 100px), 0) rotate3d(1, .5, .7, 540deg); } }
@keyframes rk-exp-ember { 0%, 100% { opacity: 0; } 15%, 75% { opacity: .65; } 100% { translate: 45px -110vh; } }
@keyframes rk-exp-gallery { 50% { border-color: #f5c27eaa; box-shadow: 0 0 0 4px #e9ad6513, 0 15px 35px #0003; } }
.rk-experience[data-effects-paused] :is(.haunt-atmosphere *, .haunt-definitions *, .haunt-stage-float, .haunt-scene-chip, .rk-page-orbit, .rk-empty-orbit *),
.rk-experience[data-effects-idle] :is(.haunt-atmosphere *, .haunt-definitions *, .haunt-stage-float, .haunt-scene-chip, .rk-page-orbit, .rk-empty-orbit *) { animation-play-state: paused !important; }
.rk-experience[data-effects-paused] :is(.product-card, .outfit-card, .rk-featured-card, .nav-frame)::after,
.rk-experience[data-effects-idle] :is(.product-card, .outfit-card, .rk-featured-card)::after,
.rk-experience[data-effects-paused] .nav-frame::before { animation-play-state: paused !important; }
.rk-experience[data-effects-paused] [data-rk-reveal] { opacity: 1; translate: 0 0; }

@media (min-width: 1101px) {
    .rk-experience.rk-halloween :is(.product-grid, .favorites-grid) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .rk-experience.rk-halloween .outfit-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .rk-experience.rk-halloween .product-page { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
    .rk-experience.rk-halloween .product-page > .back-btn { grid-column: 1 / -1; }
    .rk-experience.rk-halloween .product-page > .gallery { position: sticky; top: 112px; }
    .rk-experience.rk-halloween .outfit-details { position: sticky; top: 112px; }
    .rk-experience.rk-halloween .favorites-capture { grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
}
@media (min-width: 651px) and (max-width: 1100px) {
    .rk-experience.rk-halloween :is(.product-grid, .favorites-grid) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .rk-experience.rk-halloween .rk-page-hero h1 { font-size: 42px; }
    .rk-experience.rk-halloween .rk-page-hero { min-height: 245px; padding: 28px; }
    .rk-experience .rk-page-art { width: 38%; }
    .rk-experience.rk-halloween .outfit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 650px) {
    .rk-experience .rk-motion-tools { width: calc(100% - 36px); min-height: 31px; margin-bottom: 5px; }
    .rk-season-label { font-size: 6px; letter-spacing: .09em; }
    .rk-experience .haunt-motion-toggle { font-size: 7px; }
    .rk-experience .haunt-web { width: 135px; height: 140px; opacity: .1; }
    .rk-experience .haunt-bat-one { top: 17%; left: 1%; width: 38px; opacity: .45; }
    .rk-experience .haunt-bat-two { top: 38%; right: 2%; width: 43px; opacity: .45; }
    .rk-experience :is(.haunt-bat-three, .haunt-bat-four, .haunt-bat-six) { display: none; }
    .rk-experience .haunt-bat-five { width: 38px; top: 22%; }
    .rk-experience .haunt-leaf:nth-of-type(even) { display: none; }
    .rk-hanging-spider { right: 3%; width: 18px; opacity: .4; }
    .rk-hanging-spider i { height: 170px; }
    .rk-hanging-spider svg { width: 18px; height: 22px; }
    .rk-experience.rk-halloween :is(.outfits-page, .outfit-detail-page, .favorites-shell) { padding: 8px 16px 35px; }
    .rk-experience.rk-halloween .rg-products-page:not(.favorites-page) { padding: 8px 16px 38px; }
    .rk-experience.rk-halloween .rk-page-hero { min-height: 207px; margin-bottom: 20px; padding: 25px 20px; border-radius: 21px; }
    .rk-experience .rk-page-hero-copy { width: 71%; }
    .rk-experience.rk-halloween .rk-page-hero h1 { font-size: clamp(27px, 8.2vw, 43px); line-height: 1.02; }
    .rk-experience.rk-halloween .rk-page-hero :is(.outfits-kicker, .favorites-kicker, .rk-detail-kicker) { max-width: 230px; margin-bottom: 12px; font-size: 6px; letter-spacing: .09em; }
    .rk-experience.rk-halloween .rk-page-hero-copy > p:not(:first-child) { max-width: 205px; margin-top: 13px; font-size: 10px; line-height: 1.7; }
    .rk-experience .rk-page-art { top: 2%; right: -14%; width: 59%; height: 100%; opacity: .65; -webkit-mask-image: linear-gradient(90deg, transparent, #000 28%); mask-image: linear-gradient(90deg, transparent, #000 28%); }
    .rk-experience.rk-halloween .rk-page-hero-copy > p:not(:first-child) { text-shadow: 0 1px 5px #191222, 0 0 12px #191222; }
    .rk-community-inline { gap: 7px 12px; margin-top: 12px; }
    .rk-community-inline a { font-size: 7px; min-height: 22px; }
    .rk-experience .rk-text-action { min-height: 38px; margin-top: 7px; font-size: 9px; }
    .rk-experience.rk-halloween .gender-filter { margin: 14px 0; }
    .rk-experience.rk-halloween .gender-btn { min-height: 40px; padding: 11px 20px; font-size: 9px; }
    .rk-experience.rk-halloween .category-options { gap: 6px; }
    .rk-experience.rk-halloween .category-btn { min-height: 32px; padding: 8px 10px; font-size: 8px; }
    .rk-experience.rk-halloween .search-line { gap: 9px; min-height: 56px; margin-bottom: 20px; padding: 5px 6px 5px 12px; grid-template-columns: 18px minmax(0, 1fr) auto; border-radius: 14px; }
    .rk-experience.rk-halloween .search-line input[type="search"] { font-size: 16px; }
    .rk-experience.rk-halloween .search-line input::placeholder { font-size: 11px; }
    .rk-experience.rk-halloween .rk-catalog-search-submit { min-height: 44px; padding-inline: 14px; font-size: 9px; }
    .rk-catalog-search-submit > span { display: none; }
    .rk-experience.rk-halloween :is(.product-grid, .outfit-products-grid, .similar-products-grid, .favorites-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .rk-experience.rk-halloween :is(.product-card, .rk-featured-card) { border-radius: 17px; }
    .rk-experience.rk-halloween .product-card .product-image { width: calc(100% - 12px); margin: 6px; border-radius: 12px; }
    .rk-experience.rk-halloween .product-card .product-image img { padding: 6px; }
    .rk-experience.rk-halloween .product-card .product-info { padding: 9px 10px 5px; }
    .rk-experience.rk-halloween .product-card .product-info h3 { min-height: 32px; margin-bottom: 5px; font-size: 10px; line-height: 1.6; }
    .rk-experience.rk-halloween .product-card .product-price { font-size: 15px; }
    .rk-experience.rk-halloween .product-card .card-actions { padding: 5px 9px 10px; }
    .rk-experience.rk-halloween .product-card .card-actions .card-btn { min-height: 38px; padding: 10px 5px; border-radius: 10px; font-size: 9px; }
    .rk-experience.rk-halloween .product-card .card-actions .favorite-toggle { top: 13px; right: 13px; width: 30px; height: 30px; min-height: 30px; padding: 0; border-radius: 9px; }
    .rk-experience.rk-halloween .product-card .favorite-toggle-icon { font-size: 21px; }
    .rk-experience.rk-halloween .hot-badge { top: 10px; left: 10px; padding: 4px 6px; font-size: 6px; }
    .rk-experience.rk-halloween .outfit-grid { gap: 12px; }
    .rk-experience.rk-halloween .outfit-card { padding: 6px; border-radius: 18px; }
    .rk-experience.rk-halloween .outfit-image { border-radius: 12px; }
    .rk-experience.rk-halloween .outfit-info { padding: 12px 7px 8px; }
    .rk-experience.rk-halloween .outfit-info h3 { min-height: 47px; font-size: 10px; line-height: 1.55; -webkit-line-clamp: 3; }
    .rk-experience.rk-halloween .outfit-info p { font-size: 10px; }
    .rk-experience.rk-halloween .outfit-card .card-actions { padding: 3px 4px 7px; }
    .rk-experience.rk-halloween .outfit-card .outfit-view-btn { min-height: 40px; padding: 11px 9px; font-size: 8px; border-radius: 10px; }
    .rk-experience.rk-halloween .pieces-count { padding: 6px 8px; font-size: 8px; }
    .rk-experience.rk-halloween .outfit-detail-layout { gap: 17px; margin-top: 16px; }
    .rk-experience.rk-halloween :is(.outfit-gallery, .gallery) { padding: 7px; border-radius: 21px; }
    .rk-experience.rk-halloween :is(.outfit-gallery, .gallery) .gallery-track img { height: clamp(330px, 112vw, 475px); border-radius: 15px; }
    .rk-experience .rk-gallery-count { top: 18px; right: 18px; padding: 6px 9px; font-size: 8px; }
    .rk-experience.rk-halloween :is(.outfit-details, .details) { padding: 24px 20px; border-radius: 21px; }
    .rk-experience.rk-halloween :is(.outfit-details, .details) h1 { font-size: 28px; }
    .rk-experience.rk-halloween :is(.outfit-details, .details) > p { font-size: 12px; }
    .rk-experience.rk-halloween :is(.outfit-kicker, .rk-detail-kicker) { font-size: 7px; }
    .rk-experience .rk-look-actions { margin: 23px 0; }
    .rk-experience .rk-collection-heading { gap: 15px; margin-top: 36px; }
    .rk-experience .rk-collection-heading > span { max-width: 80px; font-size: 9px; text-align: right; line-height: 1.6; }
    .rk-experience.rk-halloween .product-page { gap: 17px; padding: 10px 16px 30px; }
    .rk-experience.rk-halloween .product-price.detail { font-size: 35px; }
    .rk-experience.rk-halloween .buy-buttons { position: static; padding: 0; }
    .rk-experience.rk-halloween .similar-products-section { padding-inline: 16px; }
    .rk-experience.rk-halloween .similar-products-header h2 { font-size: 29px; }
    .rk-experience.rk-halloween .favorites-toolbar { margin-bottom: 20px; padding: 13px 14px; border-radius: 13px; }
    .rk-experience.rk-halloween :is(.favorites-empty, .favorites-capture) { padding: 25px 20px; border-radius: 21px; }
    .rk-experience.rk-halloween .favorites-empty { margin-top: 25px; }
    .rk-experience.rk-halloween .favorites-field input { font-size: 16px; }
    .rk-experience.rk-halloween .favorites-clear-btn { font-size: 8px; }
    .rk-experience.rk-halloween .scroll-top-btn { bottom: calc(var(--dock-clearance) + 14px); min-height: 38px; border-radius: 12px; background: #36233f; color: #e8c99d; border-color: #b58c6b55; box-shadow: 0 7px 24px #0005; }
}
@media (max-width: 360px) {
    .rk-experience.rk-halloween :is(.outfits-page, .outfit-detail-page, .favorites-shell, .rg-products-page:not(.favorites-page)) { padding-inline: 12px; }
    .rk-experience.rk-halloween .rk-page-hero { padding-inline: 17px; }
    .rk-experience.rk-halloween .rk-page-hero h1 { font-size: 8.1vw; }
    .rk-experience .rk-page-hero-copy { width: 74%; }
    .rk-experience.rk-halloween .rk-page-hero-copy > p:not(:first-child) { font-size: 9px; }
    .rk-experience.rk-halloween .product-card .product-info h3 { font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
    html:has(.rk-experience) { scroll-behavior: auto; }
    .rk-experience *, .rk-experience *::before, .rk-experience *::after { animation: none !important; transition: none !important; }
    .rk-experience [data-rk-reveal] { opacity: 1; translate: 0 0; }
    .rk-experience :is(.haunt-leaf, .rk-ember, .haunt-bat-five, .haunt-bat-six) { display: none; }
}
@media print {
    .haunt-atmosphere, .rk-motion-tools, .rk-reading-progress, .rk-flying-heart { display: none !important; }
    .rk-experience [data-rk-reveal] { opacity: 1; translate: 0 0; }
}
