/* Shared header/footer controls. This file is loaded by every page template. */
.back-to-top{position:fixed;right:24px;bottom:28px;z-index:995;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;color:#fff;background:var(--teal);border:1px solid var(--teal);border-radius:4px;box-shadow:0 4px 14px rgba(24,119,210,.24);font:700 24px/1 Arial,sans-serif;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .2s,transform .2s,background .2s}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{background:var(--ink);border-color:var(--ink)}.roleplay-bridge{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:34px auto;padding:28px 32px;max-width:1120px;background:#eaf6fb;border:1px solid #aac8d8}.roleplay-bridge h2{margin:6px 0 10px;color:var(--ink)}.roleplay-bridge p{max-width:760px;margin:0;color:#47616c;line-height:1.8}.roleplay-bridge .button-main{flex:0 0 auto;white-space:nowrap}@media(max-width:760px){.back-to-top{right:16px;bottom:80px;width:40px;height:40px;font-size:22px}.roleplay-bridge{align-items:flex-start;flex-direction:column;margin:24px 20px;padding:22px}.roleplay-bridge .button-main{width:100%;text-align:center}}
.nav-wrap{justify-content:flex-end}.main-nav{flex:none;margin-left:auto}
.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:28px;height:28px;padding:0;background:transparent;border:0;cursor:pointer}.hamburger span{display:block;width:24px;height:2px;background:var(--ink);transition:transform .3s,opacity .3s}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-overlay{display:none;position:fixed;inset:0;z-index:998;background:rgba(7,25,35,.45);backdrop-filter:blur(4px)}.mobile-overlay.active{display:block}.mobile-menu{position:fixed;top:0;right:-300px;z-index:999;width:280px;height:100vh;padding:80px 24px 40px;overflow-y:auto;background:#fff;border-left:1px solid #aac8d8;box-shadow:-4px 0 24px rgba(24,119,210,.18);transition:right .35s ease}.mobile-menu.active{right:0}.mobile-menu a{display:block;padding:14px 0;color:var(--ink);font-size:15px;font-weight:700;border-bottom:1px solid #d8e5eb}.mobile-menu a:hover,.mobile-menu a.active{color:var(--teal)}.mobile-float-bar{display:none;position:fixed;bottom:0;left:0;width:100%;padding:10px 20px;background:#fff;z-index:997;border-top:1px solid #aac8d8;box-shadow:0 -2px 18px rgba(24,119,210,.18)}.mobile-float-bar .btn-float-experience{width:100%;padding:13px;color:#fff;background:var(--teal);border:2px solid var(--teal);font:700 15px/1.4 Arial,"Microsoft YaHei",sans-serif;cursor:pointer}.mobile-float-popup{position:fixed;bottom:78px;left:50%;z-index:998;display:none;flex-direction:column;gap:8px;min-width:180px;padding:14px 20px;transform:translateX(-50%);background:#fff;border:1px solid #aac8d8;box-shadow:0 0 20px rgba(24,119,210,.42)}.mobile-float-popup.active{display:flex}.mobile-float-popup a{display:block;padding:11px 22px;color:var(--teal);font-size:14px;font-weight:700;text-align:center;border:1px solid var(--teal)}.mobile-float-popup a:hover{color:#fff;background:var(--teal)}.mobile-float-overlay{display:none;position:fixed;inset:0;z-index:996;background:rgba(7,25,35,.28);backdrop-filter:blur(3px)}.mobile-float-overlay.active{display:block}@media(max-width:760px){body{padding-bottom:66px}.main-nav,.nav-cta{display:none}.hamburger{display:flex;margin-left:auto}.nav-wrap{justify-content:space-between}.mobile-float-bar{display:block}}@media(max-width:480px){.brand{font-size:18px}.brand img{width:34px;height:34px}.nav-wrap{height:62px}}
