.ai-onboarding-hint { display: none !important; }

@media (max-width: 820px) {  .ai-widget:not(.is-open) .ai-onboarding-hint {
    display: block !important;
  }

  .ai-widget.is-open .ai-onboarding-hint, html.mobile-ai-panel-open .ai-widget .ai-onboarding-hint { display: none !important; }
  html.home-start-clean #home.hero,
  #home.hero {
    min-height: 0 !important;
    height: calc(
      var(--dst-mobile-vh)
      - var(--mobile-header-height)
      - var(--dst-mobile-header-correction)
    ) !important;
    display: flex !important;
    align-items: stretch !important;
    padding-top: var(--dst-mobile-hero-edge-gap) !important;
    padding-bottom: calc(var(--dst-mobile-hero-edge-gap) + var(--dst-mobile-safe-bottom)) !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html.home-start-clean #home .hero-card,
  #home .hero-card {
    width: 100% !important;
    min-height: 0 !important;
    height: 100% !important;
    box-sizing: border-box !important;
  }

  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target { min-height: 0 !important; height: calc( var(--dst-mobile-vh) - var(--mobile-header-height) - var(--dst-mobile-header-correction) ) !important; padding-top: var(--dst-mobile-hero-edge-gap) !important; padding-bottom: calc(var(--dst-mobile-hero-edge-gap) + var(--dst-mobile-safe-bottom)) !important; box-sizing: border-box !important; }

  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target .hero-card { min-height: 0 !important; height: 100% !important; box-sizing: border-box !important; }
}

@media (max-width: 820px) and (max-height: 780px) {
  html.home-start-clean #home .hero-card,
  #home .hero-card { padding-top: var(--dst-mobile-hero-card-pad-y-short) !important; padding-bottom: var(--dst-mobile-hero-card-pad-y-short) !important; }

  #home .mobile-hero-intro { margin-bottom: var(--dst-mobile-hero-intro-gap-short) !important; }

  #home .hero-subtitle { margin-bottom: var(--dst-mobile-hero-subtitle-gap-short) !important; }

  #home .hero-summary-list { gap: var(--dst-mobile-hero-list-gap-short) !important; }

  #home .hero-actions { margin-top: var(--dst-mobile-hero-actions-top-short) !important; margin-bottom: var(--dst-mobile-hero-actions-bottom-short) !important; gap: var(--dst-mobile-hero-actions-gap-short) !important; }

  #home .hero-actions + .hero-trust-badges { margin-top: var(--dst-mobile-hero-badges-top-short) !important; }
}

.header-links a.is-current,
.header-links a[aria-current="page"] { color: var(--blue); }

.header-links a.is-current::after,
.header-links a[aria-current="page"]::after { transform: scaleX(1); }

@media (min-width: 821px) {
  .header-links.is-user-hovering a.is-current:not(:hover), .header-links.is-user-hovering a[aria-current="page"]:not(:hover) { color: inherit; }

  .header-links.is-user-hovering a.is-current:not(:hover)::after, .header-links.is-user-hovering a[aria-current="page"]:not(:hover)::after { transform: scaleX(0) !important; }
}

@media (max-width: 820px) {
  .header-links a.is-current,
  .header-links a[aria-current="page"] {
    color: var(--blue) !important;
    border-color: rgba(24,91,157,.28) !important;
    background: rgba(255,255,255,.94) !important;
    box-shadow: 0 7px 18px rgba(20,41,67,.08), inset 0 -2px 0 rgba(246,179,33,.34) !important;
  }
}

@media (max-width: 820px) {
  html.ai-launcher-dragged .ai-widget .ai-onboarding-hint {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

@media (min-width: 821px) and (max-width: 1199px) {
  html { scroll-padding-top: calc(var(--dst-compact-header-height) + 10px) !important; }

  #top, #home, #about, #services, #process, #pricing, #faq, #resources, #contact { scroll-margin-top: calc(var(--dst-compact-header-height) + 10px) !important; }

  body { overflow-x: hidden !important; }

  .site-header { padding-right: 0 !important; }

  .header-inner,
  .section-shell,
  .site-footer { width: min(calc(100% - (var(--dst-compact-page-gutter) * 2)), 1060px) !important; max-width: 1060px !important; margin-left: auto !important; margin-right: auto !important; transform: none !important; }

  .header-inner { height: var(--dst-compact-header-height) !important; gap: clamp(8px, 1.15vw, 14px) !important; padding: 0 clamp(12px, 1.8vw, 18px) !important; }

  .brand { flex: 0 0 auto !important; width: clamp(168px, 22vw, 228px) !important; min-width: clamp(168px, 22vw, 228px) !important; }

  .brand img { width: clamp(158px, 21vw, 218px) !important; }

  .menu-toggle, .language-switch-mobile, .header-ai-toggle { display: none !important; }

  .main-nav { position: static !important; display: flex !important; flex: 1 1 auto !important; min-width: 0 !important; align-items: center !important; justify-content: flex-end !important; gap: clamp(7px, 1vw, 12px) !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: transparent !important; }

  .header-links {
    display: flex !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    justify-content: flex-end !important;
    gap: clamp(4px, .68vw, 8px) !important;
    white-space: nowrap !important;
  }

  .header-links a { min-height: 30px !important; padding: 7px clamp(5px, .72vw, 8px) !important; font-size: clamp(10.1px, 1.05vw, 11.8px) !important; line-height: 1 !important; letter-spacing: -.01em !important; }

  .main-nav > .language-switch:not(.language-switch-mobile) { display: inline-flex !important; flex: 0 0 auto !important; gap: 5px !important; }

  .main-nav > .language-switch button {
    min-width: 34px !important;
    min-height: 32px !important;
    padding: 7px 8px !important;
    font-size: 11.2px !important;
  }

  #home.hero,
  html.home-start-clean #home.hero {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: calc(var(--dst-nonrail-vh) - var(--dst-nonrail-header-height)) !important;
    padding-top: var(--dst-nonrail-hero-edge-gap) !important;
    padding-right: var(--dst-nonrail-hero-edge-gap) !important;
    padding-bottom: calc(var(--dst-nonrail-hero-edge-gap) + env(safe-area-inset-bottom, 0)) !important;
    padding-left: var(--dst-nonrail-hero-edge-gap) !important;
    box-sizing: border-box !important;
  }

  #home .hero-card,
  html.home-start-clean #home .hero-card {
    display: block !important;
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    padding: var(--dst-compact-card-pad) !important;
    border-radius: clamp(26px, 3.1vw, 34px) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  #home .hero-copy { max-width: none !important; justify-content: flex-start !important; }

  #home .mobile-hero-intro { display: grid !important; grid-template-columns: minmax(0, 1fr) var(--dst-compact-portrait-w) !important; gap: clamp(18px, 3vw, 36px) !important; align-items: start !important; margin-bottom: clamp(16px, 2.4vw, 26px) !important; }

  #home .mobile-hero-intro h1 { margin: 0 !important; font-size: var(--dst-compact-hero-title) !important; line-height: 1.055 !important; letter-spacing: -.046em !important; text-wrap: balance !important; }

  #home .mobile-portrait-card {
    display: grid !important;
    justify-items: stretch !important;
    gap: 7px !important;
    width: 100% !important;
  }

  #home .mobile-portrait-frame { height: var(--dst-compact-portrait-h) !important; border-radius: clamp(18px, 2.2vw, 24px) !important; overflow: hidden !important; border: 1px solid rgba(16,38,64,.16) !important; background: #fff !important; }

  #home .mobile-portrait-frame img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center top !important; transform: none !important; }

  #home .mobile-irs-badge {
    display: block !important;
    padding: 6px 7px !important;
    border-radius: 12px !important;
    background: rgba(13,59,102,.08) !important;
    color: #24415f !important;
    font-size: clamp(9px, 1vw, 10.5px) !important;
    line-height: 1.15 !important;
    font-weight: 820 !important;
    text-align: center !important;
  }

  #home .hero-card > .portrait-card { display: none !important; }

  #home .hero-subtitle { max-width: none !important; margin-bottom: clamp(12px, 1.7vw, 18px) !important; gap: 5px !important; }

  #home .hero-subtitle-main { font-size: clamp(17px, 2.2vw, 22px) !important; line-height: 1.32 !important; }

  #home .hero-subtitle-sub { font-size: clamp(14px, 1.55vw, 17px) !important; line-height: 1.38 !important; }

  #home .hero-summary-list { max-width: none !important; gap: clamp(7px, 1vw, 10px) !important; }

  #home .hero-summary-list span { padding-left: 19px !important; font-size: clamp(14px, 1.65vw, 16.5px) !important; line-height: 1.38 !important; }

  #home .hero-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: clamp(10px, 1.4vw, 14px) !important;
    margin: clamp(18px, 2.4vw, 28px) 0 clamp(12px, 1.8vw, 18px) !important;
  }

  #home .hero-actions .btn { min-height: clamp(44px, 5.2vw, 52px) !important; padding: 12px clamp(20px, 3vw, 30px) !important; font-size: clamp(14px, 1.55vw, 16px) !important; line-height: 1.15 !important; flex: 0 1 auto !important; }

  #home .hero-trust-badges { gap: clamp(6px, 1vw, 10px) !important; }

  #home .hero-trust-badge{
    min-height: 30px !important;
    padding: 6px 10px !important;
    font-size: clamp(10.5px, 1.18vw, 12px) !important;
    line-height: 1.15 !important;
  }

  .ai-widget { right: 22px !important; bottom: 22px !important; z-index: 86 !important; }

  .ai-widget.is-open .ai-panel {
    position: fixed !important;
    top: calc(var(--dst-compact-header-height) + 16px) !important;
    right: 22px !important;
    bottom: 22px !important;
    width: min(380px, calc(100vw - 44px)) !important;
    height: auto !important;
    max-height: none !important;
  }
}

@media (min-width: 821px) and (max-width: 1199px) and (max-height: 700px) {
  .header-inner { height: var(--dst-compact-header-height) !important; }

  .brand { width: clamp(158px, 19vw, 204px) !important; min-width: clamp(158px, 19vw, 204px) !important; }

  .brand img { width: clamp(148px, 18vw, 194px) !important; }

  .header-links a {
    min-height: 28px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    font-size: clamp(9.8px, .98vw, 11.2px) !important;
  }

  .main-nav > .language-switch button { min-width: 32px !important; min-height: 30px !important; padding: 6px 7px !important; }

  #home .hero-card, html.home-start-clean #home .hero-card { padding: var(--dst-compact-card-pad) !important; }

  #home .mobile-hero-intro { gap: clamp(16px, 2.4vw, 24px) !important; margin-bottom: 12px !important; }

  #home .hero-subtitle { margin-bottom: 10px !important; }

  #home .hero-subtitle-main { font-size: clamp(16px, 1.8vw, 19px) !important; }

  #home .hero-subtitle-sub { font-size: clamp(13px, 1.35vw, 15px) !important; }

  #home .hero-summary-list { gap: 6px !important; }

  #home .hero-summary-list span { font-size: clamp(13px, 1.35vw, 14.5px) !important; line-height: 1.32 !important; }

  #home .hero-actions { margin-top: 13px !important; margin-bottom: 10px !important; }

  #home .hero-actions .btn { min-height: 40px !important; padding-top: 10px !important; padding-bottom: 10px !important; }

  #home .hero-trust-badge { min-height: 27px !important; padding: 5px 9px !important; font-size: 10.5px !important; }
}

@media (min-width: 821px) and (max-width: 940px) {
  .header-inner, .section-shell, .site-footer { width: min(calc(100% - 40px), 900px) !important; }

  .brand { width: clamp(156px, 20vw, 188px) !important; min-width: clamp(156px, 20vw, 188px) !important; }

  .brand img { width: clamp(148px, 19vw, 178px) !important; }

  .header-links a { padding-left: 5px !important; padding-right: 5px !important; font-size: clamp(9.6px, 1.12vw, 10.8px) !important; }

  .main-nav > .language-switch button { min-width: 30px !important; padding-left: 6px !important; padding-right: 6px !important; }
}

@media (min-width: 821px) and (max-width: 1199px) {  .ai-widget:not(.is-open) .ai-panel,
  .ai-widget .ai-panel[hidden] { display: none !important; }
  .ai-toggle-text { display: none !important; }

  .ai-toggle { width: 58px !important; height: 58px !important; padding: 8px !important; border-radius: 50% !important; justify-content: center !important; }

  .ai-toggle-avatar { width: 42px !important; height: 42px !important; }
}

