.bank-service[hidden],#food[hidden]{display:none!important}.bank-service{position:relative;z-index:1;height:1396.060606svh;margin-top:calc(-1 * var(--food-hero-height,100svh));isolation:isolate;pointer-events:none}.bank-pin{position:sticky;top:0;height:100svh;overflow:clip;background:#000}.bank-bridge,.bank-crystal{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.bank-bridge{z-index:2}.bank-crystal{z-index:1;touch-action:pan-y}.bank-service.is-final .bank-crystal{pointer-events:auto;cursor:grab}.bank-crystal.dragging{cursor:grabbing}.bank-crystal:focus-visible{outline:1px solid #8899aa;outline-offset:-8px}.bank-copy{position:absolute;z-index:3;left:59%;top:50%;transform:translateY(-50%);width:34%;opacity:0;color:#161c25}.bank-copy h2{position:static;font:800 clamp(44px,4.6vw,88px)/1.07 Barlow,Arial,sans-serif;text-transform:uppercase;letter-spacing:-.025em;margin:0 0 28px}.bank-copy p{font:400 clamp(17px,1.5vw,25px)/1.45 Arial,sans-serif;margin:0;max-width:540px;color:#606873}.bank-copy [data-wave]{--dkw-set:#161c25!important;--dkw-dim:#b8bec7!important;--dkw-hit:#d49a00!important;--dkw-accent:#d49a00!important}.bank-copy p[data-wave]{--dkw-set:#606873!important;--dkw-dim:#c3c8ce!important}.bank-back{position:absolute;z-index:4;left:5%;top:30px;color:#626b78;font:12px Arial,sans-serif;opacity:0;pointer-events:none}.bank-service.is-final .bank-back{opacity:1;pointer-events:auto}.bank-load,.bank-retry{position:fixed;z-index:25;left:5%;bottom:25px;color:#aaa;font:12px Arial,sans-serif}.bank-retry{left:auto;right:5%}.bank-service.is-final{pointer-events:auto}.bank-gesture{position:absolute;z-index:3;left:29%;bottom:7%;transform:translateX(-50%);font:11px Arial,sans-serif;letter-spacing:.05em;color:#8b9299;opacity:0;pointer-events:none}.bank-service.is-final .bank-gesture{opacity:1;transition:opacity 1s}.food-journey .directions li:has([data-service="banks"])>span{opacity:var(--selection-description,1)}.food-journey .directions li:has([data-service="banks"]) button:before{opacity:calc(var(--glow,0)*var(--selection-beacon-opacity,1))}.directions .direction-label{text-transform:uppercase}html.site-loading .bank-service{visibility:hidden}
@media(max-width:699px){.bank-copy{left:7%;width:86%;top:63%;transform:none}.bank-copy h2{font-size:clamp(34px,9vw,52px);margin-bottom:18px}.bank-copy p{font-size:clamp(15px,4.3vw,20px);line-height:1.4}.bank-back{top:22px;left:7%}.bank-gesture{left:50%;bottom:auto;top:55%;font-size:10px}}
@media(prefers-reduced-motion:reduce){.bank-service{height:150svh;margin-top:0}.bank-copy{opacity:1}}

.lowercase-conjunction{text-transform:none!important}.directions .direction-label .lowercase-conjunction{display:inline;font:inherit;color:inherit;margin:0;opacity:1}
.bank-copy h2,.bank-copy h2 *{text-shadow:none!important;filter:none!important;--dkw-settle:0em}

