:root{--hub-height:94px}
#hub-shell{position:sticky;top:0;z-index:40;font-family:Tahoma,"Leelawadee UI",sans-serif;color:#fff;isolation:isolate}
#hub-shell *{box-sizing:border-box}
.hub-pilot-note{background:#302047;color:#f4e9fa;text-align:center;font-size:10px;letter-spacing:.65px;padding:5px 12px;line-height:1.5}
.hub-topbar{display:flex;align-items:center;gap:30px;min-height:74px;padding:8px max(24px,calc((100vw - 1240px)/2));background:linear-gradient(110deg,#654593,#7955ac 55%,#684390);box-shadow:0 3px 12px #3d225826}
.hub-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none;color:#fff}
.hub-brand-mark{display:grid;place-items:center;width:42px;height:44px;font-size:29px;color:#fff1b5;border:1px solid #f5d89488;background:linear-gradient(145deg,#bd8ee2,#75519e);border-radius:15px 15px 20px 20px;box-shadow:inset 0 0 12px #ffffff22}
.hub-brand b{display:block;font-size:9px;letter-spacing:2.1px;line-height:1.7;color:#e9d9fc}
.hub-brand strong{display:block;font-size:18px;letter-spacing:1.6px;line-height:1.2}.hub-brand em{font-style:normal;color:#ffdc8c}
.hub-main-nav{display:flex;align-items:center;justify-content:center;flex:1;gap:8px}
.hub-main-nav a{color:#f9f2ff;text-decoration:none;font-weight:bold;font-size:14px;border-radius:22px;padding:10px 18px;white-space:nowrap;border:1px solid transparent}
.hub-main-nav a:hover{background:#ffffff18;border-color:#ffffff30}.hub-main-nav a.active{background:linear-gradient(#fc9ccc,#e95baa);box-shadow:0 2px 5px #42245630;border-color:#ffcce6;color:#fff}
.hub-preview-badge{font-size:10px;letter-spacing:1px;border:1px solid #f8d99877;border-radius:20px;padding:8px 12px;color:#ffe6a7;white-space:nowrap}
.hub-menu-toggle{display:none}.hub-skip{position:absolute;top:-100px;left:12px;padding:12px;background:#fff;color:#54328b;z-index:100;text-decoration:none;border-radius:8px}.hub-skip:focus{top:4px}
.hub-topbar a:focus-visible,.hub-menu-toggle:focus-visible{outline:3px solid #ffe3a1;outline-offset:3px}

html:has(body.hub-integrated){scroll-padding-top:calc(var(--hub-height) + 20px)}
.hub-footer-brand{font-weight:bold;letter-spacing:2px;color:#79529c;text-decoration:none}.hub-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px}.hub-footer-links a{color:inherit;text-decoration:none}.hub-footer-links a:hover{text-decoration:underline}
@media(max-width:1000px){.hub-topbar{padding:9px 18px;gap:12px;flex-wrap:wrap;justify-content:space-between}.hub-menu-toggle{display:grid;place-items:center;width:44px;height:44px;background:#ffffff16;border:1px solid #ffffff66;color:#fff;border-radius:13px;font-size:24px;cursor:pointer}.hub-main-nav{display:none;flex-basis:100%;order:4;flex-direction:column;align-items:stretch;gap:5px;padding:6px 0}.hub-main-nav.is-open{display:flex}.hub-main-nav a{font-size:15px;padding:12px 16px}.hub-preview-badge{display:none}.hub-topbar{min-height:68px}.hub-pilot-note{font-size:9px;letter-spacing:.2px}.hub-brand strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* Guild section links are content navigation, below the hero; the Hub is the only sticky header. */
.section-nav{display:flex;align-items:center;gap:18px;width:100%;max-width:1240px;margin:0 auto;padding:14px 24px;background:#fcf7fe;border-bottom:1px solid #eadff2;color:#795298;flex:none;box-sizing:border-box}
.section-nav-label{font-size:12px;font-weight:bold;white-space:nowrap;color:#9a7cac;flex-shrink:0}
.section-nav-links{display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d8bce8 transparent;padding:3px 2px 6px;flex:1}
.section-nav-links a{flex:0 0 auto;white-space:nowrap;background:#fff;border:1px solid #e6d7ef;border-radius:20px;padding:9px 14px;font-size:12px;font-weight:bold;color:#795298;text-decoration:none}
.section-nav-links a:hover{background:#f4e8fb;border-color:#cea8e3}
.section-nav-links a:focus-visible{outline:3px solid #b77cda;outline-offset:2px}
@media(max-width:760px){.section-nav{display:block;padding:12px 12px 7px;overflow:hidden}.section-nav-label{display:block;margin:0 0 5px 3px;font-size:11px}.section-nav-links{width:100%;gap:7px}.section-nav-links a{min-height:44px;display:flex;align-items:center;padding:9px 13px;font-size:12px}}

.hub-integrated .guild-mode-badge{display:inline-block;margin-left:7px;padding:3px 7px;font-size:9px;font-weight:normal;color:#a26ab5;background:#f4eafa;border-radius:10px;vertical-align:middle}

.hub-brand-icon{display:block;width:51px;height:51px;object-fit:contain;flex:0 0 51px}
.hub-main-nav a{display:flex;align-items:center;gap:7px;padding:7px 13px}.hub-nav-icon{display:block;width:31px;height:31px;object-fit:contain;flex:0 0 31px}
@media(max-width:1000px){.hub-brand-icon{width:46px;height:46px;flex-basis:46px}.hub-main-nav a{padding:9px 14px;min-height:49px;gap:12px}.hub-nav-icon{width:34px;height:34px;flex-basis:34px}}