@media (min-width: 1200px) and (max-width: 1599px) {
  #home.hero,
  html.home-start-clean #home.hero,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: calc(var(--dst-nonrail-vh) - var(--dst-nonrail-header-height)) !important;
    padding-top: var(--dst-nonrail-hero-edge-gap) !important;
    padding-right: var(--dst-nonrail-hero-edge-gap) !important;
    padding-bottom: calc(var(--dst-nonrail-hero-edge-gap) + env(safe-area-inset-bottom, 0)) !important;
    padding-left: var(--dst-nonrail-hero-edge-gap) !important;
    box-sizing: border-box !important;
  }

  #home .hero-card,
  html.home-start-clean #home .hero-card,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target .hero-card {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 821px) and (max-width: 1599px) {
  html:not(.ai-rail-enabled) .ai-widget,
  html.ai-rail-enabled .ai-widget,
  html.ai-rail-collapsed .ai-widget,
  .ai-widget { position: fixed !important; right: clamp(18px, 2.4vw, 26px) !important; bottom: calc(clamp(18px, 2.4vw, 26px) + env(safe-area-inset-bottom, 0)) !important; left: auto !important; top: auto !important; width: auto !important; height: auto !important; max-width: none !important; max-height: none !important; transform: none !important; z-index: 90 !important; }

  .ai-widget::before, html.ai-rail-enabled .ai-widget::before, html.ai-rail-collapsed .ai-widget::before, .ai-rail-handle { display: none !important; }

  .ai-widget:not(.is-open) .ai-panel, .ai-widget .ai-panel[hidden], html.ai-rail-enabled .ai-widget:not(.is-open) .ai-panel, html.ai-rail-enabled .ai-widget .ai-panel[hidden] { display: none !important; }

  .ai-widget .ai-toggle,
  html.ai-rail-enabled .ai-widget .ai-toggle,
  html.ai-rail-collapsed .ai-widget .ai-toggle { display: inline-grid !important; place-items: center !important; width: 58px !important; height: 58px !important; min-width: 58px !important; min-height: 58px !important; padding: 8px !important; border-radius: 50% !important; opacity: 1 !important; pointer-events: auto !important; transform: none !important; }

  .ai-toggle-text { display: none !important; }

  .ai-toggle-avatar { width: 42px !important; height: 42px !important; }

}

@media (max-width: 1599px) {
  .ai-widget:not(.is-open),
  html.ai-rail-enabled .ai-widget:not(.is-open),
  html.ai-rail-collapsed .ai-widget:not(.is-open) {
    position: fixed !important;
    top: auto !important;
    right: var(--dst-nonrail-assistant-right) !important;
    bottom: var(--dst-nonrail-assistant-bottom) !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    pointer-events: none !important;
    z-index: 90 !important;
  }

  .ai-widget:not(.is-open)::before,
  html.ai-rail-enabled .ai-widget:not(.is-open)::before,
  html.ai-rail-collapsed .ai-widget:not(.is-open)::before,
  .ai-widget:not(.is-open) .ai-rail-handle { display: none !important; content: none !important; }

  .ai-widget:not(.is-open) .ai-toggle,
  html.ai-rail-enabled .ai-widget:not(.is-open) .ai-toggle,
  html.ai-rail-collapsed .ai-widget:not(.is-open) .ai-toggle {
    position: fixed !important;
    top: auto !important;
    right: var(--dst-nonrail-assistant-right) !important;
    bottom: var(--dst-nonrail-assistant-bottom) !important;
    left: auto !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    padding: 8px !important;
    border-radius: 50% !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  .ai-widget:not(.is-open) .ai-toggle-text { display: none !important; }

  .ai-widget:not(.is-open) .ai-toggle-avatar { width: 42px !important; height: 42px !important; }
}

@media (min-width: 500px) and (max-width: 1599px) {
  #home.hero.section-shell,
  html.home-start-clean #home.hero.section-shell,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-top: var(--dst-nonrail-hero-edge-gap, var(--dst-mobile-hero-edge-gap)) !important;
    padding-right: var(--dst-nonrail-hero-edge-gap, var(--dst-mobile-hero-edge-gap)) !important;
    padding-bottom: calc(var(--dst-nonrail-hero-edge-gap, var(--dst-mobile-hero-edge-gap)) + env(safe-area-inset-bottom, 0)) !important;
    padding-left: var(--dst-nonrail-hero-edge-gap, var(--dst-mobile-hero-edge-gap)) !important;
    box-sizing: border-box !important;
  }

  #home.hero.section-shell > .hero-card,
  html.home-start-clean #home.hero.section-shell > .hero-card,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target > .hero-card { width: 100% !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; box-sizing: border-box !important; }
}

@media (min-width: 821px) and (max-width: 1599px) {  :root {
    --dst-nonrail-shell-width: 100vw;
    --dst-nonrail-assistant-right: calc(var(--dst-nonrail-hero-edge-gap) + var(--dst-nonrail-ai-card-inset));
    --dst-nonrail-assistant-bottom: calc(var(--dst-nonrail-hero-edge-gap) + var(--dst-nonrail-ai-card-inset) + env(safe-area-inset-bottom, 0));
    --dst-compact-assistant-shell-z: 96;
    --dst-compact-assistant-panel-z: 97;
    --dst-compact-header-z: 98;
  }

  html.ai-compact-open {
    overflow: hidden !important;
    scroll-behavior: auto !important;
  }

  body.ai-compact-open {
    overscroll-behavior: none !important;
  }

  html.ai-compact-open .site-header {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    z-index: var(--dst-compact-header-z) !important;
  }

  .ai-compact-shell {
    display: none !important;
  }

  .ai-widget.is-open,
  html.ai-rail-enabled .ai-widget.is-open,
  html.ai-rail-collapsed .ai-widget.is-open {
    position: fixed !important;
    top: var(--dst-compact-active-header-height, var(--dst-nonrail-header-height)) !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    pointer-events: auto !important;
    z-index: var(--dst-compact-assistant-shell-z) !important;
  }

  .ai-widget.is-open .ai-compact-shell,
  html.ai-rail-enabled .ai-widget.is-open .ai-compact-shell,
  html.ai-rail-collapsed .ai-widget.is-open .ai-compact-shell {
    display: block !important;
    position: fixed !important;
    top: var(--dst-compact-active-header-height, var(--dst-nonrail-header-height)) !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    background: #aeb9c5 !important;
    z-index: 0 !important;
    pointer-events: auto !important;
  }

  .ai-widget.is-open .ai-panel,
  html.ai-rail-enabled .ai-widget.is-open .ai-panel,
  html.ai-rail-collapsed .ai-widget.is-open .ai-panel {
    position: fixed !important;
    top: calc(var(--dst-compact-active-header-height, var(--dst-nonrail-header-height)) + var(--dst-nonrail-hero-edge-gap)) !important;
    right: var(--dst-nonrail-hero-edge-gap) !important;
    bottom: calc(var(--dst-nonrail-hero-edge-gap) + env(safe-area-inset-bottom, 0)) !important;
    left: var(--dst-nonrail-hero-edge-gap) !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    display: flex !important;
    border-radius: clamp(24px, 3vw, 34px) !important;
    overflow: hidden !important;
    transform: none !important;
    pointer-events: auto !important;
    z-index: var(--dst-compact-assistant-panel-z) !important;
    background: #fff !important;
  }

  .ai-widget.is-open .ai-panel > .ai-messages,
  .ai-widget.is-open .ai-panel > .ai-input-row {
    background-color: #fff !important;
  }
}

@media (min-width: 821px) and (max-width: 1599px) and (max-height: 760px) {
  :root {
    --dst-lowheight-hero-edge-gap: clamp(10px, 1.55vh, 12px);
    --dst-lowheight-card-pad-top: clamp(34px, 5.3vh, 40px);
    --dst-lowheight-card-pad-x: clamp(30px, 3.1vw, 38px);
    --dst-lowheight-card-pad-bottom: clamp(10px, 1.9vh, 14px);
    --dst-lowheight-hero-gap: clamp(24px, 2.7vw, 34px);
    --dst-lowheight-portrait-w: clamp(340px, 30.5vw, 390px);
    --dst-lowheight-portrait-h: clamp(390px, 59vh, 424px);
    --dst-lowheight-title: clamp(38px, 3.95vw, 50px);
    --dst-nonrail-hero-edge-gap: var(--dst-lowheight-hero-edge-gap);
    --dst-nonrail-assistant-bottom: calc(
      var(--dst-lowheight-hero-edge-gap)
      + var(--dst-nonrail-ai-card-inset)
      + env(safe-area-inset-bottom, 0)
    );
  }

  #home.hero,
  html.home-start-clean #home.hero,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target {
    min-height: calc(var(--dst-nonrail-vh) - var(--dst-nonrail-header-height)) !important;
    padding-top: var(--dst-lowheight-hero-edge-gap) !important;
    padding-right: var(--dst-lowheight-hero-edge-gap) !important;
    padding-bottom: calc(var(--dst-lowheight-hero-edge-gap) + env(safe-area-inset-bottom, 0)) !important;
    padding-left: var(--dst-lowheight-hero-edge-gap) !important;
    box-sizing: border-box !important;
  }

  #home.hero.section-shell > .hero-card,
  html.home-start-clean #home.hero.section-shell > .hero-card,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target > .hero-card {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    grid-template-columns: minmax(0, 1fr) minmax(330px, var(--dst-lowheight-portrait-w)) !important;
    gap: var(--dst-lowheight-hero-gap) !important;
    padding: var(--dst-lowheight-card-pad-top) var(--dst-lowheight-card-pad-x) var(--dst-lowheight-card-pad-bottom) !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }

  #home .hero-copy { justify-content: center !important; }

  #home .hero h1,
  #home h1 { font-size: var(--dst-lowheight-title) !important; line-height: 1.055 !important; margin-bottom: 14px !important; }

  #home .hero-subtitle { margin-bottom: 11px !important; gap: 4px !important; }

  #home .hero-subtitle-main { font-size: clamp(17px, 1.6vw, 20px) !important; line-height: 1.3 !important; }

  #home .hero-subtitle-sub { font-size: clamp(13.5px, 1.18vw, 15.5px) !important; line-height: 1.32 !important; }

  #home .hero-summary-list { gap: 6px !important; }

  #home .hero-summary-list span { font-size: clamp(13.5px, 1.23vw, 15px) !important; line-height: 1.32 !important; padding-left: 19px !important; }

  #home .hero-actions { margin-top: 15px !important; margin-bottom: 10px !important; gap: 10px !important; }

  #home .hero-actions .btn {
    min-height: 42px !important;
    padding: 10px clamp(18px, 2.25vw, 26px) !important;
    font-size: clamp(13.5px, 1.16vw, 15px) !important;
    line-height: 1.12 !important;
  }

  #home .hero-trust-badges { gap: 6px !important; }

  #home .hero-trust-badge{
    min-height: 27px !important;
    padding: 5px 9px !important;
    font-size: 10.6px !important;
    line-height: 1.1 !important;
  }

  #home .portrait-card { width: min(100%, var(--dst-lowheight-portrait-w)) !important; gap: 7px !important; }

  #home .portrait-frame { height: var(--dst-lowheight-portrait-h) !important; }

  #home .irs-badge {
    min-height: 31px !important;
    margin-bottom: 2px !important;
    font-size: 12.4px !important;
    line-height: 1.12 !important;
  }
}

