/* Base */
@import url('base/_variables.css?v=7');
@import url('base/_reset.css?v=7');
@import url('base/_typography.css?v=7');

/* Components */
@import url('components/_buttons.css?v=7');
@import url('components/_nav.css?v=7');
@import url('components/_footer.css?v=7');
@import url('components/_popup.css?v=7');
@import url('components/_cart.css?v=7');

/* Sections */
@import url('sections/_hero.css?v=7');
@import url('sections/_studio.css?v=7');
@import url('sections/_manifesto.css?v=7');
@import url('sections/_collections.css?v=7');
@import url('sections/_bespoke.css?v=7');

/* Pages */
@import url('pages/_collection-page.css?v=7');
@import url('pages/_bespoke-page.css?v=7');
@import url('pages/_craft-page.css?v=7');
@import url('pages/_studio-page.css?v=7');
@import url('pages/_legal-page.css?v=7');
@import url('pages/_ganapathi-page.css?v=7');
@import url('pages/_shop-page.css?v=7');
@import url('pages/_product-page.css?v=7');

/* Utilities */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* Custom Cursor */
.custom-cursor {
    position: fixed;
    top: 0;
    left: 0;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: var(--color-oxblood);
    color: var(--color-white);
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--font-body);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    pointer-events: none;
    z-index: 9999;
    opacity: 0;
    transform: translate(-100px, -100px);
    transition: opacity 0.3s ease-out;
    mix-blend-mode: normal;
}

.custom-cursor span {
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
}

.custom-cursor.active {
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .custom-cursor {
        display: none !important;
    }
}

/* Scroll Reveal Base Classes */
.scroll-reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1), transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

.scroll-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.delay-1 { transition-delay: 0.1s; }
.delay-2 { transition-delay: 0.2s; }
.delay-3 { transition-delay: 0.3s; }
.delay-3 { transition-delay: 0.3s; }

/* Global Image Filter */
img.lazy {
    filter: grayscale(20%) contrast(1.1);
    transition: filter 0.45s linear, transform 5s ease-out;
}

img.lazy.loaded {
    /* Base loaded state */
}

/* Color Bleed Interaction */
.color-bleed {
    filter: grayscale(100%) contrast(1.1);
    transition: filter 2s ease-out, transform 10s ease-out;
}

.color-bleed.bleed-active {
    filter: grayscale(0%) contrast(1.05);
}
