:root {
  --rams-bg: #ecf3f5;
  --rams-surface: #ffffff;
  --rams-text: #5e6278;
  --rams-muted: rgba(94, 98, 120, 0.75);
  --rams-border: rgba(72, 91, 123, 0.12);
  --rams-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
  --rams-blue: #485b7b;
  --rams-teal: #1bc5bd;
  --rams-radius-lg: 18px;
  --rams-radius-md: 14px;
  --rams-font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica,
    Arial, "Apple Color Emoji", "Segoe UI Emoji";
}

/* Keep theme, modernize typography + spacing */
body {
  background: var(--rams-bg);
}

.Plans_Pricing_Landing_Page,
.Plans_Pricing_Landing_Page * {
  font-family: var(--rams-font);
  color: var(--rams-text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Header */
.top_navbar_rams {
  background: linear-gradient(180deg, #51668b 0%, var(--rams-blue) 100%);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
}

.nav-right-signIn .signIn_ramsApp a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 999px;
  transition: background-color 160ms ease, transform 160ms ease;
}

.nav-right-signIn .signIn_ramsApp a:hover {
  background-color: rgba(255, 255, 255, 0.12);
  transform: translateY(-1px);
}

.nav-right-signIn .signIn_ramsApp a:focus-visible {
  outline: 3px solid rgba(27, 197, 189, 0.45);
  outline-offset: 2px;
}

/* Layout: make the content fit viewport rather than hard-coded heights */
.middle_body_section {
  padding: 26px 18px 74px;
  margin-top: 70px;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 44px;
  overflow: hidden;
}

.card_ramsApp {
  border-radius: var(--rams-radius-lg);
  background: rgba(255, 255, 255, 0.86);
  backdrop-filter: blur(10px);
  border: 1px solid var(--rams-border);
  box-shadow: var(--rams-shadow);
  overflow: hidden;
}

.landing_page_card_body {
  margin: 18px;
  padding: 0 10px 0 0;
  height: 100%;
  max-height: 100%;
}

.landing_page_body_header {
  padding: 12px 18px 0;
}

.plans_pricing_title {
  letter-spacing: -0.02em;
}

.plans_pricing_subtitle,
.landing_page_body_header p {
  color: var(--rams-muted);
}

/* Section surfaces */
.pricing_section,
.modules_section,
.features_section,
.supportTraining_section,
.serverHosting_section {
  gap: 12px;
}

.chooseYourPlan_card,
.starter_card,
.business_card,
.unlimited_card,
.multiUser_card,
.perfectFor_title,
.modules_title,
.features_title,
.supportTraining_title,
.serverHosting_title {
  border-radius: var(--rams-radius-md);
}

/* Buttons */
.signUp_btn,
.requestQuote_btn,
.sticky_signUp_btn {
  border-radius: 999px !important;
  transition: transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

.signUp_btn:hover,
.requestQuote_btn:hover,
.sticky_signUp_btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 18px rgba(15, 23, 42, 0.14);
}

.signUp_btn:focus-visible,
.requestQuote_btn:focus-visible,
.sticky_signUp_btn:focus-visible {
  outline: 3px solid rgba(27, 197, 189, 0.45);
  outline-offset: 2px;
}

/* Sticky bar feels more “app-like” */
.sticky_navbar {
  border-radius: var(--rams-radius-lg) var(--rams-radius-lg) 0 0;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
}

.sticky_navbar_menu {
  padding: 16px 18px;
}

/* Footer */
.footer_rams {
  background-color: var(--rams-blue);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

/* Reduce “busy” hover outlines on large grid rows */
.perfectFor_content:hover,
.modules_content:hover,
.numberOfDocuments_content:hover,
.features_content:hover,
.supportTraining_content:hover,
.serverHosting_content:hover {
  outline: none;
  border-radius: 10px;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08);
}

@media (max-width: 768px) {
  .middle_body_section {
    padding: 18px 12px 64px;
  }

  .landing_page_card_body {
    margin: 14px;
  }

  .plansPricing_sticky_item,
  .starter_sticky_item,
  .business_sticky_item,
  .unlimited_sticky_item {
    font-size: 18px;
  }
}

