/* Mobile Menu Button */
.mobile-menu-btn { display: none; background: none; border: none; cursor: pointer; padding: 0.5rem; z-index: 1001; }
.hamburger-icon { width: 30px; height: 3px; background: var(--cerna); position: relative; transition: all 0.3s ease; }
.hamburger-icon::before, .hamburger-icon::after {
  content: ''; position: absolute; width: 30px; height: 3px; background: var(--cerna); left: 0; transition: all 0.3s ease;
}
.hamburger-icon::before { top: -8px; } .hamburger-icon::after { top: 8px; }
.mobile-menu-btn.active .hamburger-icon { background: transparent; }
.mobile-menu-btn.active .hamburger-icon::before { transform: rotate(45deg); top: 0; }
.mobile-menu-btn.active .hamburger-icon::after { transform: rotate(-45deg); top: 0; }

@media (max-width: 900px) {
  .mobile-menu-btn { display: block; }
  .nav-menu-wrapper {
    position: fixed; top: 70px; left: 0; width: 100%; background: var(--papir);
    flex-direction: column; align-items: center; padding: 2rem 0; gap: 2rem;
    border-bottom: 3px solid var(--cerna); box-shadow: 0 10px 20px rgba(0,0,0,0.2);
    transform: translateY(-150%); transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.3s ease;
    opacity: 0; pointer-events: none; z-index: 999;
  }
  .nav-menu-wrapper.active { transform: translateY(0); opacity: 1; pointer-events: all; }
  .nav-links { flex-direction: column; align-items: center; gap: 1.5rem; width: 100%; }
  .nav-link { font-size: 1.5rem; font-family: var(--font-headline); width: 80%; text-align: center; border-bottom: 2px dashed var(--gray-200); padding-bottom: 1rem; }
  .nav-link:hover { box-shadow: none; transform: none; color: var(--raspberry); background: transparent; border-color: var(--kachna); }
}

@media (max-width: 1024px) and (min-width: 769px) {
    .hero-headline { font-size: 5rem; line-height: 1; }
    .hero-subheadline { font-size: 1.3rem; }
}

@media (max-width: 768px) { 
    .hero-headline { font-size: 3.5rem; line-height: 1; } 
    .hero-subheadline { font-size: 1.1rem; } 
    .hero-buttons { flex-direction: column; gap: 1rem; }
    .hero-btn { width: 100%; }

    /* Mobile Chat Fix */
    #duck-chat-widget { bottom: 20px; right: 20px; }
    #chat-window {
        position: fixed;
        width: 90vw;
        height: 60vh;
        bottom: 100px;
        right: 5vw;
        left: 5vw;
        margin: 0;
        transform-origin: bottom center;
    }

    .hero-grid, .content-collage { grid-template-columns: 1fr; gap: 2rem; }
    .videos-grid, .social-shelf-fusion, .features-grid { grid-template-columns: 1fr; }
    .polaroid-fusion, .paper-note-fusion, .business-paper-card { transform: none !important; }
    .dictaphone-wrapper { gap: 1rem; }
    .dictaphone-case { width: 100%; max-width: 320px; }
    .section-title { font-size: 2.5rem; }
}