@media (min-width: 821px) and (max-width: 1600px) and (max-height: 800px) {
  :root {
    --dst-lowheight-section-pad-top: clamp(20px, 3.15vh, 24px);
    --dst-lowheight-section-heading-gap: clamp(12px, 2vh, 16px);
    --dst-lowheight-card-gap: clamp(10px, 1.65vh, 14px);
    --dst-lowheight-panel-radius: 20px;
  }

  #about,
  #services,
  #process,
  #pricing,
  #faq,
  #resources,
  #contact { padding-top: var(--dst-lowheight-section-pad-top) !important; scroll-margin-top: 72px !important; }

  html.anchor-focus-mode #about.section-shell.anchor-focus-target,
  html.anchor-focus-mode #services.section-shell.anchor-focus-target,
  html.anchor-focus-mode #process.section-shell.anchor-focus-target,
  html.anchor-focus-mode #pricing.section-shell.anchor-focus-target,
  html.anchor-focus-mode #faq.section-shell.anchor-focus-target,
  html.anchor-focus-mode #resources.section-shell.anchor-focus-target,
  html.anchor-focus-mode #contact.section-shell.anchor-focus-target { min-height: calc(100vh - 72px) !important; padding-bottom: 26px !important; box-sizing: border-box !important; }

  .section-heading { margin-bottom: var(--dst-lowheight-section-heading-gap) !important; }

  .section-heading h2,
  #about .section-heading h2,
  #services .section-heading h2,
  #process .section-heading h2,
  #pricing .section-heading h2,
  #faq .section-heading h2,
  #resources .section-heading h2,
  #contact .section-heading h2 { font-size: clamp(28px, 3.2vw, 34px) !important; line-height: 1.08 !important; letter-spacing: -.035em !important; }

  .section-note { margin-top: 7px !important; font-size: clamp(13px, 1.15vw, 14px) !important; line-height: 1.38 !important; }

  .cards-grid, .services-grid, .pricing-grid, .steps-grid, .resources-grid { gap: var(--dst-lowheight-card-gap) !important; }

  .panel, .info-card, .step-card, .price-card, .resource-card, .about-card, .contact-card { border-radius: var(--dst-lowheight-panel-radius) !important; }

  #about .about-card { padding: 22px 28px !important; gap: 28px !important; align-items: start !important; }

  #about .about-card > div > h2 { font-size: clamp(28px, 3.05vw, 36px) !important; line-height: 1.12 !important; }

  #about .about-text p { margin-bottom: 12px !important; font-size: 14px !important; line-height: 1.48 !important; }

  #about .fact-grid { gap: 9px !important; }

  #about .fact-item { min-height: 72px !important; padding: 12px !important; border-radius: 15px !important; }

  #about .fact-item b { margin-bottom: 5px !important; font-size: 13.5px !important; line-height: 1.2 !important; }

  #about .fact-item span { font-size: 11.5px !important; line-height: 1.28 !important; }

  #about .credentials-strip { margin-top: 10px !important; gap: 8px !important; }

  #about .credential-item { padding: 10px 12px !important; border-radius: 15px !important; }

  #about .credential-item b { margin-bottom: 3px !important; font-size: 12.5px !important; }

  #about .credential-item span { font-size: 10.8px !important; line-height: 1.25 !important; }

  #services .info-card.service-card { min-height: 142px !important; padding: 16px 68px 16px 18px !important; }

  #services .info-card.service-card h3 { margin-bottom: 6px !important; font-size: 16px !important; line-height: 1.22 !important; }

  #services .info-card.service-card p { font-size: 13.3px !important; line-height: 1.38 !important; }

  #services .info-card.service-card .service-icon { top: 16px !important; right: 18px !important; width: 38px !important; height: 38px !important; border-radius: 14px !important; }

  #services .info-card.service-card .service-icon svg { width: 19px !important; height: 19px !important; }

  #process .process-principles { padding: 16px 20px !important; gap: 18px !important; margin-bottom: 14px !important; }

  #process .process-principles-copy h3 { font-size: clamp(23px, 2.4vw, 28px) !important; line-height: 1.12 !important; }

  #process .process-principles-copy p,
  #process .early-start-copy p:not(.section-kicker) { font-size: 13.2px !important; line-height: 1.38 !important; }

  #process .process-principles-steps { gap: 10px !important; }

  #process .process-principle-step { min-height: 86px !important; padding: 12px !important; border-radius: 15px !important; }

  #process .process-principle-icon { width: 32px !important; height: 32px !important; }

  #process .process-principle-step b { font-size: 13.5px !important; line-height: 1.15 !important; }

  #process .process-principle-step small { font-size: 11.2px !important; line-height: 1.22 !important; }

  #process .process-early-start { margin-top: 14px !important; }

  #process .early-start-panel { padding: 16px 20px !important; gap: 16px !important; }

  #process .early-start-copy h2 { font-size: clamp(24px, 2.55vw, 30px) !important; line-height: 1.08 !important; }

  #process .early-start-list { gap: 8px 10px !important; }

  #process .early-start-item {
    min-height: 34px !important;
    padding: 8px 12px 8px 25px !important;
    font-size: 12.5px !important;
    line-height: 1.18 !important;
  }

  #pricing .pricing-grid { gap: 14px !important; }

  #pricing .price-card { min-height: 150px !important; padding: 20px 22px !important; }

  #pricing .price-card h3 { margin-bottom: 7px !important; font-size: 16.5px !important; line-height: 1.22 !important; }

  #pricing .price-card p { font-size: 13.5px !important; line-height: 1.42 !important; }

  #pricing .price { margin-bottom: 8px !important; font-size: 27px !important; }

  #pricing .pricing-icon { width: 38px !important; height: 38px !important; }

  #pricing .price-addons-card,
  #pricing .details-pricing-note { padding: 18px 20px !important; margin-top: 14px !important; }

  #pricing .price-addons-list { gap: 8px 10px !important; }

  #pricing .price-addons-list span{
    min-height: 33px !important;
    padding: 7px 10px !important;
    font-size: 12.3px !important;
    line-height: 1.18 !important;
  }

  #faq .faq-columns{
    gap: 9px !important;
    padding: 14px !important;
  }

  #faq .faq-column { gap: 9px !important; }

  #faq .faq-accordion details, #faq .faq-column details { border-radius: 14px !important; }

  #faq .faq-accordion summary,
  #faq .faq-column summary {
    min-height: 37px !important;
    padding: 10px 36px 10px 14px !important;
    font-size: 14px !important;
    line-height: 1.24 !important;
  }

  #faq .faq-accordion summary::after,
  #faq .faq-column summary::after {
    right: 12px !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 16px !important;
  }

  #faq .faq-accordion p,
  #faq .faq-column p { padding: 0 14px 12.5px !important; font-size: 13.35px !important; line-height: 1.44 !important; font-weight: 500 !important; color: rgba(31,52,83,.82) !important; }

  #resources .resources-grid { gap: 14px !important; }

  #resources .resource-card { min-height: 190px !important; padding: 20px 20px 42px !important; border-radius: 19px !important; }

  

  #resources .resource-card h3 { margin-bottom: 8px !important; font-size: 17px !important; line-height: 1.2 !important; }

  #resources .resource-card p { font-size: 13.2px !important; line-height: 1.42 !important; }

  #contact .contact-card { padding: 20px 26px !important; gap: 26px !important; }

  #contact .contact-copy > h2 { font-size: clamp(26px, 2.7vw, 34px) !important; line-height: 1.1 !important; }

  #contact .contact-copy p { font-size: 13.5px !important; line-height: 1.45 !important; }

  #contact .contact-methods { gap: 9px !important; margin-top: 14px !important; }

  #contact .contact-link {
    min-height: 48px !important;
    padding: 8px 11px !important;
    gap: 10px !important;
    border-radius: 14px !important;
  }

  #contact .contact-icon { flex-basis: 30px !important; width: 30px !important; height: 30px !important; }

  #contact .contact-link b { font-size: 12.8px !important; }

  #contact .contact-link small { font-size: 11.5px !important; }

  #contact .form-security-note {
    margin-top: 12px !important;
    padding: 10px 12px !important;
    font-size: 11.3px !important;
    line-height: 1.34 !important;
  }

  #contact .contact-form { gap: 8px !important; }

  #contact .contact-form label { font-size: 12.4px !important; }

  #contact .contact-form input,
  #contact .contact-form textarea,
  #contact .contact-form select { margin-top: 5px !important; min-height: 38px !important; padding: 9px 12px !important; border-radius: 11px !important; font-size: 13px !important; }

  #contact .contact-form textarea { min-height: 56px !important; resize: vertical !important; }

  #contact .human-check { padding: 10px 12px !important; gap: 9px !important; border-radius: 13px !important; }

  #contact .human-check span { font-size: 11.5px !important; line-height: 1.3 !important; }

  #contact .form-note { font-size: 11px !important; line-height: 1.35 !important; }

  #contact .contact-submit { min-height: 40px !important; padding: 10px 18px !important; }

  #process .steps-grid { gap: 10px !important; }

  #process .step-card { min-height: 128px !important; padding: 15px 18px !important; }

  #process .step-card h3 { margin-bottom: 7px !important; font-size: 15.5px !important; line-height: 1.18 !important; }

  #process .step-card p { font-size: 12.8px !important; line-height: 1.34 !important; }

  html.contact-anchor-mode #contact.section-shell.anchor-focus-target { padding-bottom: 0 !important; }

  html.contact-anchor-mode .site-footer { margin-top: -40px !important; padding-top: 0 !important; padding-bottom: 4px !important; }

  html.contact-anchor-mode .site-footer p:first-child { font-size: 11.2px !important; line-height: 1.16 !important; margin-bottom: 0 !important; }

  html.contact-anchor-mode .footer-note { margin-top: 2px !important; font-size: 10.3px !important; line-height: 1.18 !important; }

  html.contact-anchor-mode .footer-links {
    margin-top: 2px !important;
    gap: 11px !important;
    font-size: 10.5px !important;
    line-height: 1.16 !important;
  }
}

@media (min-width: 1600px) and (max-height: 800px) {
  html.ai-rail-enabled #home.hero,
  html.ai-rail-enabled.home-start-clean #home.hero,
  html.ai-rail-enabled.anchor-focus-mode #home.hero.section-shell.anchor-focus-target,
  html.ai-rail-collapsed #home.hero,
  html.ai-rail-collapsed.home-start-clean #home.hero,
  html.ai-rail-collapsed.anchor-focus-mode #home.hero.section-shell.anchor-focus-target { padding-top: clamp(28px, 3.8vh, 32px) !important; padding-bottom: clamp(38px, 5.1vh, 42px) !important; box-sizing: border-box !important; }
}

@media (min-width: 821px) and (max-width: 1599px) {
  .ai-widget:not(.is-open) .ai-onboarding-hint,
  html.ai-rail-enabled .ai-widget:not(.is-open) .ai-onboarding-hint,
  html.ai-rail-collapsed .ai-widget:not(.is-open) .ai-onboarding-hint {
    position: fixed !important;
    top: auto !important;
    right: calc(var(--dst-nonrail-assistant-right, 24px) + 70px) !important;
    bottom: calc(var(--dst-nonrail-assistant-bottom, 24px) + 7px) !important;
    left: auto !important;
    z-index: 91 !important;
    display: block !important;
    width: max-content !important;
    max-width: min(220px, calc(100vw - 126px)) !important;
    padding: 10px 13px !important;
    border: 1px solid rgba(181, 198, 216, .92) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: 0 14px 34px rgba(20, 45, 75, .18) !important;
    color: #17304d !important;
    font-weight: 800 !important;
    font-size: 12.2px !important;
    line-height: 1.25 !important;
    letter-spacing: -.01em !important;
    text-align: left !important;
    pointer-events: none !important;
    animation: aiOnboardingHintCompactFadeV541 6.4s ease-in-out .9s 1 both !important;
    will-change: opacity, transform, visibility !important;
  }

  html[lang="ru"] .ai-widget:not(.is-open) .ai-onboarding-hint, html[lang="ru"].ai-rail-enabled .ai-widget:not(.is-open) .ai-onboarding-hint, html[lang="ru"].ai-rail-collapsed .ai-widget:not(.is-open) .ai-onboarding-hint { max-width: min(174px, calc(100vw - 160px)) !important; }

  html[lang="en"] .ai-widget:not(.is-open) .ai-onboarding-hint, html[lang="en"].ai-rail-enabled .ai-widget:not(.is-open) .ai-onboarding-hint, html[lang="en"].ai-rail-collapsed .ai-widget:not(.is-open) .ai-onboarding-hint { max-width: min(214px, calc(100vw - 132px)) !important; }

  html[lang="es"] .ai-widget:not(.is-open) .ai-onboarding-hint, html[lang="es"].ai-rail-enabled .ai-widget:not(.is-open) .ai-onboarding-hint, html[lang="es"].ai-rail-collapsed .ai-widget:not(.is-open) .ai-onboarding-hint { max-width: min(202px, calc(100vw - 144px)) !important; }

  .ai-widget:not(.is-open) .ai-onboarding-hint::after,
  html.ai-rail-enabled .ai-widget:not(.is-open) .ai-onboarding-hint::after,
  html.ai-rail-collapsed .ai-widget:not(.is-open) .ai-onboarding-hint::after {
    content: "" !important;
    position: absolute !important;
    right: -7px !important;
    bottom: 13px !important;
    width: 12px !important;
    height: 12px !important;
    transform: rotate(45deg) !important;
    background: rgba(255, 255, 255, .98) !important;
    border-top: 1px solid rgba(181, 198, 216, .92) !important;
    border-right: 1px solid rgba(181, 198, 216, .92) !important;
  }

  .ai-widget.is-open .ai-onboarding-hint,
  html.mobile-ai-panel-open .ai-widget .ai-onboarding-hint,
  html.ai-launcher-dragged .ai-widget .ai-onboarding-hint {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  html[lang="ru"] .ai-onboarding-hint .ai-hint-lang:not([data-ai-hint-lang="ru"]), html[lang="en"] .ai-onboarding-hint .ai-hint-lang:not([data-ai-hint-lang="en"]), html[lang="es"] .ai-onboarding-hint .ai-hint-lang:not([data-ai-hint-lang="es"]) { display: none !important; }
}

@keyframes aiOnboardingHintCompactFadeV541 {
  0% { opacity: 0; visibility: visible; transform: translateY(4px) scale(.985); }
  12% { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }
  78% { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }
  100% { opacity: 0; visibility: hidden; transform: translateY(2px) scale(.99); }
}

@media (min-width: 821px) and (max-width: 1599px) and (prefers-reduced-motion: reduce) {
  .ai-widget:not(.is-open) .ai-onboarding-hint,
  html.ai-rail-enabled .ai-widget:not(.is-open) .ai-onboarding-hint,
  html.ai-rail-collapsed .ai-widget:not(.is-open) .ai-onboarding-hint { animation: aiOnboardingHintCompactReducedFadeV541 6s linear .5s 1 both !important; will-change: auto !important; }
}

@keyframes aiOnboardingHintCompactReducedFadeV541 {
  0%, 82% { opacity: 1; visibility: visible; }
  100% { opacity: 0; visibility: hidden; }
}

#faq .faq-accordion.faq-columns { gap: clamp(22px, 2.4vw, 30px) !important; padding-left: 20px !important; padding-right: 20px !important; }
#faq .faq-group { margin: 0 0 9px !important; }
#faq .faq-group + .faq-group { margin-top: 10px !important; padding-top: 9px !important; border-top-color: rgba(13, 59, 102, .08) !important; }
#faq .faq-group-title { margin: 0 0 7px 18px !important; font-size: 12.6px !important; line-height: 1.28 !important; }
#faq .faq-column { gap: 0 !important; }
@media (max-width: 820px) {
  #faq .faq-accordion.faq-columns { gap: 12px !important; padding-left: 16px !important; padding-right: 16px !important; }
  #faq .faq-group + .faq-group { margin-top: 9px !important; padding-top: 8px !important; }
  #faq .faq-group-title { margin-left: 14px !important; }
}
.modal-trigger, .resource-card, .price-factor-chip, .early-start-item, .ai-rail-handle, .ai-toggle, .ai-close, [data-ai-close], [data-ai-rail-handle], [data-ai-toggle], [data-ai-header-toggle] { -webkit-tap-highlight-color: transparent !important; }
html.pointer-modality .modal-trigger:focus, html.pointer-modality .modal-trigger:focus-visible, html.pointer-modality .resource-card:focus, html.pointer-modality .resource-card:focus-visible, html.pointer-modality .price-factor-chip:focus, html.pointer-modality .price-factor-chip:focus-visible, html.pointer-modality .early-start-item:focus, html.pointer-modality .early-start-item:focus-visible { outline: none !important; }

html.pointer-modality .resource-card:focus, html.pointer-modality .resource-card:focus-visible{
  border-color: rgba(24,91,157,.16) !important;
  box-shadow: 0 10px 22px rgba(31,52,83,.07) !important;
}

@media (min-width: 821px) {
  #pricing .price-card.featured,
  #pricing .price-card.featured.modal-trigger {
    border-color: rgba(24,91,157,.21) !important;
    box-shadow:
      inset 0 0 0 1px rgba(24,91,157,.055),
      0 12px 30px rgba(31,52,83,.064) !important;
  }

  #pricing .price-card.featured:hover,
  #pricing .price-card.featured.modal-trigger:hover,
  html.keyboard-modality #pricing .price-card.featured.modal-trigger:focus-visible {
    border-color: rgba(24,91,157,.30) !important;
    box-shadow:
      inset 0 0 0 1px rgba(24,91,157,.078),
      0 16px 37px rgba(31,52,83,.092) !important;
  }

  html.pointer-modality #pricing .price-card.modal-trigger:focus, html.pointer-modality #pricing .price-card.modal-trigger:focus-visible, html.pointer-modality #pricing .price-addons-card.modal-trigger:focus, html.pointer-modality #pricing .price-addons-card.modal-trigger:focus-visible, html.pointer-modality #pricing .price-factor-chip:focus, html.pointer-modality #pricing .price-factor-chip:focus-visible, html.pointer-modality #process .process-principle-step.modal-trigger:focus, html.pointer-modality #process .process-principle-step.modal-trigger:focus-visible, html.pointer-modality #process .step-card.modal-trigger:focus, html.pointer-modality #process .step-card.modal-trigger:focus-visible, html.pointer-modality #process .early-start-item.modal-trigger:focus, html.pointer-modality #process .early-start-item.modal-trigger:focus-visible, html.pointer-modality #about .fact-item.modal-trigger:focus, html.pointer-modality #about .fact-item.modal-trigger:focus-visible, html.pointer-modality #about .credential-item.modal-trigger:focus, html.pointer-modality #about .credential-item.modal-trigger:focus-visible, html.pointer-modality #about .credential-item.credential-link:focus, html.pointer-modality #about .credential-item.credential-link:focus-visible { outline: none !important; }
}

