.artsvc_lumen_services_shell,
  .artsvc_lumen_services_shell * {
    box-sizing: border-box !important;
  }

  .artsvc_lumen_services_shell {
    --artsvc-lumen-primary: #1961A9 !important;
    --artsvc-lumen-primary-soft: #EAF5FF !important;
    --artsvc-lumen-primary-pale: #F5FAFF !important;
    --artsvc-lumen-ink: #0B2237 !important;
    --artsvc-lumen-text: #33465A !important;
    --artsvc-lumen-muted: #687789 !important;
    --artsvc-lumen-line: #DCEAF7 !important;
    --artsvc-lumen-card: #FFFFFF !important;
    --artsvc-lumen-bg: #F7FBFF !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    padding: clamp(64px, 7vw, 118px) 20px !important;
    background:
      radial-gradient(circle at 8% 4%, rgba(25, 97, 169, 0.11), transparent 32%) !important,
      radial-gradient(circle at 94% 18%, rgba(25, 97, 169, 0.08), transparent 34%) !important,
      linear-gradient(180deg, #FFFFFF 0%, var(--artsvc-lumen-bg) 56%, #FFFFFF 100%) !important;
    color: var(--artsvc-lumen-text) !important;
    font-family: "Inter", "Segoe UI", Roboto, Arial, sans-serif !important;
  }

  .artsvc_lumen_services_shell::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background:
      linear-gradient(rgba(25, 97, 169, 0.045) 1px, transparent 1px) !important,
      linear-gradient(90deg, rgba(25, 97, 169, 0.045) 1px, transparent 1px) !important;
    background-size: 54px 54px !important;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.7), transparent 75%) !important;
    pointer-events: none !important;
  }

  .artsvc_lumen_services_shell::after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important;
    top: 180px !important;
    width: min(520px, 46vw) !important;
    height: min(520px, 46vw) !important;
    transform: translateX(45%) !important;
    border-radius: 999px !important;
    background: radial-gradient(circle, rgba(25, 97, 169, 0.10), transparent 68%) !important;
    pointer-events: none !important;
  }

  .artsvc_lumen_services_wrap {
    width: min(1180px, 100%) !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    position: relative !important;
    z-index: 2 !important;
  }



  /* Sticky sidebar support inside Elementor containers */
  .elementor-widget-ab_sb_services,
  .elementor-widget-ab_sb_services > .elementor-widget-container,
  .artsvc_lumen_services_wrap,
  .artsvc_lumen_layout,
  .artsvc_lumen_sidebar_slot {
    overflow: visible !important;
  }

  .artsvc_lumen_sidebar {
    align-self: start !important;
    position: sticky !important;
    top: 28px !important;
    z-index: 8 !important;
  }

  .artsvc_lumen_headblock {
    display: grid !important;
    grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr) !important;
    gap: clamp(28px, 5vw, 72px) !important;
    align-items: end !important;
    margin: 0 0 clamp(34px, 5vw, 62px) !important;
  }

  .artsvc_lumen_eyebrow {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 0 16px !important;
    color: var(--artsvc-lumen-primary) !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    letter-spacing: 0.16em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
  }

  .artsvc_lumen_eyebrow::before {
    content: "" !important;
    width: 42px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: var(--artsvc-lumen-primary) !important;
  }

  .artsvc_lumen_title {
    max-width: 620px !important;
    margin: 0 !important;
    color: var(--artsvc-lumen-ink) !important;
    font-size: clamp(42px, 6vw, 76px) !important;
    font-weight: 900 !important;
    letter-spacing: -0.018em !important;
    line-height: 0.96 !important;
  }

  .artsvc_lumen_introcard {
    position: relative !important;
    overflow: hidden !important;
    padding: clamp(24px, 3vw, 34px) !important;
    border: 1px solid rgba(25, 97, 169, 0.14) !important;
    border-radius: 30px !important;
    background: rgba(255, 255, 255, 0.84) !important;
    box-shadow: 0 24px 80px rgba(11, 34, 55, 0.08) !important;
    backdrop-filter: blur(16px) !important;
  }

  .artsvc_lumen_introcard::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 6px !important;
    height: 100% !important;
    background: var(--artsvc-lumen-primary) !important;
  }

  .artsvc_lumen_introcard p {
    margin: 0 0 14px !important;
    color: var(--artsvc-lumen-text) !important;
    font-size: 15px !important;
    font-weight: 450 !important;
    line-height: 1.78 !important;
  }

  .artsvc_lumen_introcard p:last-child {
    margin-bottom: 0 !important;
  }

  .artsvc_lumen_introlead {
    color: var(--artsvc-lumen-ink) !important;
    font-size: 17px !important;
    font-weight: 650 !important;
  }

  .artsvc_lumen_diffgrid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 14px !important;
    margin: 0 0 clamp(34px, 4vw, 54px) !important;
  }

  .artsvc_lumen_diffitem {
    min-height: 132px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    padding: 20px !important;
    border: 1px solid rgba(25, 97, 169, 0.12) !important;
    border-radius: 24px !important;
    background:
      linear-gradient(145deg, #FFFFFF, #F6FBFF) !important;
    box-shadow: 0 18px 48px rgba(11, 34, 55, 0.055) !important;
  }

  .artsvc_lumen_diffnum {
    width: 34px !important;
    height: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: var(--artsvc-lumen-primary-soft) !important;
    color: var(--artsvc-lumen-primary) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 0.08em !important;
  }

  .artsvc_lumen_difftext {
    margin: 16px 0 0 !important;
    color: var(--artsvc-lumen-ink) !important;
    font-size: 13px !important;
    font-weight: 760 !important;
    line-height: 1.42 !important;
  }

  .artsvc_lumen_layout {
    display: grid !important;
    max-width: 100% !important;
    grid-template-columns: 280px minmax(0, 1fr) !important;
    gap: clamp(24px, 3.2vw, 42px) !important;
    align-items: start !important;
    position: relative !important;
    overflow: visible !important;
  }

  .artsvc_lumen_sidebar_slot {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    align-self: start !important;
    overflow: visible !important;
  }

  .artsvc_lumen_sidebar {
    position: sticky !important;
    top: 28px !important;
    padding: 18px !important;
    border: 1px solid rgba(25, 97, 169, 0.13) !important;
    border-radius: 28px !important;
    background: rgba(255, 255, 255, 0.86) !important;
    box-shadow: 0 22px 70px rgba(11, 34, 55, 0.075) !important;
    backdrop-filter: blur(14px) !important;
    will-change: auto !important;
  }

  .artsvc_lumen_sidebar.artsvc_lumen_js_fixed_now,
  .artsvc_lumen_sidebar.artsvc_lumen_js_bottom_now {
    transition: none !important;
    transform: none !important;
  }

  .artsvc_lumen_sidebar_title {
    margin: 0 0 14px !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid var(--artsvc-lumen-line) !important;
    color: var(--artsvc-lumen-ink) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: 0.12em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
  }

  .artsvc_lumen_navlist {
    display: grid !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .artsvc_lumen_navlist a {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 42px !important;
    padding: 11px 12px !important;
    border: 1px solid transparent !important;
    border-radius: 16px !important;
    background: transparent !important;
    color: var(--artsvc-lumen-text) !important;
    font-size: 13px !important;
    font-weight: 740 !important;
    line-height: 1.28 !important;
    text-decoration: none !important;
    transition: transform 0.28s ease, background 0.28s ease, border-color 0.28s ease, color 0.28s ease !important;
  }

  .artsvc_lumen_navlist a::before {
    content: "" !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    border-radius: 10px !important;
    background-color: var(--artsvc-lumen-primary-soft) !important;
    background-image: var(--artsvc-lumen-nav-icon) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px 14px !important;
    box-shadow: inset 0 0 0 1px rgba(25, 97, 169, 0.18), 0 8px 18px rgba(25, 97, 169, 0.10) !important;
  }

  .artsvc_lumen_navlist li:nth-child(1) a {
    --artsvc-lumen-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231961A9' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3.3 8.6-7 10-3.7-1.4-7-5-7-10V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-5'/%3E%3C/svg%3E") !important;
  }

  .artsvc_lumen_navlist li:nth-child(2) a {
    --artsvc-lumen-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231961A9' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19h16'/%3E%3Cpath d='M7 16V9'/%3E%3Cpath d='M12 16V5'/%3E%3Cpath d='M17 16v-4'/%3E%3C/svg%3E") !important;
  }

  .artsvc_lumen_navlist li:nth-child(3) a {
    --artsvc-lumen-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231961A9' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='6' height='6' rx='1.5'/%3E%3Crect x='14' y='14' width='6' height='6' rx='1.5'/%3E%3Cpath d='M10 7h4a3 3 0 0 1 3 3v4'/%3E%3C/svg%3E") !important;
  }

  .artsvc_lumen_navlist li:nth-child(4) a {
    --artsvc-lumen-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231961A9' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 4v5c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V7l7-4z'/%3E%3Cpath d='M12 8v5'/%3E%3Cpath d='M12 17h.01'/%3E%3C/svg%3E") !important;
  }

  .artsvc_lumen_navlist li:nth-child(5) a {
    --artsvc-lumen-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231961A9' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h7l4 4v14H7V3z'/%3E%3Cpath d='M14 3v5h5'/%3E%3Cpath d='M9.5 13h5'/%3E%3Cpath d='M9.5 17h3'/%3E%3C/svg%3E") !important;
  }

  .artsvc_lumen_navlist a:hover {
    transform: none !important;
    border-color: rgba(25, 97, 169, 0.13) !important;
    background: var(--artsvc-lumen-primary-soft) !important;
    color: var(--artsvc-lumen-primary) !important;
  }

  .artsvc_lumen_navlist a.artsvc_lumen_nav_active {
    transform: none !important;
    border-color: rgba(25, 97, 169, 0.13) !important;
    background: var(--artsvc-lumen-primary-soft) !important;
    color: var(--artsvc-lumen-primary) !important;
  }

  .artsvc_lumen_navlist a.artsvc_lumen_nav_active::before {
    background-color: #FFFFFF !important;
    box-shadow: inset 0 0 0 1px rgba(25, 97, 169, 0.22), 0 10px 22px rgba(25, 97, 169, 0.14) !important;
  }

  .artsvc_lumen_contentstream {
    display: grid !important;
    min-width: 0 !important;
    max-width: 100% !important;
    gap: clamp(24px, 3vw, 36px) !important;
  }

  .artsvc_lumen_service_card {
    position: relative !important;
    max-width: 100% !important;
    overflow: hidden !important;
    border: 1px solid rgba(25, 97, 169, 0.13) !important;
    border-radius: 34px !important;
    background: var(--artsvc-lumen-card) !important;
    box-shadow: 0 28px 90px rgba(11, 34, 55, 0.075) !important;
  }

  .artsvc_lumen_service_card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background:
      radial-gradient(circle at 92% 0%, rgba(25, 97, 169, 0.09), transparent 34%) !important,
      linear-gradient(180deg, rgba(234, 245, 255, 0.60), transparent 260px) !important;
    pointer-events: none !important;
  }

  .artsvc_lumen_service_inner {
    position: relative !important;
    z-index: 1 !important;
    padding: clamp(26px, 3vw, 42px) !important;
  }

  .artsvc_lumen_cardtop {
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    gap: 22px !important;
    align-items: start !important;
    margin: 0 0 22px !important;
  }

  .artsvc_lumen_index {
    width: 68px !important;
    height: 68px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(25, 97, 169, 0.16) !important;
    border-radius: 22px !important;
    background: var(--artsvc-lumen-primary-soft) !important;
    color: var(--artsvc-lumen-primary) !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    letter-spacing: -0.02em !important;
    box-shadow: inset 0 0 0 8px rgba(255, 255, 255, 0.68) !important;
  }

  .artsvc_lumen_service_title {
    margin: 0 !important;
    color: var(--artsvc-lumen-ink) !important;
    font-size: clamp(24px, 3vw, 38px) !important;
    font-weight: 900 !important;
    letter-spacing: -0.055em !important;
    line-height: 1.04 !important;
    text-transform: uppercase !important;
  }

  .artsvc_lumen_para {
    margin: 0 0 15px !important;
    color: var(--artsvc-lumen-text) !important;
    font-size: 15px !important;
    font-weight: 450 !important;
    line-height: 1.78 !important;
  }

  .artsvc_lumen_para:last-child {
    margin-bottom: 0 !important;
  }

  .artsvc_lumen_subheading {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 22px 0 14px !important;
    color: var(--artsvc-lumen-ink) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    letter-spacing: -0.01em !important;
    line-height: 1.25 !important;
  }

  .artsvc_lumen_subheading::before {
    content: "" !important;
    width: 22px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: var(--artsvc-lumen-primary) !important;
  }

  .artsvc_lumen_listgrid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 16px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .artsvc_lumen_listgrid > li,
  .artsvc_lumen_nested_box {
    position: relative !important;
    padding: 13px 14px 13px 38px !important;
    border: 1px solid rgba(25, 97, 169, 0.10) !important;
    border-radius: 16px !important;
    background: #F8FCFF !important;
    color: var(--artsvc-lumen-text) !important;
    font-size: 13px !important;
    font-weight: 620 !important;
    line-height: 1.44 !important;
  }

  .artsvc_lumen_listgrid > li::before,
  .artsvc_lumen_nested_box::before {
    content: "✓" !important;
    position: absolute !important;
    left: 14px !important;
    top: 13px !important;
    color: var(--artsvc-lumen-primary) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
  }

  .artsvc_lumen_nested_wrap {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    margin: 16px 0 0 !important;
  }

  .artsvc_lumen_nested_box strong {
    display: block !important;
    margin: 0 0 9px !important;
    color: var(--artsvc-lumen-ink) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.3 !important;
  }

  .artsvc_lumen_nested_box ul {
    display: grid !important;
    gap: 7px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .artsvc_lumen_nested_box li {
    position: relative !important;
    padding-left: 17px !important;
    color: var(--artsvc-lumen-text) !important;
    font-size: 13px !important;
    font-weight: 560 !important;
    line-height: 1.42 !important;
  }

  .artsvc_lumen_nested_box li::before {
    content: "•" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: var(--artsvc-lumen-primary) !important;
    font-weight: 900 !important;
  }

  @media (max-width: 1080px) {
    .artsvc_lumen_headblock,
    .artsvc_lumen_layout {
      grid-template-columns: 1fr !important;
    }

    .artsvc_lumen_sidebar {
      position: relative !important;
      top: auto !important;
    }

    .artsvc_lumen_navlist {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .artsvc_lumen_diffgrid {
      grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
  }

  @media (max-width: 740px) {
    .artsvc_lumen_services_shell {
      padding: 52px 15px !important;
    }

    .artsvc_lumen_title {
      font-size: clamp(38px, 13vw, 58px) !important;
    }

    .artsvc_lumen_diffgrid,
    .artsvc_lumen_listgrid,
    .artsvc_lumen_nested_wrap,
    .artsvc_lumen_navlist {
      grid-template-columns: 1fr !important;
    }

    .artsvc_lumen_cardtop {
      grid-template-columns: 1fr !important;
      gap: 15px !important;
    }

    .artsvc_lumen_service_card {
      border-radius: 26px !important;
    }

    .artsvc_lumen_service_inner {
      padding: 24px 18px !important;
    }
  }

.artsvc_lumen_layout.artsvc_lumen_layout_no_sidebar {
  grid-template-columns: 1fr !important;
}

/* Light service forms directly below differentiator cards */
.artsvc_lumen_forms_section {
  width: 100% !important;
  margin: 0 0 clamp(34px, 4vw, 54px) !important;
  position: relative !important;
  z-index: 3 !important;
}

.artsvc_lumen_forms_grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.artsvc_lumen_form_card {
  width: 100% !important;
  min-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: clamp(24px, 3vw, 34px) !important;
  border: 1px solid rgba(25, 97, 169, 0.14) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 92% 0%, rgba(43, 134, 217, 0.11), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,0.96), rgba(248,252,255,0.94)) !important;
  box-shadow: 0 24px 72px rgba(11, 34, 55, 0.08) !important;
  backdrop-filter: blur(14px) !important;
  overflow: hidden !important;
  position: relative !important;
}

.artsvc_lumen_form_card::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, var(--artsvc-lumen-primary), #2B86D9) !important;
}

.artsvc_lumen_form_head {
  position: relative !important;
  z-index: 1 !important;
}

.artsvc_lumen_form_title {
  margin: 0 0 10px !important;
  color: var(--artsvc-lumen-ink) !important;
  font-size: clamp(24px, 2.4vw, 34px) !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
}

.artsvc_lumen_form_desc {
  margin: 0 !important;
  color: var(--artsvc-lumen-muted) !important;
  font-size: 15px !important;
  font-weight: 620 !important;
  line-height: 1.65 !important;
}

.artsvc_lumen_form_body {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  position: relative !important;
  z-index: 1 !important;
}

.artsvc_lumen_form_group,
.artsvc_lumen_form_group_wide {
  min-width: 0 !important;
}

.artsvc_lumen_form_group_wide {
  grid-column: 1 / -1 !important;
}

.artsvc_lumen_form_field {
  width: 100% !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(25, 97, 169, 0.18) !important;
  border-radius: 16px !important;
  outline: none !important;
  background: rgba(255, 255, 255, 0.88) !important;
  color: var(--artsvc-lumen-ink) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  font-family: inherit !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.72) !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease !important;
}

