.language-picker{position:relative;flex:none;color:var(--ink);font-size:13px}
.language-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit;font:inherit;font-weight:600;cursor:pointer;transition:background-color 120ms,scale 120ms}
.language-trigger:hover,.language-trigger[aria-expanded=true]{background:var(--tint,#e7f1ee);border-color:var(--teal,#0e7c66)}
.language-trigger:active{scale:.96}.language-trigger svg{flex:none}.language-trigger:focus-visible,.language-options a:focus-visible{outline:2px solid var(--teal,#0e7c66);outline-offset:2px}
.language-options{position:absolute;top:calc(100% + 8px);right:0;z-index:1000;display:grid;gap:4px;min-width:188px;padding:8px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 4px 10px #153c2f0a,0 16px 40px #153c2f1a}
.language-options[hidden]{display:none}.language-options a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;margin:0;padding:10px 12px;box-sizing:border-box;line-height:20px;border-radius:8px;color:var(--ink);font-weight:500;text-decoration:none;white-space:nowrap}
.language-options a:hover{background:var(--band,#f4f6f5);text-decoration:none}.language-options a[aria-current]{background:var(--tint,#e7f1ee);color:var(--teal,#0e7c66);font-weight:700}
@media(max-width:900px){.nav .language-trigger{width:44px;padding:0;border-color:transparent}.nav .language-trigger span,.nav .language-chevron{display:none}.top-links{gap:10px;flex-wrap:nowrap}.topbar{flex-wrap:nowrap;gap:12px}.site-header .nav{padding-inline:12px;gap:4px}}
@media(prefers-reduced-motion:reduce){.language-trigger{transition:none}.language-trigger:active{scale:1}}

/* Reserve utility space across translations; mobile rows never depend on label length. */
.topbar .brand{flex:none;min-height:44px;white-space:nowrap}
.topbar .language-picker{width:136px}
.topbar .language-trigger{width:100%;white-space:nowrap}
.topbar #cart-link,.topbar #account-link{display:flex;align-items:center;justify-content:center;flex:0 0 88px;min-height:44px;text-align:center;line-height:1.35}

.mobile-utility-icon,.account-menu-toggle,.menu-close{display:none}
@media(max-width:850px){
.topbar{display:flex;min-height:68px;padding:12px 16px;gap:8px}
.topbar .top-links{display:flex;gap:4px;flex:none;align-items:center}
.topbar .language-picker{width:44px}
.topbar .language-trigger{width:44px;height:44px;padding:0;border-color:transparent;color:var(--teal)}
.topbar .language-trigger span,.topbar .language-chevron,.topbar #account-link{display:none}
.topbar #cart-link{flex:0 0 44px;width:44px;height:44px}
.topbar #cart-link span{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.topbar .mobile-utility-icon{display:block}
.topbar .account-menu-toggle{display:inline-flex;flex:none;width:44px;height:44px;padding:0;color:var(--teal);background:var(--tint);border-color:transparent}
.account-menu-toggle[aria-expanded=true] .menu-lines{display:none}
.account-menu-toggle[aria-expanded=true] .menu-close{display:block}
.topbar .language-options{left:auto;right:0}
.layout{display:block;min-height:calc(100vh - 69px)}
.layout>.sidebar{display:none;padding:8px 16px;border-bottom:1px solid var(--line)}
.layout>.sidebar.is-open{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
.layout>.sidebar>a{justify-content:flex-start;min-height:44px;margin:0;padding:10px 12px;white-space:normal;text-align:left;font-size:14px}
}
@media(max-width:380px){.topbar{padding-inline:12px;gap:4px}}

/* One responsive brand scale; locally hosted subset keeps both wordmarks identical. */
@font-face{font-family:"RoamLuna Brand";font-style:normal;font-weight:800;font-display:swap;src:url("/fonts/roamluna-brand.woff2") format("woff2")}
.nav .logo,.topbar .brand{flex:none;min-height:44px;white-space:nowrap;gap:10px;font-family:"RoamLuna Brand",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:26px;font-weight:800;line-height:1.1;letter-spacing:-.02em;-webkit-font-smoothing:antialiased}
.nav .logo-icon,.topbar .brand img{flex:none;width:36px;height:36px}
.nav .logo-icon{stroke-width:1.6}
.nav .logo,.nav .logo:hover,.nav .logo:active,.nav .logo:focus,.topbar .brand,.topbar .brand:hover,.topbar .brand:active,.topbar .brand:focus{text-decoration:none}
@media(max-width:600px){
 .nav .logo,.topbar .brand{font-size:22px;gap:8px}
 .nav .logo-icon,.topbar .brand img{width:32px;height:32px}
}
@media(max-width:380px){
 .nav .logo,.topbar .brand{font-size:18px;gap:5px}
 .nav .logo-icon,.topbar .brand img{width:24px;height:24px}
}
