/* C2 design – 16-partner-rail. Extracted verbatim from claude-design/c2-website/pages/*.html (lines 658-698). Load order matters: keep the numeric prefix order. */
.rail{position:fixed;z-index:90;left:16px;bottom:24px;top:auto;width:auto;height:auto;opacity:1;animation:rail-in .9s cubic-bezier(.22,1,.36,1) .7s backwards}
@keyframes rail-in{from{opacity:0;transform:translate(-40px,0)}to{opacity:1;transform:none}}
.rail-bg{position:absolute;left:0;top:0;width:100%;height:100%;display:block;overflow:visible}
.rail-bg path{fill:rgba(255,255,255,0.78);stroke:#D5DBE1;stroke-width:1;transition:fill .3s ease}
.rail:hover .rail-bg path{fill:rgba(255,255,255,0.95)}
.rail-a{position:absolute;left:2px;right:2px;display:flex;flex-direction:column;align-items:center;text-decoration:none;color:#15171A}
.rail-a.a1{top:0;height:150px}
.rail-a.a2{position:static;flex-direction:row;align-items:center;gap:10px;padding:8px 22px 8px 8px;background:rgba(21,23,26,0.62);border:1px solid rgba(255,255,255,0.1);border-radius:999px;box-shadow:0 6px 24px rgba(0,0,0,0.18);-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,background .35s ease,border-color .35s ease,gap .45s cubic-bezier(.22,1,.36,1),padding .45s cubic-bezier(.22,1,.36,1)}
.rail-a.a2 .rail-cap{max-width:200px;overflow:hidden;transition:max-width .45s cubic-bezier(.22,1,.36,1),opacity .3s ease,color .25s ease}
.rail.hide .rail-a.a2{gap:0;padding:8px}
.rail.hide .rail-a.a2 .rail-cap{max-width:0;opacity:0}
.rail-a.a2:hover{transform:translateY(-2px);background:rgba(21,23,26,0.74);box-shadow:0 10px 28px rgba(0,0,0,0.24)}
.rail-a.a2 .rail-ico{width:36px;height:36px;padding:9px;box-sizing:border-box;background:#009FE3;color:#fff;border-radius:50%;flex:none}
.rail-a.a2:hover .rail-ico,.rail-a.a2:focus-visible .rail-ico{transform:scale(1.1);color:#fff}
.rail-a.a2 .rail-cap{margin:0;font-size:13px;font-weight:700;letter-spacing:0;text-transform:none;white-space:nowrap;color:#E8EAED}
.rail-a.a2:hover .rail-cap{color:#FFFFFF}
.rail.solid .rail-a.a2{background:rgba(21,23,26,0.62);border-color:rgba(255,255,255,0.1)}
.rail.solid .rail-a.a2:hover{background:rgba(21,23,26,0.74)}
.soc.solid .soc-ico{background:rgba(21,23,26,0.62);border-color:rgba(255,255,255,0.1)}
.soc.vert.solid .soc-ico{background:transparent;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.soc.solid:hover .soc-ico,.soc.solid:focus-visible .soc-ico{background:rgba(255,255,255,0);border-color:rgba(255,255,255,0)}
.soc.solid:not(.vert) .soc-ico{background:#009FE3;border-color:transparent;color:#FFFFFF}
.soc.vert.solid:not(:hover):not(:focus-visible){background:#009FE3;border-color:transparent}
.soc.vert.solid:not(:hover):not(:focus-visible) .soc-label{color:#FFFFFF}
.soc.vert.solid:hover .soc-label,.soc.vert.solid:focus-visible .soc-label{color:#007DB3}
.pg-contact .soc:not(.vert) .soc-ico{background:#009FE3;border-color:transparent;color:#FFFFFF}
.pg-contact .soc.vert:not(:hover):not(:focus-visible){background:#009FE3;border-color:transparent}
.pg-contact .soc.vert:not(:hover):not(:focus-visible) .soc-label{color:#FFFFFF}
.pg-contact .soc.vert:hover .soc-label,.pg-contact .soc.vert:focus-visible .soc-label{color:#007DB3}
.soc.solid:not(.vert):hover .soc-ico,.pg-contact .soc:not(.vert):hover .soc-ico{background:rgba(255,255,255,0)}
.rail-a.a2:focus-visible{border-radius:999px;outline-offset:2px}
.rail-tag{position:absolute;left:8px;top:9px;font-size:12px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase}
.rail-ico{width:46px;height:46px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s cubic-bezier(.22,1,.36,1),color .25s ease}
.a1 .rail-ico{margin-top:56px}
.a2 .rail-ico{margin-top:0;width:38px;height:38px}
.rail-cap{margin-top:8px;text-align:center;font-size:11px;line-height:1.25;font-weight:800;letter-spacing:0.05em;text-transform:uppercase;transition:color .25s ease}
.rail-div{position:absolute;left:18px;right:18px;top:152px;height:2px;background:#15171A;border-radius:2px}
.rail-a:hover .rail-ico,.rail-a:focus-visible .rail-ico{transform:translateY(-4px) scale(1.1);color:#0A7BB3}
.rail-a:hover .rail-cap,.rail-a:focus-visible .rail-cap{color:#0A7BB3}
.rail-a:focus-visible{outline:2px solid #0A7BB3;outline-offset:-2px;border-radius:18px}
@media(prefers-reduced-motion:reduce){.rail{animation:none;opacity:1}}
