/* style.css */
body {
    font-family: 'Noto Sans JP', 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
    color: #333333;
    background-color: #FAFAFA;
}

h1,
h2,
h3,
.font-heading {
    font-family: 'M PLUS Rounded 1c', 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
}

/* Custom Colors & Utilities */
.text-brand-orange {
    color: #FF8C00;
}

.bg-brand-orange {
    background-color: #FF8C00;
}

.border-brand-orange {
    border-color: #FF8C00;
}

.bg-brand-orange-light {
    background-color: #FFF3E0;
}

.hover\:bg-brand-orange-dark:hover {
    background-color: #E67E22;
}

/* Blob Shapes for organic, friendly feel */
.blob-shape-1 {
    border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%;
}

.blob-shape-2 {
    border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
}

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

/* Header Sticky Shadow */
.header-scrolled {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* Placeholder animations */
@keyframes float {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0px);
    }
}

.animate-float {
    animation: float 3s ease-in-out infinite;
}

/* Card Hover effect */
.card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-hover:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}