/* Shared public drawer. Native dialog supplies the modal layer and focus boundary. */
html.public-menu-open,html.public-menu-open body{overflow:hidden;overscroll-behavior:none}
html.js [data-public-header] .nav-toggle{display:inline-flex;width:44px;height:44px}
html.js [data-public-header] #site-nav,html.js #nav #home-menu-links{display:none}
html.js #nav .nav__in{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-inline:16px}
html.js #nav .nav__right{display:flex;align-items:center;gap:8px}
html.js #nav .nav__right>.theme-control{display:none}
html.js #nav .home-menu-toggle{order:2;display:inline-grid;place-items:center;flex:none;width:44px;height:44px;padding:10px;color:inherit;border:1px solid currentColor;border-radius:10px;background:transparent;cursor:pointer}
#nav .home-menu-toggle svg{display:block;width:22px;height:22px}
html.js #nav .nav__cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px;font-size:11px;white-space:nowrap}
html.js #nav .brand{gap:6px}
html.js #nav .brand__wm{font-size:21px}
html.js #nav .brand__mark{display:none;width:25px;height:25px}
#nav .home-menu-toggle{color:#f2ece0}
#nav.nav--solid .home-menu-toggle,#nav.scrolled .home-menu-toggle{color:var(--ink)}
body[data-scroll="cinematic"] #nav.scrolled .home-menu-toggle{color:#f2ece0}
html:not(.js) .home-menu-toggle{display:none}
html:not(.js) #nav .nav__links{display:flex;flex-wrap:wrap}
html:not(.js) #nav .nav__in,html:not(.js) #nav .nav__right{display:flex;flex-wrap:wrap}
html:not(.js) [data-public-header] .site-header__inner{height:auto;min-height:66px;flex-wrap:wrap;gap:12px;padding-block:12px}
html:not(.js) [data-public-header] #site-nav{width:100%;justify-content:flex-start;flex-wrap:wrap}