@media (min-width: 1600px) {
  html.ai-rail-enabled,
  html.ai-rail-collapsed { --dst-rail-reference-width: 425px; --dst-rail-stable-content-width: min(var(--container), calc(100vw - var(--dst-rail-reference-width) - 48px)); }

  html.ai-rail-enabled .header-inner,
  html.ai-rail-enabled .section-shell,
  html.ai-rail-enabled .site-footer { width: var(--dst-rail-stable-content-width) !important; max-width: var(--dst-rail-stable-content-width) !important; margin-left: calc((100vw - var(--dst-rail-reference-width) - var(--dst-rail-stable-content-width)) / 2) !important; margin-right: 0 !important; transform: none !important; }

  html.ai-rail-collapsed .header-inner,
  html.ai-rail-collapsed .section-shell,
  html.ai-rail-collapsed .site-footer { width: var(--dst-rail-stable-content-width) !important; max-width: var(--dst-rail-stable-content-width) !important; margin-left: calc((100vw - var(--ai-rail-collapsed-width) - var(--dst-rail-stable-content-width)) / 2) !important; margin-right: 0 !important; transform: none !important; }

  html.ai-rail-collapsed .hero-card { grid-template-columns: minmax(0, 1fr) minmax(360px, 430px) !important; gap: clamp(34px, 3.4vw, 58px) !important; }

  html.ai-rail-collapsed .portrait-card { width: min(100%, 440px) !important; justify-self: center !important; }
}

@media (min-width: 821px) and (max-width: 1600px) and (max-height: 800px) {
  #faq { padding-top: 19px !important; }

  #faq .section-heading { margin-bottom: 12px !important; }

  #faq .section-heading h2 { font-size: clamp(29px, 2.7vw, 32px) !important; line-height: 1.065 !important; letter-spacing: -.035em !important; }

  #faq .section-note { margin-top: 5.5px !important; font-size: 13.25px !important; line-height: 1.28 !important; }

  #faq .faq-accordion.faq-columns, #faq .faq-columns { gap: 20px !important; padding: 14px 16px 15px !important; border-radius: 19px !important; }

  #faq .faq-column { gap: 0 !important; }

  #faq .faq-group { margin: 0 0 7px !important; }

  #faq .faq-group + .faq-group { margin-top: 8px !important; padding-top: 7px !important; border-top-color: rgba(13, 59, 102, .08) !important; }

  #faq .faq-group-title {
    margin: 0 0 5.5px 14px !important;
    font-size: 12px !important;
    line-height: 1.18 !important;
    letter-spacing: .04em !important;
  }

  #faq .faq-accordion details, #faq .faq-column details { border-radius: 12.5px !important; }

  #faq .faq-accordion summary, #faq .faq-column summary { min-height: 34.5px !important; padding: 8.25px 34px 8.25px 13.5px !important; font-size: 13.5px !important; line-height: 1.19 !important; letter-spacing: -.017em !important; }

  #faq .faq-accordion summary::after, #faq .faq-column summary::after{
    right: 10.5px !important;
    width: 18.5px !important;
    height: 18.5px !important;
    font-size: 14.5px !important;
  }

  #faq .faq-accordion p, #faq .faq-column p { padding: 0 13.5px 11px !important; font-size: 13.35px !important; line-height: 1.43 !important; font-weight: 500 !important; color: rgba(31,52,83,.82) !important; }
}

@media (min-width: 821px) and (max-width: 1199px) and (max-height: 820px) {
  #home.hero,
  html.home-start-clean #home.hero,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target {
    min-height: calc(var(--dst-nonrail-vh) - var(--dst-compact-header-height) - var(--dst-compact-page-gutter)) !important;
    padding-bottom: calc(var(--dst-nonrail-hero-edge-gap) + env(safe-area-inset-bottom, 0)) !important;
  }
}

@media (min-width: 1200px) and (max-width: 1399px) and (max-height: 740px) {
  #faq {
    padding-top: 16px !important;
  }

  #faq .section-heading {
    margin-bottom: 9px !important;
  }

  #faq .section-heading h2 {
    font-size: clamp(27px, 2.35vw, 30px) !important;
    line-height: 1.045 !important;
  }

  #faq .section-note {
    margin-top: 4px !important;
    font-size: 12.6px !important;
    line-height: 1.22 !important;
  }

  #faq .faq-accordion.faq-columns,
  #faq .faq-columns {
    gap: 18px !important;
    padding: 12px 14px 13px !important;
    border-radius: 18px !important;
  }

  #faq .faq-group {
    margin-bottom: 5px !important;
  }

  #faq .faq-group + .faq-group {
    margin-top: 6px !important;
    padding-top: 5px !important;
  }

  #faq .faq-group-title {
    margin: 0 0 4px 13px !important;
    font-size: 11.4px !important;
    line-height: 1.12 !important;
  }

  #faq .faq-accordion details,
  #faq .faq-column details {
    border-radius: 11.5px !important;
  }

  #faq .faq-accordion summary,
  #faq .faq-column summary {
    min-height: 30px !important;
    padding: 6.5px 32px 6.5px 12.5px !important;
    font-size: 12.7px !important;
    line-height: 1.14 !important;
    letter-spacing: -.018em !important;
  }

  #faq .faq-accordion summary::after,
  #faq .faq-column summary::after {
    right: 10px !important;
    width: 17px !important;
    height: 17px !important;
    font-size: 13.5px !important;
  }

  #faq .faq-accordion p,
  #faq .faq-column p {
    padding: 0 12.5px 9px !important;
    font-size: 12.7px !important;
    line-height: 1.34 !important;
  }
}

/* Restore visible bottom hero edge gap for 1024x768 / short compact desktop. */
@media (min-width: 821px) and (max-width: 1199px) and (min-height: 701px) and (max-height: 800px) {
  #home.hero,
  html.home-start-clean #home.hero,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target {
    min-height: calc(var(--dst-nonrail-vh) - var(--dst-nonrail-header-height)) !important;
    padding-top: var(--dst-nonrail-hero-edge-gap) !important;
    padding-right: var(--dst-nonrail-hero-edge-gap) !important;
    padding-bottom: calc(var(--dst-nonrail-hero-edge-gap) + env(safe-area-inset-bottom, 0)) !important;
    padding-left: var(--dst-nonrail-hero-edge-gap) !important;
    box-sizing: border-box !important;
  }

  #home.hero.section-shell > .hero-card,
  html.home-start-clean #home.hero.section-shell > .hero-card,
  html.anchor-focus-mode #home.hero.section-shell.anchor-focus-target > .hero-card {
    display: block !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    padding: clamp(24px, 3vw, 30px) !important;
    border-radius: clamp(24px, 3vw, 30px) !important;
    box-sizing: border-box !important;
  }

  #home .mobile-hero-intro {
    gap: clamp(16px, 2.4vw, 24px) !important;
    margin-bottom: 14px !important;
  }

  #home .hero h1,
  #home h1 {
    font-size: clamp(32px, 4.55vw, 47px) !important;
    line-height: 1.055 !important;
    margin-bottom: 14px !important;
  }

  #home .hero-subtitle {
    margin-bottom: 11px !important;
    gap: 4px !important;
  }

  #home .hero-subtitle-main {
    font-size: clamp(16px, 1.95vw, 19px) !important;
    line-height: 1.3 !important;
  }

  #home .hero-subtitle-sub {
    font-size: clamp(13px, 1.35vw, 15px) !important;
    line-height: 1.34 !important;
  }

  #home .hero-summary-list {
    gap: 6px !important;
  }

  #home .hero-summary-list span {
    font-size: clamp(13px, 1.32vw, 14.5px) !important;
    line-height: 1.32 !important;
    padding-left: 18px !important;
  }

  #home .hero-actions {
    margin-top: 15px !important;
    margin-bottom: 10px !important;
    gap: 10px !important;
  }

  #home .hero-actions .btn {
    min-height: 42px !important;
    padding: 10px clamp(18px, 2.3vw, 24px) !important;
    font-size: clamp(13.5px, 1.2vw, 15px) !important;
    line-height: 1.12 !important;
  }

  #home .hero-trust-badges {
    gap: 6px !important;
  }

  #home .hero-trust-badge {
    min-height: 28px !important;
    padding: 5px 9px !important;
    font-size: 10.8px !important;
    line-height: 1.12 !important;
  }

  #home .mobile-portrait-card {
    gap: 6px !important;
  }

  #home .mobile-portrait-frame {
    height: clamp(134px, 18vw, 176px) !important;
  }

  #home .mobile-irs-badge {
    padding: 5px 7px !important;
    font-size: 9.6px !important;
    line-height: 1.12 !important;
  }
}