.artsvc_lumen_form_field::placeholder {
  color: rgba(51, 70, 90, 0.55) !important;
}

.artsvc_lumen_form_field:focus {
  border-color: rgba(25, 97, 169, 0.56) !important;
  background: #FFFFFF !important;
  box-shadow: 0 0 0 4px rgba(25, 97, 169, 0.10) !important;
}

.artsvc_lumen_form_textarea {
  min-height: 124px !important;
  resize: vertical !important;
}

.artsvc_lumen_form_select {
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 42px !important;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--artsvc-lumen-primary) 50%),
    linear-gradient(135deg, var(--artsvc-lumen-primary) 50%, transparent 50%) !important;
  background-position:
    calc(100% - 21px) calc(50% + 1px),
    calc(100% - 15px) calc(50% + 1px) !important;
  background-size: 6px 6px, 6px 6px !important;
  background-repeat: no-repeat !important;
}

.artsvc_lumen_form_select option {
  background: #FFFFFF !important;
  color: #0B2237 !important;
}

.artsvc_lumen_form_submit {
  width: 100% !important;
  min-height: 54px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: auto 0 0 !important;
  padding: 14px 22px !important;
  border: 1px solid rgba(25, 97, 169, 0.22) !important;
  border-radius: 999px !important;
  background: var(--artsvc-lumen-primary) !important;
  color: #FFFFFF !important;
  cursor: pointer !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-align: center !important;
  box-shadow: 0 16px 34px rgba(25, 97, 169, 0.20) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease !important;
  position: relative !important;
  z-index: 1 !important;
}

