/* Growth Agency — shared base styles (ported from DC prototypes) */
* { box-sizing: border-box; }
body { margin: 0; }
a { color: #2563EB; text-decoration: none; }
a:hover { color: #1D4ED8; }

.ms {
  font-family: 'Material Symbols Rounded';
  font-weight: normal; font-style: normal; line-height: 1;
  letter-spacing: normal; text-transform: none; display: inline-block;
  white-space: nowrap; direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

@keyframes floaty { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

section[id] { scroll-margin-top: 76px; }
.menu-btn { display: none !important; }
.m-cta { display: none; }
.mq:hover { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .mq { animation: none !important; } }

/* image-slot placeholder — recreates the DC <x-import image-slot> empty state.
   No real images shipped in the handoff, so slots render as labelled placeholders
   that occupy the exact same box dimensions the design expects. */
.img-slot {
  position: absolute; inset: 0; width: 100%; height: 100%;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 8px; text-align: center;
  background: repeating-linear-gradient(135deg, #F1F5F9 0 14px, #EEF2F7 14px 28px);
  color: #94A3B8; overflow: hidden;
}
.img-slot--flow { position: relative; }
.img-slot .ms { font-size: 30px; color: #A9B4C4; }
.img-slot__label { font-size: 12px; font-weight: 600; padding: 0 10px; line-height: 1.35; }
.img-slot--circle { border-radius: 50%; }