/* Process low-height density pass for 1280x720 compact desktop. */
@media (min-width: 1200px) and (max-width: 1599px) and (max-height: 740px) {
  #process {
    --process-block-gap: 10px !important;
    padding-top: clamp(14px, 2.15vh, 16px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: var(--process-block-gap) !important;
  }

  #process > .section-heading,
  #process > .process-principles,
  #process > .process-early-start,
  #process > .steps-grid.steps-grid-four {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  #process .section-heading {
    margin-bottom: 0 !important;
  }

  #process .section-heading h2 {
    font-size: clamp(27px, 2.7vw, 32px) !important;
    line-height: 1.04 !important;
  }

  #process .section-note {
    margin-top: 5px !important;
    font-size: 13px !important;
    line-height: 1.28 !important;
  }

  html.anchor-focus-mode #process.section-shell.anchor-focus-target {
    min-height: calc(100vh - 72px) !important;
    padding-bottom: 9px !important;
    box-sizing: border-box !important;
  }

  #process .process-principles {
    padding: 12px 20px !important;
    gap: 14px !important;
  }

  #process .process-principles-copy h3 {
    font-size: clamp(22px, 2.35vw, 26px) !important;
    line-height: 1.06 !important;
  }

  #process .process-principles-copy p,
  #process .early-start-copy p:not(.section-kicker) {
    font-size: 12.7px !important;
    line-height: 1.28 !important;
  }

  #process .process-principles-steps {
    gap: 8px !important;
  }

  #process .process-principle-step {
    min-height: 74px !important;
    padding: 10px 11px !important;
    border-radius: 14px !important;
  }

  #process .process-principle-icon {
    width: 30px !important;
    height: 30px !important;
  }

  #process .process-principle-step b {
    font-size: 13px !important;
    line-height: 1.1 !important;
  }

  #process .process-principle-step small {
    font-size: 10.7px !important;
    line-height: 1.14 !important;
  }

  #process .process-early-start {
    padding-top: 0 !important;
  }

  #process .early-start-panel {
    padding: 12px 20px !important;
    gap: 14px !important;
  }

  #process .early-start-copy h2 {
    font-size: clamp(23px, 2.45vw, 28px) !important;
    line-height: 1.04 !important;
  }

  #process .early-start-list {
    gap: 7px 10px !important;
  }

  #process .early-start-item {
    min-height: 31px !important;
    padding: 6px 10px 6px 25px !important;
    font-size: 12.1px !important;
    line-height: 1.12 !important;
  }

  #process .steps-grid {
    gap: 11px !important;
  }

  #process .steps-grid.steps-grid-four .step-card,
  #process .steps-grid-four .step-card,
  #process .step-card {
    min-height: 170px !important;
    padding: 19px 19px !important;
    border-radius: 18px !important;
  }

  #process .step-number {
    width: 37px !important;
    height: 37px !important;
    font-size: 15px !important;
  }

  #process .step-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 15px !important;
  }

  #process .step-card h3 {
    margin-top: 9px !important;
    margin-bottom: 7px !important;
    font-size: 16px !important;
    line-height: 1.16 !important;
  }

  #process .step-card p {
    font-size: 12.9px !important;
    line-height: 1.32 !important;
  }
}