dialog.public-drawer{--drawer-bg:#faf7f2;--drawer-ink:#482139;--drawer-muted:#70626a;--drawer-line:#dfd5ca;--drawer-gold:#987037;box-sizing:border-box;position:fixed;inset:0 0 0 auto;margin:0;border:0;padding:0;width:calc(100% - 24px);max-width:420px;height:100%;height:100dvh;max-height:none;background:var(--drawer-bg);color:var(--drawer-ink);font-family:var(--tl-font,'DM Sans',sans-serif);font-size:16px;line-height:1.4;text-align:left;box-shadow:-12px 0 42px #21131b30;overflow:hidden}
.public-drawer *{box-sizing:border-box}
dialog.public-drawer:not([open]){display:none}
dialog.public-drawer[open]{display:flex;flex-direction:column;animation:public-drawer-enter 380ms cubic-bezier(.2,0,0,1) both}
.public-drawer::backdrop{background:#1f141b94;backdrop-filter:blur(3px);animation:public-drawer-dim 380ms ease-out both}
dialog.public-drawer.is-closing{animation:public-drawer-exit 220ms cubic-bezier(.3,0,1,1) both}
.public-drawer.is-closing::backdrop{animation:public-drawer-dim 220ms ease-in reverse both}
.public-drawer a{color:inherit;text-decoration:none;letter-spacing:normal}
.public-drawer a:hover{color:var(--drawer-gold)}
.public-drawer a:focus-visible,.public-drawer button:focus-visible{outline:2px solid var(--drawer-gold);outline-offset:4px}
.public-drawer__head{flex:none;display:grid;grid-template-columns:1fr 44px;gap:4px 12px;padding:16px 20px 10px;padding-top:max(16px,env(safe-area-inset-top))}
.public-drawer__brand{align-self:center;font-size:31px;font-weight:350;line-height:1.2}
.public-drawer__brand b{font-weight:700}
.public-drawer__close{display:grid;place-items:center;width:44px;height:44px;padding:10px;border:1px solid var(--drawer-line);border-radius:50%;background:transparent;color:var(--drawer-ink);cursor:pointer;box-shadow:none}
.public-drawer__close svg{width:23px;height:23px}
.public-drawer__head p{grid-column:1/-1;margin:0;font-size:13px;line-height:1.5;color:var(--drawer-muted)}
.public-drawer__scroll{display:flex;flex-direction:column;min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--drawer-line) transparent;padding:0 20px 14px}
.public-drawer__primary{display:block;flex:none}
.public-drawer__primary a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:10px 0;border-bottom:1px solid var(--drawer-line);font-size:23px;line-height:1.25;font-weight:500}
.public-drawer__primary a[aria-current=page]{color:var(--drawer-gold)}
.public-drawer__primary svg{flex:none;width:20px;height:20px}
.public-drawer__secondary{display:grid;flex:none;grid-template-columns:1fr 1fr;gap:0 14px;padding-block:10px}
.public-drawer__secondary a{display:flex;align-items:center;min-height:44px;font-size:13px;line-height:1.35}
.public-drawer__story{isolation:isolate;position:relative;flex:1;min-height:142px;max-height:260px;overflow:hidden;border-radius:8px}
.public-drawer__story img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:65% center}
.public-drawer__story::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--drawer-bg),#faf7f2e8 28%,#faf7f218 72%)}
.public-drawer__story>div{padding:14px 12px}
.public-drawer__story strong{display:block;font-size:20px;line-height:1.12;font-weight:550}
.public-drawer__story p{font-size:11px;line-height:1.4;color:var(--drawer-muted);margin:8px 0 0}
.public-drawer__story svg{width:26px;height:24px;color:var(--drawer-gold);margin-top:6px}
.public-drawer__foot{flex:none;padding:10px 20px max(6px,env(safe-area-inset-bottom));border-top:1px solid var(--drawer-line);background:var(--drawer-bg)}
.public-drawer .public-drawer__cta{display:flex;align-items:center;justify-content:center;gap:22px;min-height:48px;padding:12px 20px;border-radius:40px;background:#482139;color:#fff9f2;font-size:16px;font-weight:600}
.public-drawer__cta svg{width:20px;height:20px}
.public-drawer .public-drawer__cta:hover{background:#67334f;color:#fff9f2}
.public-drawer__login{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;margin:0;font-size:13px;color:var(--drawer-muted)}
.public-drawer__login a{text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px}
.public-drawer__settings{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--drawer-line);border-bottom:1px solid var(--drawer-line);padding-block:4px}
.public-drawer .market-switcher{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0;font-size:12px;color:var(--drawer-ink)}
.public-drawer .market-switcher>span:first-child{display:none}
.public-drawer .market-switcher a,.public-drawer .market-switcher__current{display:inline-flex;align-items:center;min-height:44px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit}
.public-drawer .market-switcher__current{font-weight:650}
.public-drawer .market-switcher a>span{display:none}
.public-drawer .theme-control{margin:0;padding:0;border-color:var(--drawer-line);color:var(--drawer-ink)}
.public-drawer .theme-control button{width:44px;height:44px;min-height:44px}
.public-drawer__legal{display:flex;align-items:center;justify-content:center;gap:24px}
.public-drawer__legal a{display:inline-flex;align-items:center;min-height:36px;font-size:11px;color:var(--drawer-muted)}
html[data-theme=dark] dialog.public-drawer{--drawer-bg:#211b20;--drawer-ink:#f5eaf0;--drawer-muted:#cbbdc5;--drawer-line:#51414b;--drawer-gold:#d8b777}
html[data-theme=dark] .public-drawer__story::before{background:linear-gradient(90deg,#211b20,#211b20ed 28%,#211b2038 72%)}
html[data-theme=dark] .public-drawer .public-drawer__cta{background:#dbc18b;color:#2e1e22}
@media(min-width:420px){html.js #nav .nav__in{padding-inline:24px}html.js #nav .nav__cta{padding-inline:12px;font-size:12px}html.js #nav .brand__mark{display:block}.public-drawer__head{padding-inline:24px}.public-drawer__scroll{padding-inline:24px}.public-drawer__foot{padding-inline:24px}}
@media(min-width:1101px){
 html:not(.js) [data-public-header] #site-nav{width:auto}
 html.js [data-public-header] .nav-toggle,html.js #nav .home-menu-toggle{display:none}
 html.js [data-public-header] #site-nav,html.js #nav #home-menu-links{display:flex}
 html.js #nav .nav__in{padding:20px clamp(22px,4vw,48px);gap:20px}
 html.js #nav .nav__right{gap:24px}
 html.js #nav .nav__right>.theme-control{display:inline-flex}
 html.js #nav .brand{gap:10px}
 html.js #nav .brand__wm{font-size:22px}
 html.js #nav .brand__mark{width:28px;height:28px}
 html.js #nav .nav__cta{min-height:0;padding:9px 18px;font-size:13.5px}
}
@keyframes public-drawer-enter{0%{transform:translateX(100%)}33%{transform:translateX(66%)}66%{transform:translateX(33%)}100%{transform:translateX(0)}}
@keyframes public-drawer-exit{0%{transform:translateX(0)}33%{transform:translateX(33%)}66%{transform:translateX(66%)}100%{transform:translateX(100%)}}
@keyframes public-drawer-dim{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){dialog.public-drawer[open],dialog.public-drawer.is-closing,.public-drawer::backdrop,.public-drawer.is-closing::backdrop{animation:none}}
