:root { --rb-brand-red:#e50914; --rb-header-offset:33px; }
/* The old page stays still while the new theme expands upward over it. */
html.rb-theme-revealing::view-transition-group(root) { animation:none; }
html.rb-theme-revealing::view-transition-old(root),
html.rb-theme-revealing::view-transition-new(root) { animation:none; mix-blend-mode:normal; }
html.rb-theme-revealing::view-transition-old(root) { z-index:1; }
html.rb-theme-revealing::view-transition-new(root) { z-index:2; }
html.rb-theme-revealing::view-transition-image-pair(root) { isolation:isolate; }
html.rb-theme-revealing *,html.rb-theme-revealing *::before,html.rb-theme-revealing *::after { transition:none !important; }
/* Theme switch: preserve the existing preference and click behavior. */
#themeToggle.rb-theme-switch {
    display:inline-flex; align-items:center; justify-content:flex-start; gap:11px;
    min-height:52px; min-width:132px; padding:7px 15px 7px 8px !important;
    border:1px solid #ffffff26 !important; border-radius:18px;
    background:rgba(22,22,27,.94) !important; color:#f5f5f7 !important;
    box-shadow:0 8px 28px #0003,inset 0 1px #ffffff0a;
    backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
    cursor:pointer; -webkit-tap-highlight-color:transparent; touch-action:manipulation;
    transition:background .25s,border-color .25s,box-shadow .25s;
}
#themeToggle.rb-theme-switch .theme-toggle-pill { display:none; }
#themeToggle.rb-theme-switch #themeLabel { display:block; font:700 11px/1.4 Inter,sans-serif; text-transform:none; letter-spacing:.015em; }
#themeToggle.rb-theme-switch .rb-theme-track { position:relative; display:flex; align-items:center; justify-content:space-around; flex-shrink:0; width:60px; height:34px; border-radius:12px; background:#050508; border:1px solid #ffffff12; }
#themeToggle.rb-theme-switch .rb-theme-thumb { position:absolute; top:3px; left:3px; width:26px; height:26px; border-radius:9px; background:#e50914; box-shadow:0 2px 6px #0004; transition:transform .35s cubic-bezier(.22,1,.36,1),background .3s; }
#themeToggle.rb-theme-switch svg { position:relative; width:17px; height:17px; z-index:1; transition:color .3s,transform .35s; }
#themeToggle.rb-theme-switch .rb-theme-moon { color:#fff; }
#themeToggle.rb-theme-switch .rb-theme-sun { color:#82828e; }
#themeToggle.rb-theme-switch:focus-visible { outline:2px solid #ff4651; outline-offset:4px; }
#themeToggle.rb-theme-switch:hover { border-color:#ff465180 !important; box-shadow:0 10px 30px #0004; }
body.theme-light #themeToggle.rb-theme-switch { background:rgba(255,255,255,.96) !important; color:#242429 !important; border-color:#0002 !important; box-shadow:0 8px 28px #00000012; }
body.theme-light #themeToggle.rb-theme-switch .rb-theme-track { background:#eae9e6; border-color:#00000008; }
body.theme-light #themeToggle.rb-theme-switch .rb-theme-thumb { transform:translateX(26px); background:#fff; box-shadow:0 2px 5px #0002; }
body.theme-light #themeToggle.rb-theme-switch .rb-theme-moon { color:#797982; transform:rotate(-15deg); }
body.theme-light #themeToggle.rb-theme-switch .rb-theme-sun { color:#ae3905; transform:rotate(90deg); }
@media(max-width:768px) {
    #themeToggle.rb-theme-switch { right:max(12px,env(safe-area-inset-right)); bottom:calc(24px + env(safe-area-inset-bottom)); top:auto; transform:none; min-width:0; min-height:48px; border-radius:16px; padding:7px !important; }
    #themeToggle.rb-theme-switch #themeLabel { display:none; }
}
@media(prefers-reduced-motion:reduce) { #themeToggle.rb-theme-switch,#themeToggle.rb-theme-switch * { transition:none !important; } }
body.rb-products-index { --rb-header-offset:0px; padding-top:84px; }
.rb-unified-header#main-header {
    position:fixed; inset:var(--rb-header-offset) 0 auto; width:100%; z-index:80;
    background:#090909 !important; border-bottom:1px solid #ffffff20;
    backdrop-filter:none; transform:none; animation:none; color:#fff !important;
}
.rb-unified-header .rb-store-header-inner { display:flex; align-items:center; justify-content:space-between; height:84px; max-width:1540px; margin:auto; padding:0 28px; }
.rb-unified-header .rb-store-header-inner > nav { display:flex; gap:22px; }
#main-header.rb-unified-header a { color:#fff !important; text-decoration:none; }
.rb-unified-header .rb-store-header-inner > nav a { font:800 10px/1.4 Inter, sans-serif; letter-spacing:.13em; text-transform:uppercase; padding:14px 0; }
#main-header.rb-unified-header a[aria-current=page] { color:#ff3943 !important; box-shadow:0 2px #e50914; }
.rb-unified-header .rb-store-header-inner > a { position:absolute; left:50%; transform:translateX(-50%); text-align:center; }
.rb-unified-header .rb-store-logo-main { display:block; font-family:Oswald,Impact,'Arial Narrow',sans-serif; font-size:38px; font-weight:900; letter-spacing:-.07em; line-height:1; transform:skew(-8deg); white-space:nowrap; }
.rb-unified-header .rb-store-logo-main > span:first-child { color:#e50914 !important; }
.rb-unified-header .rb-store-logo-main > span:last-child { color:#fff !important; }
.rb-unified-header .rb-store-header-inner > a > span:last-child { display:block; margin-top:5px; color:#ffffff80; font-size:8px; letter-spacing:.4em; }
.rb-unified-header .rb-store-header-inner > div { display:flex; align-items:center; gap:12px; z-index:1; }
.rb-unified-header .rb-mobile-action { display:inline-grid; place-items:center; min-height:44px; min-width:40px; }
.rb-unified-header svg { width:22px; height:22px; }
.rb-unified-header #rbSharedMenuButton { display:none; }
.rb-unified-header #cartIconTarget { position:relative; }
.rb-unified-header #cartCount { position:absolute; top:0; right:0; display:grid; place-items:center; width:16px; height:16px; border-radius:50%; background:#e50914; font-size:9px; }
.rb-unified-header .language-toggle-btn { font-size:10px; font-weight:800; }
#rbSharedMenu { display:none; }
.rb-unified-header :focus-visible { outline:2px solid #ff3943; outline-offset:5px; }
body.rb-menu-open { overflow:hidden; }
.rb-catalog { background:#0c0c0e; }
.rb-catalog .theme-hero.rb-collection-hero { padding:160px max(24px,calc((100vw - 1440px)/2)) 58px; position:relative; overflow:hidden; background:radial-gradient(ellipse at 100% 0,#e5091419,transparent 65%),#111113 !important; border-bottom:1px solid #ffffff15; }
.rb-collection-hero::after { content:'RB /'; position:absolute; right:2%; bottom:-55px; font:900 260px/1 Impact,sans-serif; color:#ffffff03; pointer-events:none; }
.rb-collection-eyebrow { display:flex; align-items:center; gap:14px; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.22em; color:#ff3943; }
.rb-collection-eyebrow::before { content:''; width:32px; height:2px; background:#e50914; }
.rb-collection-hero h1 { font-family:Anton,Impact,sans-serif; font-size:clamp(64px,9vw,132px); text-transform:uppercase; line-height:.97; letter-spacing:-.04em; margin:24px 0; }
.rb-collection-hero p:last-of-type { color:#aaaab1; max-width:480px; line-height:1.7; font-size:14px; }
.rb-collection-links { display:flex; flex-wrap:wrap; gap:9px; margin-top:32px; position:relative; z-index:1; }
.rb-collection-links a { padding:11px 19px; border:1px solid #ffffff25; border-radius:100px; font-size:11px; font-weight:700; color:inherit; }
.rb-collection-links a[aria-current=page] { background:#f2f2f2; border-color:#f2f2f2; color:#111; }
.rb-catalog > main { max-width:1488px; padding:30px 24px 80px; margin:auto; }
.rb-catalog-grid { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:32px 20px !important; }
.rb-catalog-grid > a { min-width:0; }
.rb-catalog-grid article { border-radius:12px !important; border:1px solid #ffffff0e !important; background:#151517 !important; box-shadow:none; transition:border-color .25s,transform .25s; }
.rb-catalog-grid article:hover { border-color:#ffffff35 !important; transform:translateY(-3px); }
.rb-catalog-grid .catalog-image-frame { background:#1c1c1f; aspect-ratio:4/5; }
.rb-catalog-grid h2 { font-size:14px; line-height:1.45; }
.rb-catalog-toolbar { display:flex; align-items:end; flex-wrap:wrap; gap:16px; margin-bottom:28px; padding-bottom:24px; border-bottom:1px solid #ffffff15; }
.rb-catalog-toolbar label { display:grid; gap:8px; color:#a9a9b2; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.rb-catalog-toolbar label:first-child { flex:1; min-width:160px; }
.rb-catalog-toolbar input,.rb-catalog-toolbar select { min-height:46px; background:#17171a; border:1px solid #ffffff22; border-radius:8px; padding:10px 14px; font-size:13px; color:#fff; outline-offset:3px; width:100%; }
.rb-catalog-toolbar output { font-size:12px; color:#aaa; padding-bottom:14px; }
.rb-catalog-empty { padding:50px 20px; text-align:center; border:1px dashed #ffffff30; border-radius:12px; color:#aaa; }
.rb-catalog-grid [hidden],.rb-catalog-empty[hidden] { display:none !important; }
body.theme-light.rb-catalog { background:#f4f3ef; }
body.theme-light.rb-catalog .theme-hero.rb-collection-hero { background:#e9e7e2 !important; border-color:#0002; }
body.theme-light .rb-collection-hero p:last-of-type { color:#57575b; }
body.theme-light .rb-collection-links a { border-color:#0003; }
body.theme-light .rb-collection-links a[aria-current=page] { background:#151515; color:#fff; }
body.theme-light .rb-catalog-grid article { background:#fff !important; border-color:#0001 !important; color:#151515 !important; }
body.theme-light .rb-catalog-toolbar input,body.theme-light .rb-catalog-toolbar select { background:#fff; color:#151515; border-color:#0003; }
@media(max-width:1199px) { .rb-unified-header .rb-store-header-inner > nav { gap:12px; } .rb-unified-header .rb-store-logo-main { font-size:32px; } }
@media(max-width:1023px) {
    body.rb-products-index { padding-top:70px; }
    .rb-unified-header .rb-store-header-inner { height:70px; padding:0 14px; }
    .rb-unified-header .rb-store-header-inner > nav { display:none; }
    .rb-unified-header #rbSharedMenuButton { display:inline-grid; }
    .rb-unified-header .rb-store-header-inner > div { gap:0; }
    .rb-unified-header .rb-header-search,.rb-unified-header .language-toggle-btn { display:none !important; }
    .rb-unified-header .rb-store-logo-main { font-size:28px !important; max-width:none !important; }
    .rb-unified-header .rb-store-header-inner > a > span:last-child { display:none; }
    #rbSharedMenu { display:flex; position:fixed; inset:0; width:100%; height:100dvh; background:#090909 !important; z-index:110; padding:0; transform:none; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .25s,visibility .25s; }
    #rbSharedMenu[aria-hidden=false] { opacity:1; visibility:visible; pointer-events:auto; }
    #rbSharedMenu .rb-mobile-menu-head { display:flex; justify-content:space-between; align-items:center; min-height:80px; padding:16px 24px; }
    #rbSharedMenu .rb-mobile-menu-links { display:flex; flex:1; flex-direction:column; justify-content:center; gap:24px; padding:24px; overflow-y:auto; }
    #rbSharedMenu .rb-mobile-menu-links a span { font-family:Anton,Impact,sans-serif; font-size:clamp(30px,8vw,55px); line-height:1.15; color:#fff; }
    .rb-catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media(max-width:640px) {
    .rb-unified-header .rb-store-logo-main { font-size:23px !important; }
    .rb-unified-header .rb-mobile-action { min-width:36px; }
    .rb-catalog .theme-hero.rb-collection-hero { padding:136px 20px 32px; }
    .rb-collection-hero h1 { font-size:64px; }
    .rb-catalog > main { padding:22px 14px 48px; }
    .rb-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:20px 10px !important; }
    .rb-catalog-grid article > div:last-child { padding:12px; }
    .rb-catalog-grid h2 { font-size:12px; }
    .rb-collection-links { flex-wrap:nowrap; overflow-x:auto; margin-right:-20px; padding-right:20px; }
    .rb-collection-links a { white-space:nowrap; }
    .rb-catalog-toolbar { gap:12px; }
    .rb-catalog-toolbar label:nth-child(2) { flex:1; min-width:130px; }
    .rb-catalog-toolbar output { width:100%; padding:0; }
}
@media(prefers-reduced-motion:reduce) { #rbSharedMenu,.rb-catalog-grid article { transition:none; } }

/* Mobile navigation: editorial typography, tactile controls, staggered entrance. */
.rb-menu-icon { display:block; position:relative; width:22px; height:18px; }
.rb-menu-icon i { position:absolute; left:0; top:4px; height:2px; width:22px; border-radius:2px; background:currentColor; transform-origin:center; transition:transform .35s cubic-bezier(.22,1,.36,1),width .35s; }
.rb-menu-icon i:last-child { top:12px; width:15px; }
[aria-expanded=true] .rb-menu-icon i:first-child { transform:translateY(4px) rotate(45deg); }
[aria-expanded=true] .rb-menu-icon i:last-child { width:22px; transform:translateY(-4px) rotate(-45deg); }
@media(max-width:1023px) {
    #main-header #rbSharedMenuButton { width:44px; min-width:44px; height:44px; border:1px solid #ffffff24; border-radius:13px; background:#ffffff05; }
    #main-header #rbSharedMenuButton:active { background:#ffffff12; }
    #rbSharedMenu {
        display:flex; flex-direction:column; box-sizing:border-box; height:100vh; height:100dvh;
        background:radial-gradient(ellipse at 100% 0,rgba(229,9,20,.12),transparent 48%),#0d0d10 !important;
        backdrop-filter:none; overflow:hidden; overscroll-behavior:contain;
        padding:max(12px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));
        transform:translateY(-14px); opacity:0; visibility:hidden; pointer-events:none;
        transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .25s ease,visibility .45s;
    }
    #rbSharedMenu[aria-hidden=false] { transform:translateY(0); opacity:1; visibility:visible; pointer-events:auto; }
    #rbSharedMenu .rb-menu-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0 23px; flex-shrink:0; border-bottom:1px solid #ffffff16; }
    #rbSharedMenu .rb-menu-wordmark { font:900 22px/1 Impact,'Arial Narrow',sans-serif; letter-spacing:-.025em; color:#fff; }
    #rbSharedMenu .rb-menu-wordmark b { color:#ff3441; font-weight:900; }
    #rbSharedMenu #rbMenuTitle { margin:6px 0 0; font:500 11px/1.4 Inter,sans-serif; letter-spacing:.03em; color:#a4a4ae; }
    #rbSharedMenu .rb-menu-close { display:grid; place-items:center; width:46px; height:46px; flex-shrink:0; color:#fff; background:#ffffff07; border:1px solid #ffffff26; border-radius:50%; }
    #rbSharedMenu[aria-hidden=false] .rb-menu-close .rb-menu-icon i:first-child { transform:translateY(4px) rotate(45deg); }
    #rbSharedMenu[aria-hidden=false] .rb-menu-close .rb-menu-icon i:last-child { width:22px; transform:translateY(-4px) rotate(-45deg); }
    #rbSharedMenu .rb-menu-content { display:flex; flex-direction:column; gap:0; overflow-y:auto; overscroll-behavior-y:contain; min-height:0; flex:1; scrollbar-width:thin; padding:22px 3px 3px; }
    #rbSharedMenu .rb-menu-search { display:flex; align-items:center; gap:8px; border:1px solid #ffffff20; border-radius:12px; background:#ffffff05; padding:4px 6px 4px 16px; flex-shrink:0; }
    #rbSharedMenu .rb-menu-search:focus-within { border-color:#ff4550; }
    #rbSharedMenu .rb-menu-search input { background:transparent !important; color:#fff !important; border:0 !important; border-radius:0; padding:10px 0; width:100%; min-width:0; min-height:44px; font:400 16px/1.4 Inter,sans-serif; outline:none; box-shadow:none; }
    #rbSharedMenu .rb-menu-search input::placeholder { color:#9898a3; font-size:13px; }
    #rbSharedMenu .rb-menu-search button { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; color:#fff; border-radius:8px; }
    #rbSharedMenu .rb-menu-eyebrow { margin:28px 0 12px; color:#9999a5; font:700 9px/1.5 Inter,sans-serif; letter-spacing:.19em; }
    #rbSharedMenu .rb-menu-collections { display:flex; flex-direction:column; flex-shrink:0; }
    #rbSharedMenu .rb-menu-collections a { display:grid; grid-template-columns:26px minmax(0,1fr) 30px; align-items:center; gap:8px; width:100%; min-height:76px; padding:14px 0; border-bottom:1px solid #ffffff16; opacity:0; transform:translateY(14px); transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .3s ease,background .2s; }
    #rbSharedMenu[aria-hidden=false] .rb-menu-collections a { opacity:1; transform:translateY(0); transition-delay:calc(70ms + var(--menu-order) * 45ms); }
    #rbSharedMenu .rb-menu-number { font:500 10px/1 Inter,sans-serif; color:#82828e; }
    #rbSharedMenu .rb-menu-label { font:900 clamp(30px,7.8vw,46px)/1.1 Impact,'Arial Narrow',sans-serif; letter-spacing:-.025em; text-transform:uppercase; color:#f3f3f5; }
    #rbSharedMenu .rb-menu-arrow { justify-self:end; font-size:23px; color:#787885; transition:transform .25s,color .25s; }
    #main-header #rbSharedMenu a[aria-current=page] { box-shadow:none; }
    #rbSharedMenu .rb-menu-collections a[aria-current=page] .rb-menu-label,
    #rbSharedMenu .rb-menu-collections a[aria-current=page] .rb-menu-number,
    #rbSharedMenu .rb-menu-collections a[aria-current=page] .rb-menu-arrow { color:#ff4550; }
    #rbSharedMenu .rb-menu-collections a:active .rb-menu-arrow { transform:translate(3px,-3px); color:#fff; }
    #rbSharedMenu .rb-menu-shortcuts { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:26px 0; flex-shrink:0; }
    #rbSharedMenu .rb-menu-shortcuts a { display:flex; justify-content:space-between; align-items:center; gap:8px; min-height:52px; padding:14px; border:1px solid #ffffff20; border-radius:12px; background:#ffffff04; font:600 12px/1.4 Inter,sans-serif; }
    #rbSharedMenu .rb-menu-bottom { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-top:auto; padding-top:10px; flex-shrink:0; }
    #rbSharedMenu .rb-menu-bottom a { padding:12px 0; font:600 12px/1.5 Inter,sans-serif; }
    #rbSharedMenu .rb-menu-bottom > span { font:600 8px/1.5 Inter,sans-serif; letter-spacing:.13em; color:#92929d; }
    #rbSharedMenu :focus-visible { outline:2px solid #ff4550; outline-offset:2px; }
}
@media(max-width:1023px) and (max-height:700px) {
    #rbSharedMenu .rb-menu-top { padding-bottom:12px; }
    #rbSharedMenu .rb-menu-content { padding-top:14px; }
    #rbSharedMenu .rb-menu-eyebrow { margin-top:18px; }
    #rbSharedMenu .rb-menu-collections a { min-height:60px; padding:10px 0; }
    #rbSharedMenu .rb-menu-label { font-size:30px; }
    #rbSharedMenu .rb-menu-shortcuts { margin:18px 0; }
}
@media(prefers-reduced-motion:reduce) {
    #rbSharedMenu,#rbSharedMenu .rb-menu-collections a,#rbSharedMenu .rb-menu-arrow,.rb-menu-icon i { transition:none !important; }
    #rbSharedMenu,#rbSharedMenu .rb-menu-collections a { transform:none !important; }
}
