/* SouthSide's cinematic layer: dark surfaces, lilac light, deliberate motion. */
:root{--ss-night:#100d19;--ss-surface:#1d172a;--ss-surface-high:#281f37;--ss-violet:#b994f1;--ss-soft:#e7d8ff;--ss-stroke:#c6a7ed46}
html{scroll-behavior:smooth}
body.ss-site{background:#100d19!important;color:#f8f4ff!important;background-image:radial-gradient(circle at 52% 2%,#66448651,transparent 34rem),linear-gradient(#100d19,#15101e)!important}
body.ss-site:before{display:none!important}
.ss-site .ss-header{background:#120e1ce8!important;border-bottom:1px solid var(--ss-stroke)!important;box-shadow:0 15px 50px #03010688!important;backdrop-filter:blur(22px) saturate(135%)!important}
.ss-site .ss-nav a{background:transparent!important;border-color:transparent!important;color:#d6cee1!important;transition:color .25s,background .25s,transform .25s}
.ss-site .ss-nav a:hover,.ss-site .ss-nav a:focus-visible{background:#ab83e020!important;color:white!important;transform:translateY(-2px)}
.ss-site .ss-nav .nav-admin{background:#b994f11b!important;border:1px solid #b994f172!important;color:#edddff!important}
.ss-site .brand-logo{box-shadow:0 0 20px #9e67df44;border-radius:12px}
.ss-site .ss-hero{min-height:700px;height:min(900px,calc(100svh - 32px));background:url('/assets/southside-sunset.png') center 48%/cover no-repeat!important}
.ss-site .ss-hero:before{background:linear-gradient(90deg,#100d19cf 0%,#150d20a3 52%,#100d1980 100%),linear-gradient(0deg,#100d19 0%,transparent 35%,#100d1940 100%)!important}
.ss-site .ss-hero:after{background:linear-gradient(0deg,#100d19,transparent)!important;height:210px!important}
.ss-site .ss-hero-content{animation:ss-arrive .85s cubic-bezier(.2,.8,.2,1) both}
.ss-site .hero-kicker{background:#261933bd!important;border-color:#bc98eb81!important;color:#e8d3ff!important}
.ss-site .ss-hero h1{font-weight:850!important;letter-spacing:-.065em!important;text-wrap:balance;text-shadow:0 7px 35px #06020dcc}
.ss-site .ss-hero #site-hero-accent{color:#d0afff!important;-webkit-text-fill-color:#d0afff!important}
.ss-site .hero-lede{color:#eee7f5!important;line-height:1.65!important}
.ss-site .button,.ss-site .ss-nav a,.ss-site .text-link{transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease,color .25s ease}
.ss-site .button:hover,.ss-site .button:focus-visible{transform:translateY(-3px);box-shadow:0 16px 34px #8c53d44b!important}
.ss-site .button.primary{background:linear-gradient(115deg,#e4c4ff,#a873ee)!important;border-color:#f0dfff!important;color:#20132d!important}
.ss-site .button:not(.primary){background:#1e152cce!important;border-color:#d1b2f18f!important}
.ss-site .live-strip{background:#1c1527f2!important;border-color:#a985d466!important;border-radius:16px!important;box-shadow:0 24px 60px #05020d99!important}
.ss-site .live-item{border-color:#a985d43d!important}.ss-site .live-item strong{color:#fff!important}.ss-site .live-item small,.ss-site .eyebrow{color:#cfa9ff!important}.ss-site .live-link{background:#a074dd24!important}
.ss-site .ss-section{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;margin:0 auto!important;padding:92px 28px!important;border-bottom:1px solid #aa84d12d!important}
.ss-site .section-heading{margin-bottom:31px}.ss-site .section-heading h2{font-size:clamp(35px,4vw,58px)!important;letter-spacing:-.05em!important;line-height:1.04!important;text-wrap:balance}.ss-site .section-heading>p{max-width:420px;color:#c7b9d4!important}
.ss-site :is(.start-card,.system-card,.faction-card,.partner-tile,.help-detail,.support-panel,.empty-state,.rule-category,.rule-intro-card,.launcher-card){background:linear-gradient(145deg,#292035,#1b1527 80%)!important;border:1px solid #a888cf59!important;border-radius:16px!important;box-shadow:0 14px 38px #05020c6b,inset 0 1px #e8d5ff1d!important}
.ss-site :is(.start-card,.system-card,.faction-card,.partner-tile){position:relative;overflow:hidden;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease!important}
.ss-site :is(.start-card,.system-card,.faction-card,.partner-tile):hover{transform:translateY(-6px)!important;border-color:#cca8fcad!important;box-shadow:0 24px 52px #06020e9a,0 0 0 1px #bc91f431!important}
.ss-site :is(.start-card,.system-card,.faction-card):before{content:'';position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#a46fe9,#f1d9ff,transparent);opacity:.75}
.ss-site .start-card{min-height:260px}.ss-site .step-label{background:#a879e824!important;border-color:#b78ae776!important;color:#ebd6ff!important}
.ss-site .faction-image{border-radius:12px;object-fit:contain;padding:12px;background:#110d18}.ss-site .faction-card h2{letter-spacing:-.03em}.ss-site .faction-card p,.ss-site .system-card p,.ss-site .start-card p{color:#d5c9df!important}.ss-site .faction-leadership{min-height:0!important;margin:12px 0 0!important;padding-top:12px;border-top:1px solid #c7a1eb48;color:#eadcf6!important;font-weight:650}
.ss-site .support-panel{padding:36px!important;background:linear-gradient(120deg,#49305f,#251a35)!important;border-left:3px solid #c99aff!important}
.ss-site .ss-footer{background:#100c18!important;border:0!important;border-top:1px solid #ab88d24d!important;box-shadow:none!important}
.ss-site .ss-page{max-width:1160px;margin:56px auto!important;padding:46px!important}
.ss-site :focus-visible{outline:2px solid #e2c2ff!important;outline-offset:4px}
@keyframes ss-arrive{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes ss-reveal{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
.ss-site .ss-section.is-revealing{animation:ss-reveal .7s cubic-bezier(.2,.8,.2,1) both}
@media(max-width:760px){.ss-site .ss-hero{height:auto;min-height:680px}.ss-site .ss-section{padding:58px 18px!important}.ss-site .ss-page{margin:22px 14px!important;padding:28px!important}.ss-site .ss-nav.is-open{background:#1c1527f8!important}.ss-site .live-strip{margin-top:-40px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ss-site .ss-hero-content,.ss-site .ss-section.is-revealing{animation:none!important}.ss-site .button,.ss-site :is(.start-card,.system-card,.faction-card,.partner-tile){transition:none!important}}
