/* style.css */
html {
    scroll-behavior: smooth;
}
body {
    font-family: 'Outfit', sans-serif;
    background-color: theme('colors.background-light');
    color: theme('colors.text-main');
}

h1, h2, h3, h4, h5, h6, .font-display {
    font-family: 'Space Grotesk', sans-serif;
}

.cta-arrow {
    transition: transform 0.2s ease-in-out;
}

.cta-btn:hover .cta-arrow {
    transform: translateX(4px);
}

/* Accordion animations */
details > summary {
    list-style: none;
}
details > summary::-webkit-details-marker {
    display: none;
}
details[open] summary ~ * {
    animation: slideDown 0.3s ease-out forwards;
}
@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.custom-checkbox {
    --checkbox-tick-svg: url('data:image/svg+xml,%3csvg viewBox=%270 0 16 16%27 fill=%27rgb(248,249,252)%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cpath d=%27M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z%27/%3e%3c/svg%3e');
}

/* Animation classes for Intersection Observer */
.fade-in-section {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
    will-change: opacity, visibility;
}

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

/* Sticky Header */
.header-sticky {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 50;
    background-color: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(8px);
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    transition: all 0.3s ease-in-out;
}
