@font-face {
  font-family: 'Poppins';
  src: url('/fonts/Poppins-Light.ttf') format('truetype');
  font-weight: 300; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('/fonts/Poppins-Regular.ttf') format('truetype');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('/fonts/Poppins-Medium.ttf') format('truetype');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('/fonts/Poppins-SemiBold.ttf') format('truetype');
  font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('/fonts/Poppins-Bold.ttf') format('truetype');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Poppins';
  src: url('/fonts/Poppins-ExtraBold.ttf') format('truetype');
  font-weight: 800; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'StackSans';
  src: url('/fonts/StackSansText-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900; font-style: normal; font-display: swap;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: 'StackSans', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  cursor: default;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Poppins', sans-serif;
}

a, button, input, textarea, select { cursor: pointer; }
input[type="text"], input[type="email"], input[type="tel"], textarea { cursor: text; }

/* Marquee animations */
@keyframes marquee-right {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@keyframes marquee-left {
  0% { transform: translateX(-50%); }
  100% { transform: translateX(0); }
}
.animate-marquee-right {
  animation: marquee-right 40s linear infinite;
}
.animate-marquee-left {
  animation: marquee-left 40s linear infinite;
}
.animate-marquee-right:hover,
.animate-marquee-left:hover {
  animation-play-state: paused;
}

/* Custom cursor for desktop */
@media (hover: hover) and (pointer: fine) {
  .custom-cursor {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><circle cx="16" cy="16" r="12" fill="%23dcbbb4" opacity="0.3"/><circle cx="16" cy="16" r="6" fill="%23dcbbb4"/></svg>') 16 16, pointer;
  }
}

/* Video play button overlay */
.video-thumb { position: relative; cursor: pointer; }
.video-thumb::after {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 64px; height: 64px;
  background: rgba(0,0,0,0.7);
  border-radius: 50%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpolygon points='5,3 19,12 5,21'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 55% center;
  background-size: 28px;
  transition: transform 0.2s, background-color 0.2s;
}
.video-thumb:hover::after {
  transform: translate(-50%, -50%) scale(1.1);
  background-color: rgba(220,187,180,0.9);
}

/* Form status */
.form-status-success { color: #22c55e; font-size: 0.875rem; margin-top: 0.5rem; }
.form-status-error { color: #ef4444; font-size: 0.875rem; margin-top: 0.5rem; }
