/* BankSearch.pl - newsletter v7. No remote fonts, trackers or embeds. */
[hidden] { display: none !important; }
.cookie-notice:not(.is-visible) { visibility: hidden; }
.bs-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.bs-home-top { display: grid; grid-template-columns: minmax(0, 1fr) 370px; align-items: center; gap: clamp(28px, 5vw, 72px); max-width: 1120px; margin: 0 auto 58px; }
.bs-home-top .home-hero { padding: 20px 0; }
.bs-home-top .home-hero h1 { font-size: clamp(2.8rem, 5.2vw, 4.7rem); line-height: 1.03; }
.bs-home-top .home-hero > p:last-child { max-width: 540px; font-size: 1.04rem; }
.bs-home-top .home-hero .section-kicker { font-size: .72rem; }
.bs-newsletter-card { position: relative; padding: 28px; border: 1px solid #d8e7f2; border-radius: 26px; background: #fff; box-shadow: 0 18px 56px #17365b0c; }
.bs-newsletter-card::before { position: absolute; top: 0; left: 28px; right: 28px; height: 3px; border-radius: 0 0 4px 4px; background: #20c997; content: ''; }
.bs-card-label { display: flex; align-items: center; gap: 9px; margin: 0 0 20px; color: #16795f; font-size: .65rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.bs-mail-icon { flex: 0 0 auto; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #ccecdf; border-radius: 11px; background: #effbf6; }
.bs-mail-icon svg { width: 18px; height: 18px; }
.bs-newsletter-card h2 { margin: 0 0 12px; color: #0b1f3a; font-size: 2rem; font-weight: 780; line-height: 1.06; letter-spacing: -.04em; }
.bs-card-copy { margin: 0; color: #52657b; font-size: .87rem; line-height: 1.65; }
.bs-card-frequency { margin: 14px 0 20px; padding-top: 13px; border-top: 1px solid #e6edf3; color: #16795f; font-size: .73rem; font-weight: 750; }
.bs-signup { display: grid; gap: 12px; }
.bs-email-label { margin: 0 0 -4px; color: #1d3550; font-size: .8rem; font-weight: 750; }
.bs-email { width: 100%; min-width: 0; min-height: 49px; padding: 12px 14px; border: 1px solid #bdcddc; border-radius: 11px; background: #fbfdff; color: #0b1f3a; font: inherit; font-size: 1rem; }
.bs-email::placeholder { color: #6c7f90; opacity: 1; }
.bs-newsletter-card :focus-visible, .bs-newsletter-prompt :focus-visible, .bs-newsletter-page :focus-visible { outline: 3px solid #176bdb; outline-offset: 3px; }
.bs-consent { display: flex; align-items: flex-start; gap: 10px; color: #52657b; font-size: .76rem; line-height: 1.55; cursor: pointer; }
.bs-consent input { flex: 0 0 auto; width: 17px; height: 17px; margin: 3px 0 0; accent-color: #176bdb; }
.bs-signup-button, .bs-primary-link { display: inline-flex; align-items: center; justify-content: center; min-height: 47px; padding: 13px 18px; border: 0; border-radius: 11px; background: #0b1f3a; color: #fff; font: inherit; font-size: .85rem; font-weight: 750; text-decoration: none; cursor: pointer; transition: background .15s; }
.bs-signup-button:hover, .bs-primary-link:hover { background: #174477; }
.bs-signup-button:disabled { cursor: wait; opacity: .65; }
.bs-form-note { margin: 0; color: #5c6f83; font-size: .7rem; line-height: 1.6; }
.bs-form-note a, .bs-text-link { color: #1763bd; text-decoration: underline; text-underline-offset: 3px; }
.bs-form-status { margin: 0; border-radius: 10px; color: #52657b; font-size: .8rem; line-height: 1.55; }
.bs-form-status:not(:empty) { padding: 12px; background: #f0f5fa; }
.bs-form-status[data-state='success'] { background: #effaf4; color: #146344; }
.bs-form-status[data-state='error'] { background: #fff3f3; color: #982e39; }
.bs-form-status:empty { display: none; }
.bs-already-link { display: inline-block; margin-top: 15px; color: #556e82; font-size: .75rem; text-underline-offset: 3px; text-decoration: underline; }
.bs-nojs { padding: 12px; border: 1px solid #bdcddc; border-radius: 10px; font-size: .8rem; line-height: 1.5; }
.bs-newsletter-prompt { position: fixed; z-index: 990; left: 24px; bottom: 24px; width: min(352px, calc(100vw - 32px)); max-height: calc(100dvh - 48px); overflow-y: auto; padding: 25px; border: 1px solid #d4e3ee; border-radius: 21px; background: #fff; color: #0b1f3a; box-shadow: 0 14px 50px #17365b23; }
.bs-prompt-close { position: absolute; top: 7px; right: 7px; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #52657b; cursor: pointer; }
.bs-prompt-close:hover { background: #f0f5fa; }
.bs-prompt-close svg { width: 17px; height: 17px; }
.bs-newsletter-prompt .bs-card-label { margin-bottom: 12px; padding-right: 18px; }
.bs-newsletter-prompt h2 { margin: 0 0 10px; font-size: 1.45rem; line-height: 1.17; letter-spacing: -.035em; }
.bs-newsletter-prompt p:not(.bs-card-label) { margin: 0; color: #52657b; font-size: .82rem; line-height: 1.65; }
.bs-prompt-actions { display: flex; gap: 14px; align-items: center; margin-top: 17px; }
.bs-prompt-actions .bs-primary-link { min-height: 42px; padding: 11px 15px; font-size: .77rem; }
.bs-prompt-later { min-height: 42px; padding: 7px 0; border: 0; background: none; color: #52657b; font: inherit; font-size: .77rem; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.bs-newsletter-page { max-width: 1120px; margin: 0 auto; }
.bs-newsletter-hero { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: clamp(32px, 6vw, 80px); align-items: center; padding: 8px 0 62px; }
.bs-audience { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 23px; padding: 8px 12px; border-radius: 999px; background: #e7f7f0; color: #176c53; font-size: .74rem; font-weight: 700; }
.bs-audience::before { width: 6px; height: 6px; border-radius: 50%; background: #16815e; content: ''; }
.bs-newsletter-title { font-size: clamp(2.75rem, 5.5vw, 4.7rem); line-height: 1.04; letter-spacing: -.055em; }
.bs-newsletter-title span { color: #16795f; }
.bs-newsletter-lead { max-width: 580px; margin: 23px 0 22px; color: #52657b; font-size: 1.04rem; line-height: 1.75; }
.bs-editorial-sign { display: flex; align-items: center; gap: 13px; margin-top: 28px; padding-top: 22px; border-top: 1px solid #dbe7f1; }
.bs-editorial-sign .bs-mail-icon { width: 44px; height: 44px; }
.bs-editorial-sign p { margin: 0; color: #0b1f3a; font-size: .9rem; font-weight: 750; }
.bs-editorial-sign small { display: block; margin-top: 4px; color: #60718a; font-size: .73rem; font-weight: 400; }
.bs-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding: 24px 0 56px; border-top: 1px solid #dbe7f1; }
.bs-benefits article { padding: 20px 20px 20px 0; }
.bs-benefits article + article { padding-left: 26px; border-left: 1px solid #dbe7f1; }
.bs-benefits b { color: #176bdb; font-size: .72rem; letter-spacing: .05em; }
.bs-benefits h2 { margin: 12px 0 9px; font-size: 1.1rem; letter-spacing: -.02em; }
.bs-benefits p { margin: 0; color: #52657b; font-size: .87rem; line-height: 1.75; }
.bs-newsletter-details { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; padding: 38px; border: 1px solid #d8e7f2; border-radius: 25px; background: #fff; }
.bs-newsletter-details h2 { margin: 0 0 14px; font-size: 1.6rem; letter-spacing: -.04em; }
.bs-newsletter-details p { color: #52657b; font-size: .89rem; line-height: 1.75; }
.bs-newsletter-details details { border-bottom: 1px solid #e4ecf3; }
.bs-newsletter-details summary { padding: 17px 0; font-size: .88rem; font-weight: 700; cursor: pointer; }
.bs-newsletter-details details p { margin-top: 0; }
.bs-newsletter-confirm { max-width: 650px; margin: 50px auto 90px; padding: 40px; border: 1px solid #d8e7f2; border-radius: 28px; background: #fff; }
.bs-newsletter-confirm h1 { font-size: 3rem; line-height: 1.05; }
.bs-newsletter-confirm p { color: #52657b; line-height: 1.75; }
.bs-newsletter-confirm .bs-primary-link { margin-top: 15px; }
.bs-policy-newsletter { scroll-margin-top: 24px; }
@media (max-width: 1050px) {
  .bs-home-top, .bs-newsletter-hero { grid-template-columns: minmax(0, 1fr) 340px; gap: 32px; }
  .main-nav a { padding-inline: 10px; }
}
@media (max-width: 780px) {
  .bs-home-top, .bs-newsletter-hero { grid-template-columns: 1fr; gap: 28px; }
  .bs-home-top .home-hero h1 { max-width: 650px; font-size: clamp(2.7rem, 7.5vw, 4rem); }
  .bs-newsletter-card { width: 100%; }
  .bs-home-top { margin-bottom: 36px; }
  .bs-newsletter-title { font-size: clamp(2.8rem, 8.5vw, 4.5rem); }
  .bs-newsletter-hero { padding-bottom: 35px; }
  .bs-benefits { gap: 0; padding-bottom: 26px; }
  .bs-benefits article { padding-right: 15px; }
  .bs-benefits article + article { padding-left: 15px; }
  .bs-newsletter-details { grid-template-columns: 1fr; gap: 10px; padding: 26px; }
}
@media (max-width: 480px) {
  .bs-newsletter-card { padding: 24px; border-radius: 22px; }
  .bs-newsletter-prompt { left: 16px; bottom: max(16px, env(safe-area-inset-bottom)); padding: 21px; }
  .bs-newsletter-prompt h2 { font-size: 1.3rem; }
  .bs-newsletter-prompt h2 br { display: none; }
  .bs-newsletter-prompt p:not(.bs-card-label) { font-size: .79rem; }
  .bs-benefits { grid-template-columns: 1fr; }
  .bs-benefits article, .bs-benefits article + article { padding: 20px 0; border-left: 0; }
  .bs-benefits article + article { border-top: 1px solid #dbe7f1; }
  .bs-newsletter-confirm { padding: 26px; }
  .bs-newsletter-confirm h1 { font-size: 2.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .bs-newsletter-prompt, .bs-signup-button, .bs-primary-link { transition: none; }
}
