/**
 * AANYA loading system — customer treatment.
 * Tokens live here to avoid colliding with in-progress variables.css work.
 */
:root {
    --aanya-loader-ease: cubic-bezier(0.22, 1, 0.36, 1);
    --aanya-loader-ease-flight: cubic-bezier(0.33, 0.08, 0.25, 1);
    --aanya-loader-duration-earth: 550ms;
    --aanya-loader-duration-growth: 850ms;
    --aanya-loader-duration-standard: 720ms;
    --aanya-loader-duration-micro: 1100ms;
    --aanya-loader-duration-exit: 420ms;
    --aanya-loader-size-journey: min(38rem, 50vw);
    --aanya-loader-size-standard: 7.25rem;
    --aanya-loader-size-micro: 1.125rem;
    --aanya-loader-canvas: #f6f2e9;
    --aanya-loader-overlay: color-mix(in srgb, #2a3220 10%, transparent);
    --aanya-loader-ink: #2f2f20;
}

.aanya-loader .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.aanya-loader[hidden] {
    display: none !important;
}

.aanya-loader:not([hidden]):not(.aanya-loader--micro) {
    position: fixed;
    inset: 0;
    z-index: 1400;
    display: grid;
    place-items: center;
    background: var(--aanya-loader-overlay);
    pointer-events: none;
}

.aanya-loader[data-level="journey"]:not([hidden]):not(.aanya-loader--micro) {
    background: var(--aanya-loader-canvas);
    z-index: 12000;
}

.aanya-loader__stage[hidden] {
    display: none !important;
}

.aanya-loader.is-blocking:not([hidden]) {
    pointer-events: auto;
}

.aanya-loader__panel {
    width: min(var(--aanya-loader-size-journey), 88vw);
    padding: 0;
    background: transparent;
    text-align: center;
}

.aanya-loader[data-level="standard"] .aanya-loader__panel {
    width: auto;
    min-width: 0;
    padding: 0.35rem 0.5rem 0.2rem;
}

.aanya-loader[data-level="micro"]:not(.aanya-loader--micro) .aanya-loader__panel {
    width: auto;
    padding: 0;
}

.aanya-loader--micro {
    position: static;
    inset: auto;
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    flex-shrink: 0;
    width: var(--aanya-loader-size-micro);
    height: var(--aanya-loader-size-micro);
    margin-inline-end: 0.4rem;
    z-index: 1;
    pointer-events: none;
    vertical-align: middle;
}

.aanya-loader.is-inline:not([hidden]):not(.aanya-loader--micro) {
    position: absolute;
    inset: 0;
    background: color-mix(in srgb, var(--aanya-loader-overlay) 70%, transparent);
    z-index: 8;
}

.aanya-loader__stage--journey {
    display: grid;
    place-items: center;
    min-height: min(26rem, 64vh);
}

.aanya-loader__nature,
.aanya-loader__identity {
    grid-area: 1 / 1;
}

.aanya-loader__nature {
    width: 100%;
    transform-origin: center 72%;
}

.aanya-loader__identity {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transform-origin: center center;
}

.aanya-loader__scene {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 auto;
    overflow: visible;
}

.aanya-loader[data-level="standard"] .aanya-loader__scene {
    width: var(--aanya-loader-size-standard);
}

.aanya-loader__micro-svg {
    display: block;
    width: 2.25rem;
    height: 2.25rem;
}

.aanya-loader--micro .aanya-loader__micro-svg {
    width: var(--aanya-loader-size-micro);
    height: var(--aanya-loader-size-micro);
}

.aanya-loader__wordmark {
    display: block;
    width: min(22rem, 34vw);
    height: auto;
}

.aanya-loader__tagline,
.aanya-loader__label {
    margin: 0.55rem 0 0;
    font-size: 0.8125rem;
    letter-spacing: 0.04em;
    color: #6b4423;
}

.aanya-loader[data-level="journey"].is-playing .aanya-loader__soil {
    animation: aanya-loader-soil var(--aanya-loader-duration-earth) var(--aanya-loader-ease) both;
}

.aanya-loader[data-level="journey"].is-playing .aanya-worm__body {
    transform-origin: 20% 70%;
    animation: aanya-loader-worm-undulate 1.2s var(--aanya-loader-ease) both;
}

.aanya-loader[data-level="journey"].is-playing .aanya-sapling__stem,
.aanya-loader[data-level="journey"].is-playing .aanya-vine__stem {
    stroke-dasharray: 100;
    stroke-dashoffset: 100;
    opacity: 0;
    animation: aanya-loader-stem var(--aanya-loader-duration-growth) var(--aanya-loader-ease) 0.45s both;
}

.aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf {
    transform-box: fill-box;
    transform-origin: center bottom;
    animation:
        aanya-loader-leaf 0.75s var(--aanya-loader-ease) both,
        aanya-loader-leaf-sway 2.8s ease-in-out 1.5s infinite;
}

.aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf--l1 { animation-delay: 0.68s, 1.5s; }
.aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf--r1 { animation-delay: 0.8s, 1.6s; }
.aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf--l2 { animation-delay: 0.92s, 1.7s; }
.aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf--r2 { animation-delay: 1.02s, 1.8s; }
.aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf--top { animation-delay: 1.12s, 1.9s; }
.aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf--vine-a { animation-delay: 0.9s, 1.7s; }
.aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf--vine-b { animation-delay: 1.02s, 1.8s; }

.aanya-loader[data-level="journey"].is-playing .aanya-loader__bee {
    animation: aanya-loader-bee-path 1.2s var(--aanya-loader-ease-flight) 1.05s both;
}

.aanya-loader[data-level="journey"].is-playing .aanya-bee__wing {
    transform-box: fill-box;
    transform-origin: 80% 80%;
    animation: aanya-loader-wing 0.09s linear 1.05s infinite;
}

.aanya-loader[data-level="journey"].is-playing .aanya-loader__butterfly {
    animation: aanya-loader-butterfly-enter 1s var(--aanya-loader-ease-flight) 1.45s both;
}

.aanya-loader[data-level="journey"].is-playing .aanya-butterfly__wing {
    transform-box: fill-box;
    transform-origin: right center;
    animation: aanya-loader-bf-wing 0.38s ease-in-out 1.45s infinite;
}

.aanya-loader[data-level="journey"].is-playing .aanya-butterfly__wing--r {
    transform-origin: left center;
}

.aanya-loader[data-level="journey"].is-playing .aanya-loader__bird {
    animation: aanya-loader-bird-enter 1s var(--aanya-loader-ease-flight) 1.9s both;
}

.aanya-loader[data-level="journey"].is-playing .aanya-bird__wing {
    transform-box: fill-box;
    transform-origin: left center;
    animation: aanya-loader-bird-wing 0.5s ease-in-out 1.9s 3 both;
}

.aanya-loader[data-level="journey"].is-playing .aanya-loader__nature {
    animation: aanya-loader-nature-out 0.45s var(--aanya-loader-ease) 3.1s both;
}

.aanya-loader[data-level="journey"].is-playing .aanya-loader__identity {
    animation: aanya-loader-identity-in 0.55s var(--aanya-loader-ease) 3.55s both;
}

.aanya-loader[data-level="standard"].is-playing .aanya-loader__sapling {
    animation: aanya-loader-breathe var(--aanya-loader-duration-standard) var(--aanya-loader-ease) infinite;
}

.aanya-loader[data-level="standard"].is-playing .aanya-loader__bee {
    animation: aanya-loader-orbit 2.4s var(--aanya-loader-ease) infinite;
}

.aanya-loader[data-level="standard"].is-playing .aanya-bee__wing {
    transform-box: fill-box;
    transform-origin: 80% 80%;
    animation: aanya-loader-wing 0.12s linear infinite;
}

.aanya-loader--micro.is-playing .aanya-micro__stem,
.aanya-loader[data-level="micro"].is-playing .aanya-micro__stem {
    stroke-dasharray: 100;
    stroke-dashoffset: 100;
    animation: aanya-loader-stem 0.55s var(--aanya-loader-ease) both;
}

.aanya-loader--micro.is-playing .aanya-micro__leaf,
.aanya-loader[data-level="micro"].is-playing .aanya-micro__leaf {
    transform-box: fill-box;
    transform-origin: center bottom;
    animation:
        aanya-loader-micro-leaf 0.55s var(--aanya-loader-ease) 0.2s both,
        aanya-loader-leaf-sway 1.8s ease-in-out 0.8s infinite;
}

.aanya-loader.is-exiting {
    animation: aanya-loader-exit var(--aanya-loader-duration-exit) var(--aanya-loader-ease) both;
}

.product-card.is-loading .aanya-loader--micro,
.btn.is-loading .aanya-loader--micro,
[data-filter-loading] .aanya-loader--micro {
    margin-inline-end: 0.4rem;
    vertical-align: middle;
}

@keyframes aanya-loader-soil {
    from { opacity: 0; transform: translateY(8px) scaleX(0.92); }
    to { opacity: 1; transform: none; }
}

@keyframes aanya-loader-worm-undulate {
    from { opacity: 0; transform: translate(10px, 6px) rotate(-10deg); }
    40% { opacity: 1; transform: translate(3px, 1px) rotate(5deg); }
    70% { transform: translate(-2px, 0) rotate(-3deg); }
    to { opacity: 1; transform: none; }
}

@keyframes aanya-loader-stem {
    0% { stroke-dashoffset: 100; opacity: 0; }
    0.01% { stroke-dashoffset: 100; opacity: 1; }
    100% { stroke-dashoffset: 0; opacity: 1; }
}

@keyframes aanya-loader-leaf {
    from { opacity: 0; transform: rotate(-22deg) scaleY(0.2); }
    to { opacity: 1; transform: none; }
}

@keyframes aanya-loader-leaf-sway {
    0%, 100% { transform: rotate(-1.2deg); }
    50% { transform: rotate(1.4deg); }
}

@keyframes aanya-loader-bee-path {
    from { opacity: 0; transform: translate(46px, -22px) rotate(-10deg); }
    55% { opacity: 1; transform: translate(-6px, 6px) rotate(4deg); }
    to { opacity: 1; transform: none; }
}

@keyframes aanya-loader-wing {
    from { transform: rotateX(10deg) scaleY(0.45); }
    to { transform: rotateX(0deg) scaleY(1); }
}

@keyframes aanya-loader-butterfly-enter {
    from { opacity: 0; transform: translate(-42px, 20px) rotate(-8deg); }
    48% { opacity: 1; transform: translate(-8px, -6px) rotate(4deg); }
    to { opacity: 1; transform: none; }
}

@keyframes aanya-loader-bf-wing {
    from { transform: scaleX(0.32); }
    50% { transform: scaleX(1); }
    to { transform: scaleX(0.48); }
}

@keyframes aanya-loader-bird-enter {
    from { opacity: 0; transform: translate(-36px, 16px) rotate(-6deg); }
    50% { opacity: 1; transform: translate(-6px, -4px) rotate(3deg); }
    to { opacity: 1; transform: none; }
}

@keyframes aanya-loader-bird-wing {
    from { transform: rotate(-8deg); }
    50% { transform: rotate(6deg); }
    to { transform: none; }
}

@keyframes aanya-loader-nature-out {
    to { opacity: 0; }
}

@keyframes aanya-loader-identity-in {
    from { opacity: 0; transform: scale(0.97); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes aanya-loader-breathe {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-2px); }
}

@keyframes aanya-loader-orbit {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(-8px, -5px); }
}

