/* Shared citizen shell motion extracted from the approved mobile theme laboratory. */
.citizen-app{
  --brand-intro-ms:700ms;--brand-move-ms:600ms;--brand-move-delay:700ms;--brand-settle-delay:1300ms;
  --photo-ms:900ms;--photo-delay:1250ms;--sheet-ms:950ms;--sheet-start-delay:1450ms;
  --scene-pan-delay:1900ms;--scene-pan-ms:475ms;--scene-pan-y:-90px;
  --content-item-ms:140ms;--content-start-delay:2050ms;--action-delay:2420ms;--action-second-delay:2600ms;
  --nav-start-delay:3100ms;--route-ms:240ms;--scene-filter:none;
  --top-leaf-x:0px;--top-leaf-y:0px;--side-leaf-x:0px;--side-leaf-y:-80px;
  --top-leaf-duration:11s;--top-gust-duration:19s;--side-leaf-duration:8s;--side-gust-duration:15s;
  isolation:isolate;overflow-x:clip;background:var(--paper)
}
.citizen-brand-intro{display:none;position:fixed;z-index:60;inset:0;overflow:hidden;pointer-events:none;background:#fff}
.citizen-route-curtain{position:fixed;z-index:58;inset:0;pointer-events:none;opacity:0;visibility:hidden;transition:opacity 170ms ease,visibility 0s 170ms}
.citizen-route-curtain.is-covering{opacity:1;visibility:visible;transition:opacity 170ms ease}
.citizen-route-curtain.is-revealing{visibility:visible;animation:citizen-route-curtain-out 300ms ease-out both}
.citizen-brand-intro img{position:absolute;left:50%;top:50%;width:min(84%,720px);height:auto;filter:drop-shadow(0 8px 22px #082b5020)}
.citizen-hero{height:214px;padding:4px 8px 0;background:none!important;overflow:visible;isolation:isolate}
.citizen-hero:after{display:none}
.citizen-theme-scene-clip{position:absolute;z-index:0;inset:0;overflow:hidden}
.citizen-theme-scene{position:absolute;inset:0;width:100%;height:calc(100svh + 120px);min-height:780px;object-fit:cover;object-position:center top;transform:scale(1.015);translate:0 var(--scene-pan-y);opacity:1;filter:var(--scene-filter);transition:opacity 180ms ease,filter 240ms ease}
.citizen-topbar{z-index:7;padding:0;pointer-events:none}
.citizen-brand-block{width:clamp(190px,42vw,310px);filter:drop-shadow(0 2px 4px #fff9)}
.citizen-logo{display:block;width:100%;max-height:none;mix-blend-mode:normal;object-fit:contain;object-position:left top}
.citizen-actions{gap:8px;margin:28px 10px 0 0;pointer-events:auto}
.citizen-icon-button,.citizen-avatar{width:48px;height:48px;border:1px solid #fff;background:#ffffffdc;box-shadow:0 6px 18px #082b5030}
.citizen-icon-button svg,.citizen-avatar>svg{width:25px;height:25px;fill:none;stroke:var(--navy);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.citizen-avatar{border-width:1px;font-size:.72rem}
.citizen-avatar:has([data-avatar-initials]),.citizen-avatar:has(img:not([hidden])){border-width:3px}
.citizen-wave{position:absolute;z-index:3;left:-3%;bottom:-1px;width:106%;height:108px;overflow:visible;filter:drop-shadow(0 -5px 11px #fff6);pointer-events:none}
.citizen-wave path{fill:var(--paper);transform-origin:center bottom;transition:transform var(--route-ms) cubic-bezier(.2,.72,.2,1)}
.citizen-app>section{min-height:calc(100svh - 68px);background:var(--paper)}
.citizen-content,.citizen-detail{background:var(--paper)}
.citizen-overlay-shell{position:fixed;z-index:9;top:0;left:50%;width:min(100%,940px);height:300px;translate:-50% 0;pointer-events:none;opacity:1;will-change:transform,opacity}
.citizen-overlay-wind{position:absolute;will-change:transform}
.citizen-top-overlay-wind{left:calc(-12px + var(--top-leaf-x));top:calc(-28px + var(--top-leaf-y));width:min(110%,1024px);transform-origin:52% 0;animation:citizen-top-gust var(--top-gust-duration) -11.2s infinite}
.citizen-side-overlay-wind{right:calc(-28px - var(--side-leaf-x));top:calc(70px + var(--side-leaf-y));width:150px;transform-origin:96% 12%;animation:citizen-side-gust var(--side-gust-duration) -3s infinite}
.citizen-overlay-wind img{display:block;width:100%;height:auto;will-change:transform;transition:opacity 180ms ease}
.citizen-top-overlay-wind img{transform-origin:52% 0;filter:blur(.35px);animation:citizen-top-wind var(--top-leaf-duration) -5.3s infinite}
.citizen-side-overlay-wind img{transform-origin:96% 12%;animation:citizen-side-wind var(--side-leaf-duration) -4.1s infinite}
.citizen-app.is-account-dashboard .citizen-side-overlay-wind{display:none}
.citizen-app.is-account-dashboard #account-open{display:none}
.citizen-app:not(.has-themed-hero) .citizen-overlay-shell{opacity:0;visibility:hidden}
.citizen-app.is-theme-changing :is(.citizen-theme-scene,.citizen-overlay-wind img){opacity:0}

.citizen-app.is-opening .citizen-brand-intro{display:block;animation:citizen-intro-layer-out 120ms var(--brand-settle-delay) both}
.citizen-app.is-opening .citizen-brand-intro:before{content:"";position:absolute;inset:0;background:#fff;animation:citizen-intro-backdrop-out var(--brand-move-ms) var(--brand-move-delay) cubic-bezier(.2,.72,.2,1) both}
.citizen-app.is-opening .citizen-brand-intro img{z-index:1;animation:citizen-intro-logo-in var(--brand-intro-ms) cubic-bezier(.16,.78,.2,1) both,citizen-intro-logo-move var(--brand-move-ms) var(--brand-move-delay) cubic-bezier(.2,.78,.2,1) both}
.citizen-app.is-opening .citizen-theme-scene{animation:citizen-opening-photo var(--photo-ms) var(--photo-delay) ease-out both,citizen-scene-pan var(--scene-pan-ms) var(--scene-pan-delay) cubic-bezier(.2,.72,.2,1) both}
.citizen-app.is-opening .citizen-theme-scene-clip{height:100svh}
.citizen-app.is-opening .citizen-logo{animation:citizen-header-brand-reveal 120ms var(--brand-settle-delay) both}
.citizen-app.is-opening .citizen-actions>*:first-child{animation:citizen-action-in 170ms var(--action-delay) cubic-bezier(.2,.78,.2,1) both}
.citizen-app.is-opening .citizen-actions>*:last-child{animation:citizen-action-in 170ms var(--action-second-delay) cubic-bezier(.2,.78,.2,1) both}
.citizen-app.is-opening .citizen-wave path{animation:citizen-wave-settle var(--sheet-ms) var(--sheet-start-delay) cubic-bezier(.18,.78,.18,1) both}
.citizen-app.is-opening .citizen-wave{animation:citizen-sheet-in var(--sheet-ms) var(--sheet-start-delay) cubic-bezier(.18,.78,.18,1) both}
.citizen-app.is-opening>section:not([hidden]){animation:citizen-sheet-in var(--sheet-ms) var(--sheet-start-delay) cubic-bezier(.18,.78,.18,1) both}
.citizen-app.is-opening [data-cascade]{animation:citizen-content-item-in var(--content-item-ms) calc(var(--content-start-delay) + var(--cascade-delay)) cubic-bezier(.2,.75,.2,1) both}
.citizen-app.is-opening .citizen-overlay-shell{animation:citizen-foliage-in 620ms var(--brand-settle-delay) ease-out both}
.citizen-app.is-opening .citizen-bottom-nav{animation:citizen-nav-in 300ms var(--nav-start-delay) ease-out both}
.citizen-app.is-route-entering [data-cascade]{animation:citizen-content-item-in var(--content-item-ms) var(--cascade-delay) cubic-bezier(.2,.75,.2,1) both}
.citizen-app.is-route-entering .citizen-wave path{animation:citizen-route-wave var(--route-ms) cubic-bezier(.2,.72,.2,1)}
.citizen-app.is-route-reset-entering .citizen-theme-scene{animation:citizen-route-photo-in 420ms cubic-bezier(.2,.72,.2,1) both}
.citizen-app.is-route-reset-entering .citizen-wave,.citizen-app.is-route-reset-entering>section:not([hidden]){animation:citizen-route-sheet-in 420ms cubic-bezier(.2,.72,.2,1) both}
.citizen-app.is-route-reset-entering [data-cascade]{animation-delay:calc(80ms + var(--cascade-delay))}
.citizen-app.has-themed-hero .commerce-hero{min-height:0;padding:0 var(--v2-content-inline) 8px;background:var(--paper);overflow:visible}
.citizen-app.has-themed-hero>.citizen-home,.citizen-app.has-themed-hero>.commerce-page:not([hidden]),.citizen-app.has-themed-hero>.account-page--plain:not([hidden]){margin-top:-26px}
.citizen-app.has-themed-hero .commerce-hero:after,.citizen-app.has-themed-hero .commerce-hero-top{display:none}
.citizen-app.has-themed-hero .commerce-hero h1{font-size:clamp(2rem,5.2vw,3.05rem);line-height:1.02}
.citizen-app.has-themed-hero .commerce-hero>p:last-child{margin-top:6px;font-size:clamp(1.05rem,2.6vw,1.35rem)}
.citizen-app.has-themed-hero .commerce-content{padding-top:14px}
.citizen-bottom-nav:before{content:"";position:absolute;left:0;right:0;bottom:calc(100% - 1px);height:24px;pointer-events:none;background:linear-gradient(to top,color-mix(in srgb,var(--paper) 76%,transparent),color-mix(in srgb,var(--paper) 30%,transparent) 54%,transparent);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);mask-image:linear-gradient(to top,#000 0,#000 42%,transparent 100%);-webkit-mask-image:linear-gradient(to top,#000 0,#000 42%,transparent 100%);opacity:.78}

@keyframes citizen-intro-logo-in{from{opacity:0;scale:.9}to{opacity:1;scale:1}}
@keyframes citizen-intro-logo-move{from{left:50%;top:50%;width:min(84%,720px);transform:translate(-50%,-50%)}to{left:max(8px,calc(50% - min(50vw,470px) + 8px));top:4px;width:clamp(190px,42vw,310px);transform:none}}
@keyframes citizen-intro-backdrop-out{0%,18%{opacity:1}100%{opacity:0}}
@keyframes citizen-intro-layer-out{from{opacity:1}to{opacity:0;visibility:hidden}}
@keyframes citizen-opening-photo{from{opacity:0;transform:scale(1.055)}to{opacity:1;transform:scale(1.015)}}
@keyframes citizen-scene-pan{from{translate:0 0}to{translate:0 var(--scene-pan-y)}}
@keyframes citizen-header-brand-reveal{from{opacity:0}to{opacity:1}}
@keyframes citizen-action-in{from{opacity:0;transform:translateY(-8px) scale(.9)}to{opacity:1;transform:none}}
@keyframes citizen-sheet-in{from{transform:translateY(calc(100svh + 90px))}to{transform:none}}
@keyframes citizen-wave-settle{0%{transform:translateX(25px) scaleY(.68)}65%{transform:translateX(-7px) scaleY(1.1)}100%{transform:none}}
@keyframes citizen-route-wave{0%{transform:none}48%{transform:translateX(-13px) scaleY(.9)}100%{transform:none}}
@keyframes citizen-route-curtain-out{from{opacity:1}to{opacity:0;visibility:hidden}}
@keyframes citizen-route-photo-in{from{opacity:.72;transform:scale(1.035)}to{opacity:1;transform:scale(1.015)}}
@keyframes citizen-route-sheet-in{from{opacity:.82;transform:translateY(38px)}to{opacity:1;transform:none}}
@keyframes citizen-content-item-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes citizen-foliage-in{from{opacity:0;transform:translate(18px,-10px)}to{opacity:1;transform:none}}
@keyframes citizen-nav-in{from{opacity:0;transform:translate(-50%,22px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes citizen-top-wind{0%,100%{transform:translate3d(0,0,0) scale(1) rotate(var(--top-leaf-angle-neg))}19%{transform:translate3d(var(--top-leaf-shift-soft-x),var(--top-leaf-lift-soft),0) scale(var(--top-leaf-scale-soft)) rotate(var(--top-leaf-angle-soft))}43%{transform:translate3d(.4px,var(--top-leaf-lift-rebound),0) scale(var(--top-leaf-scale-rebound)) rotate(var(--top-leaf-angle-rebound))}69%{transform:translate3d(var(--top-leaf-shift-x),var(--top-leaf-lift-strong),0) scale(var(--top-leaf-scale-strong)) rotate(var(--top-leaf-angle-pos))}84%{transform:translate3d(var(--top-leaf-shift-return-x),var(--top-leaf-lift-return),0) scale(var(--top-leaf-scale-return)) rotate(var(--top-leaf-angle-soft))}}
@keyframes citizen-side-wind{0%,100%{transform:rotate(var(--side-leaf-angle-neg)) translate3d(0,0,0)}22%{transform:rotate(var(--side-leaf-angle-mid)) translate3d(var(--side-leaf-shift-mid-x),var(--side-leaf-shift-mid-y),0)}48%{transform:rotate(var(--side-leaf-angle-rebound)) translate3d(1px,-.4px,0)}70%{transform:rotate(var(--side-leaf-angle-pos)) translate3d(var(--side-leaf-shift-end-x),var(--side-leaf-shift-end-y),0)}86%{transform:rotate(var(--side-leaf-angle-mid)) translate3d(var(--side-leaf-shift-return-x),var(--side-leaf-shift-return-y),0)}}
@keyframes citizen-top-gust{0%,54%,100%{transform:none}61%{transform:translate3d(var(--top-gust-shift-x),var(--top-gust-lift),0) scale(var(--top-gust-scale)) rotate(var(--top-gust-angle))}69%{transform:translate3d(var(--top-gust-recoil-x),var(--top-gust-recoil-y),0) scale(var(--top-gust-rebound-scale)) rotate(var(--top-gust-rebound))}79%{transform:none}}
@keyframes citizen-side-gust{0%,51%,100%{transform:none}60%{transform:rotate(var(--side-gust-angle)) translate3d(var(--side-gust-shift-x),var(--side-gust-shift-y),0)}69%{transform:rotate(var(--side-gust-rebound)) translate3d(var(--side-gust-recoil-x),var(--side-gust-recoil-y),0)}79%{transform:none}}

@media(max-width:640px){
  .citizen-hero{height:174px;padding:4px 8px 0}
  .citizen-brand-block{width:190px}
  .citizen-actions{margin-top:28px}
  .citizen-icon-button,.citizen-avatar{width:43px;height:43px}
  .citizen-content{position:relative;z-index:4;padding-top:0}
  .welcome-copy{margin-top:-6px}
}
@media(min-width:641px){
  .citizen-app{width:min(calc(100% - 32px),940px);min-height:calc(100dvh - 32px);margin:16px auto;border-radius:28px;overflow:hidden;padding-bottom:112px}
  .citizen-wave{height:132px}
  .citizen-overlay-shell{top:16px;width:min(calc(100% - 32px),940px);height:330px;overflow:hidden}
  .citizen-top-overlay-wind{left:calc(-2% + var(--top-leaf-x));top:calc(-158px + var(--top-leaf-y));width:min(104%,920px)}
  .citizen-top-overlay-wind img{mask-image:linear-gradient(to right,#000 0,#000 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,#000 0,#000 92%,transparent 100%)}
  .citizen-bottom-nav{
    bottom:18px;
    width:min(calc(100% - 40px),720px);
    height:70px;
    border:1px solid #dfe5e8;
    border-radius:22px;
    box-shadow:0 12px 34px #0a2d5724;
    isolation:isolate;
  }
  .citizen-bottom-nav:before{z-index:-1;inset:-26px -42px -20px;height:auto;border-radius:48px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--paper) 82%,transparent) 0,color-mix(in srgb,var(--paper) 48%,transparent) 57%,transparent 79%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);mask-image:radial-gradient(ellipse at center,#000 0,#000 58%,transparent 82%);-webkit-mask-image:radial-gradient(ellipse at center,#000 0,#000 58%,transparent 82%);opacity:.72}
  .citizen-bottom-nav [aria-current=page]:after{bottom:3px}
}
@media(prefers-reduced-motion:reduce){
  html:not([data-motion-preview="full"]) .citizen-brand-intro{display:none!important}
  html:not([data-motion-preview="full"]) :is(.citizen-overlay-wind,.citizen-overlay-wind img,.citizen-route-curtain,.citizen-app.is-opening *,.citizen-app.is-route-entering [data-cascade],.citizen-app.is-route-reset-entering *){animation:none!important;transition:none!important}
}
html[data-reduce-motion="true"] .citizen-brand-intro{display:none!important}
html[data-reduce-motion="true"] :is(.citizen-overlay-wind,.citizen-overlay-wind img,.citizen-route-curtain,.citizen-app.is-opening *,.citizen-app.is-route-entering [data-cascade],.citizen-app.is-route-reset-entering *){animation:none!important;transition:none!important}