/* Accepted assistant responsive architecture
   Modes:
   - <800px: mobile full-screen assistant, owned by mobile assistant CSS.
   - 800px-1599px: right-side drawer over dimmed/blurred locked site.
   - >=1600px: desktop rail assistant, owned by rail CSS/JS.
   This block intentionally does not close the drawer on backdrop click; closing
   remains an explicit action through the panel control or Escape handling.
*/
html.ai-onboarding-hint-seen .ai-widget .ai-onboarding-hint,
html.ai-onboarding-hint-seen .ai-widget:not(.is-open) .ai-onboarding-hint,
html.ai-onboarding-hint-seen .ai-onboarding-hint {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

@media (min-width: 800px) and (max-width: 1599px) {
  html.ai-compact-open .ai-widget.is-open,
  html.mobile-ai-panel-open .ai-widget.is-open,
  .ai-widget.is-open {
    position: fixed !important;
    top: var(--dst-compact-active-header-height, var(--dst-nonrail-header-height, var(--mobile-assistant-header-height, var(--mobile-header-height, 86px)))) !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    min-height: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    pointer-events: auto !important;
    z-index: var(--dst-compact-assistant-shell-z, 96) !important;
  }

  html.ai-compact-open .ai-widget.is-open .ai-compact-shell,
  html.mobile-ai-panel-open .ai-widget.is-open .ai-compact-shell,
  .ai-widget.is-open .ai-compact-shell,
  html.ai-rail-enabled .ai-widget.is-open .ai-compact-shell,
  html.ai-rail-collapsed .ai-widget.is-open .ai-compact-shell {
    display: block !important;
    position: fixed !important;
    top: var(--dst-compact-active-header-height, var(--dst-nonrail-header-height, var(--mobile-assistant-header-height, var(--mobile-header-height, 86px)))) !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    background: rgba(25, 36, 50, .34) !important;
    -webkit-backdrop-filter: blur(5px) saturate(.96) !important;
    backdrop-filter: blur(5px) saturate(.96) !important;
    z-index: 0 !important;
    pointer-events: auto !important;
  }

  html.ai-compact-open .ai-widget.is-open .ai-panel,
  html.mobile-ai-panel-open .ai-widget.is-open .ai-panel,
  .ai-widget.is-open .ai-panel,
  html.ai-rail-enabled .ai-widget.is-open .ai-panel,
  html.ai-rail-collapsed .ai-widget.is-open .ai-panel {
    position: fixed !important;
    top: calc(var(--dst-compact-active-header-height, var(--dst-nonrail-header-height, var(--mobile-assistant-header-height, var(--mobile-header-height, 86px)))) + clamp(12px, 1.6vh, 18px)) !important;
    right: clamp(16px, 1.55vw, 24px) !important;
    bottom: calc(clamp(16px, 1.8vh, 22px) + env(safe-area-inset-bottom, 0)) !important;
    left: auto !important;
    width: clamp(420px, 34vw, 560px) !important;
    max-width: calc(100vw - 48px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    border-radius: clamp(24px, 2.4vw, 32px) !important;
    overflow: hidden !important;
    transform: none !important;
    pointer-events: auto !important;
    z-index: var(--dst-compact-assistant-panel-z, 97) !important;
    background: #fff !important;
    box-shadow: 0 24px 70px rgba(8, 18, 31, .32), 0 0 0 1px rgba(255,255,255,.34) !important;
  }
}

/* Narrow edge of the drawer range: 800px-820px overlaps earlier mobile CSS.
   These overrides deliberately restore a compact horizontal header and keep
   the drawer narrow enough for 800x600 without changing phone widths below 800px.
*/
@media (min-width: 800px) and (max-width: 820px) {
  html.mobile-ai-panel-open,
  html.ai-compact-open {
    --mobile-header-height: 52px;
    --mobile-assistant-header-height: 52px;
    --dst-compact-active-header-height: 52px;
    --dst-nonrail-header-height: 52px;
  }

  .site-header,
  html.mobile-ai-panel-open .site-header {
    min-height: 52px !important;
    overflow: visible !important;
  }

  .header-inner,
  html.mobile-ai-panel-open .header-inner {
    width: calc(100% - 24px) !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    padding: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 5px !important;
  }

  .brand,
  html.mobile-ai-panel-open .brand {
    flex: 0 0 128px !important;
    width: 128px !important;
    min-width: 128px !important;
    height: 42px !important;
  }

  .brand img,
  html.mobile-ai-panel-open .brand img {
    width: 122px !important;
    max-height: 42px !important;
    object-fit: contain !important;
  }

  .menu-toggle,
  .language-switch-mobile,
  .header-ai-toggle {
    display: none !important;
  }

  .main-nav,
  .main-nav.open,
  html.mobile-ai-panel-open .main-nav,
  html.mobile-ai-panel-open .main-nav.open {
    position: static !important;
    order: initial !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 5px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    z-index: auto !important;
  }

  .header-links,
  html.mobile-ai-panel-open .header-links {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 3px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  .header-links a,
  html.mobile-ai-panel-open .header-links a {
    flex: 0 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    min-height: 24px !important;
    padding: 5px 2px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #40516a !important;
    font-size: 8.7px !important;
    line-height: 1 !important;
    font-weight: 820 !important;
    letter-spacing: -.045em !important;
    white-space: nowrap !important;
  }

  .header-links a::after,
  html.mobile-ai-panel-open .header-links a::after {
    display: block !important;
    bottom: 0 !important;
  }

  .main-nav > .language-switch:not(.language-switch-mobile),
  html.mobile-ai-panel-open .main-nav > .language-switch:not(.language-switch-mobile) {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    margin: 0 !important;
    padding-left: 7px !important;
    border-left: 1px solid rgba(28,45,73,.14) !important;
  }

  .main-nav > .language-switch button,
  html.mobile-ai-panel-open .main-nav > .language-switch button {
    min-width: 27px !important;
    height: 27px !important;
    padding: 0 5px !important;
    border-radius: 8px !important;
    font-size: 10.6px !important;
    line-height: 1 !important;
  }

  html.ai-compact-open .ai-widget.is-open .ai-panel,
  html.mobile-ai-panel-open .ai-widget.is-open .ai-panel,
  .ai-widget.is-open .ai-panel {
    width: min(390px, calc(100vw - 36px)) !important;
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom, 0)) !important;
    border-radius: 24px !important;
  }
}

/* 1920x1080-reference large-desktop proportions with a 20% perceived upscale and proportional modal sizing.
   Scope remains 2200px-3199px only; lower breakpoints keep their accepted behavior. */
@media (min-width: 2200px) and (max-width: 3199px) {
  :root {
    --dst-ld-reference-scale: 1.333;
    --dst-ld-scale: 1.5;
    --dst-ld-font-scale: 1.36;
    --dst-ld-space-scale: 1.4;
    --dst-ld-card-scale: 1.38;
    --dst-ld-hero-scale: 1.42;
    --dst-ld-assistant-scale: 1.27;

    --dst-ld-rail-width: clamp(600px, 23.55vw, 615px);
    --dst-ld-collapsed-rail-width: 110px;
    --dst-ld-site-width: clamp(1800px, 71.5vw, 1830px);
    --dst-ld-site-margin: max(50px, calc((100vw - var(--dst-ld-rail-width) - var(--dst-ld-site-width)) / 2));
    --dst-ld-site-margin-collapsed: max(120px, calc((100vw - var(--dst-ld-collapsed-rail-width) - var(--dst-ld-site-width)) / 2));

    --dst-ld-header-height: 94px;
    --dst-ld-header-gap: 27px;
    --dst-ld-brand-box: 288px;
    --dst-ld-brand-img: 282px;
    --dst-ld-nav-gap: 19px;
    --dst-ld-nav-font: 19px;
    --dst-ld-nav-hit: 47px;
    --dst-ld-lang-hit: 41px;
    --dst-ld-lang-font: 15.2px;

    --dst-ld-section-top: 88px;
    --dst-ld-section-bottom: 58px;
    --dst-ld-contact-top: 36px;
    --dst-ld-section-heading-width: 1180px;
    --dst-ld-section-heading-gap: 50px;
    --dst-ld-title-size: clamp(56px, 2.34vw, 62px);
    --dst-ld-subtitle-size: 20.8px;
    --dst-ld-body-size: 19.8px;
    --dst-ld-card-title-size: 23.5px;
    --dst-ld-small-size: 17.6px;
    --dst-ld-card-gap: 26px;
    --dst-ld-card-padding: 33px;
    --dst-ld-card-radius: 33px;

    --dst-ld-hero-top: 72px;
    --dst-ld-hero-bottom: 54px;
    --dst-ld-hero-copy-width: 985px;
    --dst-ld-hero-portrait-col: minmax(600px, 640px);
    --dst-ld-hero-gap: 66px;
    --dst-ld-hero-pad-y: 56px;
    --dst-ld-hero-pad-x: 56px;
    --dst-ld-hero-radius: 38px;
    --dst-ld-hero-min-height: 1030px;
    --dst-ld-hero-title-size: clamp(86px, 3.58vw, 94px);
    --dst-ld-hero-main-size: 29px;
    --dst-ld-hero-body-size: 20px;
    --dst-ld-portrait-width: 640px;
    --dst-ld-portrait-height: 835px;

    --dst-ld-about-left: 585px;
    --dst-ld-about-gap: 45px;
    --dst-ld-about-pad-y: 52px;
    --dst-ld-about-pad-x: 50px;
    --dst-ld-about-min-height: 635px;
    --dst-ld-about-title: clamp(42px, 1.98vw, 51px);

    --dst-ld-service-min-height: 292px;
    --dst-ld-process-feature-min: 585px;
    --dst-ld-process-panel-pad-y: 36px;
    --dst-ld-process-panel-pad-x: 39px;
    --dst-ld-process-title: clamp(39px, 1.72vw, 46px);
    --dst-ld-process-step-min: 146px;
    --dst-ld-early-panel-min: 230px;
    --dst-ld-step-card-min: 278px;
    --dst-ld-price-card-min: 255px;
    --dst-ld-price-size: 40px;

    --dst-ld-faq-pad: 26px;
    --dst-ld-faq-summary-size: 20.7px;
    --dst-ld-faq-summary-min: 66px;
    --dst-ld-faq-group-title: 15.9px;

    --dst-ld-resource-min-height: 352px;
    --dst-ld-contact-left: 520px;
    --dst-ld-contact-gap: 45px;
    --dst-ld-contact-pad-y: 41px;
    --dst-ld-contact-pad-x: 38px;
    --dst-ld-contact-min-height: 492px;
    --dst-ld-contact-title: clamp(42px, 1.94vw, 51px);
    --dst-ld-contact-field-height: 63px;
    --dst-ld-contact-textarea-height: 124px;

    --dst-ld-assistant-title-size: 23.7px;
    --dst-ld-assistant-subtitle-size: 17px;
    --dst-ld-assistant-disclaimer-size: 17.6px;
    --dst-ld-assistant-body-size: 19.4px;
    --dst-ld-assistant-control-size: 16px;
    --dst-ld-assistant-input-size: 19.2px;
    --dst-ld-assistant-header-height: 108px;
    --dst-ld-assistant-composer-height: 132px;
    --dst-ld-assistant-pad: 22px;
  }

  html.ai-rail-enabled,
  html.ai-rail-collapsed {
    --dst-large-rail-width: var(--dst-ld-rail-width);
    --dst-large-collapsed-rail-width: var(--dst-ld-collapsed-rail-width);
    --dst-large-site-width: var(--dst-ld-site-width);
    --dst-large-site-margin: var(--dst-ld-site-margin);
    --dst-large-site-margin-collapsed: var(--dst-ld-site-margin-collapsed);
  }

  html.ai-rail-enabled {
    --ai-rail-width: var(--dst-large-rail-width) !important;
  }

  html.ai-rail-collapsed {
    --ai-rail-collapsed-width: var(--dst-large-collapsed-rail-width) !important;
  }

  html.ai-rail-enabled .header-inner,
  html.ai-rail-enabled .section-shell,
  html.ai-rail-enabled .site-footer {
    width: var(--dst-large-site-width) !important;
    max-width: var(--dst-large-site-width) !important;
    margin-left: var(--dst-large-site-margin) !important;
    margin-right: 0 !important;
    transform: none !important;
  }

  html.ai-rail-collapsed .header-inner,
  html.ai-rail-collapsed .section-shell,
  html.ai-rail-collapsed .site-footer {
    width: var(--dst-large-site-width) !important;
    max-width: var(--dst-large-site-width) !important;
    margin-left: var(--dst-large-site-margin-collapsed) !important;
    margin-right: 0 !important;
    transform: none !important;
  }

  html.ai-rail-enabled .language-switch-mobile,
  html.ai-rail-collapsed .language-switch-mobile {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html.ai-rail-enabled .header-inner,
  html.ai-rail-collapsed .header-inner {
    height: var(--dst-ld-header-height) !important;
    gap: var(--dst-ld-header-gap) !important;
  }

  html.ai-rail-enabled .brand,
  html.ai-rail-collapsed .brand {
    width: var(--dst-ld-brand-box) !important;
    min-width: var(--dst-ld-brand-box) !important;
    flex: 0 0 var(--dst-ld-brand-box) !important;
  }

  html.ai-rail-enabled .brand img,
  html.ai-rail-collapsed .brand img {
    width: var(--dst-ld-brand-img) !important;
  }

  html.ai-rail-enabled .main-nav,
  html.ai-rail-collapsed .main-nav {
    gap: var(--dst-ld-nav-gap) !important;
    font-size: var(--dst-ld-nav-font) !important;
    align-items: center !important;
  }

  html.ai-rail-enabled .header-links,
  html.ai-rail-collapsed .header-links {
    gap: var(--dst-ld-nav-gap) !important;
    align-items: center !important;
  }

  html.ai-rail-enabled .header-links a,
  html.ai-rail-collapsed .header-links a {
    min-height: var(--dst-ld-nav-hit) !important;
    padding: calc((var(--dst-ld-nav-hit) - var(--dst-ld-nav-font)) / 2) 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
    font-size: var(--dst-ld-nav-font) !important;
    font-weight: 650 !important;
  }

  html.ai-rail-enabled .language-switch:not(.language-switch-mobile),
  html.ai-rail-collapsed .language-switch:not(.language-switch-mobile) {
    height: calc(var(--dst-ld-lang-hit) + 5px) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    padding-left: 16px !important;
    border-left: 1px solid rgba(28,45,73,.16) !important;
  }

  html.ai-rail-enabled .language-switch:not(.language-switch-mobile) button,
  html.ai-rail-collapsed .language-switch:not(.language-switch-mobile) button {
    min-width: calc(var(--dst-ld-lang-hit) + 3px) !important;
    height: var(--dst-ld-lang-hit) !important;
    min-height: var(--dst-ld-lang-hit) !important;
    padding: 0 11px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 10px !important;
    line-height: 1 !important;
    font-size: var(--dst-ld-lang-font) !important;
    font-weight: 850 !important;
  }

  html.ai-rail-enabled .section-shell,
  html.ai-rail-collapsed .section-shell {
    padding-top: var(--dst-ld-section-top) !important;
    padding-bottom: var(--dst-ld-section-bottom) !important;
  }

  html.ai-rail-enabled .hero.section-shell,
  html.ai-rail-collapsed .hero.section-shell {
    padding-top: var(--dst-ld-hero-top) !important;
    padding-bottom: var(--dst-ld-hero-bottom) !important;
  }

  html.ai-rail-enabled #contact.contact.section-shell,
  html.ai-rail-collapsed #contact.contact.section-shell {
    padding-top: var(--dst-ld-contact-top) !important;
  }

  html.ai-rail-enabled .section-heading,
  html.ai-rail-collapsed .section-heading {
    max-width: var(--dst-ld-section-heading-width) !important;
    margin: 0 auto var(--dst-ld-section-heading-gap) !important;
  }

  html.ai-rail-enabled .section-heading h2,
  html.ai-rail-collapsed .section-heading h2 {
    font-size: var(--dst-ld-title-size) !important;
    line-height: 1.08 !important;
    letter-spacing: -.038em !important;
    text-wrap: balance !important;
  }

  html.ai-rail-enabled .section-note,
  html.ai-rail-collapsed .section-note,
  html.ai-rail-enabled .section-heading p,
  html.ai-rail-collapsed .section-heading p {
    max-width: calc(var(--dst-ld-section-heading-width) - 80px) !important;
    font-size: var(--dst-ld-subtitle-size) !important;
    line-height: 1.44 !important;
    margin-top: 11px !important;
  }

  html.ai-rail-enabled .services .section-heading h2,
  html.ai-rail-collapsed .services .section-heading h2,
  html.ai-rail-enabled .pricing .section-heading h2,
  html.ai-rail-collapsed .pricing .section-heading h2,
  html.ai-rail-enabled .resources .section-heading h2,
  html.ai-rail-collapsed .resources .section-heading h2 {
    max-width: 1320px !important;
  }

  html.ai-rail-enabled .services .section-note,
  html.ai-rail-collapsed .services .section-note,
  html.ai-rail-enabled .pricing .section-note,
  html.ai-rail-collapsed .pricing .section-note,
  html.ai-rail-enabled .resources .section-note,
  html.ai-rail-collapsed .resources .section-note {
    max-width: 1080px !important;
  }

  html.ai-rail-enabled .hero,
  html.ai-rail-collapsed .hero {
    padding-top: var(--dst-ld-hero-top) !important;
    padding-bottom: var(--dst-ld-hero-bottom) !important;
  }

  html.ai-rail-enabled .hero-card,
  html.ai-rail-collapsed .hero-card {
    grid-template-columns: minmax(0, 1fr) var(--dst-ld-hero-portrait-col) !important;
    gap: var(--dst-ld-hero-gap) !important;
    padding: var(--dst-ld-hero-pad-y) var(--dst-ld-hero-pad-x) calc(var(--dst-ld-hero-pad-y) + 2px) !important;
    border-radius: var(--dst-ld-hero-radius) !important;
    min-height: var(--dst-ld-hero-min-height) !important;
  }

  html.ai-rail-enabled .hero-copy,
  html.ai-rail-collapsed .hero-copy {
    max-width: var(--dst-ld-hero-copy-width) !important;
  }

  html.ai-rail-enabled .hero h1,
  html.ai-rail-collapsed .hero h1 {
    font-size: var(--dst-ld-hero-title-size) !important;
    line-height: 1.07 !important;
  }

  html.ai-rail-enabled .hero-subtitle-main,
  html.ai-rail-collapsed .hero-subtitle-main {
    font-size: var(--dst-ld-hero-main-size) !important;
    line-height: 1.42 !important;
  }

  html.ai-rail-enabled .hero-subtitle-sub,
  html.ai-rail-collapsed .hero-subtitle-sub,
  html.ai-rail-enabled .hero-summary-list span,
  html.ai-rail-collapsed .hero-summary-list span,
    html.ai-rail-enabled .hero-trust-badge,
  html.ai-rail-collapsed .hero-trust-badge {
    font-size: var(--dst-ld-hero-body-size) !important;
  }

  html.ai-rail-enabled .portrait-card,
  html.ai-rail-collapsed .portrait-card {
    width: min(100%, var(--dst-ld-portrait-width)) !important;
  }

  html.ai-rail-enabled .portrait-frame,
  html.ai-rail-collapsed .portrait-frame {
    height: var(--dst-ld-portrait-height) !important;
  }

  html.ai-rail-enabled .about-card,
  html.ai-rail-collapsed .about-card {
    grid-template-columns: minmax(var(--dst-ld-about-left), .9fr) minmax(0, 1.1fr) !important;
    gap: var(--dst-ld-about-gap) !important;
    padding: var(--dst-ld-about-pad-y) var(--dst-ld-about-pad-x) !important;
    min-height: var(--dst-ld-about-min-height) !important;
  }

  html.ai-rail-enabled .about-card > div:first-child h2,
  html.ai-rail-collapsed .about-card > div:first-child h2 {
    font-size: var(--dst-ld-about-title) !important;
    line-height: 1.12 !important;
    letter-spacing: -.03em !important;
  }

  html.ai-rail-enabled .about-text p,
  html.ai-rail-collapsed .about-text p,
  html.ai-rail-enabled .contact-copy p,
  html.ai-rail-collapsed .contact-copy p,
  html.ai-rail-enabled .faq-accordion p,
  html.ai-rail-collapsed .faq-accordion p {
    font-size: var(--dst-ld-body-size) !important;
    line-height: 1.56 !important;
  }

  html.ai-rail-enabled .fact-grid,
  html.ai-rail-collapsed .fact-grid,
  html.ai-rail-enabled .credentials-strip,
  html.ai-rail-collapsed .credentials-strip {
    gap: calc(var(--dst-ld-card-gap) - 7px) !important;
  }

  html.ai-rail-enabled .fact-item,
  html.ai-rail-enabled .credential-item,
  html.ai-rail-collapsed .fact-item,
  html.ai-rail-collapsed .credential-item {
    min-height: 112px !important;
  }

  html.ai-rail-enabled .services-grid,
  html.ai-rail-collapsed .services-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: var(--dst-ld-card-gap) !important;
  }

  html.ai-rail-enabled .service-card,
  html.ai-rail-collapsed .service-card {
    min-height: var(--dst-ld-service-min-height) !important;
    padding: var(--dst-ld-card-padding) calc(var(--dst-ld-card-padding) - 2px) calc(var(--dst-ld-card-padding) - 4px) !important;
  }

  html.ai-rail-enabled .info-card h3,
  html.ai-rail-enabled .service-card h3,
  html.ai-rail-enabled .step-card h3,
  html.ai-rail-enabled .price-card h3,
  html.ai-rail-enabled .resource-card h3,
  html.ai-rail-collapsed .info-card h3,
  html.ai-rail-collapsed .service-card h3,
  html.ai-rail-collapsed .step-card h3,
  html.ai-rail-collapsed .price-card h3,
  html.ai-rail-collapsed .resource-card h3 {
    font-size: var(--dst-ld-card-title-size) !important;
    line-height: 1.22 !important;
  }

  html.ai-rail-enabled .info-card p,
  html.ai-rail-enabled .service-card p,
  html.ai-rail-enabled .step-card p,
  html.ai-rail-enabled .price-card p,
  html.ai-rail-enabled .resource-card p,
  html.ai-rail-collapsed .info-card p,
  html.ai-rail-collapsed .service-card p,
  html.ai-rail-collapsed .step-card p,
  html.ai-rail-collapsed .price-card p,
  html.ai-rail-collapsed .resource-card p {
    font-size: var(--dst-ld-body-size) !important;
    line-height: 1.52 !important;
  }

  html.ai-rail-enabled .process-principles,
  html.ai-rail-collapsed .process-principles {
    grid-template-columns: minmax(0, 1.04fr) minmax(var(--dst-ld-process-feature-min), .96fr) !important;
    gap: calc(var(--dst-ld-card-gap) + 5px) !important;
    padding: var(--dst-ld-process-panel-pad-y) var(--dst-ld-process-panel-pad-x) !important;
    margin-bottom: calc(var(--dst-ld-card-gap) - 1px) !important;
    min-height: 234px !important;
  }

  html.ai-rail-enabled .process-principles-copy h3,
  html.ai-rail-collapsed .process-principles-copy h3 {
    font-size: var(--dst-ld-process-title) !important;
    line-height: 1.12 !important;
  }

  html.ai-rail-enabled .process-principles-copy p,
  html.ai-rail-collapsed .process-principles-copy p,
  html.ai-rail-enabled .early-start-copy p,
  html.ai-rail-collapsed .early-start-copy p {
    font-size: var(--dst-ld-body-size) !important;
    line-height: 1.5 !important;
  }

  html.ai-rail-enabled .process-principles-steps,
  html.ai-rail-enabled .price-factor-chips,
  html.ai-rail-collapsed .process-principles-steps,
  html.ai-rail-collapsed .price-factor-chips {
    gap: calc(var(--dst-ld-card-gap) - 9px) !important;
  }

  html.ai-rail-enabled .process-principle-step,
  html.ai-rail-collapsed .process-principle-step {
    min-height: var(--dst-ld-process-step-min) !important;
    padding: calc(var(--dst-ld-card-padding) - 9px) calc(var(--dst-ld-card-padding) - 11px) !important;
  }

  html.ai-rail-enabled .process-principle-step b,
  html.ai-rail-collapsed .process-principle-step b,
  html.ai-rail-enabled .price-factor-copy h3,
  html.ai-rail-collapsed .price-factor-copy h3 {
    font-size: calc(var(--dst-ld-card-title-size) - 1.5px) !important;
  }

  html.ai-rail-enabled .process-principle-step small,
  html.ai-rail-collapsed .process-principle-step small,
  html.ai-rail-enabled .price-factor-chip,
  html.ai-rail-collapsed .price-factor-chip {
    font-size: var(--dst-ld-small-size) !important;
  }

  html.ai-rail-enabled .early-start-panel,
  html.ai-rail-collapsed .early-start-panel {
    grid-template-columns: minmax(0, 1.02fr) minmax(calc(var(--dst-ld-process-feature-min) - 20px), .98fr) !important;
    gap: calc(var(--dst-ld-card-gap) + 5px) !important;
    padding: calc(var(--dst-ld-process-panel-pad-y) - 2px) calc(var(--dst-ld-process-panel-pad-x) - 2px) !important;
    min-height: var(--dst-ld-early-panel-min) !important;
  }

  html.ai-rail-enabled .steps-grid.steps-grid-four,
  html.ai-rail-collapsed .steps-grid.steps-grid-four {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: calc(var(--dst-ld-card-gap) - 2px) !important;
  }

  html.ai-rail-enabled .steps-grid.steps-grid-four .step-card,
  html.ai-rail-collapsed .steps-grid.steps-grid-four .step-card {
    min-height: var(--dst-ld-step-card-min) !important;
    padding: var(--dst-ld-card-padding) calc(var(--dst-ld-card-padding) - 4px) !important;
  }

  html.ai-rail-enabled .pricing-grid,
  html.ai-rail-collapsed .pricing-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: calc(var(--dst-ld-card-gap) - 1px) !important;
  }

  html.ai-rail-enabled .price-card,
  html.ai-rail-collapsed .price-card {
    min-height: var(--dst-ld-price-card-min) !important;
    padding: var(--dst-ld-card-padding) calc(var(--dst-ld-card-padding) - 2px) !important;
  }

  html.ai-rail-enabled .price,
  html.ai-rail-collapsed .price {
    font-size: var(--dst-ld-price-size) !important;
    line-height: 1.08 !important;
  }

  html.ai-rail-enabled .price-factors-panel,
  html.ai-rail-collapsed .price-factors-panel,
  html.ai-rail-enabled .pricing-disclaimer-card,
  html.ai-rail-collapsed .pricing-disclaimer-card {
    padding: var(--dst-ld-card-padding) calc(var(--dst-ld-card-padding) + 2px) !important;
  }

  html.ai-rail-enabled .faq-columns,
  html.ai-rail-collapsed .faq-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: calc(var(--dst-ld-card-gap) - 1px) !important;
    padding: var(--dst-ld-faq-pad) !important;
  }

  html.ai-rail-enabled .faq-group-title,
  html.ai-rail-collapsed .faq-group-title {
    font-size: var(--dst-ld-faq-group-title) !important;
    margin: 0 0 8px !important;
  }

  html.ai-rail-enabled .faq-accordion details,
  html.ai-rail-collapsed .faq-accordion details {
    border-radius: 16px !important;
  }

  html.ai-rail-enabled .faq-accordion summary,
  html.ai-rail-collapsed .faq-accordion summary {
    font-size: var(--dst-ld-faq-summary-size) !important;
    line-height: 1.34 !important;
    min-height: var(--dst-ld-faq-summary-min) !important;
    padding: 18px 44px 18px 18px !important;
  }

  html.ai-rail-enabled .resources-grid,
  html.ai-rail-collapsed .resources-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: calc(var(--dst-ld-card-gap) - 1px) !important;
  }

  html.ai-rail-enabled .resource-card,
  html.ai-rail-collapsed .resource-card {
    min-height: var(--dst-ld-resource-min-height) !important;
    padding: var(--dst-ld-card-padding) calc(var(--dst-ld-card-padding) - 7px) !important;
  }

  html.ai-rail-enabled #contact .contact-section-heading,
  html.ai-rail-collapsed #contact .contact-section-heading {
    margin-bottom: 20px !important;
  }

  html.ai-rail-enabled #contact .contact-card,
  html.ai-rail-collapsed #contact .contact-card {
    grid-template-columns: minmax(var(--dst-ld-contact-left), .82fr) minmax(0, 1.18fr) !important;
    gap: var(--dst-ld-contact-gap) !important;
    padding: var(--dst-ld-contact-pad-y) var(--dst-ld-contact-pad-x) !important;
    border-radius: var(--dst-ld-card-radius) !important;
    min-height: var(--dst-ld-contact-min-height) !important;
  }

  html.ai-rail-enabled #contact .contact-copy h2,
  html.ai-rail-collapsed #contact .contact-copy h2 {
    font-size: var(--dst-ld-contact-title) !important;
    line-height: 1.08 !important;
  }

  html.ai-rail-enabled #contact .contact-methods,
  html.ai-rail-collapsed #contact .contact-methods {
    gap: calc(var(--dst-ld-card-gap) - 10px) !important;
  }

  html.ai-rail-enabled #contact .contact-link,
  html.ai-rail-collapsed #contact .contact-link {
    min-height: calc(var(--dst-ld-contact-field-height) + 14px) !important;
    padding: 14px 16px !important;
    font-size: var(--dst-ld-small-size) !important;
  }

  html.ai-rail-enabled #contact .contact-link b,
  html.ai-rail-collapsed #contact .contact-link b {
    font-size: var(--dst-ld-small-size) !important;
  }

  html.ai-rail-enabled #contact .contact-link small,
  html.ai-rail-collapsed #contact .contact-link small {
    font-size: calc(var(--dst-ld-small-size) - 0.7px) !important;
  }

  html.ai-rail-enabled #contact .contact-form,
  html.ai-rail-collapsed #contact .contact-form {
    gap: calc(var(--dst-ld-card-gap) - 9px) !important;
  }

  html.ai-rail-enabled #contact .contact-form label,
  html.ai-rail-collapsed #contact .contact-form label {
    font-size: var(--dst-ld-small-size) !important;
  }

  html.ai-rail-enabled #contact .contact-form input,
  html.ai-rail-enabled #contact .contact-form select,
  html.ai-rail-enabled #contact .contact-form textarea,
  html.ai-rail-collapsed #contact .contact-form input,
  html.ai-rail-collapsed #contact .contact-form select,
  html.ai-rail-collapsed #contact .contact-form textarea {
    min-height: var(--dst-ld-contact-field-height) !important;
    font-size: var(--dst-ld-small-size) !important;
    border-radius: 14px !important;
  }

  html.ai-rail-enabled #contact .contact-form textarea,
  html.ai-rail-collapsed #contact .contact-form textarea {
    min-height: var(--dst-ld-contact-textarea-height) !important;
    height: var(--dst-ld-contact-textarea-height) !important;
  }

  html.contact-anchor-mode.ai-rail-enabled body,
  html.contact-anchor-mode.ai-rail-collapsed body {
    padding-bottom: clamp(600px, 50vh, 780px) !important;
  }

  html.contact-anchor-mode.ai-rail-enabled .contact.section-shell.anchor-focus-target,
  html.contact-anchor-mode.ai-rail-collapsed .contact.section-shell.anchor-focus-target {
    padding-bottom: 84px !important;
  }

  html.ai-rail-enabled .site-footer,
  html.ai-rail-collapsed .site-footer {
    font-size: 15px !important;
  }

  html.ai-rail-enabled .site-footer .footer-note,
  html.ai-rail-collapsed .site-footer .footer-note {
    width: auto !important;
    max-width: 1220px !important;
    white-space: normal !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
  }

  html.ai-rail-enabled .ai-widget {
    width: var(--dst-large-rail-width) !important;
  }

  html.ai-rail-enabled .ai-panel {
    font-size: calc(var(--dst-ld-assistant-body-size) + 1.4px) !important;
  }

  html.ai-rail-enabled .ai-panel-header {
    min-height: var(--dst-ld-assistant-header-height) !important;
    padding: var(--dst-ld-assistant-pad) !important;
  }

  html.ai-rail-enabled .ai-panel-title strong {
    font-size: var(--dst-ld-assistant-title-size) !important;
  }

  html.ai-rail-enabled .ai-panel-title small {
    font-size: var(--dst-ld-assistant-subtitle-size) !important;
  }

  html.ai-rail-enabled .ai-disclaimer {
    font-size: var(--dst-ld-assistant-disclaimer-size) !important;
    line-height: 1.48 !important;
    padding: 16px 17px !important;
  }

  html.ai-rail-enabled .ai-quick-actions {
    gap: 9px !important;
    padding: 15px 16px !important;
  }

  html.ai-rail-enabled .ai-quick-actions button {
    font-size: var(--dst-ld-assistant-control-size) !important;
    min-height: 36px !important;
    padding: 8px 12px !important;
  }

  html.ai-rail-enabled .ai-messages {
    padding: 19px 16px !important;
  }

  html.ai-rail-enabled .ai-message {
    font-size: var(--dst-ld-assistant-body-size) !important;
    line-height: 1.54 !important;
  }

  html.ai-rail-enabled .ai-composer {
    padding: 16px !important;
  }

  html.ai-rail-enabled .ai-composer textarea {
    min-height: var(--dst-ld-assistant-composer-height) !important;
    font-size: var(--dst-ld-assistant-input-size) !important;
    line-height: 1.5 !important;
  }

  html.ai-rail-enabled .ai-tools {
    gap: 8px !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
  }

  html.ai-rail-enabled .ai-tools button {
    min-height: 36px !important;
    font-size: var(--dst-ld-assistant-control-size) !important;
    padding: 8px 11px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }

  html.ai-rail-enabled .ai-speech-toggle,
  html.ai-rail-enabled .ai-speech-stop,
  html.ai-rail-enabled [data-ai-speech-toggle],
  html.ai-rail-enabled [data-ai-speech-stop] {
    max-width: 205px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .details-modal,
  .legal-inline-modal,
  .resource-inline-modal {
    padding: 42px !important;
  }

  .details-modal-card {
    width: min(1120px, calc(100vw - 84px)) !important;
    max-height: min(84vh, 980px) !important;
    padding: 50px 58px 48px !important;
    border-radius: 34px !important;
  }

  .details-modal-close,
  .legal-inline-modal-close,
  .resource-inline-modal-close {
    top: 22px !important;
    right: 24px !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 16px !important;
    font-size: 31px !important;
  }

  .details-modal-card h2 {
    margin: 0 66px 24px 0 !important;
    font-size: clamp(50px, 2.08vw, 56px) !important;
    line-height: 1.06 !important;
  }

  .details-modal-body {
    font-size: 19.5px !important;
    line-height: 1.72 !important;
  }

  .details-modal-body p {
    margin-bottom: 23px !important;
  }

  .details-modal-body ul {
    gap: 14px !important;
  }

  .details-modal-body li {
    padding-left: 29px !important;
  }

  .details-modal-body li::before {
    top: .7em !important;
    width: 9px !important;
    height: 9px !important;
    box-shadow: 0 0 0 6px rgba(246,179,33,.16) !important;
  }

  .details-pricing-note {
    margin-top: 30px !important;
    padding: 24px 26px !important;
    border-radius: 22px !important;
  }

  .details-pricing-note h3 {
    font-size: 19.5px !important;
  }

  .legal-inline-modal-card,
  .resource-inline-modal-card {
    width: min(1120px, calc(100vw - 84px)) !important;
    max-height: min(84vh, 980px) !important;
    padding: 42px 52px 40px !important;
    border-radius: 34px !important;
  }

  .legal-inline-kicker {
    margin: 0 66px 9px 0 !important;
    font-size: 15px !important;
  }

  .legal-inline-modal-card h2,
  .resource-inline-modal-card h2 {
    margin: 0 66px 15px 0 !important;
    font-size: clamp(50px, 2.15vw, 56px) !important;
    line-height: 1.06 !important;
  }

  .legal-inline-updated,
  .resource-inline-updated {
    font-size: 17px !important;
    line-height: 1.42 !important;
  }

  .legal-inline-lead,
  .resource-inline-lead {
    font-size: 19.5px !important;
    line-height: 1.58 !important;
    margin-bottom: 18px !important;
  }

  .legal-inline-section,
  .resource-inline-section {
    padding-top: 15px !important;
    margin-top: 15px !important;
  }

  .legal-inline-section h3,
  .resource-inline-section h3 {
    font-size: 25px !important;
    line-height: 1.18 !important;
    margin-bottom: 9px !important;
  }

  .legal-inline-section p,
  .resource-inline-section p {
    font-size: 19px !important;
    line-height: 1.58 !important;
    margin-bottom: 12px !important;
  }

  .resource-inline-note {
    margin-top: 17px !important;
    padding: 16px 18px !important;
    border-radius: 20px !important;
    font-size: 17px !important;
    line-height: 1.48 !important;
  }

  .details-modal.map-modal-open .details-modal-card {
    width: min(1220px, calc(100vw - 84px)) !important;
    max-height: min(94vh, 1080px) !important;
    padding: 34px 42px 34px !important;
    border-radius: 32px !important;
  }

  .details-modal.map-modal-open .details-modal-card h2 {
    font-size: clamp(38px, 1.62vw, 43px) !important;
    margin: 0 66px 14px 0 !important;
  }

  .details-modal.map-modal-open .details-modal-body {
    font-size: 16.8px !important;
    line-height: 1.48 !important;
  }

  .details-modal.map-modal-open .details-modal-body > p {
    margin-bottom: 10px !important;
  }

  .details-modal.map-modal-open .us-service-map {
    max-width: 980px !important;
    margin: 10px 0 10px !important;
    padding: 12px !important;
    border-radius: 20px !important;
  }

  .details-modal.map-modal-open .us-map-row {
    gap: 5px !important;
    margin-bottom: 5px !important;
  }

  .details-modal.map-modal-open .us-state-tile {
    min-height: 34px !important;
    border-radius: 9px !important;
    font-size: 13px !important;
  }

  .details-modal.map-modal-open .us-map-legend {
    max-width: 980px !important;
    font-size: 13.5px !important;
    line-height: 1.36 !important;
  }

  .details-modal.map-modal-open .state-availability-footnote {
    font-size: 13.5px !important;
    line-height: 1.45 !important;
  }
}

