/* SiteSnap Template – shared base styles */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: system-ui, -apple-system, sans-serif; }
img { max-width: 100%; display: block; }
a { color: inherit; }

/* WhatsApp / call FAB */
.fab-wrap { position: fixed; bottom: 1.5rem; right: 1.5rem; display: flex; flex-direction: column; gap: .75rem; z-index: 999; }
.fab { width: 3.5rem; height: 3.5rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(0,0,0,.2); cursor: pointer; border: none; text-decoration: none; transition: transform .15s; }
.fab:hover { transform: scale(1.08); }
.fab-wa { background: #25D366; color: #fff; }
.fab-call { background: #3b82f6; color: #fff; }
.fab svg { width: 1.5rem; height: 1.5rem; fill: currentColor; }

/* contact form */
.form-group { margin-bottom: 1rem; }
.form-group input,
.form-group textarea { width: 100%; padding: .65rem .9rem; border: 1px solid #d1d5db; border-radius: .5rem; font-size: .95rem; font-family: inherit; background: #fff; }
.form-group textarea { resize: vertical; min-height: 100px; }
.btn { display: inline-block; padding: .7rem 1.6rem; border-radius: 9999px; font-weight: 600; font-size: .95rem; cursor: pointer; border: none; transition: opacity .15s; }
.btn:hover { opacity: .88; }
.btn-full { width: 100%; text-align: center; }