/* Minimal shared reset used by every template implementation.
   Each template's own style.css carries its unique design tokens. */
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }
ul, ol { margin: 0; padding: 0; list-style: none; }

/* The Figma frame is a fixed-size canvas (usually 1440px wide).
   On viewports narrower than the design, scale the whole canvas down
   uniformly so the layout reflows exactly as designed instead of
   clipping or requiring horizontal scroll. Templates with a real
   Figma-defined mobile frame override this with their own breakpoint
   layout in their local style.css instead. */
.canvas {
  position: relative;
  transform-origin: top left;
  overflow: hidden;
}
