@font-face  { font-family: "Tomato Grotesk"; src: url("../fonts/tomato-grotesk/TomatoGrotesk-Thin.woff2") format("woff2"); font-weight: 300; font-style: normal; font-display: swap; }
@font-face  { font-family: "Tomato Grotesk"; src: url("../fonts/tomato-grotesk/TomatoGrotesk-Regular.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face  { font-family: "Tomato Grotesk"; src: url("../fonts/tomato-grotesk/TomatoGrotesk-Medium.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
.sa-hero-banner, .sa-hero-banner * { box-sizing: border-box; }
.section:has(.sa-hero-banner), .ck-content:has(.sa-hero-banner) { width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; overflow-x: clip !important; }
.sa-hero-banner { --sa-hero-shell-width: var(--start-shortcode-container-width, calc(100% - var(--start-container-gutter, clamp(32px, 6cqw, 96px)))); --sa-hero-shell-max: var(--start-shortcode-container-max, none); --sa-hero-safe-space: var(--start-container-gutter, clamp(32px, 6cqw, 96px)); --sa-hero-top-space: clamp(32px, 4.6cqw, 72px); --sa-hero-bottom-space: clamp(50px, 6.8cqw, 96px); --sa-hero-gap: clamp(34px, 6cqw, 96px); --sa-hero-title-max: 112px; --sa-hero-subtitle-max: 56px; --sa-hero-description-max: 20px; --sa-hero-eyebrow-max: 15px; --sa-hero-lottie-desktop-width: 420px; --sa-hero-lottie-mobile-width: 280px; --sa-hero-lottie-desktop-height: 520px; --sa-hero-lottie-mobile-height: 260px; --sa-hero-lottie-offset-x: 0px; --sa-hero-lottie-offset-y: 0px; --sa-hero-lottie-mobile-offset-x: 0px; --sa-hero-lottie-mobile-offset-y: 0px; --sa-hero-lottie-entry-duration: 520ms; --sa-hero-height-desktop: auto; --sa-hero-height-tablet: auto; --sa-hero-height-mobile: auto; --sa-hero-screen-extra-offset: 0px; --sa-hero-screen-height-desktop: max(620px, calc(100svh - var(--start-theme-chrome-offset, 0px) - var(--start-header-height, 84px) - var(--sa-hero-screen-extra-offset))); --sa-hero-screen-height-tablet: max(560px, calc(100svh - var(--start-theme-chrome-offset, 0px) - var(--start-header-height, 76px) - var(--sa-hero-screen-extra-offset))); --sa-hero-screen-height-mobile: max(600px, calc(100svh - var(--start-theme-chrome-offset, 0px) - var(--start-header-height, 76px) - var(--sa-hero-screen-extra-offset))); --sa-hero-min-height-desktop: 0px; --sa-hero-min-height-tablet: 0px; --sa-hero-min-height-mobile: 0px; --sa-hero-blue: #0b84ff; --sa-hero-ink: #050505; --sa-hero-muted: #20242b; --sa-hero-soft: #f6f7f9; position: relative; width: 100%; max-width: 100%; min-height: var(--sa-hero-min-height-desktop, 0px); margin: 0; overflow-x: clip; background: var(--sa-hero-background, #fff); color: var(--sa-hero-ink); }
body:has(.lab-announcement-announcement-wrapper) .sa-hero-banner { --sa-hero-screen-extra-offset: 38px; }
.sa-hero-banner--height-desktop-fullscreen { min-height: var(--sa-hero-screen-height-desktop); }
.sa-hero-banner--height-desktop-fullscreen .sa-hero-banner__inner { height: var(--sa-hero-screen-height-desktop); min-height: var(--sa-hero-screen-height-desktop); padding-top: clamp(24px, 3.2cqw, 54px); padding-bottom: clamp(24px, 3.2cqw, 54px); }
.sa-hero-banner--height-desktop-fullscreen .sa-hero-banner__visual--desktop-side[data-sa-hero-visual="lottie"] .sa-hero-banner__visual-card { min-height: min(var(--sa-hero-lottie-desktop-height), calc(var(--sa-hero-screen-height-desktop) - 126px)); }
.sa-hero-banner--height-desktop-fullscreen .sa-hero-banner__visual--desktop-side[data-sa-hero-visual="lottie"] .sa-hero-banner__lottie { height: min(var(--sa-hero-lottie-desktop-height), calc(var(--sa-hero-screen-height-desktop) - 126px)); max-height: min(var(--sa-hero-lottie-desktop-height), calc(var(--sa-hero-screen-height-desktop) - 126px)); }
.sa-hero-banner__inner { width: var(--sa-hero-shell-width); max-width: var(--sa-hero-shell-max); min-height: var(--sa-hero-height-desktop, auto); margin-inline: auto; padding: var(--sa-hero-top-space) 0 var(--sa-hero-bottom-space); display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.88fr); align-items: center; gap: var(--sa-hero-gap); }
.sa-hero-banner--visual-left .sa-hero-banner__content { order: 2; }
.sa-hero-banner--visual-left .sa-hero-banner__visual { order: 1; }
.sa-hero-banner__content { max-width: 760px; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; row-gap: clamp(18px, 2.35cqw, 30px); }
/* Hero Content is the flow owner. External spacing is applied by the parent contract without inflating visual-object geometry. */
.sa-hero-banner__content > .sa-hero-banner__eyebrow { flex: 0 0 auto; margin: 0; }
.sa-hero-banner__content > .sa-hero-banner__title { flex: 0 0 auto; margin: 0; }
.sa-hero-banner__content > .sa-hero-banner__subtitle { flex: 0 0 auto; margin: 0; }
.sa-hero-banner__content > .sa-hero-banner__description { flex: 0 0 auto; max-width: 720px; margin: 0; }
.sa-hero-banner__content > .sa-hero-banner__actions { flex: 0 0 auto; margin: 0; }
.sa-hero-banner__eyebrow { width: fit-content; max-width: 100%; margin: 0; padding: 8px 14px; border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 999px; background: rgba(246, 247, 249, 0.92); color: var(--sa-hero-eyebrow-color, #222831); font-family: var(--sa-hero-eyebrow-font-family, var(--primary-font, Inter), Arial, sans-serif); font-size: min(var(--sa-hero-eyebrow-max), clamp(13px, 1.1cqw, 15px)); font-style: var(--sa-hero-eyebrow-style, normal); font-weight: var(--sa-hero-eyebrow-weight, 700); letter-spacing: var(--sa-hero-eyebrow-letter-spacing, 0); line-height: var(--sa-hero-eyebrow-line-height, 1.35); text-align: var(--sa-hero-eyebrow-align, left); text-decoration: var(--sa-hero-eyebrow-decoration, none); }
.sa-hero-banner__title { color: var(--sa-hero-title-color, var(--sa-hero-ink)); font-family: var(--sa-hero-title-font-family, "Tomato Grotesk", var(--primary-font, Inter), Arial, sans-serif); font-size: min(var(--sa-hero-title-max), clamp(56px, 6.35cqw, 112px)); font-style: var(--sa-hero-title-style, normal); font-weight: var(--sa-hero-title-weight, 400); letter-spacing: var(--sa-hero-title-letter-spacing, -0.065em); line-height: var(--sa-hero-title-line-height, normal); text-align: var(--sa-hero-title-align, left); text-decoration: var(--sa-hero-title-decoration, none); }
.sa-hero-banner__subtitle { color: var(--sa-hero-subtitle-color, var(--sa-hero-ink)); font-family: var(--sa-hero-subtitle-font-family, var(--primary-font, Inter), Arial, sans-serif); font-size: min(var(--sa-hero-subtitle-max), clamp(34px, 3.55cqw, 56px)); font-style: var(--sa-hero-subtitle-style, normal); font-weight: var(--sa-hero-subtitle-weight, 400); letter-spacing: var(--sa-hero-subtitle-letter-spacing, -0.052em); line-height: var(--sa-hero-subtitle-line-height, normal); text-align: var(--sa-hero-subtitle-align, left); text-decoration: var(--sa-hero-subtitle-decoration, none); }
.sa-hero-banner__description { color: var(--sa-hero-description-color, var(--sa-hero-muted)); font-family: var(--sa-hero-description-font-family, var(--primary-font, Inter), Arial, sans-serif); font-size: min(var(--sa-hero-description-max), clamp(17px, 1.22cqw, 20px)); font-size-adjust: .52; font-style: var(--sa-hero-description-style, normal); font-weight: var(--sa-hero-description-weight, 400); letter-spacing: var(--sa-hero-description-letter-spacing, -0.02em); line-height: var(--sa-hero-description-line-height, 1.38); text-align: var(--sa-hero-description-align, left); text-decoration: var(--sa-hero-description-decoration, none); }
.sa-hero-banner__actions { display: inline-flex; max-width: 100%; flex-wrap: wrap; align-items: center; gap: 18px 24px; margin: 0; }
.sa-hero-banner__button, .sa-hero-banner__link { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 58px; border-radius: 8px; text-decoration: none; line-height: 1; white-space: nowrap; transition: box-shadow 180ms ease, background-color 180ms ease, color 180ms ease, transform 180ms ease; }
.sa-hero-banner__button { padding: 13px 14px 13px var(--sa-hero-button-primary-padding-x, 24px); border-radius: var(--sa-hero-button-primary-radius, 8px); font-family: var(--sa-hero-button-primary-font-family, var(--primary-font, Inter), Arial, sans-serif); font-size: var(--sa-hero-button-primary-font-size, 14px); font-weight: var(--sa-hero-button-primary-font-weight, 800); box-shadow: 0 14px 28px rgba(0, 0, 0, 0.1); }
.sa-hero-banner__button:hover, .sa-hero-banner__button:focus-visible, .sa-hero-banner__link:hover, .sa-hero-banner__link:focus-visible { transform: none; text-decoration: none; }
.sa-hero-banner__button--black { background: var(--sa-hero-button-primary-background, #030303); color: var(--sa-hero-button-primary-color, #fff); }
.sa-hero-banner__button--black:hover, .sa-hero-banner__button--black:focus-visible { background: rgba(237, 244, 255, .88); color: var(--start-blue-dark, var(--sa-hero-blue)); box-shadow: 0 8px 18px rgba(17, 109, 255, .075); }
.sa-hero-banner__button--blue { background: var(--sa-hero-button-primary-background, var(--sa-hero-blue)); color: var(--sa-hero-button-primary-color, #fff); box-shadow: 0 18px 35px rgba(11, 132, 255, 0.24); }
.sa-hero-banner__button--blue:hover, .sa-hero-banner__button--blue:focus-visible { background: rgba(237, 244, 255, .88); color: var(--start-blue-dark, var(--sa-hero-blue)); box-shadow: 0 8px 18px rgba(17, 109, 255, .075); }
.sa-hero-banner__button--light { background: var(--sa-hero-button-primary-background, #fff); color: var(--sa-hero-button-primary-color, #050505); border: 1px solid rgba(0, 0, 0, 0.08); box-shadow: 0 18px 35px rgba(0, 0, 0, 0.08); }
.sa-hero-banner__button--light:hover, .sa-hero-banner__button--light:focus-visible { background: rgba(237, 244, 255, .88); color: var(--start-blue-dark, var(--sa-hero-blue)); box-shadow: 0 8px 18px rgba(17, 109, 255, .075); }
.sa-hero-banner__button-icon { width: 30px; height: 30px; display: inline-grid; place-items: center; flex: 0 0 30px; border-radius: 999px; background: #fff; color: #050505; transition: transform 180ms ease; }
.sa-hero-banner__button:hover .sa-hero-banner__button-icon, .sa-hero-banner__button:focus-visible .sa-hero-banner__button-icon { transform: translateX(4px); }
.sa-hero-banner__button-icon svg, .sa-hero-banner__link svg { width: 18px; height: 18px; display: block; fill: currentColor; }
.sa-hero-banner__link { min-height: 44px; padding: 8px 0; border-radius: 0; color: var(--sa-hero-button-secondary-color, #050505); font-family: var(--sa-hero-button-secondary-font-family, var(--primary-font, Inter), Arial, sans-serif); font-size: var(--sa-hero-button-secondary-font-size, 14px); font-weight: var(--sa-hero-button-secondary-font-weight, 800); box-shadow: none; }
.sa-hero-banner__link:hover { color: var(--sa-hero-blue); }
.sa-hero-banner__visual { position: relative; min-width: 0; display: flex; justify-content: center; align-items: center; }
.sa-hero-banner__visual-card { position: relative; width: min(100%, 560px); min-height: clamp(300px, 34cqw, 520px); display: grid; place-items: center; isolation: isolate; }
.sa-hero-banner__visual[data-sa-hero-visual="lottie"] { overflow: visible; }
.sa-hero-banner__visual--desktop-side[data-sa-hero-visual="lottie"] .sa-hero-banner__visual-card { width: min(var(--sa-hero-lottie-desktop-width), calc(100cqw - var(--sa-hero-safe-space) - var(--sa-hero-safe-space))); max-width: none; min-height: var(--sa-hero-lottie-desktop-height); }
.sa-hero-banner__visual-card::before { content: ""; position: absolute; inset: 9% 2% 2% 16%; z-index: -2; border-radius: 42px; background: linear-gradient(135deg, rgba(11, 132, 255, 0.13), rgba(39, 218, 218, 0.15)); filter: blur(28px); opacity: 0.9; transform: rotate(-4deg); }
.sa-hero-banner__image { width: min(100%, 560px); height: auto; max-height: 520px; display: block; object-fit: contain; border-radius: 22px; }
.sa-hero-banner__visual--mobile-inline { display: none; }
.sa-hero-banner__lottie { width: min(100%, var(--sa-hero-lottie-desktop-width)); max-width: 100%; height: var(--sa-hero-lottie-desktop-height); max-height: var(--sa-hero-lottie-desktop-height); aspect-ratio: auto; display: grid; place-items: center; opacity: 1; overflow: hidden; transform: translate3d(var(--sa-hero-lottie-offset-x), var(--sa-hero-lottie-offset-y), 0); transition: opacity var(--sa-hero-lottie-entry-duration) ease, transform var(--sa-hero-lottie-entry-duration) ease; }
.sa-hero-banner__lottie svg, .sa-hero-banner__lottie canvas { width: 100% !important; max-width: 100% !important; height: 100% !important; max-height: 100% !important; display: block; }
.sa-hero-banner--lottie-align-left .sa-hero-banner__visual[data-sa-hero-visual="lottie"] .sa-hero-banner__visual-card { place-items: center start; }
.sa-hero-banner--lottie-align-right .sa-hero-banner__visual[data-sa-hero-visual="lottie"] .sa-hero-banner__visual-card { place-items: center end; }
.sa-hero-banner--lottie-align-center .sa-hero-banner__visual[data-sa-hero-visual="lottie"] .sa-hero-banner__visual-card { place-items: center; }
.sa-hero-banner--lottie-position-absolute .sa-hero-banner__visual--desktop-side[data-sa-hero-visual="lottie"] .sa-hero-banner__visual-card { min-height: var(--sa-hero-lottie-desktop-height); }
.sa-hero-banner--lottie-position-absolute .sa-hero-banner__visual--desktop-side[data-sa-hero-visual="lottie"] .sa-hero-banner__lottie { position: absolute; top: 50%; left: 50%; transform: translate3d(calc(-50% + var(--sa-hero-lottie-offset-x)), calc(-50% + var(--sa-hero-lottie-offset-y)), 0); }
.sa-hero-banner--lottie-entry-slide-up .sa-hero-banner__lottie:not(.is-lottie-entered), .sa-hero-banner--lottie-entry-zoom .sa-hero-banner__lottie:not(.is-lottie-entered) { opacity: 0; }
.sa-hero-banner--lottie-entry-fade .sa-hero-banner__lottie { opacity: 1; transition: opacity var(--sa-hero-lottie-entry-duration) ease, transform var(--sa-hero-lottie-entry-duration) ease; }
.sa-hero-banner--lottie-entry-fade .sa-hero-banner__lottie:not(.is-lottie-entered) { opacity: 0; }
.sa-hero-banner--lottie-entry-slide-up .sa-hero-banner__lottie:not(.is-lottie-entered) { transform: translate3d(var(--sa-hero-lottie-offset-x), calc(var(--sa-hero-lottie-offset-y) + 24px), 0); }
.sa-hero-banner--lottie-entry-zoom .sa-hero-banner__lottie:not(.is-lottie-entered) { transform: translate3d(var(--sa-hero-lottie-offset-x), var(--sa-hero-lottie-offset-y), 0) scale(.94); }
.sa-hero-banner--lottie-entry-none .sa-hero-banner__lottie, .sa-hero-banner.is-lottie-scrolled .sa-hero-banner__lottie { opacity: 1; pointer-events: auto; transition: none; }
.sa-hero-banner__visual[data-sa-hero-visual="lottie"] .sa-hero-banner__image { display: none; }
.sa-hero-banner__visual[data-sa-hero-visual="lottie"].is-lottie-unavailable .sa-hero-banner__image { display: block; }
.sa-hero-banner__visual[data-sa-hero-visual="lottie"].is-lottie-unavailable .sa-hero-banner__lottie { display: none; }
@container start-canvas-theme (max-width: 1199px) {
  .sa-hero-banner__inner { grid-template-columns: minmax(0, 1fr) minmax(280px, 0.78fr); }
}
@container start-canvas-theme (max-width: 991px) {
  .section:has(.sa-hero-banner), .ck-content:has(.sa-hero-banner) { max-width: 100% !important; overflow-x: clip !important; }
  .sa-hero-banner { --sa-hero-shell-width: calc(100% - 32px); --sa-hero-shell-max: calc(100% - 32px); --sa-hero-safe-space: 16px; --sa-hero-top-space: clamp(30px, 7cqw, 54px); --sa-hero-bottom-space: clamp(48px, 8cqw, 76px); width: 100%; max-width: 100%; min-height: var(--sa-hero-min-height-tablet, 0px); overflow: clip; contain: layout paint; }
  .sa-hero-banner__inner { width: var(--sa-hero-shell-width); max-width: var(--sa-hero-shell-max); min-height: max(var(--sa-hero-height-tablet, auto), var(--sa-hero-min-height-tablet, 600px)); grid-template-columns: 1fr; gap: 0; text-align: center; overflow: clip; }
  .sa-hero-banner--height-tablet-fullscreen .sa-hero-banner__inner { min-height: var(--sa-hero-screen-height-tablet); }
  .sa-hero-banner--visual-left .sa-hero-banner__content, .sa-hero-banner--visual-left .sa-hero-banner__visual { order: initial; }
  .sa-hero-banner__content { width: 100%; max-width: 100%; min-width: 0; margin-inline: auto; overflow: clip; align-items: center; }
  .sa-hero-banner__content > [data-start-visual-object] { max-width: 100%; min-width: 0; }
  .sa-hero-banner__actions { justify-content: center; }
  .sa-hero-banner__visual--desktop-side { display: none; }
  .sa-hero-banner--mobile-visual-yes .sa-hero-banner__visual--mobile-inline { width: 100%; max-width: 100%; min-width: 0; display: flex; justify-content: center; align-items: center; margin: clamp(20px, 5cqw, 30px) auto clamp(12px, 4cqw, 22px); overflow: clip; contain: layout paint; }
  .sa-hero-banner--mobile-lottie-above-title.sa-hero-banner--mobile-visual-yes .sa-hero-banner__visual--mobile-inline { margin-top: 0; margin-bottom: clamp(18px, 5cqw, 28px); }
  .sa-hero-banner--mobile-lottie-above-subtitle.sa-hero-banner--mobile-visual-yes .sa-hero-banner__visual--mobile-inline { margin-top: clamp(18px, 5cqw, 28px); margin-bottom: clamp(10px, 4cqw, 18px); }
  .sa-hero-banner--mobile-lottie-below-actions.sa-hero-banner--mobile-visual-yes .sa-hero-banner__visual--mobile-inline { margin-top: clamp(24px, 6cqw, 36px); margin-bottom: 0; }
  .sa-hero-banner--mobile-visual-no .sa-hero-banner__visual--mobile-inline { display: none; }
  .sa-hero-banner__visual--mobile-inline .sa-hero-banner__visual-card { width: 100%; max-width: 100%; min-width: 0; min-height: var(--sa-hero-lottie-mobile-height); margin-inline: auto; overflow: visible; contain: layout; background: transparent; }
  .sa-hero-banner__visual--mobile-inline[data-sa-hero-visual="lottie"] .sa-hero-banner__visual-card { width: min(100%, var(--sa-hero-lottie-mobile-width)); max-width: 100%; }
  .sa-hero-banner__visual--mobile-inline .sa-hero-banner__visual-card::before { display: none; content: none; }
  .sa-hero-banner__visual--mobile-inline[data-sa-hero-visual="image"] .sa-hero-banner__visual-card { width: min(100%, 520px); max-width: 100%; overflow: visible; }
  .sa-hero-banner__visual--mobile-inline .sa-hero-banner__lottie { width: min(100%, var(--sa-hero-lottie-mobile-width)); max-width: 100%; height: var(--sa-hero-lottie-mobile-height); max-height: var(--sa-hero-lottie-mobile-height); margin-inline: auto; overflow: visible; background: transparent; -webkit-mask-image: radial-gradient(ellipse 96% 92% at 50% 48%, #000 68%, rgba(0, 0, 0, .72) 84%, transparent 100%); mask-image: radial-gradient(ellipse 96% 92% at 50% 48%, #000 68%, rgba(0, 0, 0, .72) 84%, transparent 100%); transform: translate3d(clamp(-32px, var(--sa-hero-lottie-mobile-offset-x), 32px), var(--sa-hero-lottie-mobile-offset-y), 0); }
  .sa-hero-banner__visual--mobile-inline .sa-hero-banner__lottie svg, .sa-hero-banner__visual--mobile-inline .sa-hero-banner__lottie canvas, .sa-hero-banner__visual--mobile-inline .sa-hero-banner__image { max-width: 100% !important; }
  .sa-hero-banner__visual--mobile-inline .sa-hero-banner__lottie svg { overflow: visible; }
  .sa-hero-banner--lottie-position-absolute .sa-hero-banner__visual--mobile-inline[data-sa-hero-visual="lottie"] .sa-hero-banner__lottie, .sa-hero-banner--lottie-position-absolute .sa-hero-banner__visual--desktop-side[data-sa-hero-visual="lottie"] .sa-hero-banner__lottie { position: relative; top: auto; left: auto; transform: translate3d(clamp(-32px, var(--sa-hero-lottie-mobile-offset-x), 32px), var(--sa-hero-lottie-mobile-offset-y), 0); }
  .sa-hero-banner--lottie-entry-slide-up .sa-hero-banner__visual--mobile-inline .sa-hero-banner__lottie:not(.is-lottie-entered) { transform: translate3d(clamp(-32px, var(--sa-hero-lottie-mobile-offset-x), 32px), calc(var(--sa-hero-lottie-mobile-offset-y) + 18px), 0); }
  .sa-hero-banner--lottie-entry-zoom .sa-hero-banner__visual--mobile-inline .sa-hero-banner__lottie:not(.is-lottie-entered) { transform: translate3d(clamp(-32px, var(--sa-hero-lottie-mobile-offset-x), 32px), var(--sa-hero-lottie-mobile-offset-y), 0) scale(.94); }
}
@container start-canvas-theme (max-width: 575px) {
  .sa-hero-banner { --sa-hero-shell-width: calc(100% - 32px); --sa-hero-shell-max: calc(100% - 32px); --sa-hero-top-space: 30px; --sa-hero-bottom-space: 48px; min-height: var(--sa-hero-min-height-mobile, 0px); }
  .sa-hero-banner__inner { width: var(--sa-hero-shell-width); max-width: var(--sa-hero-shell-max); min-height: max(var(--sa-hero-height-mobile, auto), var(--sa-hero-min-height-mobile, 620px)); }
  .sa-hero-banner--height-mobile-fullscreen .sa-hero-banner__inner { min-height: var(--sa-hero-screen-height-mobile); }
  .sa-hero-banner__title { max-width: 100%; overflow-wrap: anywhere; font-size: min(var(--sa-hero-title-max), clamp(36px, 12.5cqw, 54px)); letter-spacing: var(--sa-hero-title-letter-spacing, -0.058em); line-height: var(--sa-hero-title-line-height, normal); }
  .sa-hero-banner__subtitle { max-width: 100%; overflow-wrap: anywhere; font-size: min(var(--sa-hero-subtitle-max), clamp(24px, 7.5cqw, 34px)); letter-spacing: var(--sa-hero-subtitle-letter-spacing, -0.045em); }
  .sa-hero-banner__description { font-size: min(var(--sa-hero-description-max), 17px); font-size-adjust: .52; line-height: var(--sa-hero-description-line-height, 1.45); }
  .sa-hero-banner__actions { width: 100%; align-content: flex-start; gap: 14px; }
  .sa-hero-banner__button { width: 100%; min-height: 56px; }
  .sa-hero-banner__link { width: 100%; }
  .sa-hero-banner__visual-card { min-height: auto; }
  .sa-hero-banner__visual--mobile-inline .sa-hero-banner__visual-card::before { inset: -18% -14% -15%; border-radius: 999px; filter: blur(18px); }
}
@media (prefers-reduced-motion: reduce) {
  .sa-hero-banner__button, .sa-hero-banner__link, .sa-hero-banner__button-icon, .sa-hero-banner__lottie { transition: none; }
  .sa-hero-banner__button:hover, .sa-hero-banner__link:hover, .sa-hero-banner__button:hover .sa-hero-banner__button-icon { transform: none; }
}

.sa-hero-banner--content-left .sa-hero-banner__content { text-align: left; align-items: flex-start; }
.sa-hero-banner--content-center .sa-hero-banner__content { text-align: center; align-items: center; }
.sa-hero-banner--content-right .sa-hero-banner__content { text-align: right; align-items: flex-end; }
.sa-hero-banner--content-left .sa-hero-banner__actions { justify-content: flex-start; }
.sa-hero-banner--content-center .sa-hero-banner__actions { justify-content: center; }
.sa-hero-banner--content-right .sa-hero-banner__actions { justify-content: flex-end; }

