/* Regal Charms - Shop page */
.rcs,.rcs *{box-sizing:border-box}
.rcs{--b:#8B1E3F;--bd:#6F1632;--ink:#2D2529;--mut:#6B6468;--line:#EDE3DD;--bg:#FDFBF7;font-family:'Outfit','Plus Jakarta Sans',system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.5}
body.rcs-shop{background:#FDFBF7}
body.rcs-shop .page-header{display:none!important}
.rcs a{color:inherit;text-decoration:none}
.rcs .rcs-wrap{max-width:1280px;margin:0 auto;padding:36px 32px 88px}
.rcs .rcs-crumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mut);margin:0 0 34px}
.rcs .rcs-crumb a{display:inline-flex;color:var(--mut)}
.rcs .rcs-crumb a:hover{color:var(--b)}
.rcs .rcs-crumb span{color:var(--b);font-weight:500}
.rcs .rcs-hero{max-width:720px;margin:0 0 44px}
.rcs .rcs-eyebrow{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--b)}
.rcs .rcs-eyebrow:before,.rcs .rcs-eyebrow:after{content:'';width:38px;height:1px;background:var(--b);opacity:.7}
.rcs h1.rcs-title{margin:0 0 14px;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:48px;line-height:1.1;letter-spacing:-.01em;color:#1d1417}
.rcs .rcs-lead{margin:0;font-size:17px;line-height:1.65;color:#4A4247}
.rcs .rcs-layout{display:grid;grid-template-columns:288px minmax(0,1fr);gap:32px;align-items:start}
.rcs .rcs-side-in{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 8px 30px rgba(45,37,41,.05)}
.rcs .rcs-side-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.rcs h2.rcs-side-title{display:flex;align-items:center;gap:10px;margin:0;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:19px;letter-spacing:0;color:#1d1417}
.rcs h2.rcs-side-title svg{color:var(--b)}
.rcs button.rcs-close{display:none;width:38px;height:38px;padding:0;margin:0;border:0;border-radius:50%;background:transparent;color:#4B5563;cursor:pointer;align-items:center;justify-content:center;box-shadow:none}
.rcs button.rcs-close:hover{background:#FBECEF;color:var(--b)}
.rcs label.rcs-kw{display:flex;align-items:center;gap:10px;height:44px;padding:0 14px;margin:0 0 14px;border:1px solid var(--line);border-radius:999px;background:#FBF7F4;color:#9A8B90}
.rcs label.rcs-kw:focus-within{border-color:var(--b);background:#fff}
.rcs label.rcs-kw input{flex:1;min-width:0;width:100%;height:100%;padding:0;margin:0;border:0;border-radius:0;background:transparent;font:400 14px 'Outfit',system-ui,sans-serif;color:var(--ink);box-shadow:none;outline:0}
.rcs label.rcs-kw input::placeholder{color:#9A8B90;opacity:1}
.rcs .rcs-tg{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;margin:0;font-size:14px;color:var(--ink);cursor:pointer}
.rcs .rcs-tg span{display:inline-flex;align-items:center;gap:8px}
.rcs .rcs-tg .i-fire{color:#F59E0B}
.rcs .rcs-tg .i-spark{color:#E0457B}
.rcs .rcs-tg input,.rcs .rcs-rad input{width:18px;height:18px;margin:0;accent-color:#8B1E3F;cursor:pointer;flex:0 0 auto}
.rcs .rcs-group{margin-top:16px;padding-top:18px;border-top:1px solid #F3E8EC}
.rcs h3.rcs-gt{margin:0 0 10px;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#2D2529}
.rcs label.rcs-row{display:block;margin:0 0 2px;cursor:pointer}
.rcs label.rcs-row input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.rcs .rcs-row-in{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;border-radius:12px;font-size:14px;color:#4A4247;transition:background .15s,color .15s}
.rcs .rcs-row-in em{font-style:normal;font-size:12px;color:#9A8B90}
.rcs label.rcs-row:hover .rcs-row-in{background:#FBF7F4}
.rcs label.rcs-row input:checked + .rcs-row-in{background:#FBECEF;color:var(--b);font-weight:500}
.rcs label.rcs-row input:focus-visible + .rcs-row-in{outline:2px solid var(--b)}
.rcs label.rcs-rad{display:flex;align-items:center;gap:10px;padding:6px 0;margin:0;font-size:14px;color:#4A4247;cursor:pointer}
.rcs a.rcs-clear{display:inline-block;margin-top:18px;font-size:13px;font-weight:600;color:var(--b);text-decoration:underline;text-underline-offset:3px}
.rcs a.rcs-clear.is-hidden{display:none}
.rcs button.rcs-apply,.rcs button.rcs-show{display:none;width:100%;height:50px;margin:18px 0 0;border:0;border-radius:999px;background:var(--b);color:#fff;font:600 16px 'Outfit',system-ui,sans-serif;cursor:pointer;box-shadow:0 10px 24px rgba(139,30,63,.25)}
.rcs button.rcs-apply:hover,.rcs button.rcs-show:hover{background:var(--bd);color:#fff}
.rcs .rcs-overlay{position:fixed;inset:0;background:rgba(17,24,39,.45);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:99999}
.rcs-results{min-width:0;transition:opacity .2s}
.rcs-results.is-loading{opacity:.5;pointer-events:none}
.rcs .rcs-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:22px;padding:16px 22px;margin:0 0 20px;box-shadow:0 6px 24px rgba(45,37,41,.04)}
.rcs .rcs-count{margin:0;font-size:15px;color:#4A4247}
.rcs .rcs-count b{color:#1d1417;font-weight:700}
.rcs button.rcs-open{display:none;align-items:center;gap:8px;height:38px;padding:0 14px;margin:0;border:0;border-radius:12px;background:#FBECEF;color:var(--b);font:500 14px 'Outfit',system-ui,sans-serif;cursor:pointer;box-shadow:none}
.rcs button.rcs-open:hover{background:#F6DCE3;color:var(--b)}
.rcs label.rcs-sort{display:inline-flex;align-items:center;gap:8px;margin:0;color:#9A8B90;font-size:14px}
.rcs label.rcs-sort select{height:38px;min-width:170px;padding:0 34px 0 12px;margin:0;border:1px solid var(--line);border-radius:12px;background-color:#FBF7F4;font:400 14px 'Outfit',system-ui,sans-serif;color:var(--ink);cursor:pointer;box-shadow:none}
.rcs label.rcs-sort select:focus{outline:0;border-color:var(--b)}
.rcs .rcs-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.rcs .rcs-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;padding:16px;transition:border-color .2s,box-shadow .2s,transform .2s}
.rcs .rcs-card:hover{border-color:#E7B9C6;box-shadow:0 14px 34px rgba(139,30,63,.12);transform:translateY(-2px)}
.rcs .rcs-imgwrap{position:relative;border-radius:16px;overflow:hidden;background:#FBEFE6;aspect-ratio:1/1}
.rcs a.rcs-img{display:block;width:100%;height:100%}
.rcs a.rcs-img img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border:0;border-radius:0;transition:transform .5s ease}
.rcs .rcs-card:hover a.rcs-img img{transform:scale(1.05)}
.rcs .rcs-badges{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:none}
.rcs .rcs-badge{padding:4px 10px;border-radius:999px;background:var(--b);color:#fff;font-size:11px;font-weight:700;letter-spacing:.03em;line-height:1.3}
.rcs .rcs-badge.is-new{background:#C9A24B}
.rcs button.rcs-heart{position:absolute;top:10px;right:10px;width:32px;height:32px;padding:0;margin:0;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#6B6468;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:color .15s,transform .15s}
.rcs button.rcs-heart:hover{color:var(--b);background:#fff;transform:scale(1.08)}
.rcs button.rcs-heart.is-on{color:var(--b)}
.rcs button.rcs-heart.is-on svg{fill:currentColor}
.rcs h3.rcs-name{margin:14px 0 6px;font-family:'Playfair Display',Georgia,serif;font-weight:600;font-size:17px;line-height:1.3;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1d1417}
.rcs .rcs-card:hover h3.rcs-name{color:var(--b)}
.rcs .rcs-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;min-height:30px}
.rcs .rcs-now{font-size:20px;font-weight:700;color:#1d1417}
.rcs .rcs-price del{font-size:14px;color:#9A8B90;text-decoration:line-through}
.rcs a.rcs-atc,.rcs span.rcs-oos{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;margin-top:14px;padding:0 10px;border-radius:999px;font:500 15px 'Outfit',system-ui,sans-serif;line-height:1;text-align:center}
.rcs a.rcs-atc{background:var(--b);color:#fff;transition:background .2s}
.rcs a.rcs-atc:hover,.rcs a.rcs-atc:focus{background:var(--bd);color:#fff}
.rcs a.rcs-atc.loading{opacity:.7;pointer-events:none}
.rcs a.rcs-atc.loading:after,.rcs a.rcs-atc.added:after{content:none!important;display:none!important}
.rcs a.added_to_cart{display:none!important}
.rcs span.rcs-oos{background:#EFE9E5;color:#9A8B90}
.rcs .rcs-empty{text-align:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:64px 24px}
.rcs .rcs-empty h2{margin:0 0 8px;font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:26px;letter-spacing:0;color:#1d1417}
.rcs .rcs-empty p{margin:0 0 22px;color:var(--mut)}
.rcs a.rcs-btn{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 30px;border-radius:999px;background:var(--b);color:#fff;font:600 15px 'Outfit',system-ui,sans-serif}
.rcs a.rcs-btn:hover{background:var(--bd);color:#fff}
.rcs .rcs-pg{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}
.rcs .rcs-pg a,.rcs .rcs-pg span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 6px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:15px;font-weight:500;color:var(--ink)}
.rcs .rcs-pg a:hover{border-color:var(--b);color:var(--b)}
.rcs .rcs-pg .is-cur{background:var(--b);border-color:var(--b);color:#fff;font-weight:600}
.rcs .rcs-pg .is-off{opacity:.4;background:#FBF7F4}
.rcs .rcs-pg .is-gap{border:0;background:transparent;min-width:24px}
@media (max-width:1199px){
.rcs .rcs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1023px){
.rcs .rcs-layout{grid-template-columns:minmax(0,1fr)}
.rcs .rcs-side{position:fixed;top:0;left:0;bottom:0;width:340px;max-width:88vw;overflow-y:auto;background:var(--bg);z-index:100000;transform:translateX(-102%);visibility:hidden;transition:transform .35s cubic-bezier(.22,.8,.3,1),visibility .35s}
.rcs.is-drawer .rcs-side{transform:none;visibility:visible}
.rcs.is-drawer .rcs-overlay{opacity:1;visibility:visible}
.rcs .rcs-side-in{min-height:100%;border:0;border-radius:0;box-shadow:none}
.rcs button.rcs-close,.rcs button.rcs-show{display:inline-flex}
.rcs button.rcs-open{display:inline-flex}
}
@media (max-width:767px){
.rcs .rcs-wrap{padding:22px 16px 56px}
.rcs .rcs-crumb{margin-bottom:22px}
.rcs .rcs-hero{margin-bottom:26px}
.rcs .rcs-eyebrow{font-size:10px;letter-spacing:.2em;gap:10px}
.rcs .rcs-eyebrow:before,.rcs .rcs-eyebrow:after{width:22px}
.rcs h1.rcs-title{font-size:26px;margin-bottom:8px}
.rcs .rcs-lead{font-size:13px;line-height:1.6}
.rcs .rcs-bar{padding:12px 14px;gap:10px;border-radius:18px;margin-bottom:14px}
.rcs .rcs-count{font-size:12px}
.rcs label.rcs-sort{width:100%}
.rcs label.rcs-sort select{flex:1;min-width:0}
.rcs .rcs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rcs .rcs-card{padding:10px;border-radius:18px}
.rcs .rcs-imgwrap{border-radius:12px}
.rcs .rcs-badge{font-size:9px;padding:3px 8px}
.rcs .rcs-badges{top:7px;left:7px;gap:4px}
.rcs button.rcs-heart{width:26px;height:26px;top:7px;right:7px}
.rcs button.rcs-heart svg{width:13px;height:13px}
.rcs h3.rcs-name{font-size:13px;margin:10px 0 4px}
.rcs .rcs-now{font-size:15px}
.rcs .rcs-price del{font-size:11px}
.rcs .rcs-price{min-height:22px}
.rcs a.rcs-atc,.rcs span.rcs-oos{height:34px;font-size:12px;margin-top:10px;gap:6px}
.rcs a.rcs-atc svg{width:14px;height:14px}
.rcs .rcs-pg a,.rcs .rcs-pg span{min-width:38px;height:38px;font-size:13px}
.rcs .rcs-empty{padding:44px 16px}
}