.artsvc_lumen_form_submit:hover,
.artsvc_lumen_form_submit:focus {
  transform: translateY(-2px) !important;
  background: #0F4D89 !important;
  box-shadow: 0 20px 42px rgba(25, 97, 169, 0.26) !important;
}

.artsvc_lumen_honeypot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.artsvc_lumen_form_notice {
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 14px 18px !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  line-height: 1.45 !important;
}

.artsvc_lumen_form_notice_success {
  border: 1px solid rgba(25, 97, 169, 0.22) !important;
  background: #EAF5FF !important;
  color: #1961A9 !important;
}

.artsvc_lumen_form_notice_error {
  border: 1px solid rgba(190, 18, 60, 0.18) !important;
  background: #FFF1F2 !important;
  color: #BE123C !important;
}

@media (max-width: 980px) {
  .artsvc_lumen_forms_grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 620px) {
  .artsvc_lumen_form_body {
    grid-template-columns: 1fr !important;
  }

  .artsvc_lumen_form_card {
    border-radius: 24px !important;
    padding: 22px 18px !important;
  }
}

/* --------------------------------------------------------------------------
 * v2.0.8: linked service list items, draggable differentiators and one
 * full-width AJAX consultation form at the end of the Services widget.
 * -------------------------------------------------------------------------- */
