/* === Base === */
html { scroll-behavior: smooth; }
body { font-family: 'Roboto', sans-serif; color: #1A1A1A; background: #fffaec; -webkit-font-smoothing: antialiased; overflow-x: hidden; }

/* === Nav === */
.nav-blur { backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); background: rgba(255,250,236,0.92); }
.nav-link { position: relative; transition: color 0.2s; }
.nav-link::after { content: ''; position: absolute; bottom: -3px; left: 0; width: 0; height: 2.5px; background: #fda99c; border-radius: 2px; transition: width 0.28s cubic-bezier(.4,0,.2,1); }
.nav-link:hover::after { width: 100%; }

/* === Buttons === */
.btn-primary { transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease; }
.btn-primary:hover { background: #fb8c7e !important; transform: translateY(-2px); box-shadow: 0 10px 32px rgba(253,169,156,0.45); }
.btn-primary:active { transform: translateY(0); }

/* === Cards === */
.bike-card { transition: transform 0.3s cubic-bezier(.4,0,.2,1), box-shadow 0.3s cubic-bezier(.4,0,.2,1); }
.bike-card:hover { transform: translateY(-8px) rotate(0.3deg); box-shadow: 0 24px 60px rgba(253,169,156,0.22), 0 4px 16px rgba(0,0,0,0.06); }

/* === Typography helpers === */
.eyebrow-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #fda99c; margin-right: 8px; }
.hl { position: relative; display: inline-block; }
.hl::after { content: ''; position: absolute; bottom: 2px; left: -2px; right: -2px; height: 10px; background: #fda99c; border-radius: 4px; z-index: -1; opacity: 0.55; }

/* === WhatsApp FAB === */
@keyframes wa-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(37,211,102,0.5); } 50% { box-shadow: 0 0 0 12px rgba(37,211,102,0); } }
.wa-fab { animation: wa-pulse 2.5s ease-in-out infinite; }
.wa-fab:hover { transform: scale(1.1) !important; }

/* === Scroll reveal === */
[data-reveal] { opacity: 0; will-change: transform, opacity; }
[data-reveal="up"]    { transform: translateY(48px); }
[data-reveal="left"]  { transform: translateX(-56px); }
[data-reveal="right"] { transform: translateX(56px); }
[data-reveal="scale"] { transform: scale(0.92); }
[data-reveal].is-visible { opacity: 1; transform: none; transition: opacity 0.72s cubic-bezier(.16,1,.3,1), transform 0.72s cubic-bezier(.16,1,.3,1); }
[data-delay="100"].is-visible { transition-delay: 0.10s; }
[data-delay="200"].is-visible { transition-delay: 0.20s; }
[data-delay="300"].is-visible { transition-delay: 0.30s; }
[data-delay="400"].is-visible { transition-delay: 0.40s; }
[data-delay="500"].is-visible { transition-delay: 0.50s; }
[data-delay="600"].is-visible { transition-delay: 0.60s; }
