/* One shared shell for every public page. Loaded after the legacy page styles. */
*, *::before, *::after { box-sizing: border-box; }
body .ftb-home-header { position: sticky !important; top: 0 !important; z-index: 100 !important; background: #fff !important; }
body .ftb-home-header .ftb-nav-inner {
  width: min(1120px, calc(100% - 36px)) !important;
  max-width: 1120px !important;
  min-height: 66px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: max-content minmax(0, 1fr) max-content !important;
  align-items: center !important;
  column-gap: 20px !important;
  position: relative !important;
}
body .ftb-home-header .ftb-brand { width: 234px !important; min-width: 234px !important; margin: 0 !important; font-size: 15px !important; }
body .ftb-home-header .ftb-main-nav {
  display: flex !important; position: static !important; width: auto !important;
  min-width: 0 !important; margin: 0 !important; padding: 0 !important;
  align-items: center !important; justify-content: flex-end !important;
  gap: clamp(10px, 1vw, 16px) !important; white-space: nowrap !important;
  background: transparent !important; border: 0 !important; box-shadow: none !important;
}
body .ftb-home-header .ftb-main-nav a {
  display: inline-block !important; width: auto !important; margin: 0 !important;
  padding: 0 !important; border: 0 !important;
  color: #30495b !important; font: 700 12px/1.35 Manrope, Arial, sans-serif !important;
  white-space: nowrap !important;
}
body .ftb-home-header .ftb-main-nav a:hover, body .ftb-home-header .ftb-main-nav a.active { color: #0578af !important; }
body .ftb-home-header .ftb-main-nav .ftb-mobile-finder { display: none !important; }
body .ftb-home-header .ftb-nav-cta { width: max-content !important; margin: 0 !important; white-space: nowrap !important; }
body .ftb-home-header .ftb-menu-button { display: none !important; }

/* The partner panel and footer use the same measure as the header on every page. */
body > .ftb-exness-promo { width: 100% !important; padding: 30px 18px !important; }
body > .ftb-exness-promo > .ftb-exness-inner {
  width: min(1120px, 100%) !important; max-width: 1120px !important;
  margin: 0 auto !important; float: none !important;
  display: grid !important; grid-template-columns: 142px minmax(0, 1fr) auto !important;
  gap: 22px !important; align-items: center !important; text-align: left !important;
}
body > .footer.ftb-current-footer { width: 100% !important; background: #17191b !important; }
body > .footer.ftb-current-footer .footer-grid {
  width: min(1120px, calc(100% - 36px)) !important; max-width: 1120px !important;
  margin: 0 auto !important; display: grid !important;
  grid-template-columns: minmax(280px, 2fr) repeat(3, minmax(110px, 1fr)) !important;
  gap: 50px !important; align-items: start !important;
}
body > .footer.ftb-current-footer .footer-grid > div { min-width: 0 !important; grid-column: auto !important; text-align: left !important; }
/* Legacy logo rules draw a circular gradient behind the three-bar mark. */
body > .footer.ftb-current-footer .footer-brand .brand-mark {
  display: flex !important; width: 24px !important; height: 22px !important;
  align-items: flex-end !important; gap: 3px !important;
  background: transparent !important; border: 0 !important; border-radius: 0 !important;
  box-shadow: none !important; overflow: visible !important; transform: none !important;
}
body > .footer.ftb-current-footer .footer-brand .brand-mark i {
  display: block !important; flex: 0 0 5px !important; width: 5px !important;
  background: #0875a8 !important; border: 0 !important;
  border-radius: 2px 2px 0 0 !important; box-shadow: none !important;
}
body > .footer.ftb-current-footer .footer-bottom { width: min(1120px, calc(100% - 36px)) !important; margin: 28px auto 0 !important; }

/* Country hub: the pale legacy image overlay made white copy unreadable. */
body.ftb-country-hub main > section.page-hero {
  isolation: isolate !important; background: linear-gradient(115deg, #09283e, #164661) !important;
  background-image: linear-gradient(115deg, #09283e, #164661) !important;
  color: #fff !important;
}
body.ftb-country-hub main > section.page-hero::before,
body.ftb-country-hub main > section.page-hero::after { content: none !important; display: none !important; }
body.ftb-country-hub main > section.page-hero h1 { color: #fff !important; text-shadow: none !important; }
body.ftb-country-hub main > section.page-hero p { color: #e5f2f8 !important; }
body.ftb-country-hub main > section.page-hero .eyebrow { color: #78dbef !important; }

/* Restore the editorial visual and a real reading/navigation layout. */
body main > section.page-hero.blog-page-hero {
  background: linear-gradient(90deg, rgba(7, 35, 53, .94) 0%, rgba(7, 35, 53, .72) 48%, rgba(7, 35, 53, .20) 100%), url('/assets/images/ftb-editorial-hero-v15.webp') center/cover no-repeat !important;
  color: #fff !important;
}
body .blog-page-hero::before, body .blog-page-hero::after { content: none !important; display: none !important; }
body .blog-page-hero h1 { color: #fff !important; }
body .blog-page-hero p, body .blog-page-hero .breadcrumbs, body .blog-page-hero .breadcrumbs a { color: #e8f3fa !important; }
body .blog-page-hero .eyebrow { color: #77ddf4 !important; }
body .blog-featured-card .blog-post-image, body .blog-featured-list .blog-post-image,
body .blog-post-grid .blog-post-image { display: block !important; overflow: hidden !important; }
body .blog-post-image img { display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; }
.ftb-blog-columns { display: grid; grid-template-columns: minmax(0, 1fr) 238px; align-items: start; gap: 28px; }
.ftb-blog-columns > div { min-width: 0; }
.ftb-blog-sidebar { position: sticky; top: 90px; display: grid; gap: 18px; }
.ftb-blog-sidebar section { padding: 20px; border: 1px solid #d9e7ef; border-radius: 12px; background: #fff; box-shadow: 0 10px 25px rgba(13, 44, 65, .06); }
.ftb-blog-sidebar h2 { margin: 0 0 12px; font-size: 16px; color: #0c2c42; }
.ftb-blog-sidebar a { display: block; padding: 9px 0; border-top: 1px solid #edf2f5; color: #126795; font-size: 12px; font-weight: 700; text-decoration: none; }
.ftb-blog-sidebar a:hover { color: #004e79; text-decoration: underline; }
.ftb-blog-columns .blog-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ftb-blog-columns .blog-post-card { min-width: 0; }
.ftb-article-visual { width: min(100%, 920px); margin: 26px 0 0; overflow: hidden; border-radius: 14px; }
.ftb-article-visual img { display: block; width: 100%; max-height: 390px; object-fit: cover; }

@media (max-width: 1120px) {
  body .ftb-home-header .ftb-nav-inner { grid-template-columns: minmax(0, 1fr) auto auto !important; gap: 14px !important; }
  body .ftb-home-header .ftb-menu-button { display: flex !important; grid-column: 2 !important; grid-row: 1 !important; margin: 0 !important; }
  body .ftb-home-header .ftb-nav-cta { grid-column: 3 !important; grid-row: 1 !important; }
  body .ftb-home-header .ftb-main-nav {
    display: none !important; position: absolute !important; top: 100% !important; left: 0 !important; right: 0 !important;
    width: 100% !important; padding: 8px 14px !important; flex-direction: column !important;
    align-items: stretch !important; gap: 0 !important; background: #fff !important;
    border: 1px solid #dce9ef !important; box-shadow: 0 16px 35px rgba(8, 37, 55, .16) !important;
    max-height: calc(100vh - 76px); overflow-y: auto;
  }
  body .ftb-home-header .ftb-main-nav.open { display: flex !important; }
  body .ftb-home-header .ftb-main-nav a { display: block !important; padding: 11px 8px !important; border-bottom: 1px solid #edf2f5 !important; font-size: 14px !important; }
  body .ftb-home-header .ftb-main-nav .ftb-mobile-finder { display: block !important; color: #067cb0 !important; }
}
@media (max-width: 900px) {
  .ftb-blog-columns { grid-template-columns: 1fr; }
  .ftb-blog-sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body > .footer.ftb-current-footer .footer-grid { grid-template-columns: 2fr 1fr 1fr !important; gap: 28px !important; }
  body > .footer.ftb-current-footer .footer-grid > div:last-child { grid-column: 2 / 4 !important; }
}
@media (max-width: 720px) {
  body .ftb-home-header .ftb-nav-inner { min-height: 58px !important; grid-template-columns: minmax(0, 1fr) auto !important; }
  body .ftb-home-header .ftb-brand { width: auto !important; min-width: 0 !important; font-size: 12px !important; }
  body .ftb-home-header .ftb-nav-cta { display: none !important; }
  body .ftb-home-header .ftb-menu-button { grid-column: 2 !important; }
  body > .ftb-exness-promo > .ftb-exness-inner { grid-template-columns: 1fr !important; gap: 14px !important; }
  body > .ftb-exness-promo .ftb-exness-action { width: 100% !important; }
  body > .footer.ftb-current-footer .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 24px 18px !important; }
  body > .footer.ftb-current-footer .footer-grid > div:first-child { grid-column: 1 / -1 !important; }
  body > .footer.ftb-current-footer .footer-grid > div:last-child { grid-column: auto !important; }
  body > .footer.ftb-current-footer .footer-bottom { display: block !important; }
  body > .footer.ftb-current-footer .footer-bottom #year { display: inline !important; margin: 0 !important; }
  body .blog-section-title { display: block !important; }
  body .blog-section-title > .btn { display: inline-flex !important; width: auto !important; margin-top: 16px !important; }
  .ftb-blog-sidebar { grid-template-columns: 1fr; }
  .ftb-blog-columns .blog-post-grid { grid-template-columns: 1fr; }
}