.artsvc_lumen_services_shell .artsvc_lumen_list_link {
  display: block !important;
  width: 100% !important;
  color: inherit !important;
  text-decoration: none !important;
  transition: color .2s ease, transform .2s ease !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_list_link:hover,
.artsvc_lumen_services_shell .artsvc_lumen_list_link:focus-visible {
  color: var(--artsvc-lumen-primary) !important;
  text-decoration: none !important;
  transform: translateX(2px) !important;
  outline: none !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_listgrid > li:has(.artsvc_lumen_list_link) {
  padding-top: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_listgrid > li > .artsvc_lumen_list_link {
  min-height: 100% !important;
  padding: 13px 14px 13px 0 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_section {
  width: 100% !important;
  margin: clamp(42px, 5vw, 72px) 0 0 !important;
  position: relative !important;
  z-index: 4 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_shell {
  width: 100% !important;
  margin: 0 !important;
  padding: clamp(26px, 4vw, 42px) !important;
  border: 1px solid rgba(25, 97, 169, .16);
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 95% 0%, rgba(43, 134, 217, .10), transparent 32%),
    linear-gradient(145deg, #FFFFFF 0%, #F3F9FF 100%) !important;
  box-shadow: 0 24px 68px rgba(11, 34, 55, .08);
  overflow: hidden !important;
  position: relative !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_shell::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, var(--artsvc-lumen-primary), #2B86D9) !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_heading {
  margin: 0 0 26px !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_accent {
  display: block !important;
  width: 46px !important;
  height: 4px !important;
  margin: 0 0 16px !important;
  border-radius: 999px !important;
  background: var(--artsvc-lumen-primary) !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_title {
  margin: 0 !important;
  color: var(--artsvc-lumen-ink) !important;
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 900;
  letter-spacing: -.045em;
  line-height: 1.12;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 16px !important;
  row-gap: 14px !important;
  align-items: start !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_group {
  min-width: 0 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_group_full {
  grid-column: 1 / -1 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_label {
  display: block !important;
  margin: 0 0 7px !important;
  color: #41546A !important;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.25;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.artsvc_lumen_services_shell .artsvc_lumen_required_mark {
  margin-left: 4px !important;
  color: #DC2626 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_field {
  width: 100% !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 13px 16px !important;
  border: 1px solid rgba(25, 97, 169, .20);
  border-radius: 12px !important;
  outline: none !important;
  background-color: #FFFFFF !important;
  color: var(--artsvc-lumen-ink) !important;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  box-shadow: 0 5px 16px rgba(11, 34, 55, .025) !important;
  transition: border-color .22s ease, box-shadow .22s ease, background-color .22s ease !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_field::placeholder {
  color: #8292A6 !important;
  opacity: 1 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_field:focus {
  border-color: rgba(25, 97, 169, .68) !important;
  background-color: #FFFFFF !important;
  box-shadow: 0 0 0 4px rgba(25, 97, 169, .10) !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_shell.is-validated .artsvc_lumen_bottom_form_field:invalid {
  border-color: rgba(220, 38, 38, .72) !important;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, .08) !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_textarea {
  min-height: 118px !important;
  resize: vertical !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_select {
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 44px !important;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--artsvc-lumen-primary) 50%),
    linear-gradient(135deg, var(--artsvc-lumen-primary) 50%, transparent 50%) !important;
  background-position:
    calc(100% - 21px) calc(50% + 1px),
    calc(100% - 15px) calc(50% + 1px) !important;
  background-size: 6px 6px, 6px 6px !important;
  background-repeat: no-repeat !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_submit {
  width: 100% !important;
  min-height: 52px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  margin: 22px 0 0 !important;
  padding: 14px 24px !important;
  border: 1px solid rgba(25, 97, 169, .22) !important;
  border-radius: 12px !important;
  background: var(--artsvc-lumen-primary) !important;
  color: #FFFFFF !important;
  cursor: pointer !important;
  font-family: inherit;
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .025em;
  text-align: center !important;
  box-shadow: 0 16px 34px rgba(25, 97, 169, .20) !important;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_submit:hover,
.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_submit:focus-visible {
  transform: translateY(-2px) !important;
  background: #0F4D89 !important;
  color: #FFFFFF !important;
  box-shadow: 0 20px 42px rgba(25, 97, 169, .27) !important;
  outline: none !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_submit:disabled {
  cursor: wait !important;
  opacity: .78 !important;
  transform: none !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_spinner {
  width: 17px !important;
  height: 17px !important;
  display: none !important;
  border: 2px solid rgba(255, 255, 255, .42) !important;
  border-top-color: #FFFFFF !important;
  border-radius: 50% !important;
  animation: artsvc-lumen-spin .72s linear infinite !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_bottom_form_shell.is-submitting .artsvc_lumen_bottom_form_spinner {
  display: inline-block !important;
}

@keyframes artsvc-lumen-spin {
  to { transform: rotate(360deg); }
}

.artsvc_lumen_services_shell .artsvc_lumen_form_popup[hidden] {
  display: none !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_form_popup {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  background: rgba(7, 22, 38, .56) !important;
  backdrop-filter: blur(8px) !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_form_popup_card {
  width: min(440px, 100%) !important;
  padding: 36px 30px 30px !important;
  border: 1px solid rgba(25, 97, 169, .18) !important;
  border-radius: 24px !important;
  background: #FFFFFF !important;
  color: var(--artsvc-lumen-ink) !important;
  text-align: center !important;
  box-shadow: 0 30px 90px rgba(5, 20, 35, .28) !important;
  position: relative !important;
  animation: artsvc-lumen-popup-in .25s ease both !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_form_popup_close {
  width: 34px !important;
  height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  right: 14px !important;
  top: 14px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #EEF6FD !important;
  color: #37516B !important;
  cursor: pointer !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_form_popup_icon {
  width: 62px !important;
  height: 62px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 18px !important;
  border-radius: 50% !important;
  background: #EAF5FF !important;
  color: var(--artsvc-lumen-primary) !important;
  font-size: 30px !important;
  font-weight: 900 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_form_popup.is-error .artsvc_lumen_form_popup_icon {
  background: #FFF1F2 !important;
  color: #BE123C !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_form_popup_title {
  display: block !important;
  margin: 0 0 8px !important;
  color: var(--artsvc-lumen-ink) !important;
  font-size: 23px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_form_popup_message {
  margin: 0 !important;
  color: var(--artsvc-lumen-muted) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.65 !important;
}

@keyframes artsvc-lumen-popup-in {
  from { opacity: 0; transform: translateY(14px) scale(.97); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 1080px) {
  .artsvc_lumen_services_shell .artsvc_lumen_diffgrid {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 2px 2px 14px !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    cursor: grab !important;
    touch-action: pan-y pinch-zoom !important;
    user-select: none !important;
  }

  .artsvc_lumen_services_shell .artsvc_lumen_diffgrid::-webkit-scrollbar {
    display: none !important;
  }

  .artsvc_lumen_services_shell .artsvc_lumen_diffgrid.is-dragging {
    cursor: grabbing !important;
    scroll-behavior: auto !important;
  }

  .artsvc_lumen_services_shell .artsvc_lumen_diffitem {
    flex: 0 0 clamp(245px, 44vw, 380px) !important;
    min-width: 0 !important;
    scroll-snap-align: start !important;
  }
}

@media (max-width: 740px) {
  .artsvc_lumen_services_shell .artsvc_lumen_diffgrid {
    grid-template-columns: none !important;
  }

  .artsvc_lumen_services_shell .artsvc_lumen_diffitem {
    flex-basis: min(82vw, 310px) !important;
  }

  .artsvc_lumen_services_shell .artsvc_lumen_bottom_form_grid {
    grid-template-columns: 1fr !important;
  }

  .artsvc_lumen_services_shell .artsvc_lumen_bottom_form_group,
  .artsvc_lumen_services_shell .artsvc_lumen_bottom_form_group_full {
    grid-column: 1 / -1 !important;
  }

  .artsvc_lumen_services_shell .artsvc_lumen_bottom_form_shell {
    padding: 25px 18px !important;
    border-radius: 22px !important;
  }

  .artsvc_lumen_services_shell .artsvc_lumen_bottom_form_title {
    font-size: 28px;
  }
}

html.artsvc-lumen-popup-open {
  overflow: hidden !important;
}


/* --------------------------------------------------------------------------
 * v2.1.1: separate, linkable service item lists with selectable checklist or
 * grouped-card layouts and complete Elementor style controls.
 * -------------------------------------------------------------------------- */
.artsvc_lumen_services_shell .artsvc_lumen_item_list {
  --artsvc-lumen-item-icon: "✓";
  width: 100% !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_simple_grid,
.artsvc_lumen_services_shell .artsvc_lumen_item_group_grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  box-sizing: border-box !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card,
.artsvc_lumen_services_shell .artsvc_lumen_item_group {
  position: relative !important;
  min-width: 0 !important;
  margin: 0 !important;
  border: 1px solid rgba(25, 97, 169, 0.13) !important;
  border-radius: 16px !important;
  background: #F8FCFF !important;
  color: var(--artsvc-lumen-text) !important;
  box-sizing: border-box !important;
  transition: background-color .22s ease, border-color .22s ease, box-shadow .22s ease, transform .22s ease !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card {
  display: flex !important;
  align-items: center !important;
  min-height: 48px !important;
  padding: 13px 16px 13px 40px !important;
  font-size: 14px !important;
  font-weight: 620 !important;
  line-height: 1.45 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_group {
  padding: 16px 18px 16px 38px !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card::before,
.artsvc_lumen_services_shell .artsvc_lumen_item_group::before {
  content: var(--artsvc-lumen-item-icon) !important;
  position: absolute !important;
  left: 14px !important;
  top: 13px !important;
  width: 22px !important;
  height: 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 0 !important;
  background: transparent;
  color: var(--artsvc-lumen-primary) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_group_title {
  margin: 0 0 10px !important;
  padding: 0 !important;
  color: var(--artsvc-lumen-ink) !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
  text-transform: none !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_group_items {
  display: grid !important;
  gap: 7px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_group_items li {
  position: relative !important;
  margin: 0 !important;
  padding: 0 0 0 17px !important;
  color: var(--artsvc-lumen-text) !important;
  font-size: 13px !important;
  font-weight: 560 !important;
  line-height: 1.45 !important;
  list-style: none !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_group_items li::before {
  content: "•" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  color: var(--artsvc-lumen-primary) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: inherit !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card > a,
.artsvc_lumen_services_shell .artsvc_lumen_item_group_items li > a,
.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card .artsvc_lumen_list_link,
.artsvc_lumen_services_shell .artsvc_lumen_item_group_items .artsvc_lumen_list_link {
  display: block !important;
  width: 100% !important;
  color: inherit !important;
  font: inherit !important;
  line-height: inherit !important;
  text-align: inherit !important;
  text-decoration: none !important;
  transition: color .2s ease, transform .2s ease !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card > a:hover,
.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card > a:focus-visible,
.artsvc_lumen_services_shell .artsvc_lumen_item_group_items li > a:hover,
.artsvc_lumen_services_shell .artsvc_lumen_item_group_items li > a:focus-visible {
  color: var(--artsvc-lumen-primary) !important;
  text-decoration: none !important;
  outline: none !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card:has(> a) {
  padding-top: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
}

.artsvc_lumen_services_shell .artsvc_lumen_item_simple_card > a {
  min-height: 48px !important;
  padding: 13px 16px 13px 0 !important;
  display: flex !important;
  align-items: center !important;
}

@media (max-width: 740px) {
  .artsvc_lumen_services_shell .artsvc_lumen_item_simple_grid,
  .artsvc_lumen_services_shell .artsvc_lumen_item_group_grid {
    grid-template-columns: 1fr !important;
  }
}
