:root {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #101828;
  background: #ffffff;
  line-height: 1.5;
}

* { box-sizing: border-box; }
body { margin: 0; }
a { color: inherit; }
.siteShell { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.siteHeader { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.96); border-bottom: 1px solid #e4e7ec; }
.siteHeaderInner { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; flex: 0 0 auto; align-items: center; text-decoration: none; }
.brand img { display: block; width: clamp(150px, 17vw, 190px); height: auto; }
.globalNav { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.globalNav a { text-decoration: none; font-weight: 600; }
.navCta { padding: 10px 16px; border-radius: 999px; background: #101828; color: white; }
.hero { padding: 96px 0 72px; max-width: 820px; }
.eyebrow { font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: .78rem; color: #475467; }
h1 { font-size: clamp(2.7rem, 7vw, 5.7rem); line-height: .98; letter-spacing: -.055em; margin: 18px 0 24px; }
h2 { font-size: clamp(2rem, 4vw, 3.4rem); letter-spacing: -.04em; margin-bottom: 16px; }
.lede { font-size: 1.3rem; color: #475467; max-width: 700px; }
.actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.button { display: inline-block; padding: 13px 20px; border-radius: 10px; border: 1px solid #d0d5dd; text-decoration: none; font-weight: 700; }
.buttonPrimary { background: #101828; color: white; border-color: #101828; }
.section { padding: 64px 0; border-top: 1px solid #eaecf0; }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.card { padding: 26px; border: 1px solid #e4e7ec; border-radius: 18px; }
.card h3 { margin-top: 0; }
.longPage { max-width: 920px; padding-top: 72px; padding-bottom: 40px; }
.longPageHeader { padding-bottom: 36px; border-bottom: 1px solid #eaecf0; }
.longPageHeader h1 { font-size: clamp(2.6rem, 6vw, 4.8rem); }
.longPageBody { padding-top: 20px; }
.contentSection { padding: 30px 0 8px; }
.contentSection h2 { font-size: clamp(1.55rem, 3vw, 2.15rem); letter-spacing: -.025em; margin: 0 0 18px; }
.contentSection h3 { font-size: 1.12rem; margin: 24px 0 8px; }
.contentSection p, .contentSection li { color: #344054; }
.contentSection li + li { margin-top: 7px; }
.contentSection a { color: #175cd3; }
.lastUpdated { color: #667085; }
.pricingPlans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; padding: 40px 0; }
.pricingPlan { display: flex; flex-direction: column; }
.pricingPlan h2 { font-size: 2rem; margin: 14px 0 4px; }
.pricingPlan .button { margin-top: auto; text-align: center; }
.pricingStatus { align-self: flex-start; padding: 4px 9px; border-radius: 999px; background: #f2f4f7; color: #475467; font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.pricingStatusLive { background: #ecfdf3; color: #027a48; }
.pricingPrice { font-size: 1rem; color: #475467; }
.pricingPrice strong { color: #101828; font-size: 2rem; }
.pricingFeatureList { padding-left: 20px; margin-bottom: 26px; }
.pricingHeroActions { margin-top: 28px; }
.pricingTrialNote { padding-top: 16px; padding-bottom: 0; }
.pricingTableWrap { overflow-x: auto; }
.pricingTable { width: 100%; min-width: 650px; border-collapse: collapse; }
.pricingTable th, .pricingTable td { padding: 13px 12px; text-align: left; border-bottom: 1px solid #e4e7ec; }
.pricingTable thead th { color: #101828; background: #f9fafb; }
.pricingTable tbody th { color: #344054; }
.ctaBlock { margin-top: 42px; padding: 30px; border-radius: 18px; background: #f2f4f7; }
.ctaBlock h2 { margin-top: 0; }
.siteFooter { margin-top: 64px; border-top: 1px solid #e4e7ec; padding: 32px 0 48px; color: #667085; }
.footerNav { display: flex; gap: 18px; flex-wrap: wrap; align-items: center; }
.cookieSettingsButton { border: 0; background: transparent; padding: 0; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
.cookieConsent { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 100; max-width: 760px; margin: 0 auto; padding: 20px; background: white; color: #374151; border: 1px solid #d0d5dd; border-radius: 16px; box-shadow: 0 18px 48px rgba(16,24,40,.18); }
.cookieConsent[hidden] { display: none; }
.cookieConsentTitle { margin: 0 0 6px; color: #111827; font-weight: 800; }
.cookieConsentText { color: #374151; line-height: 1.5; }
.cookieConsent p { margin-top: 0; }
.cookieConsentActions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
.cookieConsentActions button { padding: 10px 14px; border-radius: 8px; border: 1px solid #d0d5dd; background: white; font-weight: 700; cursor: pointer; }
.cookieConsentActions .primary { background: #101828; color: white; border-color: #101828; }
.cookieConsentActions button:focus-visible, .cookieSettingsButton:focus-visible { outline: 3px solid #2563eb; outline-offset: 2px; }
@media (max-width: 760px) {
  .siteHeaderInner { align-items: flex-start; padding-top: 18px; padding-bottom: 18px; flex-direction: column; }
  .globalNav { gap: 12px 16px; }
  .grid { grid-template-columns: 1fr; }
  .pricingPlans { grid-template-columns: 1fr; }
  .hero { padding-top: 64px; }
}
@media (max-width: 480px) {
  .cookieConsent { left: 12px; right: 12px; bottom: 12px; padding: 16px; }
  .cookieConsentActions { flex-direction: column; }
  .cookieConsentActions button { width: 100%; }
}
