/* Persistent section index for long product pages. */
.floating-nav.nav-auto-hidden { pointer-events:none!important; }
.section-scroll-track { display:none; }
.section-rail { --rail-bg:rgba(255,255,255,.97); --rail-ink:#202522; --rail-muted:#717873; --rail-line:#dce4de; --rail-active:#edf3ef; position:fixed; z-index:70; left:16px; top:112px; width:218px; max-height:calc(100dvh - 136px); color:var(--rail-ink); background:transparent; border:0; border-radius:0; box-shadow:none; opacity:0; visibility:hidden; transform:translateY(6px); transition:opacity .2s,transform .2s,visibility .2s; overflow:hidden; font-family:inherit; }
.section-rail-toggle { display:flex; align-items:center; gap:12px; width:100%; border:0; border-bottom:0; background:transparent; color:inherit; padding:12px 12px 18px; font:inherit; text-align:left; }
.section-rail-toggle strong { font-size:13px; font-weight:650; }
.section-rail-current,.section-rail-chevron { display:none; }
.section-rail nav { display:flex; flex-direction:column; gap:1px; max-height:calc(100dvh - 191px); overflow:auto; overscroll-behavior:contain; scrollbar-width:none; padding:4px 8px; }
.section-rail nav a { display:flex; gap:9px; align-items:baseline; padding:5px 8px; border-radius:0; text-decoration:none; color:var(--rail-muted); font-size:12px; line-height:1.45; transition:background .15s,color .15s; }
.section-rail nav a span { flex:none; font-size:10px; font-variant-numeric:tabular-nums; opacity:.7; }
.section-rail nav a:hover,.section-rail nav a[aria-current] { color:var(--rail-ink); background:transparent; }
.section-rail nav a[aria-current] { font-weight:650; box-shadow:inset 2px 0 currentColor; }
.section-rail a:focus-visible,.section-rail-toggle:focus-visible { outline:2px solid currentColor; outline-offset:-3px; }
.section-rail-source { display:none!important; }
@media(min-width:1200px) {
 .section-rail-ready .orn-page-main .rail-section { margin-left:0; width:100%; padding-left:250px; box-sizing:border-box; }
 .section-rail-ready main.page .rail-section { padding-left:clamp(0px,calc(250px - (100vw - 1180px)/2),250px); box-sizing:border-box; }
 .section-rail-toggle { cursor:default; }
}
@media(max-width:1199px) {
 .section-rail { top:100px; left:16px; width:min(360px,calc(100% - 32px)); max-height:calc(100dvh - 124px); background:#fff; border:1px solid var(--rail-line); border-radius:14px; box-shadow:0 8px 24px #17241c14; }
 .section-rail-toggle { cursor:pointer; border-bottom:0; padding:12px 14px; }
 .section-rail-current { display:block; flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; color:var(--rail-muted); }
 .section-rail-chevron { display:block; }
 .section-rail nav { display:none; max-height:calc(100dvh - 184px); }
 .section-rail.is-open nav { display:flex; background:inherit; border-top:1px solid var(--rail-line); }
 .section-rail nav a { min-height:44px; align-items:center; padding:10px 12px; }
 .section-rail nav a .section-rail-label { white-space:normal; }
 body:not([data-page-key]) .section-rail { background:#0f1118; }
 .section-rail.is-open .section-rail-chevron { transform:rotate(180deg); }
 .section-rail-ready section[id] { scroll-margin-top:170px; }
}
body:not([data-page-key]) .section-rail { --rail-bg:rgba(15,17,24,.98); --rail-ink:#f5f3f4; --rail-muted:#aaa9b1; --rail-line:#30323d; --rail-active:#242832; }
@media(prefers-reduced-motion:reduce) { .section-rail nav a { transition:none; } }

.section-rail-ready section[id]:focus { outline:none; }

.section-rail.is-visible { opacity:1; visibility:visible; transform:none; }
@media(prefers-reduced-motion:reduce) { .section-rail { transition:none; } }

.section-rail nav::-webkit-scrollbar { display:none; }
.section-rail nav a { min-height:27px; box-sizing:border-box; }
.section-rail nav a .section-rail-label { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; opacity:1; }
@media(max-width:1199px) {
 .section-rail nav a { min-height:44px; }
 .section-rail nav a .section-rail-label { white-space:normal; }
 .section-rail { top:100px; background:rgba(250,253,255,.96); backdrop-filter:blur(18px) saturate(1.2); -webkit-backdrop-filter:blur(18px) saturate(1.2); border:1px solid rgba(255,255,255,.9); border-radius:24px; box-shadow:0 6px 20px #18232d14,inset 0 0 0 1px #18232d0c; transition:top .38s cubic-bezier(.2,.75,.2,1),opacity .22s,transform .32s,visibility .22s; }
 .section-rail.header-away { top:14px; }
 .section-rail nav { display:flex; max-height:0; padding:0 8px; opacity:0; visibility:hidden; transform:translateY(-6px); transition:max-height .38s cubic-bezier(.2,.75,.2,1),opacity .22s,transform .3s,visibility .22s,padding .3s; }
 .section-rail.is-open nav { max-height:calc(100dvh - 190px); padding:8px; opacity:1; visibility:visible; transform:none; background:transparent; }
 .section-rail.header-away.is-open nav { max-height:calc(100dvh - 104px); }
 .section-rail.header-away { max-height:calc(100dvh - 40px); }
 body:not([data-page-key]) .section-rail { background:rgba(15,17,24,.97); border-color:#30323d; }
}
@media(max-width:1199px) {
 .section-rail { left:50%; transform:translate(-50%,6px); }
 .section-rail.is-visible { transform:translate(-50%,0); }
 .section-rail nav { touch-action:pan-y; overscroll-behavior:contain; }
 .section-rail.is-open nav { padding-left:16px; }
 .section-scroll-track:not([hidden]) { display:block; position:absolute; left:8px; width:2px; background:var(--rail-line); border-radius:9px; pointer-events:none; }
 .section-scroll-track i { display:block; width:2px; border-radius:9px; background:var(--rail-muted); opacity:.65; }
}
