:root {
    --nav-text-color: #e8e4dc;
}

/* --- ULTIMATE TITAN RESPONSIVE SHIELD --- */
html, body {
    max-width: 100vw !important;
    width: 100% !important;
    overflow-x: hidden !important;
    position: relative !important;
}

footer::after,
.mj-footer::after {
    content: none !important;
    display: none !important;
    height: 0 !important;
}

/* Japonca Font Genişleme Kalkanı */
body.lang-ja {
    font-family: 'Noto Sans JP', sans-serif !important;
}

img, .card, .product-box { 
    max-width: 100%; 
    height: auto; 
    object-fit: contain; 
}

/* Ana Büyük Logonun Dondurulması ve Esnetilmesi */
.main-logo-container, .brand-logo, #mutluJaponLogo, .mj-hero__logo, .mj-hero__logo img {
    max-height: 90px !important;
    width: auto !important;
    object-fit: contain !important;
    flex-shrink: 0 !important;
    display: block;
    margin: 0 auto;
}

/* Navbar Elemanlarının Sağa Kaçmasını Engelleme */
.navbar, .nav-container, .header-grid, .mj-nav__menu {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    max-width: 100% !important;
}

.nav-link, .mj-nav__menu a, .navbar-brand, .navbar-logo, .mj-logo, header img {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.nav-link, .mj-nav__menu a {
    color: var(--nav-text-color) !important;
}

/* Cinematic Scroll Animations */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.animate-on-scroll.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Titan AI Glassmorphism 3D Command Center */
.titan-chat-panel {
    background: rgba(22, 22, 26, 0.85) !important;
    backdrop-filter: blur(16px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(255,255,255,0.1) !important;
}

/* Marka Bandı (Marquee) Animasyonu */
@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.mj-marquee-track {
    display: flex;
    white-space: nowrap;
    animation: marquee 30s linear infinite;
    /* Çakışmayı önlemek için flex shrink vs sıfırlama */
    flex-shrink: 0;
}
.mj-marquee-track:hover {
    animation-play-state: paused;
}
