.jasen-logo{width:237px;height:auto;max-width:100%;filter:brightness(0) invert(1)}.jasen-seal{width:140px;height:140px;display:flex;align-items:center;justify-content:center}.jasen-seal img{width:94px;height:auto;filter:brightness(0) invert(1)}.wow{visibility:visible!important}.modal.show{display:block;background:rgba(0,0,0,.65)}body.modal-open{overflow:hidden}.offcanvas.show{visibility:visible}.offcanvas.show .offcanvas-body{background:#111b2c}
/* September 2026 content update */
.director-portrait{filter:grayscale(100%);object-position:center top}.saved-fees-value{font-size:clamp(1.35rem,2.1vw,2.35rem)!important;white-space:nowrap}

/* Language selector and partner footer */
.language-switcher{display:flex;justify-content:flex-end;gap:8px;padding-top:8px;padding-bottom:0;position:relative;z-index:1050}.language-link{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;color:#fff;border:1px solid transparent;border-radius:4px;min-height:36px;font-size:14px;line-height:1}.language-link>span:first-child{font-size:22px}.language-link:hover,.language-link:focus-visible,.language-link[aria-current=page]{color:#fff;border-color:#fff;background:rgba(255,255,255,.1)}.header .navbar{padding-top:8px}.footer-disclaimer{margin-top:3rem;font-size:1rem;line-height:1.7;color:rgba(255,255,255,.9)}.footer-disclaimer p{margin-bottom:1rem;max-width:1000px}.partner-block{display:flex;align-items:center;gap:14px;margin-top:12px}.partner-block img{width:210px;height:auto;background:#fff;padding:8px;border-radius:2px}html:not([lang=en-GB]) #banner h1{overflow-wrap:normal}html:not([lang=en-GB]) h3.fs-4{overflow-wrap:anywhere}@media(max-width:767px){.language-switcher{padding-top:4px}.language-link{padding:4px 6px}.header .navbar-brand .jasen-logo{max-width:190px}.partner-block{margin-top:20px}.footer-disclaimer{margin-top:2rem}}
@media(min-width:768px){html:not([lang=en-GB]) #banner h1{font-size:clamp(2rem,3.5vw,4rem)!important}}

body.menu-open{overflow:hidden}
@media(min-width:992px){.menu-close{display:none}.offcanvas.show .offcanvas-body{background:transparent}}
@media(max-width:991.98px){.navbar .offcanvas{z-index:1051;padding-top:0}.menu-close{margin-bottom:1.5rem}}
/* Longer translated headings must fit small screens without horizontal scrolling. */
@media(max-width:767px){html:not([lang=en-GB]) h2.fs-4{letter-spacing:.12em;overflow-wrap:anywhere}}

/* Local flag assets render consistently on Windows and offline. */
.language-flag{display:block;width:24px;height:16px;flex:0 0 24px;object-fit:cover;border-radius:1px}
/* Size the English amount against its card, not the entire viewport. */
.saved-fees-stat{container-type:inline-size}
html[lang=en-GB] .saved-fees-value{font-size:clamp(.875rem,1.6vw,2rem)!important;font-size:min(2rem,10cqi)!important;line-height:1.2!important;margin:.4rem auto .55rem!important;letter-spacing:0;max-width:100%;white-space:nowrap}

/* Shared navigation typography for English, Portuguese and Spanish. */
:root {
  --menu-font-size: 12px;
  --menu-mobile-font-size: 16px;
}
.header .navbar .nav-link {
  font-size: var(--menu-font-size);
  line-height: 1.5;
}
@media (max-width: 991.98px) {
  .header .navbar .nav-link {
    font-size: var(--menu-mobile-font-size);
  }
}
/* Hidden SVG definitions, formerly styled inside the HTML. */
.svg-symbols {
  position: absolute;
  overflow: hidden;
}

/* Newsletter: fluid width and responsive viewport-based height. */
.newsletter-column { min-width: 0; }
.newsletter-embed { width: 100%; scroll-margin-top: 2rem; }
.newsletter-frame {
  display: block;
  width: 100%;
  max-width: 100%;
  height: clamp(24rem, 55vh, 40rem);
  border: 0;
  margin-inline: auto;
  background: #fff;
  border-radius: .188rem;
}
.newsletter-fallback { margin: .75rem 0 0; font-size: .875rem; }
.newsletter-fallback a { color: inherit; text-decoration: underline; }
.newsletter-anchor { display: block; scroll-margin-top: 2rem; }
@media (max-width: 991.98px) {
  .newsletter-column { margin-top: 2.5rem; }
  .newsletter-frame { height: clamp(30rem, 75vh, 48rem); }
}

@media (min-width: 992px) {
  .footer .footer-brand, .footer .footer-menu { flex: 0 0 25%; width: 25%; margin-left: 0; }
  .footer .newsletter-column { flex: 0 0 50%; width: 50%; }
}

/* Preserve the existing hero proportions with the supplied background image. */
#banner > .hero-background { aspect-ratio: 430 / 917; }
#banner > .hero-background > img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
@media (min-width: 768px) { #banner > .hero-background { aspect-ratio: 1366 / 653; } }
@media (min-width: 1400px) { #banner > .hero-background { aspect-ratio: 1920 / 917; } }

/* Accessible floating back-to-top control, shared by all languages. */
.back-to-top {
  position: fixed;
  right: max(1rem, env(safe-area-inset-right));
  bottom: max(1rem, env(safe-area-inset-bottom));
  z-index: 1030;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: 50%;
  color: #fff;
  background: #3f24ee;
  box-shadow: 0 .25rem 1rem rgba(0,0,0,.25);
  cursor: pointer;
}
.back-to-top[hidden] { display: none; }
.back-to-top:hover { background: #231782; }
.back-to-top:focus-visible { outline: 3px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 6px #231782; }
body.modal-open .back-to-top, body.menu-open .back-to-top { visibility: hidden; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } }
/* Language buttons switch content without changing the page address. */
.language-link { background: transparent; font-family: inherit; cursor: pointer; }
.language-link[aria-pressed="true"] { color: #fff; border-color: #fff; background: rgba(255,255,255,.1); }
