/* Base and Utilities */
html {
    scroll-behavior: smooth;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #1c1917; /* stone-900 */
}

::-webkit-scrollbar-thumb {
    background: #57534e; /* stone-500 */
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #D4AF37; /* Gold */
}

/* Hide scrollbar for internal grids if needed */
.hide-scrollbar::-webkit-scrollbar {
    display: none;
}
.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Custom Animations */
.fade-in-up {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-in-up.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Floating Animation for Hero Stats Bar */
@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0px); }
}

.animate-float {
    animation: float 4s ease-in-out infinite;
}

/* Hover Effects */
.hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* Card Accent Border Hover */
.group:hover .group-hover\:border-gold {
    border-color: #D4AF37 !important;
}

/* Image Zoom */
.img-zoom-container {
    overflow: hidden;
}

.img-zoom-container img {
    transition: transform 0.5s ease;
}

.group:hover .img-zoom-container img {
    transform: scale(1.05);
}

/* Footer Map Silhouette Overlay */
.footer-map-bg {
    position: relative;
    overflow: hidden;
}

.footer-map-bg::before {
    content: '';
    position: absolute;
    top: 0;
    right: -10%;
    width: 60%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" fill="none" stroke="%23333" stroke-width="1"><path d="M10,50 Q30,20 50,40 T90,30 L90,80 Q70,90 50,70 T10,80 Z"/></svg>'); /* Abstract Map Placeholder */
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center right;
    opacity: 0.05;
    pointer-events: none;
}

/* WhatsApp Pulse Animation */
@keyframes pulse-ring {
    0% { transform: scale(0.8); box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); }
    70% { transform: scale(1); box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
    100% { transform: scale(0.8); box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
}

.whatsapp-pulse {
    animation: pulse-ring 2s infinite;
}

/* =========================================
   GARANTİLİ PURE CSS MARQUEE ANIMASYONU
   (Tailwind Purge/Build Hatalarından Etkilenmez)
   ========================================= */
.custom-marquee-wrapper {
    overflow: hidden !important;
    position: relative !important;
    width: 100% !important;
    white-space: nowrap !important;
}

.custom-marquee-track {
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
    padding-left: 2rem !important;
    padding-right: 2rem !important;
    animation: scrollMarquee 20s linear infinite !important;
    -webkit-animation: scrollMarquee 20s linear infinite !important;
    gap: 4rem; /* Logolar arası boşluk */
}

.custom-marquee-track > div {
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
}

@media (hover: hover) {
    .custom-marquee-track:hover {
        animation-play-state: paused !important;
        -webkit-animation-play-state: paused !important;
    }
}

@keyframes scrollMarquee {
    0% { transform: translate3d(0, 0, 0); }
    100% { transform: translate3d(-50%, 0, 0); }
}

@-webkit-keyframes scrollMarquee {
    0% { -webkit-transform: translate3d(0, 0, 0); }
    100% { -webkit-transform: translate3d(-50%, 0, 0); }
}
