* { scroll-behavior: smooth; }
body { overflow-x: hidden; }

@keyframes float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes slideUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes shimmer { 0% { background-position: -1000px 0; } 100% { background-position: 1000px 0; } }

.typed-cursor { color: #D97706; font-weight: 100; font-size: 2rem; animation: blink 0.7s infinite; }
@keyframes blink { 0%,100% { opacity: 1; } 50% { opacity: 0; } }

.glightbox-clean .gslide-description { background: #1F2937 !important; color: white !important; }
.glightbox-clean .gdesc-inner { padding: 20px !important; }
.glightbox-clean .gslide-title { color: #D97706 !important; font-family: 'Oswald', sans-serif !important; text-transform: uppercase !important; font-size: 1.5rem !important; margin-bottom: 10px !important; }

.testimonial-swiper .swiper-pagination-bullet { background: #D97706; opacity: 0.3; width: 12px; height: 12px; }
.testimonial-swiper .swiper-pagination-bullet-active { opacity: 1; width: 30px; border-radius: 6px; }

::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #1F2937; }
::-webkit-scrollbar-thumb { background: #D97706; border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: #F59E0B; }

::selection { background: #D97706; color: white; }


.gallery-grid a { aspect-ratio: 1; }
.gallery-grid a.md\:col-span-2 { aspect-ratio: auto; }
input:focus, textarea:focus, select:focus { box-shadow: 0 0 0 4px rgba(217, 119, 6, 0.1); }

.loading-skeleton { background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%); background-size: 1000px 100%; animation: shimmer 2s infinite; }
