/* R4: a photographic bank introduction and a quieter product film. */
.bank-photo-figure { margin: 0; min-width: 0; }
.bank-photo-composition { position: relative; padding: 12px 0 66px; }
.bank-photo-link { display: block; overflow: hidden; border-radius: 32px 10px 28px 10px; box-shadow: 0 15px 42px #2c51431c; }
.bank-photo-link img { display: block; width: 100%; height: auto; aspect-ratio: 1.5; object-fit: cover; object-position: 51% 45%; }
.bank-photo-composition .bank-ep-preview { position: absolute; right: 1%; bottom: -3px; width: 36%; height: auto; aspect-ratio: .92; background: transparent; overflow: visible; border: 0; border-radius: 0; box-shadow: none; }
.bank-ep-preview::before, .bank-ep-preview::after { display: none; }
.bank-ep-preview .ep-sheet { top: 0; bottom: auto; box-shadow: 0 10px 25px #1b43342b; border: 4px solid #fff; }
.bank-ep-preview .ep-sheet-back { width: 78%; left: 1%; transform: rotate(-8deg); }
.bank-ep-preview .ep-sheet-front { width: 82%; left: 13%; top: 10%; transform: rotate(6deg); }
.bank-photo-figure figcaption { position: relative; margin-top: -48px; min-height: 85px; padding-right: 40%; color: #526761; font-size: .78rem; line-height: 1.55; }
.bank-photo-figure figcaption strong, .bank-photo-figure figcaption span { display: block; }
.bank-photo-figure figcaption a { display: inline-block; margin-top: 8px; color: #245d52; font-size: .86rem; font-weight: 700; }
.bank-photo-link:focus-visible, .bank-ep-preview:focus-visible { outline: 3px solid #197984; outline-offset: 6px; }
.r4-home .cri-film-layout { max-width: 1240px; grid-template-columns: minmax(280px, 1fr) minmax(0, 780px); gap: 36px; }
.cri-home-film { background: radial-gradient(ellipse at 80% 40%, #e8f1e8, transparent 67%), #f4f6f1; }
.cri-film-player { position: relative; overflow: hidden; border: 0; border-radius: 24px; background: #f5f7ef; box-shadow: 0 18px 48px #2852411f; isolation: isolate; }
.cri-film-cover { position: absolute; inset: 0; z-index: 2; }
.cri-film-cover[hidden] { display: none; }
.cri-film-cover picture, .cri-film-cover img { display: block; width: 100%; height: 100%; }
.cri-film-cover img { object-fit: cover; }
.cri-film-play { position: absolute; right: 6%; top: 45%; display: grid; justify-items: center; gap: 12px; transform: translateY(-50%); padding: 12px; color: #153e3b; border: 0; background: transparent; font: inherit; font-weight: 700; cursor: pointer; }
.cri-film-play-icon { display: grid; place-items: center; width: 76px; height: 76px; border-radius: 50%; background: #fffffff2; box-shadow: 0 8px 30px #173b3c38; transition: transform .2s ease; }
.cri-film-play svg { width: 25px; height: 25px; margin-left: 4px; fill: currentColor; }
.cri-film-play-label { font-size: .85rem; line-height: 1.3; padding: 8px 12px; background: #fffffff2; border-radius: 20px; white-space: nowrap; }
.cri-film-play:hover .cri-film-play-icon { transform: scale(1.05); }
.cri-film-play:focus-visible { outline: 3px solid #197984; outline-offset: 4px; border-radius: 18px; }
@media (max-width: 1000px) {
  .r4-home .cri-film-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .cri-home-film .cri-film-heading { max-width: 44rem; }
  .cri-home-film .cri-film-media { max-width: 780px; width: 100%; }
}
@media (max-width: 760px) {
  body[data-site-polish] #main .rv-bank-hero { gap: 18px; }
  body[data-site-polish] #main .rv-bank-hero > div:first-child > .eyebrow,
  body[data-site-polish] #main .rv-bank-hero > div:first-child > h1,
  body[data-site-polish] #main .rv-bank-hero > div:first-child > .lead { margin: 0; }
  .rv-bank-hero > .bank-photo-figure { grid-row: 3; }
  .bank-photo-composition { padding-top: 6px; padding-bottom: 45px; }
  .bank-photo-link { border-radius: 24px 8px 22px 8px; }
  .bank-photo-link img { aspect-ratio: 1.35; }
  .bank-photo-composition .bank-ep-preview { width: 37%; bottom: -4px; }
  .bank-photo-figure figcaption { margin-top: -27px; min-height: 93px; font-size: .7rem; }
  .bank-photo-figure figcaption a { font-size: .78rem; }
}
@media (max-width: 650px) {
  .cri-film-player { margin-inline: 0; border-radius: 20px; }
  .cri-film-play { top: 56%; right: 50%; transform: translate(50%, -50%); }
  .cri-film-play-icon { width: 66px; height: 66px; }
}
@media (prefers-reduced-motion: reduce) {
  .cri-film-play-icon { transition: none; }
}

/* Keep the approved bank navigation readable within the photographic layout. */
html body[data-site-polish] #main .ep-bank-path h3,
html body[data-site-polish] #main .ep-bank-path .text-link { font-size:16px; word-break:normal; hyphens:none; }
@media (max-width:760px) {
  html body[data-site-polish] #main .ep-bank-path { grid-template-columns:minmax(0,1fr); gap:14px; }
  html body[data-site-polish] #main .ep-bank-path .mini-step { display:grid; grid-template-columns:24px minmax(0,1fr); gap:12px; align-items:start; }
  html body[data-site-polish] #main .ep-bank-path .mini-step::before { display:none; }
}