/* Process principle cards use the same top-right icon model across all viewport layers.
   The icon is now a secondary marker instead of the first reading point, so the card text
   starts immediately at the top-left and the cards can collapse to their content height. */
#process .process-principle-step,
#process .process-principle-step.modal-trigger {
  position: relative !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  gap: 0 !important;
  min-height: 98px !important;
  padding: 17px 64px 16px 17px !important;
}

#process .process-principle-icon {
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  margin: 0 !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 14px !important;
  flex: 0 0 auto !important;
}

#process .process-principle-icon svg {
  width: 19px !important;
  height: 19px !important;
}

#process .process-principle-step b {
  display: block !important;
  margin: 0 0 5px !important;
}

#process .process-principle-step small {
  margin: 0 !important;
}

@media (max-width: 1400px) {
  #process .process-principle-step,
  #process .process-principle-step.modal-trigger {
    min-height: 88px !important;
    padding: 14px 58px 13px 14px !important;
  }

  #process .process-principle-icon {
    top: 13px !important;
    right: 13px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 12px !important;
  }

  #process .process-principle-icon svg {
    width: 17px !important;
    height: 17px !important;
  }
}

@media (max-width: 1180px) {
  #process .process-principle-step,
  #process .process-principle-step.modal-trigger {
    min-height: 82px !important;
    padding: 13px 54px 12px 13px !important;
  }

  #process .process-principle-icon {
    top: 12px !important;
    right: 12px !important;
    width: 32px !important;
    height: 32px !important;
  }
}