.bank-vault,.bank-vault-front{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;visibility:hidden}.bank-vault{z-index:0}.bank-vault-front{z-index:2}.bank-vault-glass{position:absolute;box-sizing:border-box;z-index:3;left:50%;top:50%;width:var(--glass-width,66vw);height:var(--glass-height,55vh);padding:clamp(20px,2.2vw,30px) clamp(24px,3.15vw,42px) clamp(17px,1.7vw,23px);display:flex;flex-direction:column;justify-content:center;border-radius:var(--optical-radius,35px);opacity:0;color:#193d46;pointer-events:none;isolation:isolate;overflow:hidden;transform:translate(-50%,-50%);transition:opacity .65s ease}
.bank-glass-lens{position:absolute;inset:0;width:100%;height:100%;z-index:-2;border-radius:inherit;pointer-events:none}
.bank-vault-glass:before{content:none}
.bank-vault-glass:after{content:"";position:absolute;inset:2px;pointer-events:none;z-index:5}
.bank-vault-glass h2{position:relative;text-transform:none;--dkw-settle:0em}
.bank-vault-glass p{position:relative}
.bank-vault-glass [data-wave]{--dkw-set:#ffffff!important;--dkw-dim:#edf1f3!important;--dkw-hit:#ffbf24!important;--dkw-accent:#ffbf24!important;--dkw-settle:0em}
.bank-vault-glass p[data-wave]{--dkw-set:#f0f2f3!important;--dkw-hit:#fff1d7!important;--dkw-accent:#fff1d7!important}
.bank-service.is-vault .bank-back{opacity:1;pointer-events:auto}.bank-service.is-vault .bank-gesture{opacity:0}.bank-service.is-vault{pointer-events:auto}
@media(max-width:699px){.bank-vault-glass{padding:20px 24px;border-radius:25px}}
@media(prefers-reduced-motion:reduce){.bank-service{height:240svh}.bank-vault-glass{backdrop-filter:none;background:rgba(250,252,253,.93)}}

@media(prefers-reduced-motion:reduce){.bank-vault-glass{transition:none}}

.bank-copy.is-leaving .heading-letter{transform:var(--bank-burst)!important;transition:none!important;will-change:transform,opacity}.bank-copy.is-leaving h2{overflow:visible}

.bank-heading-ash{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}.bank-copy.is-leaving .heading-letter{transform:none!important}

/* Film-lit optical panel. Highlights sit beneath the readable typography. */



@media(prefers-reduced-motion:reduce){}

/* Approved smoke-oak material and two-column corridor captions. */
.bank-vault-glass .bank-glass-lens{opacity:.34}
#banks .bank-vault-glass{padding:12px;justify-content:center}
#banks .bank-vault-glass[aria-hidden="false"]{pointer-events:auto}
#banks .bank-vault-glass.has-scenario-video{justify-content:flex-start;gap:0}
#banks .bank-vault-glass .vault-film{position:relative;z-index:1;width:100%;height:100%;flex:none;display:flex;flex-direction:column;justify-content:center;container-type:inline-size;overflow:visible;background:none;box-shadow:none}
#banks .bank-vault-glass.has-scenario-video .vault-film{justify-content:flex-start}
#banks .bank-vault-glass .film-surface>.format-caption{position:relative;flex:none;min-height:172px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);grid-template-rows:auto;grid-template-areas:"title description";align-items:start;gap:16px 12px;padding:24px 10px 18px;background:none;border-radius:0;color:#fff;isolation:isolate;box-shadow:none}
#banks .bank-vault-glass .film-surface>.format-caption:before,#banks .bank-vault-glass .vault-film:before{content:none}
#banks .bank-vault-glass .format-caption h2{grid-area:title;color:#fff;margin:0;max-width:none;font-size:clamp(12.8px,4.65cqw,28px);line-height:1.15;font-weight:750;text-transform:uppercase;letter-spacing:-.025em;text-wrap:balance}
#banks .bank-vault-glass .format-caption p{grid-area:description;color:#fafcff;margin:0;max-width:42ch;font-size:clamp(13px,4cqw,17px);line-height:1.5;text-wrap:pretty}
#banks .bank-vault-glass .vault-film>.format-media.film-video-art{position:relative;flex:none;z-index:2;aspect-ratio:16/9;height:auto;width:100%;overflow:hidden;border-radius:10px;box-shadow:none;background:#e7eff3}
#banks .vault-film .film-video-art>.vault-scenario-video{width:100%;height:100%;object-fit:contain;object-position:center;border-radius:inherit;clip-path:inset(0 round 10px)}
#banks .tunnel-smoke{position:absolute;left:0;right:0;bottom:0;top:0;z-index:0;overflow:hidden;pointer-events:none;border-radius:0 0 var(--optical-radius) var(--optical-radius);background:linear-gradient(180deg,transparent,#1f1b15cc 100px,#5b4e3bcc)}
#banks .tunnel-smoke[data-renderer="webgl"]{background:none}
#banks .tunnel-smoke canvas{display:block;width:100%;height:100%;border-radius:inherit}
.bank-vault-glass:not(.portal-visible) .optical-caustic *,.finance-suspended .bank-vault-glass .optical-caustic *{animation-play-state:paused!important}
@container(min-width:660px){
 #banks .bank-vault-glass .film-surface>.format-caption{grid-template-columns:minmax(0,1fr) minmax(0,1.22fr);grid-template-rows:auto;grid-template-areas:"title description";gap:32px;padding:28px 18px 22px}
 #banks .bank-vault-glass .format-caption h2{max-width:19ch}
}
@container(max-width:360px){#banks .bank-vault-glass .film-surface>.format-caption{min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 8px;padding-inline:8px}}
@media(max-width:699px){#banks .bank-vault-glass .vault-film>.format-media.film-video-art{border-radius:6px}#banks .vault-film .film-video-art>.vault-scenario-video{clip-path:inset(0 round 6px)}}

#banks .finance-copy-animated{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI Variable Text","Segoe UI",sans-serif}
#banks .format-caption .finance-copy-title{font-family:inherit;font-weight:750;letter-spacing:-.025em;line-height:1.14;color:#fff;perspective:700px}
#banks .format-caption .finance-copy-body{font-family:inherit;line-height:1.5;color:#fafcff;text-wrap:pretty;letter-spacing:0}
#banks .format-card{container-type:inline-size}
#banks .format-card .format-caption{height:var(--gallery-caption-height,auto);min-height:0}
#banks .format-card .format-caption>div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);align-items:start;gap:clamp(12px,4cqw,40px)}
#banks .format-card .format-caption .finance-copy-title{font-size:clamp(12.5px,4.65cqw,32px);line-height:1.08;text-transform:uppercase;margin:0;max-width:none}
#banks .finance-copy-two-lines .finance-copy-word{display:block}
#banks .format-card .finance-copy-body{font-size:clamp(13px,3.6cqw,17px);max-width:52ch;line-height:1.5}
#banks .format-card .scenario-film{pointer-events:auto}
#banks .format-card .scenario-video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 43%;background:#10191d;transform:none}
#banks .finance-copy-word{display:inline-block;white-space:nowrap}
#banks .finance-copy-letter{display:inline-block;text-shadow:0 2px 4px #1d19194d;transform-origin:50% 85%}
#banks .finance-copy-animated:not(.finance-copy-ready) .finance-copy-letter{opacity:.08;transform:translateY(.4em) rotateX(62deg)}
#banks .finance-copy-animated:not(.finance-copy-ready) .finance-copy-body{opacity:0;transform:translateY(10px)}
#banks .finance-copy-ready .finance-copy-letter{animation:finance-letter-arrive .72s cubic-bezier(.16,1,.3,1) var(--letter-delay) both}
#banks .finance-copy-ready .finance-copy-body{animation:finance-paragraph-arrive .8s cubic-bezier(.16,1,.3,1) .18s both}
#banks.motion-paused .finance-copy-ready *,#banks.finance-suspended .finance-copy-ready *{animation-play-state:paused!important}
@keyframes finance-letter-arrive{from{opacity:.08;transform:translateY(.4em) rotateX(62deg)}to{opacity:1;transform:translateY(0) rotateX(0)}}
@keyframes finance-paragraph-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#banks .finance-copy-animated .finance-copy-letter,#banks .finance-copy-animated .finance-copy-body{animation:none;transform:none;opacity:1}}

#banks .bank-vault-glass.has-finale .format-caption{display:none}
#banks .finance-finale{display:flex;align-items:center;width:100%;height:100%;padding:clamp(18px,4.5cqw,38px);overflow:hidden;border-radius:inherit}
#banks .finance-finale[hidden]{display:none}
#banks .finance-finale-content{width:100%;font-family:var(--finance-ui);color:#fff}
#banks .bank-vault-glass .finance-finale-title{margin:0;font-family:inherit;font-size:clamp(26px,11.7cqw,88px);font-weight:750;line-height:.96;letter-spacing:-.04em;text-transform:uppercase;text-shadow:0 2px 5px #17120f40}
#banks .finale-line{position:relative;display:block;white-space:nowrap}
#banks .finale-line-ink{display:block;transform-origin:left center}
#banks .finale-registration{position:absolute;inset:0;pointer-events:none;transform-origin:left center}
#banks .finale-slice{position:absolute;inset:0;display:block;color:#fff;text-shadow:none}
#banks :is(.finance-copy-letter,.finale-letter)>i{font-style:inherit;text-shadow:none}
#banks [data-wave-finance]{--dkw-hit:#ffbf24;--dkw-accent:#ffbf24}
#banks [data-wave-finance][data-wave-active="false"] .dkw-word{background-image:none;color:#fff}
#banks .finale-line+.finale-line{margin-top:.1em}
#banks .finale-letter{display:inline-block;transform-origin:50% 70%}
#banks .finale-space{display:inline-block;width:.26em}
#banks .finance-finale p{max-width:40ch;margin:clamp(24px,5cqw,40px) 0 0;font-size:clamp(13px,3.7cqw,18px);font-weight:400;line-height:1.5;color:#f6f2e9;letter-spacing:0}
@container(max-width:360px){#banks .format-card .format-caption>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}#banks .format-card .format-caption{padding-left:0;padding-right:0}}
