@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Fade-In Animation Variables */
.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
    will-change: opacity, transform;
}

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

/* Sticky Header enhancements */
header {
    transition: padding 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

.sticky.scrolled {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    background-color: rgba(248, 246, 246, 0.98) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

/* Mobile Menu State */
.mobile-menu-open {
    overflow: hidden;
}

#mobile-menu {
    transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    transform: translateX(100%);
}

#mobile-menu.active {
    transform: translateX(0);
}


/* Hide scrollbar for Chrome, Safari and Opera */
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}
/* Hide scrollbar for IE, Edge and Firefox */
.scrollbar-hide {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

/* Ujednolicenie Globalnej Typografii (Inter) */
body, h1, h2, h3, h4, h5, h6, p, a, span, div, li, 
.font-sans, .font-display, .text-body,
button, input, textarea {
    font-family: 'Inter', sans-serif !important;
}

/* Ochrona Piktogramów Google przed globalną regułą typography */
.material-symbols-outlined {
    font-family: 'Material Symbols Outlined', sans-serif !important;
}