@media (max-width: 820px) {
  #process .process-principle-step,
  #process .process-principle-step.modal-trigger {
    min-height: 64px !important;
    padding: 11px 50px 11px 12px !important;
    text-align: left !important;
  }

  #process .process-principle-icon {
    top: 10px !important;
    right: 12px !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 11px !important;
  }

  #process .process-principle-icon svg {
    width: 15px !important;
    height: 15px !important;
  }
}

@media (max-width: 420px) {
  #process .process-principle-step,
  #process .process-principle-step.modal-trigger {
    min-height: 58px !important;
    padding: 10px 46px 10px 11px !important;
  }

  #process .process-principle-icon {
    top: 9px !important;
    right: 10px !important;
    width: 28px !important;
    height: 28px !important;
  }
}

@media (min-width: 821px) and (max-width: 1600px) and (max-height: 800px) {
  #process .process-principle-step,
  #process .process-principle-step.modal-trigger {
    min-height: 70px !important;
    padding: 10px 48px 10px 11px !important;
  }

  #process .process-principle-icon {
    top: 10px !important;
    right: 11px !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 11px !important;
  }

  #process .process-principle-icon svg {
    width: 15px !important;
    height: 15px !important;
  }
}

@media (min-width: 2200px) and (max-width: 3199px) {
  html.ai-rail-enabled #process .process-principle-step,
  html.ai-rail-collapsed #process .process-principle-step,
  html.ai-rail-enabled #process .process-principle-step.modal-trigger,
  html.ai-rail-collapsed #process .process-principle-step.modal-trigger {
    min-height: max(104px, calc(var(--dst-ld-process-step-min) - 42px)) !important;
    padding: calc(var(--dst-ld-card-padding) - 12px) calc(var(--dst-ld-card-padding) + 46px) calc(var(--dst-ld-card-padding) - 12px) calc(var(--dst-ld-card-padding) - 10px) !important;
  }

  html.ai-rail-enabled #process .process-principle-icon,
  html.ai-rail-collapsed #process .process-principle-icon {
    top: calc(var(--dst-ld-card-padding) - 13px) !important;
    right: calc(var(--dst-ld-card-padding) - 13px) !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 16px !important;
  }

  html.ai-rail-enabled #process .process-principle-icon svg,
  html.ai-rail-collapsed #process .process-principle-icon svg {
    width: 23px !important;
    height: 23px !important;
  }
}


/* Keep header language controls usable while compact assistant locks blurred site. */
@media (min-width: 821px) and (max-width: 1599px) {
  html.ai-compact-open .site-header.ai-compact-header-language-enabled .language-switch,
  html.ai-compact-open .site-header.ai-compact-header-language-enabled .language-switch-mobile,
  html.ai-compact-open .site-header.ai-compact-header-language-enabled .language-switch [data-lang],
  html.ai-compact-open .site-header.ai-compact-header-language-enabled .language-switch-mobile [data-lang] {
    pointer-events: auto !important;
    position: relative !important;
    z-index: calc(var(--dst-compact-header-z, 98) + 2) !important;
  }

  /* The compact lock creates a special header stacking context. Repeat the
     language active-state with higher specificity so the current language remains
     visibly marked while the blurred site is locked behind the assistant. */
  html.ai-compact-open .site-header.ai-compact-header-language-enabled .language-switch [data-lang].active,
  html.ai-compact-open .site-header.ai-compact-header-language-enabled .language-switch [data-lang][aria-pressed="true"],
  html.ai-compact-open .site-header.ai-compact-header-language-enabled .language-switch-mobile [data-lang].active,
  html.ai-compact-open .site-header.ai-compact-header-language-enabled .language-switch-mobile [data-lang][aria-pressed="true"] {
    color: #152033 !important;
    background: linear-gradient(135deg, #ffd96b, var(--accent)) !important;
    box-shadow: 0 9px 20px rgba(246,179,33,.28), inset 0 1px 0 rgba(255,255,255,.62), inset 0 -2px 0 rgba(111,76,0,.13) !important;
    border-color: rgba(216,161,58,.42) !important;
  }
}

/* Show the Resources/Materials nav item on wider mobile/tablet-edge
   headers where seven compact pills fit safely. Phone widths keep the previous
   six-item row without Resources. */
@media (min-width: 700px) and (max-width: 820px) {
  .header-links,
  html.mobile-ai-panel-open .header-links {
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    gap: 3px !important;
    width: 100% !important;
    overflow: visible !important;
  }

  .header-links a[href="#home"],
  html.mobile-ai-panel-open .header-links a[href="#home"] {
    display: none !important;
  }

  .header-links a[href="#resources"],
  html.mobile-ai-panel-open .header-links a[href="#resources"] {
    display: inline-flex !important;
  }

  .header-links a,
  html.mobile-ai-panel-open .header-links a {
    min-width: 0 !important;
    width: 100% !important;
    min-height: 24px !important;
    padding: 4px 2px !important;
    justify-content: center !important;
    font-size: clamp(8.4px, 1.18vw, 10.2px) !important;
    line-height: 1 !important;
    letter-spacing: -.045em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

@media (max-width: 699px) {
  .header-links a[href="#resources"],
  html.mobile-ai-panel-open .header-links a[href="#resources"] {
    display: none !important;
  }
}

/* v762: desktop rail uses the same short-lived onboarding speech hint affordance as mobile/compact. */
@media (min-width: 1600px) {
  html.ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint,
  html.ai-rail-welcome-hint-active.ai-rail-enabled.ai-onboarding-hint-seen .ai-widget.is-open .ai-onboarding-hint {
    position: fixed !important;
    top: clamp(84px, 9vh, 124px) !important;
    right: calc(var(--ai-rail-width, 425px) + 22px) !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 92 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: max-content !important;
    max-width: min(224px, calc(100vw - var(--ai-rail-width, 425px) - 72px)) !important;
    padding: 10px 13px !important;
    border: 1px solid rgba(181, 198, 216, .92) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: 0 14px 34px rgba(20, 45, 75, .18) !important;
    color: #17304d !important;
    font-weight: 800 !important;
    font-size: 12.2px !important;
    line-height: 1.25 !important;
    letter-spacing: -.01em !important;
    text-align: left !important;
    pointer-events: none !important;
    animation: aiOnboardingHintCompactFadeV541 6.4s ease-in-out .9s 1 both !important;
    will-change: opacity, transform, visibility !important;
  }
  html.ai-rail-welcome-hint-active.ai-rail-collapsed .ai-widget.is-open .ai-onboarding-hint,
  html.ai-rail-welcome-hint-active.ai-rail-collapsed.ai-onboarding-hint-seen .ai-widget.is-open .ai-onboarding-hint {
    right: calc(var(--ai-rail-collapsed-width, 96px) + 22px) !important;
    max-width: min(224px, calc(100vw - var(--ai-rail-collapsed-width, 96px) - 72px)) !important;
  }
  html[lang="ru"].ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint,
  html[lang="ru"].ai-rail-welcome-hint-active.ai-rail-collapsed .ai-widget.is-open .ai-onboarding-hint { max-width: min(184px, calc(100vw - var(--ai-rail-width, 425px) - 72px)) !important; }
  html[lang="en"].ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint,
  html[lang="en"].ai-rail-welcome-hint-active.ai-rail-collapsed .ai-widget.is-open .ai-onboarding-hint { max-width: min(224px, calc(100vw - var(--ai-rail-width, 425px) - 72px)) !important; }
  html[lang="es"].ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint,
  html[lang="es"].ai-rail-welcome-hint-active.ai-rail-collapsed .ai-widget.is-open .ai-onboarding-hint { max-width: min(214px, calc(100vw - var(--ai-rail-width, 425px) - 72px)) !important; }
  html.ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint::after,
  html.ai-rail-welcome-hint-active.ai-rail-collapsed .ai-widget.is-open .ai-onboarding-hint::after {
    content: "" !important;
    position: absolute !important;
    right: -7px !important;
    top: 50% !important;
    bottom: auto !important;
    width: 12px !important;
    height: 12px !important;
    transform: translateY(-50%) rotate(45deg) !important;
    background: rgba(255, 255, 255, .98) !important;
    border-top: 1px solid rgba(181, 198, 216, .92) !important;
    border-right: 1px solid rgba(181, 198, 216, .92) !important;
  }
  html.ai-rail-welcome-hint-active.ai-rail-enabled .ai-onboarding-hint .ai-hint-lang,
  html.ai-rail-welcome-hint-active.ai-rail-collapsed .ai-onboarding-hint .ai-hint-lang { display: none !important; }
  html[lang="ru"].ai-rail-welcome-hint-active .ai-onboarding-hint .ai-hint-lang[data-ai-hint-lang="ru"],
  html[lang="en"].ai-rail-welcome-hint-active .ai-onboarding-hint .ai-hint-lang[data-ai-hint-lang="en"],
  html[lang="es"].ai-rail-welcome-hint-active .ai-onboarding-hint .ai-hint-lang[data-ai-hint-lang="es"] { display: inline !important; }
}

@media (min-width: 1600px) and (prefers-reduced-motion: reduce) {
  html.ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint,
  html.ai-rail-welcome-hint-active.ai-rail-collapsed .ai-widget.is-open .ai-onboarding-hint { animation: aiOnboardingHintCompactReducedFadeV541 6s linear .5s 1 both !important; will-change: auto !important; }
}

/* v765: keep the desktop Rail welcome hint attached to the assistant header,
   let it cover the title text, and lift it a little closer to the avatar face. */
@media (min-width: 1600px) {
  html.ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint,
  html.ai-rail-welcome-hint-active.ai-rail-enabled.ai-onboarding-hint-seen .ai-widget.is-open .ai-onboarding-hint {
    position: absolute !important;
    top: clamp(4px, 0.85vh, 12px) !important;
    right: auto !important;
    bottom: auto !important;
    left: clamp(54px, 3.35vw, 68px) !important;
    z-index: 121 !important;
    max-width: min(242px, calc(var(--ai-rail-width, 425px) - 88px)) !important;
  }
  html[lang="ru"].ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint { max-width: min(224px, calc(var(--ai-rail-width, 425px) - 88px)) !important; }
  html[lang="en"].ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint { max-width: min(242px, calc(var(--ai-rail-width, 425px) - 88px)) !important; }
  html[lang="es"].ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint { max-width: min(232px, calc(var(--ai-rail-width, 425px) - 88px)) !important; }
  html.ai-rail-welcome-hint-active.ai-rail-enabled .ai-widget.is-open .ai-onboarding-hint::after {
    right: auto !important;
    left: -7px !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(181, 198, 216, .92) !important;
    border-left: 1px solid rgba(181, 198, 216, .92) !important;
  }
}
