/* Marketing site base reset (replaces Framer global rules) */
html,
body,
#main {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

:root {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  --dims-ink: #0f172a;
  --dims-section-pad-x: clamp(1rem, 3vw, 2rem);
  --dims-section-pad-y: clamp(3rem, 6vw, 5rem);
  --dims-section-grid-w: 1220px;
}

body {
  font-family: var(--dims-font-regular, var(--dims-font));
  font-size: 16px;
  color: var(--dims-ink);
  background: #fff;
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

html {
  max-width: 100%;
  overflow-x: clip;
}

#main {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
}

/* Keep section visual order even if JS labeling is skipped (cached hero.js, etc.) */
#main > #integrations {
  order: 20;
}
#main > #marketing-toolkit {
  order: 25;
}
#main > #pricing-bento {
  order: 28;
}
#main > #pricing {
  order: 30;
}
#main > #template-gallery {
  order: 40;
}
#main > #comparison {
  order: 50;
}
#main > #cta {
  order: 60;
}
#main > #faq {
  order: 70;
}

img,
svg,
video {
  max-width: 100%;
  height: auto;
}
