/* R96: a shared full-screen menu in the campaign's violet glass-curve style. */
html.has-site-menu{scroll-padding-top:104px}
.a .header.has-fullscreen-menu{position:sticky;top:0;z-index:200;flex-wrap:nowrap;min-height:80px;background:#fff}
.a .header.has-fullscreen-menu>nav{display:none}
.a .site-menu-toggle,.a .site-menu-close{
 display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;
 width:48px;height:48px;padding:0;border:1px solid #e5dbf1;border-radius:50%;
 color:#7640bc;background:#fcfaff;cursor:pointer;
 transition:background .2s ease,border-color .2s ease,transform .2s ease
}
.a .site-menu-toggle{margin-left:auto}
.a .site-menu-toggle:hover,.a .site-menu-close:hover{background:#f1e7fd;border-color:#bf9ae9;transform:rotate(5deg)}
.a .site-menu-toggle:focus-visible,.a .site-menu-close:focus-visible,.a .site-menu a:focus-visible{outline:2px solid #8143d7;outline-offset:5px}
.a .site-menu-toggle svg,.a .site-menu-close svg{width:24px;height:24px;display:block;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.a dialog.site-menu{
 position:fixed;inset:0;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;
 margin:0;padding:0;border:0;border-radius:0;box-shadow:none;overflow:auto;overscroll-behavior:contain;
 color:#30243d;background:#fdfaf7;opacity:0;transform:translateY(-10px);
 transition:opacity .3s ease,transform .3s ease
}
.a dialog.site-menu[open]{display:flex;flex-direction:column}
.a dialog.site-menu.is-visible{opacity:1;transform:none}
.a dialog.site-menu::backdrop{background:#fdfaf7;backdrop-filter:none}
.a .site-menu-chrome{
 position:relative;z-index:2;display:flex;align-items:center;gap:22px;flex-shrink:0;
 width:100%;max-width:1440px;min-height:80px;margin:0 auto;padding:16px 5%
}
.a .site-menu-brand{display:inline-flex;align-items:center;flex-shrink:0}
.a .site-menu-brand img{display:block;width:75px;height:43px;object-fit:contain}
.a .site-menu-brandline{padding-left:22px;border-left:1px solid #e6dfea;font-size:12px;color:#4a4055}
.a .site-menu-close{margin-left:auto}
.a .site-menu-body{
 position:relative;isolation:isolate;display:flex;align-items:center;flex:1 0 auto;
 width:100%;max-width:1280px;min-height:430px;margin:auto;padding:40px 7% 56px
}
.a .site-menu-curves{position:absolute;z-index:-1;inset:0;overflow:hidden;pointer-events:none}
.a .site-menu-curves::before{
 content:"";position:absolute;width:850px;height:550px;right:-260px;top:calc(50% - 240px);
 background:radial-gradient(ellipse,#ede1fa80,transparent 68%)
}
.a .site-menu-curves::after{
 content:"";position:absolute;right:-240px;top:calc(50% - 290px);width:1020px;height:580px;
 background:url('assets/r94/vote-curve-purple.svg') center/100% 100% no-repeat;
 opacity:.65;transform:rotate(-26deg)
}
.a .site-menu-links{position:relative;display:flex;flex-direction:column;width:min(640px,72%);margin:0}
.a .site-menu-links a{
 --menu-accent:#8964c5;display:grid;grid-template-columns:32px minmax(0,1fr) 46px;
 align-items:center;gap:18px;padding:22px 0;border-bottom:1px solid #dfd4e980;
 color:#392c46;text-decoration:none;opacity:0;transform:translateY(14px);
 transition:opacity .4s ease,transform .4s ease,color .2s ease;
 transition-delay:0s
}
.a .site-menu-links a:nth-child(2){--menu-accent:#4c9fbb}
.a .site-menu-links a:nth-child(3){--menu-accent:#d577a1}
.a .site-menu-links a:nth-child(4){--menu-accent:#d8aa50}
.a .site-menu.is-visible .site-menu-links a{opacity:1;transform:none;transition-delay:calc(var(--menu-order) * 55ms + 70ms)}
.a .site-menu-number{align-self:center;color:var(--menu-accent);font-size:12px;font-weight:500;letter-spacing:.08em}
.a .site-menu-label{font-size:clamp(32px,4vw,54px);line-height:1.3;font-weight:650;letter-spacing:.02em}
.a .site-menu-arrow{
 display:flex;align-items:center;justify-content:center;width:42px;height:42px;
 border:1px solid #dfd0ec;border-radius:50%;color:#8143d7;font-size:23px;font-weight:400;
 transition:background .2s ease,color .2s ease,transform .2s ease
}
.a .site-menu-links a:hover,.a .site-menu-links a[aria-current=location]{color:#8143d7}
.a .site-menu-links a:hover .site-menu-arrow{background:#8143d7;border-color:#8143d7;color:white;transform:translateX(3px)}
.a .site-menu-footer{
 position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;
 width:86%;max-width:1100px;margin:0 auto;padding:20px 0 max(30px,env(safe-area-inset-bottom));
 border-top:1px solid #e8dfec;color:#8b7c98;font-size:11px;letter-spacing:.08em
}
.a .site-menu-swatches{display:flex;gap:7px}
.a .site-menu-swatches i{width:7px;height:7px;border-radius:50%;background:#a68aca}
.a .site-menu-swatches i:nth-child(2){background:#83bfd2}
.a .site-menu-swatches i:nth-child(3){background:#e5a5c1}
.a .site-menu-swatches i:nth-child(4){background:#e7c16f}
@media(max-width:760px){
 html.has-site-menu{scroll-padding-top:96px}
 .a .header.has-fullscreen-menu{min-height:72px;padding:12px 5%;gap:12px}
 .a .site-menu-toggle,.a .site-menu-close{width:44px;height:44px;flex-basis:44px}
 .a .site-menu-chrome{min-height:72px;gap:12px;padding:12px 5%}
 .a .site-menu-brand img{width:60px;height:35px}
 .a .site-menu-brandline{padding-left:12px;font-size:10px}
 .a .site-menu-body{min-height:390px;padding:34px 7% 44px}
 .a .site-menu-links{width:100%}
 .a .site-menu-links a{grid-template-columns:24px minmax(0,1fr) 38px;gap:13px;padding:23px 0}
 .a .site-menu-label{font-size:clamp(28px,8vw,38px)}
 .a .site-menu-arrow{width:36px;height:36px;font-size:20px}
 .a .site-menu-curves::after{width:760px;height:400px;right:-390px;top:calc(50% - 60px);opacity:.23;transform:rotate(-38deg)}
 .a .site-menu-footer{font-size:10px;padding-bottom:max(25px,env(safe-area-inset-bottom))}
}
@media(max-height:580px){
 .a .site-menu-body{min-height:0;padding-top:10px;padding-bottom:20px}
 .a .site-menu-links a{padding-top:8px;padding-bottom:8px}
 .a .site-menu-label{font-size:30px}
 .a .site-menu-footer{padding-top:12px;padding-bottom:16px}
}
@media(prefers-reduced-motion:reduce){
 .a dialog.site-menu,.a .site-menu-links a,.a .site-menu-arrow,.a .site-menu-toggle,.a .site-menu-close{transition:none;transform:none}
}
