body{padding-bottom:calc(98px + env(safe-area-inset-bottom))}.bottom-nav{position:fixed;z-index:40;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px max(18px,calc((100vw - 850px)/2)) calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#220e1bf5,#120a11fa);border-top:2px solid #a62b45;box-shadow:0 -7px 25px #07020666;backdrop-filter:blur(18px)}.bottom-nav:before{content:'';position:absolute;left:0;right:0;top:3px;border-top:1px dashed #ad314944;pointer-events:none}.bottom-nav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:70px;border-radius:18px;color:#e6bbc5;border:1px solid transparent;transition:background .2s,transform .2s}.bottom-nav svg{height:24px;width:24px;flex:none}.nav-en{font:11px Georgia,serif;letter-spacing:.08em}.nav-ja{font-size:9px;line-height:1.2;white-space:nowrap}.bottom-nav a:hover{background:#59152e;color:#fff1ef;transform:translateY(-2px)}.bottom-nav a[aria-current="page"]{background:linear-gradient(145deg,#a71c37,#540c25);border-color:#e65d75;color:#fff0ed;box-shadow:0 3px 0 #3a0717,inset 0 1px 0 #ff9da744}.bottom-nav a[aria-current="page"]:after{content:'';position:absolute;right:5px;top:3px;width:16px;height:16px;background:url('../img/rose-mark.svg') center/contain no-repeat}.bottom-nav a:focus-visible{outline:2px solid #ff98a7;outline-offset:2px}footer{padding-bottom:35px}@media(max-width:700px){body{padding-bottom:calc(89px + env(safe-area-inset-bottom))}.bottom-nav{padding:8px 5px calc(8px + env(safe-area-inset-bottom));gap:3px}.bottom-nav a{min-height:69px;gap:5px;border-radius:14px}.bottom-nav svg{width:23px;height:23px}.nav-en{font-size:9px;letter-spacing:.04em}.nav-ja{font-size:9px}.bottom-nav a[aria-current="page"]:after{width:13px;height:13px;right:2px;top:3px}.bottom-nav a:hover{transform:none}footer{padding-bottom:30px}}@media(prefers-reduced-motion:reduce){.bottom-nav a{transition:none}}
.hero-bottom{bottom:115px}@media(max-width:700px){.hero-bottom{top:105px;bottom:auto;left:auto;right:7%}.hero-bottom>span,.hero-bottom>a{display:none}.hero-bottom button{padding:9px 12px}}
/* Page navigation is available in the fixed bottom menu. */
.menu-toggle,#mobile-menu{display:none!important}
/* Center the masthead consistently on every page. */
.topbar{justify-content:center;flex-direction:column;gap:18px;text-align:center}
.topbar>.brand{justify-content:center}
.topbar>nav{justify-content:center}
@media(max-width:700px){.topbar{gap:0}.topbar>.brand{margin-inline:auto}}
/* Center the wordmark itself; keep the emblem outside its layout box. */
.topbar>.brand{position:relative;display:block;width:max-content;margin-inline:auto;min-height:65px;align-content:center}
.topbar>.brand>span{display:block;text-align:center}
.topbar>.brand>img{position:absolute;right:calc(100% + 15px);top:50%;transform:translateY(-50%);margin:0}
@media(max-width:700px){.topbar>.brand{min-height:48px}.topbar>.brand>img{right:calc(100% + 12px)}}