@keyframes aanya-loader-micro-leaf {
    from { opacity: 0; transform: rotate(-28deg) scaleY(0.2); }
    to { opacity: 1; transform: none; }
}

@keyframes aanya-loader-exit {
    to { opacity: 0; }
}

@media (max-width: 1023px) {
    :root { --aanya-loader-size-journey: min(28rem, 58vw); }
    .aanya-loader__wordmark { width: min(18rem, 48vw); }
}

@media (max-width: 767px) {
    :root { --aanya-loader-size-journey: min(19.5rem, 82vw); }
    .aanya-loader__wordmark { width: min(15rem, 70vw); }
    .aanya-loader__tagline { font-size: 0.75rem; }
    .aanya-loader__vine { display: none; }
    .aanya-loader__stage--journey { min-height: min(20rem, 60vh); }
    .aanya-loader[data-level="standard"] .aanya-loader__scene {
        width: min(6.5rem, 46vw);
    }
}

@media (max-width: 379px) {
    :root { --aanya-loader-size-journey: min(18rem, 86vw); }
    .aanya-loader__wordmark { width: min(13.5rem, 74vw); }
}

@media (prefers-reduced-motion: reduce) {
    .aanya-loader[data-level="journey"].is-playing .aanya-loader__soil,
    .aanya-loader[data-level="journey"].is-playing .aanya-worm__body,
    .aanya-loader[data-level="journey"].is-playing .aanya-sapling__stem,
    .aanya-loader[data-level="journey"].is-playing .aanya-vine__stem,
    .aanya-loader[data-level="journey"].is-playing .aanya-sapling__leaf,
    .aanya-loader[data-level="journey"].is-playing .aanya-loader__bee,
    .aanya-loader[data-level="journey"].is-playing .aanya-bee__wing,
    .aanya-loader[data-level="journey"].is-playing .aanya-loader__butterfly,
    .aanya-loader[data-level="journey"].is-playing .aanya-butterfly__wing,
    .aanya-loader[data-level="journey"].is-playing .aanya-loader__bird,
    .aanya-loader[data-level="journey"].is-playing .aanya-bird__wing,
    .aanya-loader[data-level="journey"].is-playing .aanya-loader__nature,
    .aanya-loader[data-level="journey"].is-playing .aanya-loader__identity,
    .aanya-loader[data-level="standard"].is-playing .aanya-loader__sapling,
    .aanya-loader[data-level="standard"].is-playing .aanya-loader__bee,
    .aanya-loader[data-level="standard"].is-playing .aanya-bee__wing,
    .aanya-loader--micro.is-playing .aanya-micro__stem,
    .aanya-loader--micro.is-playing .aanya-micro__leaf,
    .aanya-loader[data-level="micro"].is-playing .aanya-micro__stem,
    .aanya-loader[data-level="micro"].is-playing .aanya-micro__leaf,
    .aanya-loader.is-exiting {
        animation: none !important;
    }

    .aanya-loader[data-level="journey"].is-playing .aanya-loader__nature {
        display: none;
    }

    .aanya-loader[data-level="journey"].is-playing .aanya-loader__identity,
    .aanya-loader[data-level="journey"].is-playing .aanya-loader__wordmark,
    .aanya-loader[data-level="journey"].is-playing .aanya-loader__tagline,
    .aanya-loader[data-level="standard"].is-playing .aanya-loader__sapling,
    .aanya-loader--micro.is-playing .aanya-micro__leaf,
    .aanya-loader[data-level="micro"].is-playing .aanya-micro__leaf {
        opacity: 1;
        transform: none;
        stroke-dashoffset: 0;
    }
}
