.finleo-private-scope.finleo-private-root {
  --finleo-private-purple: #6765f2;
  --finleo-private-purple-dark: #504dce;
  --finleo-private-lilac: #f3f3ff;
  --finleo-private-text: #212121;
  --finleo-private-muted: #656565;
  width: 100%; max-width: 100%; color: var(--finleo-private-text); background: #fff;
  font-family: Arial, Helvetica, system-ui, sans-serif; font-size: 16px; line-height: 1.4;
  text-align: left; isolation: isolate; overflow: clip; -webkit-text-size-adjust: 100%;
}
.finleo-private-root, .finleo-private-root :where(div, main, section, header, footer, nav, aside, article, h1, h2, h3, p, ul, li, a, button, input, textarea, label, form, dl, dt, dd, span, picture, img) { box-sizing: border-box; }
.finleo-private-root :where(h1, h2, h3, p, ul, dl, dt, dd) { margin: 0; }
.finleo-private-root :where(a) { color: inherit; text-decoration: none; }
.finleo-private-root :where(button, input, textarea) { font: inherit; }
.finleo-private-root :where(button, a, input, textarea, [tabindex]):focus-visible { outline: 3px solid #453eac; outline-offset: 4px; }
.finleo-private-root :where(button) { cursor: pointer; }
.finleo-private-root [hidden] { display: none !important; }
.finleo-private-root :where(section, footer) { scroll-margin-top: 24px; }
.finleo-private-scope .finleo-private-container { --finleo-private-container-inset: 48px; width: calc(100% - 96px); max-width: 1480px; margin-inline: auto; min-width: 0; }
.finleo-private-scope .finleo-private-image { display: block; max-width: 100%; height: auto; }
.finleo-private-scope .finleo-private-title { color: #212121; font-size: clamp(36px, 2.5vw, 48px); line-height: 1.17; font-weight: 700; text-align: center; letter-spacing: -.025em; }
.finleo-private-scope .finleo-private-title-brand { display: inline-flex; align-items: center; gap: 12px; vertical-align: middle; white-space: nowrap; }
.finleo-private-scope .finleo-private-title .finleo-private-title-brand { vertical-align: baseline; }
.finleo-private-scope .finleo-private-brand-mark { width: 1em; height: 1em; display: inline-block; flex: 0 0 auto; }
.finleo-private-scope .finleo-private-heading { font-size: 40px; line-height: 1.2; font-weight: 700; text-align: center; letter-spacing: -.02em; color: #3f3f3f; }
.finleo-private-scope .finleo-private-hero { padding-top: 16.875px; }
.finleo-private-scope .finleo-private-intro { margin: 22px auto 32px; text-align: center; font-size: 20px; line-height: 24px; color: var(--finleo-private-muted); }
.finleo-private-scope .finleo-private-carousel { position: relative; border-radius: 32px; overflow: hidden; background: #d0e0ff; }
.finleo-private-scope .finleo-private-banner-track { display: flex; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; }
.finleo-private-scope .finleo-private-banner-track::-webkit-scrollbar { display: none; }
.finleo-private-scope .finleo-private-slide { flex: 0 0 100%; min-width: 0; scroll-snap-align: start; scroll-snap-stop: always; position: relative; }
.finleo-private-scope .finleo-private-banner-link { display: block; width: 100%; height: 100%; }
.finleo-private-scope .finleo-private-banner-image { display: block; width: 100%; height: auto; }
.finleo-private-scope .finleo-private-banner-tail { display: none; }
.finleo-private-scope .finleo-private-banner-controls { position: absolute; right: 2.15%; bottom: 11.3%; display: flex; gap: 11px; }
.finleo-private-scope .finleo-private-arrow { padding: 0; flex: 0 0 auto; width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 9px; background: #f6f6f6; color: #454545; font-size: 27px; line-height: 1; transition: background-color .15s; }
.finleo-private-scope .finleo-private-arrow-icon { display: block; width: .6em; height: .6em; flex: none; fill: none; pointer-events: none; }
.finleo-private-scope .finleo-private-arrow:hover { background: #e8e6ff; }
.finleo-private-scope .finleo-private-arrow:disabled { opacity: .42; cursor: default; }
.finleo-private-scope .finleo-private-banner-dots { display: flex; position: absolute; right: 2.1%; left: 2.1%; bottom: 4.8%; gap: 10px; padding-block: 8px; }
.finleo-private-scope .finleo-private-dot { padding: 0; flex: 1; border: 0; border-radius: 6px; height: 5px; background: rgba(255,255,255,.55); box-shadow: 0 0 0 2px rgba(210,221,255,.12); }
.finleo-private-scope .finleo-private-carousel .finleo-private-dot { position: relative; overflow: hidden; }
.finleo-private-scope .finleo-private-dot-progress { display: block; width: 100%; height: 100%; border-radius: inherit; background: #fff; transform: scaleX(0); transform-origin: left center; pointer-events: none; }
.finleo-private-scope .finleo-private-menu { padding: 60px 0 120px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.finleo-private-scope .finleo-private-menu-card { min-height: 262px; padding: 24px; background: var(--finleo-private-lilac); border-radius: 32px; position: relative; overflow: hidden; transition: transform .18s, box-shadow .18s; }
.finleo-private-scope .finleo-private-menu-card:hover { transform: translateY(-3px); box-shadow: 0 8px 22px rgba(56,49,130,.1); }
.finleo-private-scope .finleo-private-menu-insurance { background: linear-gradient(135deg,#d0eae0,#edfff8); }
.finleo-private-scope .finleo-private-menu-title { font-size: 22px; line-height: 26px; font-weight: 600; margin-bottom: 8px; position: relative; z-index: 1; }
.finleo-private-scope .finleo-private-menu-kicker { font-size: 16px; line-height: 20px; font-weight: 600; display: block; margin-bottom: 8px; }
.finleo-private-scope .finleo-private-menu-description { color: #4d4d4d; line-height: 20px; max-width: 100%; padding-bottom: 124px; }
.finleo-private-scope .finleo-private-menu-image { position: absolute; right: 24px; bottom: 16px; width: 145px; height: 145px; object-fit: contain; }
.finleo-private-scope .finleo-private-menu-insurance .finleo-private-menu-image { width: 140px; height: 166px; bottom: 0; }
.finleo-private-scope .finleo-private-tablet-only { display: none; }
.finleo-private-scope .finleo-private-services { padding: 120px 0; background: var(--finleo-private-lilac); border-radius: 32px; }
.finleo-private-scope .finleo-private-subtitle { color: var(--finleo-private-muted); text-align: center; margin-top: 16px; font-size: 20px; line-height: 24px; }
.finleo-private-scope .finleo-private-filters { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin: 40px 0; }
.finleo-private-scope .finleo-private-pill { border: 0; border-radius: 90px; padding: 12px 16px; font-size: 16px; line-height: 20px; color: #3f3f3f; background: #fff; white-space: nowrap; transition: background .15s,color .15s; }
.finleo-private-scope .finleo-private-pill:hover { background: #e2e1ff; }
.finleo-private-scope .finleo-private-pill[aria-pressed="true"] { color: white; background: var(--finleo-private-purple); }
.finleo-private-scope .finleo-private-scroll-row { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x proximity; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #cbc8ea transparent; padding-bottom: 4px; }
.finleo-private-scope .finleo-private-offers { margin-top: 40px; }
.finleo-private-scope .finleo-private-service-card { flex: 0 0 calc((100% - 48px)/3); background: #fff; padding: 24px; border-radius: 24px; min-height: 398px; display: flex; flex-direction: column; scroll-snap-align: start; min-width: 302px; }
.finleo-private-scope .finleo-private-card-title { font-size: 24px; font-weight: 600; line-height: 30px; }
.finleo-private-scope .finleo-private-specs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 24px 0 40px; }
.finleo-private-scope .finleo-private-spec-label { color: var(--finleo-private-muted); font-size: 14px; line-height: 18px; margin-bottom: 4px; }
.finleo-private-scope .finleo-private-spec-value { font-size: 20px; font-weight: 600; line-height: 24px; overflow-wrap: break-word; }
.finleo-private-scope .finleo-private-service-bottom { margin-top: auto; }
.finleo-private-scope .finleo-private-benefits-link { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; font-size: 15px; font-weight: 600; margin-bottom: 16px; }
.finleo-private-scope .finleo-private-token { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; background: #bbe92c; color: #3f3f3f; font-weight: 700; font-size: 12px; }
.finleo-private-scope .finleo-private-card-actions { display: flex; gap: 8px; }
.finleo-private-scope .finleo-private-card-actions .finleo-private-button { flex: 1; min-width: 0; }
.finleo-private-scope .finleo-private-button { display: inline-flex; justify-content: center; align-items: center; gap: 6px; min-height: 44px; padding: 11px 16px; border: 1px solid var(--finleo-private-purple); border-radius: 10px; background: var(--finleo-private-purple); color: white; font-size: 16px; line-height: 20px; font-weight: 600; text-align: center; text-decoration: none; transition: background .15s, border-color .15s; }
.finleo-private-scope .finleo-private-button:hover { background: var(--finleo-private-purple-dark); border-color: var(--finleo-private-purple-dark); }
.finleo-private-scope .finleo-private-button-outline { background: transparent; color: var(--finleo-private-purple); }
.finleo-private-scope .finleo-private-button-outline:hover { background: #ebeaff; }
.finleo-private-scope .finleo-private-button-white { background: white; border-color: white; color: #3f3f3f; }
.finleo-private-scope .finleo-private-button-white:hover { background: #eeeaff; border-color: #eeeaff; }
.finleo-private-scope .finleo-private-button:disabled { opacity: .6; cursor: wait; }
.finleo-private-scope .finleo-private-controls { display: flex; justify-content: center; gap: 11px; margin-top: 40px; }
.finleo-private-scope .finleo-private-controls .finleo-private-arrow { background: #f6f6f6; }
.finleo-private-scope .finleo-private-reasons { padding-block: 120px; }
.finleo-private-scope .finleo-private-reasons-track { margin-top: 64px; }
.finleo-private-scope .finleo-private-reason { flex: 0 0 calc((100% - 48px)/3); min-width: 0; position: relative; border-radius: 32px; overflow: hidden; scroll-snap-align: start; }
.finleo-private-scope .finleo-private-reason-image { width: 100%; aspect-ratio: 483/516; object-fit: cover; }
.finleo-private-scope .finleo-private-reason-title { position: absolute; bottom: 16px; left: 16px; right: 16px; border-radius: 24px; background: #fff; padding: 20px 24px; font-size: 20px; line-height: 24px; font-weight: 600; }
.finleo-private-scope .finleo-private-loyalty { padding-block: 120px; }
.finleo-private-scope .finleo-private-loyalty-heading { display: flex; justify-content: center; align-items: center; gap: 8px; flex-wrap: wrap; }
.finleo-private-scope .finleo-private-loyalty-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 25px; margin-top: 40px; }
.finleo-private-scope .finleo-private-loyalty-card { min-width: 0; display: flex; flex-direction: column; }
.finleo-private-scope .finleo-private-loyalty-image { width: 100%; border-radius: 32px; aspect-ratio: 477/490; object-fit: cover; margin-bottom: 32px; }
.finleo-private-scope .finleo-private-copy { color: var(--finleo-private-muted); font-size: 20px; line-height: 24px; }
.finleo-private-scope .finleo-private-loyalty-card .finleo-private-copy { margin: 16px 0 32px; }
.finleo-private-scope .finleo-private-loyalty-card .finleo-private-button { margin-top: auto; width: 100%; }
.finleo-private-scope .finleo-private-journal { padding-bottom: 120px; }
.finleo-private-scope .finleo-private-journal .finleo-private-pill { background: var(--finleo-private-lilac); }
.finleo-private-scope .finleo-private-journal .finleo-private-pill:hover { background: #e2e1ff; }
.finleo-private-scope .finleo-private-journal .finleo-private-pill[aria-pressed="true"] { background: var(--finleo-private-purple); }
.finleo-private-scope .finleo-private-journal-track { margin-top: 40px; }
.finleo-private-scope .finleo-private-journal-promo { background: linear-gradient(140deg,#7265ff,#b7adff); border-radius: 32px; position: relative; flex: 0 0 415px; min-height: 560px; color: #fff; overflow: hidden; display: flex; align-items: end; scroll-snap-align: start; }
.finleo-private-scope .finleo-private-journal-promo-image { position: absolute; top: 0; left: 0; width: 100%; }
.finleo-private-scope .finleo-private-journal-promo-body { position: relative; padding: 32px; width: 100%; }
.finleo-private-scope .finleo-private-journal-promo-body .finleo-private-card-title { margin-bottom: 24px; }
.finleo-private-scope .finleo-private-journal-promo-body .finleo-private-button { width: 100%; }
.finleo-private-scope .finleo-private-article { flex: 0 0 475px; min-height: 560px; border-radius: 32px; background: var(--finleo-private-lilac); overflow: hidden; scroll-snap-align: start; display: flex; flex-direction: column; }
.finleo-private-scope .finleo-private-article-image { width: 100%; height: 360px; object-fit: cover; }
.finleo-private-scope .finleo-private-article-body { padding: 24px; flex: 1; display: flex; flex-direction: column; position: relative; background: var(--finleo-private-lilac); border-radius: 32px 32px 0 0; margin-top: -16px; }
.finleo-private-scope .finleo-private-article-category { color: #645de0; font-size: 16px; line-height: 20px; margin-bottom: 12px; }
.finleo-private-scope .finleo-private-article-title { font-size: 22px; font-weight: 600; line-height: 26px; margin-bottom: 24px; }
.finleo-private-scope .finleo-private-article-link:hover { color: var(--finleo-private-purple); }
.finleo-private-scope .finleo-private-article-more { margin-top: auto; color: #655ec7; font-size: 14px; }
.finleo-private-scope .finleo-private-contact { display: grid; grid-template-columns: 1.116fr 1fr; gap: 24px; padding-bottom: 120px; }
.finleo-private-scope .finleo-private-form-card { display: flex; flex-direction: column; background: var(--finleo-private-lilac); border-radius: 32px; padding: 40px; }
.finleo-private-scope .finleo-private-form-card .finleo-private-heading { text-align: left; }
.finleo-private-scope .finleo-private-form-card > .finleo-private-copy { margin-block: 16px 32px; }
.finleo-private-scope .finleo-private-form { display: flex; flex-direction: column; gap: 12px; flex: 1; }
.finleo-private-scope .finleo-private-field { min-width: 0; }
.finleo-private-scope .finleo-private-field-label { display: block; color: #656565; font-size: 14px; margin-bottom: 5px; }
.finleo-private-scope .finleo-private-input { display: block; width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #deddeb; border-radius: 8px; background: #fff; color: #212121; line-height: 24px; }
.finleo-private-scope .finleo-private-input::placeholder { color: #767676; }
.finleo-private-scope .finleo-private-field-question { display: flex; flex-direction: column; flex: 1 0 auto; }
.finleo-private-scope .finleo-private-field-question .finleo-private-textarea { --finleo-private-question-height: 190px; flex: 1 0 auto; height: var(--finleo-private-question-height); min-height: var(--finleo-private-question-height) !important; resize: vertical; }
.finleo-private-scope .finleo-private-input[aria-invalid="true"] { border-color: #b43142; }
.finleo-private-scope .finleo-private-error { display: block; color: #a12836; font-size: 13px; line-height: 18px; }
.finleo-private-scope .finleo-private-error:empty { display: none; }
.finleo-private-scope .finleo-private-submit { width: 100%; margin: 0; }
.finleo-private-scope .finleo-private-check { display: flex; align-items: flex-start; gap: 8px; color: #656565; font-size: 14px; line-height: 20px; }
.finleo-private-scope .finleo-private-checkbox { accent-color: var(--finleo-private-purple); width: 20px; height: 20px; flex: 0 0 20px; margin: 0; }
.finleo-private-scope .finleo-private-inline-link { text-decoration: underline; text-underline-offset: 2px; }
.finleo-private-scope .finleo-private-loyalty .finleo-private-inline-link { color: var(--finleo-private-purple); text-decoration: none; text-underline-offset: auto; }
.finleo-private-scope .finleo-private-loyalty .finleo-private-inline-link:hover { text-decoration: underline; }
.finleo-private-scope .finleo-private-form-status { color: #464059; font-size: 14px; line-height: 20px; }
.finleo-private-scope .finleo-private-form-status:empty { display: none; }
.finleo-private-scope .finleo-private-contact-side { display: flex; flex-direction: column; gap: 24px; }
.finleo-private-scope .finleo-private-app-card { flex: 1; display: grid; grid-template-columns: minmax(0,1fr) 34%; gap: 24px; padding: 40px; background: linear-gradient(130deg,#9286ff,#b1a8ff); border-radius: 32px; color: #fff; }
.finleo-private-scope .finleo-private-app-copy { display: flex; flex-direction: column; align-items: flex-start; }
.finleo-private-scope .finleo-private-app-card .finleo-private-card-title { font-size: 32px; line-height: 36px; margin-bottom: 16px; }
.finleo-private-scope .finleo-private-app-card .finleo-private-copy { color: #fff; margin-bottom: 24px; }
.finleo-private-scope .finleo-private-app-card .finleo-private-button { margin-top: auto; }
.finleo-private-scope .finleo-private-qr { align-self: start; }
.finleo-private-scope .finleo-private-qr .finleo-private-image { width: 100%; }
.finleo-private-scope .finleo-private-qr-caption { font-size: 14px; line-height: 20px; margin-top: 16px; color: #fff; }
.finleo-private-scope .finleo-private-contacts-card { flex: 1; min-height: 354px; background: #3f3f3f; border-radius: 32px; padding: 40px; position: relative; overflow: hidden; color: #fff; }
.finleo-private-scope .finleo-private-contacts-list { position: relative; z-index: 1; }
.finleo-private-scope .finleo-private-contact-item { margin-bottom: 30px; }
.finleo-private-scope .finleo-private-contact-item:last-child { margin-bottom: 0; }
.finleo-private-scope .finleo-private-contact-item dt { color: #eee; font-size: 16px; margin-bottom: 8px; }
.finleo-private-scope .finleo-private-contact-item dd { margin: 0; font-size: 22px; line-height: 26px; font-weight: 600; }
.finleo-private-scope .finleo-private-contact-link { white-space: nowrap; }
.finleo-private-scope .finleo-private-contact-link:hover { text-decoration: underline; }
.finleo-private-scope .finleo-private-envelope { position: absolute; right: 0; bottom: 0; width: 60%; height: auto; }
.finleo-private-scope .finleo-private-footer { background: #212121; padding: 88px 0 56px; color: #ccc; border-radius: 110px 110px 0 0; }
.finleo-private-scope .finleo-private-footer .finleo-private-heading { text-align: left; color: white; margin-bottom: 64px; }
.finleo-private-scope .finleo-private-directory { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); column-gap: 48px; row-gap: 64px; }
.finleo-private-scope .finleo-private-directory-group:nth-child(2), .finleo-private-scope .finleo-private-directory-group:nth-child(3) { grid-column: span 2; }
.finleo-private-scope .finleo-private-directory-group:nth-child(1) { grid-column: span 4; }
.finleo-private-scope .finleo-private-directory-group:nth-child(4) { grid-column: span 2; }
.finleo-private-scope .finleo-private-directory-title { font-size: 22px; line-height: 26px; color: #fff; margin-bottom: 32px; font-weight: 600; }
.finleo-private-scope .finleo-private-directory-list { list-style: none; padding: 0; columns: 2; column-gap: 32px; }
.finleo-private-scope .finleo-private-directory-group:nth-child(1) .finleo-private-directory-list { columns: 4; }
.finleo-private-scope .finleo-private-directory-group:nth-child(n+5) .finleo-private-directory-list { columns: 1; }
.finleo-private-scope .finleo-private-directory-item { margin: 0 0 16px; font-size: 14px; line-height: 18px; break-inside: avoid; }
.finleo-private-scope .finleo-private-directory-link { color: #bdbdbd; }
.finleo-private-scope .finleo-private-directory-link:hover { color: #fff; text-decoration: underline; }
@media (max-width: 1439px) {
  .finleo-private-scope .finleo-private-container { --finleo-private-container-inset: 32px; width: calc(100% - 64px); }
  .finleo-private-scope .finleo-private-heading { font-size: 34px; }
  .finleo-private-scope .finleo-private-app-card { grid-template-columns: minmax(0,1fr); }
  .finleo-private-scope .finleo-private-qr { display: none; }
  .finleo-private-scope .finleo-private-spec-value { font-size: 18px; }
  .finleo-private-scope .finleo-private-card-actions .finleo-private-button { padding-inline: 8px; font-size: 14px; }
}
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-container { --finleo-private-container-inset: 24px; width: calc(100% - 48px); }
  .finleo-private-scope .finleo-private-hero { padding-top: 6.75px; }
  .finleo-private-scope .finleo-private-title { font-size: 28px; line-height: 32px; }
  .finleo-private-scope .finleo-private-title-brand { gap: 8px; }
  .finleo-private-scope .finleo-private-heading { font-size: 28px; line-height: 32px; }
  .finleo-private-scope .finleo-private-intro { font-size: 14px; line-height: 18px; max-width: 550px; margin: 12px auto 16px; }
  .finleo-private-scope .finleo-private-desktop-break { display: none; }
  .finleo-private-scope .finleo-private-carousel { border-radius: 24px; }
  .finleo-private-scope .finleo-private-banner-track { align-items: stretch; }
  .finleo-private-scope .finleo-private-slide { aspect-ratio: 911/270; }
  .finleo-private-scope .finleo-private-slide:not(.finleo-private-slide-cards) .finleo-private-banner-image { min-height: 100%; object-fit: cover; }
  .finleo-private-scope .finleo-private-banner-head { height: 100%; }
  .finleo-private-scope .finleo-private-banner-controls { bottom: 10%; right: 20px; }
  .finleo-private-scope .finleo-private-arrow { width: 38px; height: 38px; }
  .finleo-private-scope .finleo-private-menu { padding: 56px 0; gap: 8px; grid-template-columns: repeat(4,minmax(0,1fr)); }
  .finleo-private-scope .finleo-private-tablet-only { display: block; }
  .finleo-private-scope .finleo-private-menu-travel, .finleo-private-scope .finleo-private-menu-cards { display: none; }
  .finleo-private-scope .finleo-private-menu-finance { order: 0; }
  .finleo-private-scope .finleo-private-menu-insurance { order: 1; }
  .finleo-private-scope .finleo-private-menu-ai { order: 2; }
  .finleo-private-scope .finleo-private-menu-leasing { order: 3; }
  .finleo-private-scope .finleo-private-menu-goods { order: 4; }
  .finleo-private-scope .finleo-private-menu-journal { order: 5; }
  .finleo-private-scope .finleo-private-menu-shop { order: 6; }
  .finleo-private-scope .finleo-private-menu-all { order: 7; background: linear-gradient(135deg,#8e83ff,#b4acff); color: #fff; }
  .finleo-private-scope .finleo-private-menu-more { position: absolute; right: 12px; top: 12px; font-size: 24px; }
  .finleo-private-scope .finleo-private-menu-all .finleo-private-menu-title { max-width: 140px; padding-right: 16px; }
  .finleo-private-scope .finleo-private-menu-card { min-height: 148px; padding: 12px; border-radius: 16px; }
  .finleo-private-scope .finleo-private-menu-title { font-size: 18px; line-height: 24px; max-width: 170px; }
  .finleo-private-scope .finleo-private-menu-description, .finleo-private-scope .finleo-private-menu-kicker { display: none; }
  .finleo-private-scope .finleo-private-menu-image { width: 98px; height: 92px; right: 8px; bottom: 6px; }
  .finleo-private-scope .finleo-private-menu-insurance .finleo-private-menu-image { width: 74px; height: 94px; bottom: 8px; }
  .finleo-private-scope .finleo-private-services { padding: 56px 0; border-radius: 24px; }
  .finleo-private-scope .finleo-private-subtitle { font-size: 14px; line-height: 18px; margin-top: 8px; }
  .finleo-private-scope .finleo-private-filters { margin: 24px 0; gap: 8px; }
  .finleo-private-scope .finleo-private-pill { font-size: 14px; line-height: 18px; padding: 8px 12px; min-height: 36px; }
  .finleo-private-scope .finleo-private-scroll-row { gap: 16px; }
  .finleo-private-scope .finleo-private-offers { margin-top: 24px; }
  .finleo-private-scope .finleo-private-service-card { flex-basis: calc((100% - 32px)/3); min-height: 312px; padding: 16px; border-radius: 16px; }
  .finleo-private-scope .finleo-private-card-title { font-size: 20px; line-height: 24px; }
  .finleo-private-scope .finleo-private-specs { gap: 16px; margin: 16px 0 24px; }
  .finleo-private-scope .finleo-private-spec-label { font-size: 12px; line-height: 16px; }
  .finleo-private-scope .finleo-private-spec-value { font-size: 15px; line-height: 19px; }
  .finleo-private-scope .finleo-private-benefits-link { font-size: 12px; gap: 4px; }
  .finleo-private-scope .finleo-private-token { width: 17px; height: 17px; font-size: 10px; }
  .finleo-private-scope .finleo-private-card-actions { gap: 4px; }
  .finleo-private-scope .finleo-private-card-actions .finleo-private-button { font-size: 12px; padding: 8px 5px; line-height: 16px; min-height: 36px; }
  .finleo-private-scope .finleo-private-button { font-size: 14px; min-height: 42px; padding: 10px 12px; border-radius: 8px; }
  .finleo-private-scope .finleo-private-controls { margin-top: 24px; }
  .finleo-private-scope .finleo-private-reasons { padding-block: 56px; }
  .finleo-private-scope .finleo-private-reasons-track { margin-top: 24px; }
  .finleo-private-scope .finleo-private-reason { flex-basis: 276px; border-radius: 24px; }
  .finleo-private-scope .finleo-private-reason-image { height: 295px; }
  .finleo-private-scope .finleo-private-reason-title { bottom: 10px; left: 10px; right: 10px; border-radius: 16px; padding: 10px 12px; font-size: 14px; line-height: 18px; }
  .finleo-private-scope .finleo-private-loyalty, .finleo-private-scope .finleo-private-journal { padding-bottom: 56px; }
  .finleo-private-scope .finleo-private-loyalty { padding-top: 56px; }
  .finleo-private-scope .finleo-private-loyalty-grid { margin-top: 24px; gap: 16px; }
  .finleo-private-scope .finleo-private-loyalty-image { margin-bottom: 16px; border-radius: 24px; }
  .finleo-private-scope .finleo-private-copy { font-size: 16px; line-height: 20px; }
  .finleo-private-scope .finleo-private-loyalty-card .finleo-private-copy { font-size: 14px; line-height: 18px; margin: 8px 0 16px; }
  .finleo-private-scope .finleo-private-journal-track { margin-top: 24px; }
  .finleo-private-scope .finleo-private-journal-promo { flex-basis: 308px; min-height: 360px; border-radius: 24px; }
  .finleo-private-scope .finleo-private-journal-promo-body { padding: 24px; }
  .finleo-private-scope .finleo-private-journal-promo-body .finleo-private-card-title { margin-bottom: 16px; }
  .finleo-private-scope .finleo-private-article { flex-basis: 306px; min-height: 360px; border-radius: 24px; }
  .finleo-private-scope .finleo-private-article-image { height: 224px; }
  .finleo-private-scope .finleo-private-article-body { padding: 16px; border-radius: 16px 16px 0 0; }
  .finleo-private-scope .finleo-private-article-category { font-size: 12px; line-height: 16px; margin-bottom: 4px; }
  .finleo-private-scope .finleo-private-article-title { font-size: 16px; line-height: 20px; margin-bottom: 16px; }
  .finleo-private-scope .finleo-private-contact { gap: 8px; padding-bottom: 56px; }
  .finleo-private-scope .finleo-private-form-card { border-radius: 24px; padding: 16px; }
  .finleo-private-scope .finleo-private-form-card .finleo-private-heading { font-size: 26px; line-height: 30px; }
  .finleo-private-scope .finleo-private-form-card > .finleo-private-copy { margin: 16px 0; font-size: 14px; line-height: 18px; }
  .finleo-private-scope .finleo-private-field-label { font-size: 12px; }
  .finleo-private-scope .finleo-private-input { min-height: 42px; font-size: 16px; padding: 9px 12px; line-height: 22px; }
  .finleo-private-scope .finleo-private-field-question .finleo-private-textarea { --finleo-private-question-height: 105px; }
  .finleo-private-scope .finleo-private-check { font-size: 12px; line-height: 16px; }
  .finleo-private-scope .finleo-private-contact-side { gap: 8px; }
  .finleo-private-scope .finleo-private-app-card { order: 2; padding: 24px; border-radius: 24px; }
  .finleo-private-scope .finleo-private-app-card .finleo-private-card-title { font-size: 22px; line-height: 26px; margin-bottom: 8px; }
  .finleo-private-scope .finleo-private-app-card .finleo-private-copy { font-size: 16px; line-height: 22px; margin-bottom: 16px; }
  .finleo-private-scope .finleo-private-contacts-card { order: 1; padding: 24px; min-height: 252px; border-radius: 24px; }
  .finleo-private-scope .finleo-private-contact-item { margin-bottom: 16px; }
  .finleo-private-scope .finleo-private-contact-item dt { font-size: 14px; line-height: 18px; margin-bottom: 6px; }
  .finleo-private-scope .finleo-private-contact-item dd { font-size: 18px; line-height: 22px; }
  .finleo-private-scope .finleo-private-envelope { width: 48%; }
  .finleo-private-scope .finleo-private-footer { border-radius: 32px 32px 0 0; padding: 32px 0; }
  .finleo-private-scope .finleo-private-footer .finleo-private-heading { font-size: 24px; margin-bottom: 32px; }
  .finleo-private-scope .finleo-private-directory { display: flex; overflow-x: auto; overflow-y: hidden; gap: 40px; padding-bottom: 16px; height: auto; max-height: none; scrollbar-width: thin; scrollbar-color: #a8a8a8 #444; scroll-snap-type: x proximity; }
  .finleo-private-scope .finleo-private-directory-group { flex: 0 0 250px; scroll-snap-align: start; }
  .finleo-private-scope .finleo-private-directory-title { font-size: 18px; line-height: 22px; margin-bottom: 24px; }
  .finleo-private-scope .finleo-private-directory-list, .finleo-private-scope .finleo-private-directory-group:nth-child(1) .finleo-private-directory-list { columns: 1; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-container { --finleo-private-container-inset: 16px; width: calc(100% - 32px); }
  .finleo-private-scope .finleo-private-title { font-size: 24px; line-height: 26px; max-width: 440px; margin-inline: auto; }
  .finleo-private-scope .finleo-private-title-brand { gap: 8px; }
  .finleo-private-scope .finleo-private-title .finleo-private-title-brand { display: flex; justify-content: center; }
  .finleo-private-scope .finleo-private-intro { display: none; }
  .finleo-private-scope .finleo-private-carousel { margin-top: 16px; border-radius: 20px; }
  .finleo-private-scope .finleo-private-slide { aspect-ratio: 343/331; }
  .finleo-private-scope .finleo-private-banner-controls { right: 14px; bottom: 26px; gap: 11px; }
  .finleo-private-scope .finleo-private-banner-dots { bottom: 2%; left: 16px; right: 16px; gap: 8px; }
  .finleo-private-scope .finleo-private-dot { height: 4px; }
  .finleo-private-scope .finleo-private-slide:not(.finleo-private-slide-cards) { background: #d0dcff; overflow: hidden; }
  .finleo-private-scope .finleo-private-slide-insurance { background: #dcf7cd !important; }
  .finleo-private-scope .finleo-private-slide-deposit { background: #e0dafa !important; }
  .finleo-private-scope .finleo-private-slide:not(.finleo-private-slide-cards) .finleo-private-banner-head { height: 52%; position: relative; overflow: hidden; z-index: 1; }
  .finleo-private-scope .finleo-private-slide:not(.finleo-private-slide-cards) .finleo-private-banner-image { width: 1000px; max-width: none; min-height: 0; position: absolute; left: -8px; top: -8px; }
  .finleo-private-scope .finleo-private-banner-tail { display: block; position: absolute; width: 620px; max-width: none; height: auto; right: -10px; bottom: -12px; clip-path: inset(0 0 24% 0); }
  .finleo-private-scope .finleo-private-slide-cards .finleo-private-banner-image { width: 100%; height: 100%; }
  .finleo-private-scope .finleo-private-menu { padding: 40px 0; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .finleo-private-scope .finleo-private-tablet-only { display: none; }
  .finleo-private-scope .finleo-private-menu-travel, .finleo-private-scope .finleo-private-menu-cards { display: block; }
  .finleo-private-scope .finleo-private-menu-card { order: initial; }
  .finleo-private-scope .finleo-private-menu-card { min-height: 148px; }
  .finleo-private-scope .finleo-private-menu-title { font-size: 17px; line-height: 22px; }
  .finleo-private-scope .finleo-private-menu-image { width: 94px; height: 91px; }
  .finleo-private-scope .finleo-private-heading { font-size: 24px; line-height: 28px; }
  .finleo-private-scope .finleo-private-services { padding: 40px 0; border-radius: 24px; }
  .finleo-private-scope .finleo-private-services .finleo-private-heading { max-width: 260px; margin-inline: auto; }
  .finleo-private-scope .finleo-private-services .finleo-private-subtitle { max-width: 300px; margin-inline: auto; }
  .finleo-private-scope .finleo-private-filters { justify-content: flex-start; gap: 6px; margin: 16px 0; }
  .finleo-private-scope .finleo-private-pill { font-size: 12px; line-height: 16px; padding: 8px 10px; min-height: 34px; }
  .finleo-private-scope .finleo-private-offers { margin-top: 16px; }
  .finleo-private-scope .finleo-private-service-card { flex-basis: 302px; min-height: 346px; }
  .finleo-private-scope .finleo-private-spec-value { font-size: 17px; line-height: 22px; }
  .finleo-private-scope .finleo-private-benefits-link { font-size: 13px; }
  .finleo-private-scope .finleo-private-card-actions .finleo-private-button { font-size: 12px; }
  .finleo-private-scope .finleo-private-controls { margin-top: 16px; }
  .finleo-private-scope .finleo-private-reasons { padding-block: 40px; }
  .finleo-private-scope .finleo-private-reasons-track { margin-top: 24px; gap: 8px; }
  .finleo-private-scope .finleo-private-reason { flex-basis: 276px; }
  .finleo-private-scope .finleo-private-loyalty { padding-block: 40px; }
  .finleo-private-scope .finleo-private-loyalty-heading { max-width: 320px; margin-inline: auto; font-size: 23px; gap: 0 6px; }
  .finleo-private-scope .finleo-private-loyalty-grid { grid-template-columns: minmax(0,1fr); gap: 24px; margin-top: 24px; }
  .finleo-private-scope .finleo-private-loyalty-image { width: 100%; object-position: center; }
  .finleo-private-scope .finleo-private-loyalty-card .finleo-private-card-title { font-size: 20px; line-height: 24px; }
  .finleo-private-scope .finleo-private-loyalty-card .finleo-private-copy { margin-bottom: 8px; }
  .finleo-private-scope .finleo-private-journal { padding-bottom: 40px; }
  .finleo-private-scope .finleo-private-journal .finleo-private-subtitle { display: none; }
  .finleo-private-scope .finleo-private-journal .finleo-private-filters { flex-wrap: nowrap; justify-content: center; }
  .finleo-private-scope .finleo-private-journal-track { margin-top: 16px; gap: 8px; }
  .finleo-private-scope .finleo-private-journal-promo { flex-basis: min(302px, 91%); }
  .finleo-private-scope .finleo-private-article { flex-basis: min(302px, 91%); min-height: 360px; }
  .finleo-private-scope .finleo-private-contact { grid-template-columns: minmax(0,1fr); padding-bottom: 40px; }
  .finleo-private-scope .finleo-private-form-card .finleo-private-heading { font-size: 24px; line-height: 28px; }
  .finleo-private-scope .finleo-private-field-question .finleo-private-textarea { --finleo-private-question-height: 80px; }
  .finleo-private-scope .finleo-private-contacts-card { min-height: 218px; }
  .finleo-private-scope .finleo-private-contact-side { gap: 8px; }
  .finleo-private-scope .finleo-private-app-card { flex: 0 0 auto; min-height: 210px; }
  .finleo-private-scope .finleo-private-envelope { width: 53%; }
  .finleo-private-scope .finleo-private-footer { border-radius: 24px 24px 0 0; }
  .finleo-private-scope .finleo-private-footer .finleo-private-container { --finleo-private-container-inset: 24px; width: calc(100% - 48px); }
  .finleo-private-scope .finleo-private-footer .finleo-private-heading { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .finleo-private-scope .finleo-private-menu-card, .finleo-private-scope .finleo-private-button, .finleo-private-scope .finleo-private-arrow, .finleo-private-scope .finleo-private-pill { transition: none; }
  .finleo-private-scope .finleo-private-menu-card:hover { transform: none; }
  .finleo-private-scope .finleo-private-banner-track, .finleo-private-scope .finleo-private-scroll-row { scroll-behavior: auto; }
}

/* Shared service interactions and edge-to-edge article rails. */
.finleo-private-scope.finleo-private-root { container-type: inline-size; }
.finleo-private-scope .finleo-private-offers { scrollbar-width: none; }
.finleo-private-scope .finleo-private-offers::-webkit-scrollbar { display: none; }
.finleo-private-scope .finleo-private-reasons-track,
.finleo-private-scope .finleo-private-journal-track {
  width: 100cqw;
  max-width: none;
  margin-left: calc((100% - 100cqw) / 2);
  padding-left: calc((100cqw - 100%) / 2);
  padding-right: calc((100cqw - 100%) / 2);
  scroll-padding-left: max(var(--finleo-private-container-inset), calc((100cqw - 1480px) / 2));
  scrollbar-width: none;
}
.finleo-private-scope .finleo-private-reasons-track::-webkit-scrollbar,
.finleo-private-scope .finleo-private-journal-track::-webkit-scrollbar { display: none; }
.finleo-private-scope .finleo-private-loyalty-trigger {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 2px 0; border: 0; background: transparent; color: inherit;
  font: inherit; line-height: inherit; white-space: nowrap; border-radius: 4px;
}
.finleo-private-scope .finleo-private-loyalty-trigger:hover { color: #504dce; text-decoration: none; }
.finleo-private-scope .finleo-private-loyalty-trigger:disabled { cursor: default; }
.finleo-private-scope .finleo-private-loyalty-dialog {
  display: none; position: fixed; inset: 0; margin: auto; padding: 0; border: 0;
  box-sizing: border-box; width: 515.22px; max-width: calc(100% - 32px);
  max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px);
  overflow: auto; overscroll-behavior: contain; scrollbar-width: none;
  background: transparent; color: #212121; font: inherit; text-align: left;
}
.finleo-private-scope .finleo-private-loyalty-dialog[open] { display: block; }
.finleo-private-scope .finleo-private-loyalty-dialog::backdrop { background: rgb(0 0 0 / 48%); }
.finleo-private-scope .finleo-private-loyalty-dialog::-webkit-scrollbar { display: none; }
.finleo-private-scope .finleo-private-popup-visual { position: relative; aspect-ratio: 515 / 292; overflow: hidden; border-radius: 29px; }
.finleo-private-scope .finleo-private-popup-art { display: block; width: 100%; height: 100%; object-fit: cover; }
.finleo-private-scope .finleo-private-popup-art-mobile { display: none; }
.finleo-private-scope .finleo-private-popup-close {
  position: absolute; top: 17px; right: 17px; width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center;
  padding: 0; border: 0; border-radius: 50%; background: transparent; color: #212121;
}
.finleo-private-scope .finleo-private-popup-close:hover { background: rgb(255 255 255 / 25%); }
.finleo-private-scope .finleo-private-popup-close-icon { display: block; width: 19.5345px; height: 19.5345px; }
.finleo-private-scope .finleo-private-popup-content {
  display: flex; flex-direction: column; align-items: flex-start; gap: 19.534px;
  padding: 29.302px; border-radius: 29px; background: #fff;
}
.finleo-private-scope .finleo-private-popup-badge {
  display: inline-flex; align-items: center; gap: 2.442px;
  padding: 4.884px; border-radius: 100px; background: #bbe92c;
  color: #212121; font-size: 12.744px; line-height: 16px; letter-spacing: 1.378px;
}
.finleo-private-scope .finleo-private-popup-mark { display: block; width: 16px; height: 16px; }
.finleo-private-scope .finleo-private-popup-badge strong { font-weight: 700; }
.finleo-private-scope .finleo-private-popup-heading { margin: 0; font-size: 29.302px; line-height: 36.627px; font-weight: 600; }
.finleo-private-scope .finleo-private-popup-description { margin: 0; font-size: 17.093px; line-height: 21.976px; color: #383838; }
.finleo-private-scope .finleo-private-popup-link { color: #6765f2; font-weight: 600; }
.finleo-private-scope .finleo-private-popup-link:hover { text-decoration: underline; }
.finleo-private-scope .finleo-private-popup-details { width: 100%; min-height: 46.4px; font-size: 17.093px; line-height: 21.976px; padding: 11px 14px; border-radius: 8px; }
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-loyalty-dialog { width: 343px; }
  .finleo-private-scope .finleo-private-popup-visual { aspect-ratio: 419 / 281; border-radius: 24px; }
  .finleo-private-scope .finleo-private-popup-art-desktop { display: none; }
  .finleo-private-scope .finleo-private-popup-art-mobile { display: block; }
  .finleo-private-scope .finleo-private-popup-close { top: 10px; right: 10px; }
  .finleo-private-scope .finleo-private-popup-content { gap: 8px; padding: 20px; border-radius: 20px; }
  .finleo-private-scope .finleo-private-popup-badge { font-size: 10.438px; line-height: 14px; letter-spacing: 1.128px; padding: 4px; gap: 2px; }
  .finleo-private-scope .finleo-private-popup-heading { font-size: 20px; line-height: 24px; }
  .finleo-private-scope .finleo-private-popup-description { font-size: 14px; line-height: 18px; font-weight: 500; }
  .finleo-private-scope .finleo-private-popup-details { margin-top: 8px; min-height: 36px; padding: 8px 12px; font-size: 14px; line-height: 18px; border-radius: 6px; }
}

/* Responsive FINLEO Shop banner; each image remains addressable by ZIP importers. */
.finleo-private-scope .finleo-private-banner-track { align-items: flex-start; }
.finleo-private-scope .finleo-private-slide-shop { aspect-ratio: 1480 / 380; }
.finleo-private-scope .finleo-private-shop-variants { display: block; position: relative; height: 100%; overflow: hidden; }

/* Keep the supplied WebP intact; reuse the approved white phone as a local overlay. */
.finleo-private-scope .finleo-private-shop-white-phone {
  position: absolute;
  left: 51.216216%;
  top: 78.684211%;
  width: 7.972973%;
  height: auto;
  max-width: none;
  display: block;
  pointer-events: none;
}
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-shop-white-phone { left: 51.372119%; top: 77.407407%; width: 9.440176%; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-shop-white-phone { left: 40.816327%; top: 86.102719%; width: 17.492711%; }
}
@media (min-width: 480px) and (max-width: 759px) {
  .finleo-private-scope .finleo-private-shop-white-phone { left: 55.769231%; top: 81.967213%; width: 13.461538%; }
}

.finleo-private-scope .finleo-private-slide-shop .finleo-private-banner-image { width: 100%; height: 100%; object-fit: contain; }
.finleo-private-scope .finleo-private-slide-shop .finleo-private-shop-tablet,
.finleo-private-scope .finleo-private-slide-shop .finleo-private-shop-mobile { display: none; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-slide-shop { aspect-ratio: 911 / 270; }
  .finleo-private-scope .finleo-private-slide-shop .finleo-private-shop-desktop { display: none; }
  .finleo-private-scope .finleo-private-slide-shop .finleo-private-shop-tablet { display: block; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-slide-shop { aspect-ratio: 343 / 331; }
  .finleo-private-scope .finleo-private-slide-shop .finleo-private-shop-tablet { display: none; }
  .finleo-private-scope .finleo-private-slide-shop .finleo-private-shop-mobile { display: block; }
}

/* Same OSAGO / Shop carousel as the all-audiences page. */
.finleo-private-scope .finleo-private-carousel { background: transparent; border-radius: 24px; }
.finleo-private-scope .finleo-private-slide-osago { aspect-ratio: 1480 / 380; }
.finleo-private-scope .finleo-private-banner-variants { display: block; height: 100%; }
.finleo-private-scope .finleo-private-slide-osago .finleo-private-osago-tablet,
.finleo-private-scope .finleo-private-slide-osago .finleo-private-osago-mobile { display: none; }
.finleo-private-scope .finleo-private-slide-osago .finleo-private-banner-image { width: 100%; height: 100%; object-fit: contain; }
.finleo-private-scope .finleo-private-banner-link:focus-visible { outline-offset: -5px; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-slide-osago { aspect-ratio: 911 / 270; }
  .finleo-private-scope .finleo-private-slide-osago .finleo-private-osago-desktop { display: none; }
  .finleo-private-scope .finleo-private-slide-osago .finleo-private-osago-tablet { display: block; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-carousel { margin-top: 16px; }
  .finleo-private-scope .finleo-private-slide-osago { aspect-ratio: 343 / 331; background: transparent; }
  .finleo-private-scope .finleo-private-slide-osago .finleo-private-osago-tablet { display: none; }
  .finleo-private-scope .finleo-private-slide-osago .finleo-private-osago-mobile { display: block; }
}

/* Both font families are provided by the base FINLEO layout. */
.finleo-private-scope :is(h1, h2, h3, h4, h5, h6) {
  font-family: "Montserrat", Arial, sans-serif;
}
.finleo-private-scope .finleo-private-title,
.finleo-private-scope .finleo-private-title :where(span),
.finleo-private-scope .finleo-private-heading,
.finleo-private-scope .finleo-private-heading :where(span) {
  font-family: "Unbounded", "Montserrat", Arial, sans-serif;
}
.finleo-private-scope .finleo-private-submit[aria-disabled="true"] {
  opacity: .55;
  cursor: not-allowed;
}
.finleo-private-scope .finleo-private-check[data-invalid="true"],
.finleo-private-scope .finleo-private-check[data-invalid="true"] .finleo-private-inline-link {
  color: #a12836;
}

/* Keep compact menu headings within their card width. */
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-menu-card { container-type: inline-size; }
  .finleo-private-scope .finleo-private-menu-card .finleo-private-menu-title {
    font-size: clamp(13px, 11cqw, 18px);
    line-height: 1.3;
  }
}

@media (max-width: 359px) {
  .finleo-private-scope .finleo-private-title { font-size: 22px; line-height: 26px; }
}

/* Keep direction icons independent of text fonts and picture source rewriting. */
.finleo-private-scope .finleo-private-menu-arrow-icon { display: block; width: 32px; height: 32px; object-fit: contain; pointer-events: none; z-index: 2; }
.finleo-private-scope .finleo-private-offers-controls { margin-top: 40px; min-height: 44px; }
.finleo-private-scope .finleo-private-offers-controls .finleo-private-controls { margin-top: 0; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-menu-arrow-icon { width: 24px; height: 24px; }
  .finleo-private-scope .finleo-private-menu-all .finleo-private-menu-title { padding-right: 32px; }
  .finleo-private-scope .finleo-private-offers-controls { margin-top: 24px; min-height: 38px; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-offers-controls { margin-top: 16px; }
}

/* Dedicated Figma artwork for the 480-759px banner range. */
.finleo-private-scope .finleo-private-carousel .finleo-private-slide-osago .finleo-private-osago-mobile-wide,
.finleo-private-scope .finleo-private-carousel .finleo-private-slide-shop .finleo-private-shop-mobile-wide { display: none; }
@media (min-width: 480px) and (max-width: 759px) {
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-osago,
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-shop { aspect-ratio: 416 / 244; }
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-osago .finleo-private-osago-mobile,
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-shop .finleo-private-shop-mobile { display: none; }
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-osago .finleo-private-osago-mobile-wide,
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-shop .finleo-private-shop-mobile-wide { display: block; }
}

/* Separate text and artwork columns; the envelope always meets the bottom edge. */
.finleo-private-scope .finleo-private-contacts-card {
  --finleo-private-contact-inset: 40px;
  flex: 1 0 auto;
  display: grid; grid-template-columns: minmax(min-content, 1fr) minmax(0, 1.3fr); column-gap: 12px;
  padding: var(--finleo-private-contact-inset) 0 0 var(--finleo-private-contact-inset);
  align-items: start;
}
.finleo-private-scope .finleo-private-contacts-list { grid-area: 1 / 1; min-width: 0; margin-bottom: var(--finleo-private-contact-inset); }
.finleo-private-scope .finleo-private-envelope {
  grid-area: 1 / 2; align-self: end; justify-self: end;
  position: static; width: min(135%, 440px); max-width: none; height: auto;
  margin: 0; pointer-events: none;
}
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-contacts-card { --finleo-private-contact-inset: 24px; }
}

/* FINLEO Journal: linked article cards from the updated Figma frame. */
.finleo-private-scope .finleo-private-journal-track { align-items: stretch; }
.finleo-private-scope .finleo-private-article-link { display: flex; flex: 1; flex-direction: column; min-width: 0; border-radius: inherit; color: inherit; }
.finleo-private-scope .finleo-private-article-link:focus-visible { outline-offset: -4px; }
.finleo-private-scope .finleo-private-article-image { height: 378px; flex: 0 0 auto; }
.finleo-private-scope .finleo-private-article-body { min-height: 230px; margin-top: -48px; padding: 32px; gap: 8px; }
.finleo-private-scope .finleo-private-article-category { font-family: "Montserrat", Arial, sans-serif; font-size: 20px; line-height: 24px; color: #6765f2; margin-bottom: 0; }
.finleo-private-scope .finleo-private-article-title { color: #000; margin-bottom: 0; }
.finleo-private-scope .finleo-private-article-link:hover .finleo-private-article-title { color: var(--finleo-private-purple); }
.finleo-private-scope .finleo-private-journal-promo { background: linear-gradient(153.22deg, #6d6bf4 57.5%, #bdbcfa); }
.finleo-private-scope .finleo-private-journal-promo-body .finleo-private-card-title { font-size: 32px; line-height: 40px; margin-bottom: 16px; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-article, .finleo-private-scope .finleo-private-journal-promo { min-height: 400px; }
  .finleo-private-scope .finleo-private-article-image { height: 224px; }
  .finleo-private-scope .finleo-private-article-body { min-height: 192px; margin-top: -16px; padding: 16px; }
  .finleo-private-scope .finleo-private-article-category { font-size: 12px; line-height: 16px; }
  .finleo-private-scope .finleo-private-journal-promo-body .finleo-private-card-title { font-size: 22px; line-height: 26px; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-journal .finleo-private-filters { flex-wrap: wrap; justify-content: center; overflow: visible; }
}

/* FINLEO Journal banner: artwork follows the viewport's format. */
.finleo-private-scope .finleo-private-carousel .finleo-private-slide-journal { aspect-ratio: 1480 / 380; }
.finleo-private-scope .finleo-private-journal-banner-variants { display: block; height: 100%; }
.finleo-private-scope .finleo-private-slide-journal .finleo-private-banner-image { display: none; width: 100%; height: 100%; object-fit: contain; }
.finleo-private-scope .finleo-private-slide-journal .finleo-private-journal-banner-desktop { display: block; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-journal { aspect-ratio: 911 / 270; }
  .finleo-private-scope .finleo-private-slide-journal .finleo-private-journal-banner-desktop { display: none; }
  .finleo-private-scope .finleo-private-slide-journal .finleo-private-journal-banner-tablet { display: block; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-journal { aspect-ratio: 343 / 331; }
  .finleo-private-scope .finleo-private-slide-journal .finleo-private-journal-banner-tablet { display: none; }
  .finleo-private-scope .finleo-private-slide-journal .finleo-private-journal-banner-mobile { display: block; }
}
@media (min-width: 480px) and (max-width: 759px) {
  .finleo-private-scope h1.finleo-private-title { font-size: 28px; line-height: 32px; }
  .finleo-private-scope .finleo-private-carousel .finleo-private-slide-journal { aspect-ratio: 416 / 244; }
  .finleo-private-scope .finleo-private-slide-journal .finleo-private-journal-banner-mobile { display: none; }
  .finleo-private-scope .finleo-private-slide-journal .finleo-private-journal-banner-mobile-480 { display: block; }
}

/* Adaptive directions, loyalty carousel and fixed-height contact card. */
.finleo-private-scope .finleo-private-loyalty-controls { display: none; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-services .finleo-private-filters { justify-content: center; flex-wrap: wrap; }
  .finleo-private-scope .finleo-private-loyalty-grid {
    display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x proximity;
    overscroll-behavior-x: contain; scrollbar-width: none; padding-bottom: 4px;
  }
  .finleo-private-scope .finleo-private-loyalty-card { display: flex; flex-direction: column; flex: 0 0 calc((100% - 32px) / 3); min-width: min(302px, 100%); scroll-snap-align: start; }
  .finleo-private-scope .finleo-private-loyalty-grid::-webkit-scrollbar { display: none; width: 0; height: 0; }
  .finleo-private-scope .finleo-private-loyalty-controls { display: block; }
}
@media (min-width: 375px) and (max-width: 759px) {
  .finleo-private-scope .finleo-private-contacts-card {
    flex: 0 0 240px; height: 240px; min-height: 240px; max-height: 240px;
    grid-template-rows: minmax(0, 1fr);
  }
  .finleo-private-scope .finleo-private-envelope { width: min(135%, calc((240px - var(--finleo-private-contact-inset)) * 415 / 354)); }
}

/* Private services: five categories from Figma, with responsive card scrolling. */
.finleo-private-scope .finleo-private-services .finleo-private-filters,
.finleo-private-scope .finleo-private-services .finleo-private-service-card { font-family: "Montserrat", Arial, sans-serif; }
.finleo-private-scope .finleo-private-services .finleo-private-offers { align-items: stretch; }
.finleo-private-scope .finleo-private-services .finleo-private-service-card { flex-basis: calc((100% - 72px) / 4); min-width: 302px; min-height: 398px; color: #3f3f3f; }
.finleo-private-scope .finleo-private-services .finleo-private-card-title { font-weight: 700; color: #3f3f3f; }
.finleo-private-scope .finleo-private-services .finleo-private-specs { margin: 24px 0 0; }
.finleo-private-scope .finleo-private-services .finleo-private-service-description { font-size: 16px; line-height: 20px; margin: 13px 0 21px; }
.finleo-private-scope .finleo-private-services [data-category="cards"] .finleo-private-specs { margin: 0; }
.finleo-private-scope .finleo-private-services .finleo-private-service-bottom { padding-top: 16px; }
.finleo-private-scope .finleo-private-services .finleo-private-benefits-link { gap: 8px; font-size: 16px; line-height: 20px; font-weight: 600; }
.finleo-private-scope .finleo-private-services .finleo-private-loyalty-trigger { padding: 0; }
.finleo-private-scope .finleo-private-service-benefit-label { display: inline-flex; align-items: center; }
.finleo-private-scope .finleo-private-service-inline-icon { display: block; flex: 0 0 auto; }
.finleo-private-scope .finleo-private-services .finleo-private-token { font-weight: 700; letter-spacing: -.36px; }
.finleo-private-scope .finleo-private-services .finleo-private-card-actions { gap: 8px; }
.finleo-private-scope .finleo-private-services .finleo-private-card-actions .finleo-private-button { gap: 4px; padding-inline: 8px; white-space: nowrap; }
.finleo-private-scope .finleo-private-services .finleo-private-service-photo-card { padding: 0; background: transparent; overflow: hidden; }
.finleo-private-scope .finleo-private-service-media { position: relative; flex: 0 0 auto; width: 100%; aspect-ratio: 352 / 208; overflow: hidden; border-radius: 24px 24px 0 0; }
.finleo-private-scope .finleo-private-service-photo { position: absolute; height: auto; max-width: none; display: block; }
.finleo-private-scope .finleo-private-service-body { position: relative; z-index: 1; flex: 1; display: flex; flex-direction: column; width: 100%; min-height: 214px; padding: 24px; margin-top: -24px; border-radius: 24px; background: #fff; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-services .finleo-private-service-card { flex-basis: calc((100% - 32px) / 3); min-height: 360px; }
  .finleo-private-scope .finleo-private-services .finleo-private-specs { margin-top: 16px; }
  .finleo-private-scope .finleo-private-services .finleo-private-service-description { font-size: 14px; line-height: 18px; margin: 12px 0 16px; }
  .finleo-private-scope .finleo-private-services .finleo-private-benefits-link { font-size: 14px; line-height: 18px; }
  .finleo-private-scope .finleo-private-services .finleo-private-token { width: 24px; height: 24px; font-size: 12px; }
  .finleo-private-scope .finleo-private-services .finleo-private-card-actions .finleo-private-button { font-size: 14px; line-height: 18px; min-height: 40px; }
  .finleo-private-scope .finleo-private-service-media { border-radius: 16px 16px 0 0; }
  .finleo-private-scope .finleo-private-service-body { min-height: 200px; padding: 16px; margin-top: -16px; border-radius: 16px; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-services .finleo-private-service-card { flex-basis: 302px; }
}

.finleo-private-scope .finleo-private-services .finleo-private-service-avia-kaliningrad { width: 100.000000%; left: 0.000000%; top: -2.884615%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-avia-istanbul { width: 100.284091%; left: 0.000000%; top: -30.288462%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-avia-sochi { width: 100.000000%; left: 0.000000%; top: -40.384615%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-avia-yerevan { width: 100.000000%; left: 0.000000%; top: -29.807692%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-tours-turkey { width: 101.611364%; left: -1.610795%; top: -63.173077%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-tours-thailand { width: 103.977273%; left: 0.000000%; top: -68.750000%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-tours-maldives { width: 101.988636%; left: -1.988636%; top: -25.480769%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-tours-egypt { width: 100.000000%; left: 0.000000%; top: -41.826923%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-hotels-saint-petersburg { width: 100.000000%; left: 0.000000%; top: -20.192308%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-hotels-kazan { width: 100.568182%; left: -0.568182%; top: -44.711538%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-hotels-yekaterinburg { width: 101.420455%; left: -1.420455%; top: -36.538462%; }
.finleo-private-scope .finleo-private-services .finleo-private-service-hotels-moscow { width: 101.704545%; left: -1.704545%; top: -12.980769%; }

/* Minimum service-card widths and adaptive rails reaching the viewport edge. */
.finleo-private-scope .finleo-private-services .finleo-private-service-card { min-width: 350px; }
.finleo-private-scope .finleo-private-offers {
  width: 100cqw;
  max-width: none;
  margin-left: calc((100% - 100cqw) / 2);
  padding-left: calc((100cqw - 100%) / 2);
  padding-right: calc((100cqw - 100%) / 2);
  scroll-padding-left: max(var(--finleo-private-container-inset), calc((100cqw - 1480px) / 2));
  scroll-padding-right: calc((100cqw - 100%) / 2);
}
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-loyalty-grid {
    width: 100cqw;
    max-width: none;
    margin-left: calc((100% - 100cqw) / 2);
    padding-left: calc((100cqw - 100%) / 2);
    padding-right: calc((100cqw - 100%) / 2);
    scroll-padding-left: max(var(--finleo-private-container-inset), calc((100cqw - 1480px) / 2));
    scroll-padding-right: calc((100cqw - 100%) / 2);
  }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-services .finleo-private-service-card { min-width: 302px; }
}

/* More separation between sections on the white background on desktop. */
@media (min-width: 1200px) {
  .finleo-private-scope .finleo-private-menu { padding-top: 80px; }
  .finleo-private-scope .finleo-private-loyalty,
  .finleo-private-scope .finleo-private-journal { padding-bottom: 160px; }
}

/* Consistent service-card height on tablets and phones. */
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-services .finleo-private-service-card { height: 340px; min-height: 340px; }
  .finleo-private-scope .finleo-private-service-media { height: 156px; flex-basis: 156px; aspect-ratio: auto; }
}

/* Persistent scrollbar for the service directory. */
.finleo-private-scope .finleo-private-directory { scrollbar-width: thin; scrollbar-color: #bdbdbd #444; }
.finleo-private-scope .finleo-private-directory::-webkit-scrollbar { height: 8px; }
.finleo-private-scope .finleo-private-directory::-webkit-scrollbar-track { background: #444; border-radius: 8px; }
.finleo-private-scope .finleo-private-directory::-webkit-scrollbar-thumb { background: #bdbdbd; border-radius: 8px; }
.finleo-private-scope .finleo-private-directory-with-scrollbar { scrollbar-width: none; }
.finleo-private-scope .finleo-private-directory-with-scrollbar::-webkit-scrollbar { display: none; height: 0; }
.finleo-private-scope .finleo-private-directory-scrollbar { position: sticky; bottom: 12px; z-index: 1; margin-top: 8px; padding: 6px 0; background: #212121; }
.finleo-private-scope .finleo-private-directory-range { display: block; width: 100%; height: 28px; margin: 0; padding: 0; border: 0; appearance: none; -webkit-appearance: none; background: transparent; cursor: grab; touch-action: pan-y; }
.finleo-private-scope .finleo-private-directory-range:active { cursor: grabbing; }
.finleo-private-scope .finleo-private-directory-range:focus-visible { outline: 2px solid #e4e0ff; outline-offset: 4px; }
.finleo-private-scope .finleo-private-directory-range::-webkit-slider-runnable-track { height: 8px; border-radius: 8px; background: #444; }
.finleo-private-scope .finleo-private-directory-range::-webkit-slider-thumb { appearance: none; -webkit-appearance: none; width: var(--finleo-private-directory-thumb,44px); height: 8px; border: 0; border-radius: 8px; background: #bdbdbd; }
.finleo-private-scope .finleo-private-directory-range::-moz-range-track { height: 8px; border-radius: 8px; background: #444; }
.finleo-private-scope .finleo-private-directory-range::-moz-range-thumb { width: var(--finleo-private-directory-thumb,44px); height: 8px; border: 0; border-radius: 8px; background: #bdbdbd; }
.finleo-private-scope .finleo-private-directory-range::-moz-range-progress { height: 8px; border-radius: 8px; background: #444; }
@media (min-width: 1200px) {
  .finleo-private-scope .finleo-private-services-no-scroll .finleo-private-offers { padding-bottom: 0; }
  .finleo-private-scope .finleo-private-services-no-scroll .finleo-private-offers-controls { display: none; }
}

/* Shop direction banner and the FINLEO benefit badge from Figma. */
.finleo-private-scope .finleo-private-menu-benefit-badge { position: absolute; left: 24px; bottom: 24px; z-index: 1; }
.finleo-private-scope .finleo-private-menu-benefit-badge-image { display: block; width: auto; height: auto; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-menu-shop { grid-column: span 2; order: 100; }
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-title { max-width: none; font-size: clamp(13px, calc(5.5cqw - 1.76px), 18px); }
  .finleo-private-scope .finleo-private-menu-benefit-badge { left: 12px; bottom: 12px; }
}
@media (max-width: 425px) {
  .finleo-private-scope .finleo-private-menu .finleo-private-menu-card { height: calc(146px * 5 / 6); min-height: 0; }
}
@media (max-width: 1024px) {
  .finleo-private-scope .finleo-private-menu-benefit-badge { width: min(119px, calc(100% - 122px)); }
  .finleo-private-scope .finleo-private-menu-benefit-badge-image { width: 100%; }
}
@media (max-width: 375px) {
  .finleo-private-scope .finleo-private-menu .finleo-private-menu-card { height: clamp(100px, calc((100cqw - 40px) * 700 / 2010), calc(140px * 5 / 6)); min-height: 0; }
  .finleo-private-scope .finleo-private-menu-benefit-badge { width: min(119px, calc((100% - 122px) * 0.8)); }
}

/* Match the visual card sizes in the reasons and loyalty sections. */
.finleo-private-scope .finleo-private-reasons-track, .finleo-private-scope .finleo-private-loyalty-grid { gap: 25px; }
.finleo-private-scope .finleo-private-reason { flex-basis: calc((100% - 50px) / 3); border-radius: 32px; }
.finleo-private-scope .finleo-private-reason-image { height: auto; aspect-ratio: 477 / 490; border-radius: inherit; }
.finleo-private-scope .finleo-private-loyalty-image { height: auto; aspect-ratio: 477 / 490; border-radius: 32px; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-reasons-track, .finleo-private-scope .finleo-private-loyalty-grid { gap: 16px; }
  .finleo-private-scope .finleo-private-reason, .finleo-private-scope .finleo-private-loyalty-card { flex: 0 0 calc((100% - 32px) / 3); min-width: min(302px, 100%); }
  .finleo-private-scope .finleo-private-reason, .finleo-private-scope .finleo-private-loyalty-image { border-radius: 24px; }
}
@media (hover: hover) and (pointer: fine) {
  .finleo-private-scope .finleo-private-drag-scroll { cursor: grab; }
}
.finleo-private-scope .finleo-private-is-dragging { scroll-snap-type: none !important; scroll-behavior: auto !important; user-select: none; }
.finleo-private-scope .finleo-private-is-dragging, .finleo-private-scope .finleo-private-is-dragging :where(*) { cursor: grabbing !important; user-select: none; }
.finleo-private-scope .finleo-private-is-dragging .finleo-private-partner-marquee-track { animation-play-state: paused; }

/* Consistent horizontal-scroll controls at every breakpoint. */
.finleo-private-scope .finleo-private-arrow:not(:disabled):hover { background: #e8e6ff; }

/* Slightly stronger contrast for popular-service controls. */
.finleo-private-scope .finleo-private-services .finleo-private-controls .finleo-private-arrow { background: #e2def4; }
.finleo-private-scope .finleo-private-services .finleo-private-controls .finleo-private-arrow:not(:disabled):hover { background: #d8d3f0; }

/* Equal spacing between the main content sections. */
.finleo-private-scope.finleo-private-root { --finleo-private-section-gap: 108px; }
.finleo-private-scope .finleo-private-reasons,
.finleo-private-scope .finleo-private-loyalty,
.finleo-private-scope .finleo-private-journal,
.finleo-private-scope .finleo-private-contact { padding-top: var(--finleo-private-section-gap); }
.finleo-private-scope .finleo-private-reasons,
.finleo-private-scope .finleo-private-loyalty,
.finleo-private-scope .finleo-private-journal { padding-bottom: 0; }
@media (max-width: 1199px) {
  .finleo-private-scope.finleo-private-root { --finleo-private-section-gap: 37.8px; }
}
@media (max-width: 759px) {
  .finleo-private-scope.finleo-private-root { --finleo-private-section-gap: 27px; }
}

/* Remove empty space when the loyalty rail needs no controls. */
.finleo-private-scope .finleo-private-loyalty-controls:has(> .finleo-private-controls[hidden]) { display: none; }
.finleo-private-scope .finleo-private-loyalty-grid:has(+ .finleo-private-loyalty-controls > .finleo-private-controls[hidden]) { padding-bottom: 0; }
.finleo-private-scope .finleo-private-loyalty-grid:has(+ .finleo-private-loyalty-controls > .finleo-private-controls[hidden]) .finleo-private-loyalty-card .finleo-private-copy:has(+ .finleo-private-button[hidden]) { margin-bottom: 0; }

/* Match popular-service padding to the spacing between sections. */
.finleo-private-scope .finleo-private-services { padding-block: var(--finleo-private-section-gap); }
.finleo-private-scope .finleo-private-services .finleo-private-offers-controls { min-height: 0; }

/* Fit four popular-service cards within desktop containers. */
@media (min-width: 1440px) {
  .finleo-private-scope .finleo-private-services .finleo-private-service-card { min-width: 0; }
}

/* Keep the gray panel equally spaced around its heading and cards. */
.finleo-private-scope .finleo-private-services { padding: 0; background: transparent; border-radius: 0; }
.finleo-private-scope .finleo-private-services-panel { padding-block: var(--finleo-private-section-gap); background: var(--finleo-private-lilac); border-radius: 32px; }
.finleo-private-scope .finleo-private-services .finleo-private-offers { padding-bottom: 0; }
.finleo-private-scope .finleo-private-services .finleo-private-offers-controls:has(> .finleo-private-controls[hidden]) { display: none; }

/* Smaller benefit descriptions; headings keep their existing typography. */
.finleo-private-scope .finleo-private-loyalty-card .finleo-private-copy { font-family: "Montserrat", Arial, sans-serif; font-size: 17px; line-height: 23px; font-weight: 400; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-loyalty-card .finleo-private-copy { font-size: 15px; line-height: 19px; }
}

/* Keep the first service card inside the available mobile width. */
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-services .finleo-private-offers > .finleo-private-service-card { flex-basis: min(302px, 100%); min-width: 0; }
}

/* Rounded popular-service panels at tablet widths. */
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-services-panel { border-radius: 24px; }
}

/* Keep mobile service controls on gray and bring loyalty controls closer. */
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-services { padding-bottom: var(--finleo-private-section-gap); background: var(--finleo-private-lilac); border-radius: 24px; }
  .finleo-private-scope .finleo-private-services-panel { padding-bottom: 0; border-radius: 24px 24px 0 0; }
  .finleo-private-scope .finleo-private-loyalty-controls { margin-top: 8px; }
}

/* One neutral background for every direction tile, matching the Journal tile. */
.finleo-private-scope .finleo-private-menu .finleo-private-menu-card { background: var(--finleo-private-lilac); }
.finleo-private-scope .finleo-private-menu .finleo-private-menu-all { color: var(--finleo-private-text); }
.finleo-private-scope .finleo-private-menu-all .finleo-private-menu-arrow-icon { filter: brightness(0) opacity(.87); }

/* Clicking or tapping a form field shows the caret without a focus ring. */
.finleo-private-scope[data-finleo-focus-mode="pointer"] .finleo-private-form-card .finleo-private-input:focus { outline: none; box-shadow: none; }

/* Use the original Benefit gradient and white text for the Shop tile. */
.finleo-private-scope .finleo-private-menu .finleo-private-menu-shop { background: linear-gradient(40deg, #6252fd, #d778fd); color: #fff; }
.finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-description { color: inherit; display: block; }

/* Keep the Shop description visible within the existing tile height. */
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-title { margin-bottom: 4px; }
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-description { max-width: none; margin: 0; padding: 0 118px 0 0; font-size: 12px; line-height: 16px; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-description { padding-right: 130px; font-size: 13px; line-height: 18px; }
}
@media (max-width: 425px) {
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-title { margin-bottom: 2px; line-height: 20px; }
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-description { font-size: 13px; line-height: 16px; }
}
@media (max-width: 375px) {
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-description { padding-right: 112px; font-size: clamp(11px, calc(8vw - 17px), 13px); line-height: clamp(13px, calc(8vw - 15px), 15px); }
}

/* Enlarge the Shop illustration and crop it at the bottom-right tile edges. */
.finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-image { width: 280px; height: auto; max-width: none; right: -56px; bottom: -72px; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-image { width: 192px; right: -38px; bottom: -66px; }
}

/* Use equal, slightly smaller illustration slots for directions other than the Shop. */
.finleo-private-scope .finleo-private-menu .finleo-private-menu-card:not(.finleo-private-menu-shop) .finleo-private-menu-image { width: 128px; height: 128px; max-width: none; right: 24px; bottom: 16px; object-fit: contain; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-menu .finleo-private-menu-card:not(.finleo-private-menu-shop) .finleo-private-menu-image { width: 80px; height: 80px; right: 8px; bottom: 4px; }
}
@media (max-width: 375px) {
  .finleo-private-scope .finleo-private-menu .finleo-private-menu-card:not(.finleo-private-menu-shop) .finleo-private-menu-image { width: 72px; height: 72px; }
}

/* Use the available space beside the Shop copy and loyalty badge. */
@media (max-width: 375px) {
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-image { right: clamp(-54px, calc(100vw - 374px), -38px); }
}
@media (max-width: 319px) {
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-image { right: -62px; }
}

/* Preserve the Shop copy, badge and illustration sizes in compact tiles. */
@media (max-width: 375px) {
  .finleo-private-scope .finleo-private-menu .finleo-private-menu-shop { min-height: 0; padding-block: 7px; }
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-benefit-badge { bottom: 7px; }
}

@media (min-width: 398px) and (max-width: 425px) {
  .finleo-private-scope .finleo-private-menu-shop .finleo-private-menu-image { right: clamp(-62px, calc(100vw - 460px), -38px); }
}

/* Decorative icons inherit the service filter text colour in every state. */
.finleo-private-scope .finleo-private-services .finleo-private-pill-with-icon { display: inline-flex; align-items: center; justify-content: center; gap: 6px; }
.finleo-private-scope .finleo-private-filter-icon { display: block; flex: 0 0 auto; width: 18px; height: 18px; fill: currentColor; pointer-events: none; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-filter-icon { width: 16px; height: 16px; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-filter-icon { width: 14px; height: 14px; }
}

/* More space between the requested sections on mobile. */
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-reasons,
  .finleo-private-scope .finleo-private-loyalty,
  .finleo-private-scope .finleo-private-journal,
  .finleo-private-scope .finleo-private-contact { padding-top: calc(var(--finleo-private-section-gap) * 1.68); }
  .finleo-private-scope .finleo-private-menu { padding-bottom: 67.2px; }
}

/* Category destination below the popular-service cards. */
.finleo-private-scope .finleo-private-service-more-actions { display: flex; justify-content: center; margin-top: 40px; }
.finleo-private-scope .finleo-private-services .finleo-private-service-more-link { max-width: 100%; gap: 8px; padding-inline: 20px; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-service-more-actions { margin-top: 24px; }
  .finleo-private-scope .finleo-private-services .finleo-private-service-more-link { min-height: 40px; padding: 10px 16px; font-size: 14px; line-height: 18px; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-service-more-actions { margin-top: 16px; }
}

/* Size Journal captions by their longest headline, with extra space below. */
.finleo-private-scope .finleo-private-journal .finleo-private-article,
.finleo-private-scope .finleo-private-journal .finleo-private-article-body { min-height: 0; }
.finleo-private-scope .finleo-private-journal .finleo-private-article-body { padding-bottom: 40px; }
.finleo-private-scope .finleo-private-journal .finleo-private-journal-promo { min-height: 512px; }
.finleo-private-scope .finleo-private-journal .finleo-private-journal-promo-body { padding-bottom: 40px; }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-journal .finleo-private-article-body { padding-bottom: 20px; }
  .finleo-private-scope .finleo-private-journal .finleo-private-journal-promo { min-height: 348px; }
  .finleo-private-scope .finleo-private-journal .finleo-private-journal-promo-body { padding-bottom: 20px; }
}

/* A little extra breathing room around the category link on scrollable rails. */
.finleo-private-scope .finleo-private-services:not(.finleo-private-services-no-scroll) .finleo-private-service-more-actions { margin-top: 48px; }
.finleo-private-scope .finleo-private-services:not(.finleo-private-services-no-scroll) .finleo-private-services-panel { padding-bottom: calc(var(--finleo-private-section-gap) + 8px); }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-services:not(.finleo-private-services-no-scroll) .finleo-private-service-more-actions { margin-top: 32px; }
}
@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-services:not(.finleo-private-services-no-scroll) .finleo-private-service-more-actions { margin-top: 24px; }
  .finleo-private-scope .finleo-private-services:not(.finleo-private-services-no-scroll) .finleo-private-services-panel { padding-bottom: 8px; }
}

@media (max-width: 759px) {
  .finleo-private-scope .finleo-private-services .finleo-private-service-more-link { width: 100%; }
}

/* Reserve the same Journal rail height for every category. */
.finleo-private-scope .finleo-private-journal-track { min-height: var(--finleo-private-journal-track-height, 0px); }

/* More space between loyalty, team, agents and Journal, and before the footer. */
.finleo-private-scope .finleo-private-journal { padding-top: calc(var(--finleo-private-section-gap) * 1.2); }
.finleo-private-scope .finleo-private-contact { padding-bottom: calc(120px * 1.1); }
@media (max-width: 1199px) {
  .finleo-private-scope .finleo-private-contact { padding-bottom: calc(56px * 1.1); }
}
@media (max-width: 759px) {
.finleo-private-scope .finleo-private-journal { padding-top: calc(var(--finleo-private-section-gap) * 1.68 * 1.2); }
  .finleo-private-scope .finleo-private-contact { padding-bottom: calc(40px * 1.1); }
}

/* Reveal secondary service categories only when the full list exceeds three rows. */
.finleo-private-scope .finleo-private-travel-filters,
.finleo-private-scope .finleo-private-extra-filters { display: contents; }
.finleo-private-scope .finleo-private-services .finleo-private-filter-more { background: #3f3f3f; color: #fff; }
.finleo-private-scope .finleo-private-services .finleo-private-filter-more:hover { background: #3f3f3f; }
.finleo-private-scope .finleo-private-filters-compact .finleo-private-travel-filters:has([data-filter]) { display: flex; flex: 0 0 100%; min-width: 0; max-width: 100%; justify-content: center; align-items: center; gap: inherit; }
.finleo-private-scope .finleo-private-filters-compact.finleo-private-filters-tight .finleo-private-travel-filters:has([data-filter]) { gap: 4px; }
.finleo-private-scope .finleo-private-filters-tight .finleo-private-travel-filters .finleo-private-pill { padding-inline: 6px; }

/* Compact field text through Full HD; retain the larger-screen size. */
@media (min-width: 1921px) {
  .finleo-private-scope .finleo-private-form-card .finleo-private-input { font-size: 14px; }
}
@media (max-width: 1920px) {
  .finleo-private-scope .finleo-private-form-card .finleo-private-input { font-size: 13px; }
}

/* Loyalty card actions follow the marketplace button scale. */
.finleo-private-scope .finleo-private-loyalty-card .finleo-private-loyalty-action { font-family:"Montserrat",Arial,sans-serif;font-size:16px;line-height:20px;min-height:44px;padding:11px 16px;border-radius:10px; }
@media(max-width:1199px){ .finleo-private-scope .finleo-private-loyalty-card .finleo-private-loyalty-action { font-size:14px;min-height:42px;padding:10px 12px;border-radius:8px; } }

/* Reserve card-action spacing as padding so it cannot collapse. */
.finleo-private-scope .finleo-private-loyalty-card{--finleo-private-loyalty-action-gap:32px;}
.finleo-private-scope .finleo-private-loyalty-card>.finleo-private-copy{margin-bottom:0;}
.finleo-private-scope .finleo-private-loyalty-card>.finleo-private-loyalty-actions{flex-shrink:0;width:100%;margin-top:auto;padding-top:var(--finleo-private-loyalty-action-gap);}
.finleo-private-scope .finleo-private-loyalty-actions>.finleo-private-loyalty-action{margin-top:0;}
@media(max-width:1199px){.finleo-private-scope .finleo-private-loyalty-card{--finleo-private-loyalty-action-gap:16px;}}

.finleo-private-scope .finleo-private-popup-details{flex-shrink:0;font-family:"Montserrat",Arial,sans-serif;border-radius:9.767px;}
@media(max-width:759px){.finleo-private-scope .finleo-private-popup-details{border-radius:6px;}}

/* Keep the question field within the existing card geometry. */
.finleo-private-scope .finleo-private-field-question .finleo-private-textarea{resize:none;overflow-y:auto;overflow-x:hidden;field-sizing:fixed;}
