/* Custom styles for Twinkle Little Starz */

/* Smooth scroll offset for fixed header */
section[id] {
    scroll-margin-top: 80px;
}

/* Star shape utility */
.star-shape {
    clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

/* Gradient text utility */
.gradient-text {
    background: linear-gradient(135deg, #c44d64, #ff8c4a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 10px;
}
::-webkit-scrollbar-track {
    background: #FFF8F0;
}
::-webkit-scrollbar-thumb {
    background: #c44d64;
    border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover {
    background: #a83a50;
}

/* Input focus styles */
input:focus, textarea:focus, select:focus {
    box-shadow: 0 0 0 3px rgba(196, 77, 100, 0.15);
}

/* Mobile menu transitions */
#mobileMenu.open {
    opacity: 1;
    pointer-events: all;
}
#mobileMenu:not(.open) {
    opacity: 0;
    pointer-events: none;
}

/* Hamburger animation */
.menu-line-1.open {
    transform: rotate(45deg) translate(5px, 5px);
}
.menu-line-2.open {
    opacity: 0;
}
.menu-line-3.open {
    transform: rotate(-45deg) translate(5px, -5px);
    width: 1.5rem;
}
