/* Base Styles */
@layer base {
    body {
        @apply bg-cream dark:bg-charcoal text-charcoal dark:text-cream antialiased overflow-x-hidden;
        font-family: 'Inter', 'Noto Sans JP', sans-serif;
        line-height: 1.8;
        letter-spacing: 0.02em;
    }
    
    h1, h2, h3 {
        @apply font-black tracking-tighter uppercase;
    }
}

/* Utility Classes */
.heading-dot::after {
    content: '.';
    @apply text-primary;
}

.pastel-blur {
    filter: blur(80px);
    opacity: 0.5;
    z-index: -1;
}

.section-title-line {
    @apply w-12 h-[1px] bg-charcoal/20 dark:bg-cream/20 block mb-8;
}

/* Accordion Styles */
.accordion-item {
    transition: all 0.3s ease;
}

.accordion-header {
    cursor: pointer;
    transition: all 0.2s ease;
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

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