.sahl-global-top {
  background: #071f36;
  color: #bcd0df;
  padding: 7px 0;
  font-size: 11px;
}

.sahl-global-top .elementor-widget-text-editor p { margin: 0; }
.sahl-global-top .elementor-column:last-child { text-align: left; }

.sahl-global-header {
  position: sticky;
  top: 0;
  z-index: 999;
  background: #ffffffed;
  padding: 10px 0;
  border-bottom: 1px solid #dce8ef;
  backdrop-filter: blur(14px);
}

.sahl-global-header > .elementor-container { align-items: center; }
.sahl-header-logo > .elementor-widget-wrap { display: flex; align-items: center; gap: 12px; }
.sahl-header-logo img { width: 170px; height: 48px; object-fit: contain; }

.sahl-header-nav > .elementor-widget-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
}

.sahl-header-nav .elementor-widget-button { width: auto; margin: 0; }

.sahl-nav-link .elementor-button {
  padding: 8px 6px;
  background: transparent;
  color: #334e63;
  font-size: 12px;
  box-shadow: none;
}

.sahl-nav-link .elementor-button:hover { color: #1473df; }
.sahl-header-action .elementor-widget-button { text-align: left; }

.sahl-header-action .elementor-button,
.sahl-primary-action .elementor-button {
  background: linear-gradient(135deg, #1473df, #2b91ef);
  color: #fff;
  border-radius: 11px;
  box-shadow: 0 10px 25px #1473df35;
}

.sahl-secondary-action .elementor-button {
  background: #eaf4ff;
  color: #1473df;
  border: 1px solid #d3e8fb;
  border-radius: 11px;
}

.sahl-white-action .elementor-button {
  background: #fff;
  color: #1473df;
  border-radius: 11px;
}

.sahl-home-hero {
  min-height: 690px;
  padding: 70px 0;
  background: linear-gradient(150deg, #edf7fc, #fff 58%, #edf9f6);
  position: relative;
  overflow: hidden;
}

.sahl-home-hero::before,
.sahl-inner-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(#16669a0d 1px, transparent 1px),
    linear-gradient(90deg, #16669a0d 1px, transparent 1px);
  background-size: 35px 35px;
}

.sahl-home-hero > .elementor-container,
.sahl-inner-hero > .elementor-container,
.sahl-home-hero > .sahl-wrap,
.sahl-inner-hero > .sahl-wrap {
  display: flex;
  gap: 34px;
  position: relative;
  align-items: center;
}

.sahl-home-hero > .sahl-wrap > .sahl-fallback-column,
.sahl-inner-hero > .sahl-wrap > .sahl-fallback-column { flex: 1; }

.sahl-pill {
  display: inline-flex;
  padding: 7px 13px;
  background: #fff;
  border: 1px solid #dce8ef;
  border-radius: 25px;
  font-size: 11px;
  color: #527084;
}

.sahl-hero-copy h1 {
  font-size: clamp(42px, 5vw, 64px);
  line-height: 1.15;
  letter-spacing: -2px;
  color: #071f36;
  margin: 20px 0;
}

.sahl-hero-copy p { font-size: 17px; line-height: 1.9; color: #587083; }
.sahl-hero-copy .elementor-widget-button { display: inline-block; width: auto; margin-left: 8px; }
.sahl-hero-copy > .sahl-primary-action,
.sahl-hero-copy > .sahl-secondary-action { display: inline-block; margin-left: 8px; }

.sahl-hero-media img {
  width: 100%;
  height: 460px;
  object-fit: cover;
  border-radius: 22px;
  border: 7px solid #fff;
  box-shadow: 0 35px 80px #092e4930;
}

.sahl-inner-hero {
  min-height: 430px;
  padding: 70px 0;
  background: linear-gradient(120deg, #071f36, #0d4868);
  color: #fff;
}

.sahl-inner-hero h1,
.sahl-inner-hero h2,
.sahl-inner-hero h3 {
  color: #fff;
  font-size: clamp(38px, 5vw, 52px);
}

.sahl-inner-hero p { color: #bed1de; line-height: 1.9; }

.sahl-inner-hero img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-radius: 20px;
  border: 5px solid #ffffff18;
}

.sahl-section-title { padding: 80px 0 32px; text-align: center; }
.sahl-section-title .elementor-widget-wrap { max-width: 760px; margin: auto; }
.sahl-section-title span { color: #1473df; font-size: 12px; font-weight: 800; }
.sahl-section-title h2 { font-size: clamp(30px, 4vw, 42px); color: #071f36; margin: 8px 0; }
.sahl-section-title p { color: #63798b; line-height: 1.8; }
.sahl-card-row { padding: 0 0 18px; }
.sahl-card-row > .elementor-container,
.sahl-card-row > .sahl-wrap { display: flex; gap: 16px; }

.sahl-card-row > .sahl-wrap > .sahl-fallback-column { flex: 1; }

.sahl-editable-card > .elementor-widget-wrap,
.sahl-fallback-column.sahl-editable-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #dce8ef;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 12px 30px #0a35530b;
  transition: .3s;
}

.sahl-editable-card > .elementor-widget-wrap:hover,
.sahl-fallback-column.sahl-editable-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 45px #0a355314;
}

.sahl-editable-card .elementor-widget-image { margin: 0; width: 100%; }

.sahl-editable-card .elementor-widget-image img {
  display: block;
  width: 100%;
  height: 145px;
  object-fit: cover;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.sahl-editable-card .elementor-widget-heading,
.sahl-editable-card .elementor-widget-text-editor,
.sahl-editable-card .elementor-widget-button {
  padding-right: 18px;
  padding-left: 18px;
}

.sahl-editable-card .elementor-widget-heading { margin-top: 16px; }
.sahl-editable-card h3 { font-size: 16px; color: #10263a; }
.sahl-editable-card p { font-size: 11px; line-height: 1.8; color: #63798b; }
.sahl-editable-card .elementor-widget-text-editor { flex: 1; }

.sahl-card-link .elementor-button {
  padding: 10px 0;
  background: transparent;
  color: #1473df;
  box-shadow: none;
  border-top: 1px solid #e8eff3;
  border-radius: 0;
}

.sahl-all-systems { padding: 20px 0 70px; text-align: center; }

.sahl-custom-band {
  margin-top: 70px;
  padding: 75px 0;
  background: linear-gradient(120deg, #08243d, #0d4a6c);
  color: #fff;
}

.sahl-custom-band h2,
.sahl-custom-band h3,
.sahl-custom-band h4 { color: #fff; }
.sahl-custom-band > .sahl-wrap { display: flex; align-items: center; gap: 36px; }
.sahl-custom-band > .sahl-wrap > .sahl-fallback-column { flex: 1; }
.sahl-custom-copy p { color: #b1c8d7; line-height: 1.9; }

.sahl-custom-media img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-radius: 20px;
}

.sahl-custom-media .elementor-widget-heading {
  display: inline-block;
  width: 48%;
  padding: 12px;
  background: #ffffff0d;
  border: 1px solid #ffffff20;
  border-radius: 12px;
  margin: 4px;
}

.sahl-custom-media h4 { font-size: 13px; }
.sahl-stats { padding: 35px 0; }
.sahl-stats > .sahl-wrap { display: flex; }
.sahl-stats > .sahl-wrap > .sahl-fallback-column { flex: 1; }
.sahl-stat { text-align: center; border-left: 1px solid #dce8ef; }
.sahl-stat:last-child { border: 0; }
.sahl-stat h3 { font-size: 33px; color: #1473df; margin: 0; }
.sahl-stat p { font-size: 11px; color: #63798b; }
.sahl-faq-row { padding: 0; }
.sahl-faq-row > .elementor-container { gap: 16px; }
.sahl-faq-row > .sahl-wrap { display: flex; gap: 16px; }
.sahl-faq-row > .sahl-wrap > .sahl-fallback-column { flex: 1; }
.sahl-faq-item > .elementor-widget-wrap { padding: 18px; border-bottom: 1px solid #dce8ef; }
.sahl-faq-item h4 { font-size: 15px; color: #071f36; }
.sahl-faq-item p { font-size: 12px; color: #63798b; }

.sahl-final-cta {
  width: min(1160px, calc(100% - 36px));
  margin: 70px auto;
  padding: 42px 48px;
  background: linear-gradient(120deg, #0b3151, #1470b6);
  border-radius: 24px;
  color: #fff;
}

.sahl-final-cta > .elementor-container { align-items: center; }
.sahl-final-cta > .sahl-wrap { display: flex; align-items: center; gap: 30px; }
.sahl-final-cta > .sahl-wrap > .sahl-fallback-column:first-child { flex: 7; }
.sahl-final-cta > .sahl-wrap > .sahl-fallback-column:last-child { flex: 3; }
.sahl-final-cta h2 { color: #fff; }
.sahl-final-cta p { color: #bed1de; }

.sahl-global-footer {
  padding: 58px 0 26px;
  background: #061a2d;
  color: #9fb3c4;
}

.sahl-global-footer h4 { color: #fff; }
.sahl-global-footer p { font-size: 11px; line-height: 1.9; }
.sahl-footer-brand img { width: 180px; height: 54px; object-fit: contain; filter: brightness(0) invert(1); }

.sahl-footer-link .elementor-button {
  display: block;
  padding: 5px 0;
  background: transparent;
  color: #a7bac8;
  text-align: right;
  box-shadow: none;
  font-size: 11px;
}

.sahl-global-footer .elementor-widget-button { margin: 0; }
.sahl-global-footer a:hover { color: #fff; }

.sahl-content-split > .elementor-container,
.sahl-content-split > .sahl-wrap,
.sahl-system-overview > .elementor-container,
.sahl-system-overview > .sahl-wrap { display: flex; align-items: center; gap: 30px; }
.sahl-split-reverse > .elementor-container,
.sahl-split-reverse > .sahl-wrap { flex-direction: row-reverse; }
.sahl-content-media img { width: 100%; height: 240px; object-fit: cover; border-radius: 18px; box-shadow: 0 18px 42px #092e4917; }
.sahl-system-overview { padding: 55px 0; background: #f3f8fb; }
.sahl-info-panel > .elementor-widget-wrap,
.sahl-fallback-column.sahl-info-panel { height: 100%; padding: 24px; background: #fff; border: 1px solid #dce8ef; border-radius: 16px; }
.sahl-info-panel h3 { color: #071f36; font-size: 20px; }
.sahl-info-panel p { color: #63798b; line-height: 1.9; }
.sahl-form-section { padding: 70px 0; background: #f3f8fb; }
.sahl-form-section > .elementor-container { max-width: 900px; }
.sahl-form .sahl-consent { grid-column: 1 / -1; flex-direction: row; align-items: center; }
.sahl-form .sahl-consent input { width: auto; }
.sahl-menu { display: none; border: 0; background: #eaf4ff; color: #1473df; width: 42px; height: 42px; border-radius: 10px; font-size: 22px; cursor: pointer; }

@media (max-width: 900px) {
  .sahl-menu { display: inline-grid; place-items: center; }
  .sahl-header-nav { display: none; position: absolute; top: 68px; right: 18px; left: 18px; width: auto !important; padding: 16px; background: #fff; border: 1px solid #dce8ef; border-radius: 15px; box-shadow: 0 20px 50px #071f3620; }
  .sahl-header-nav.open { display: block; }
  .sahl-header-nav > .elementor-widget-wrap { flex-direction: column; align-items: stretch; }
  .sahl-header-nav .elementor-widget-button { width: 100%; }
  .sahl-header-nav .elementor-button { display: block; text-align: right; }
  .sahl-header-logo { width: 60% !important; }
  .sahl-header-action { width: 40% !important; }
  .sahl-home-hero > .elementor-container,
  .sahl-inner-hero > .elementor-container,
  .sahl-home-hero > .sahl-wrap,
  .sahl-inner-hero > .sahl-wrap { flex-direction: column; }
  .sahl-home-hero .elementor-column,
  .sahl-inner-hero .elementor-column { width: 100% !important; }
  .sahl-hero-copy { text-align: center; }
  .sahl-hero-media img { height: 360px; }
  .sahl-card-row > .elementor-container,
  .sahl-card-row > .sahl-wrap { flex-wrap: wrap; }
  .sahl-editable-card { width: calc(50% - 8px) !important; }
  .sahl-card-row > .sahl-wrap > .sahl-fallback-column { flex: 0 0 calc(50% - 8px); }
  .sahl-global-footer > .elementor-container { flex-wrap: wrap; }
  .sahl-global-footer .elementor-column { width: 50% !important; }
  .sahl-footer-brand { width: 100% !important; }
  .sahl-custom-band > .elementor-container { flex-direction: column; }
  .sahl-custom-band .elementor-column { width: 100% !important; }
  .sahl-custom-band > .sahl-wrap { flex-direction: column; }
  .sahl-content-split > .elementor-container,
  .sahl-content-split > .sahl-wrap,
  .sahl-split-reverse > .elementor-container,
  .sahl-split-reverse > .sahl-wrap,
  .sahl-system-overview > .elementor-container,
  .sahl-system-overview > .sahl-wrap { flex-direction: column; }
  .sahl-content-split .elementor-column,
  .sahl-system-overview .elementor-column { width: 100% !important; }
  .sahl-stats > .elementor-container { flex-wrap: wrap; }
  .sahl-stat { width: 50% !important; }
  .sahl-stats > .sahl-wrap { flex-wrap: wrap; }
  .sahl-stats > .sahl-wrap > .sahl-fallback-column { flex: 0 0 50%; }
}

@media (max-width: 580px) {
  .sahl-header-action { display: none; }
  .sahl-header-logo { width: 100% !important; text-align: center; }
  .sahl-home-hero { min-height: auto; padding: 50px 0; }
  .sahl-hero-copy h1 { font-size: 38px; }
  .sahl-hero-media img { height: 260px; }
  .sahl-editable-card { width: 100% !important; }
  .sahl-card-row > .sahl-wrap > .sahl-fallback-column { flex-basis: 100%; }
  .sahl-section-title { padding-top: 58px; }
  .sahl-global-footer .elementor-column { width: 100% !important; }
  .sahl-final-cta { padding: 32px 22px; text-align: center; }
  .sahl-final-cta > .sahl-wrap { flex-direction: column; }
  .sahl-faq-row > .elementor-container { flex-direction: column; }
  .sahl-faq-row > .sahl-wrap { flex-direction: column; }
  .sahl-faq-item { width: 100% !important; }
}
