/* body {
    margin: 0;
    background-color: #f8f9fa;
    font-family: -apple-system, BlinkMacSystemFont, "Inter", sans-serif;
    color: #1a1a1a;
} */

.container {
    /* padding: 2rem; */
    max-width: 1200px;
    margin: 0 auto;
}

.animation-section {
    /* margin: 4rem 0; */
    /* padding: 3rem; */
    /* border-radius: 16px; */
    background: white;
    /* box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03); */
    overflow: hidden;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
    .hero-h1 {
        font-size: 1.5rem;
        margin: 0;
        font-weight: 400;
        letter-spacing: .08rem;
        text-align: center;
    }
}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
    .hero-h1 {
        font-size: 2rem;
        margin: 0;
        font-weight: 400;
        letter-spacing: .08rem;
        text-align: center;
    }
}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {
    .hero-h1 {
        font-size: 2.5rem;
        margin: 0;
        font-weight: 400;
        letter-spacing: .08rem;
        text-align: center;
    }
}

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
    .hero-h1 {
        font-size: 3rem;
        margin: 0;
        font-weight: 400;
        letter-spacing: .08rem;
        text-align: center;
    }
}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
    .hero-h1 {
        font-size: 3.5rem;
        margin: 0;
        font-weight: 400;
        letter-spacing: .08rem;
        text-align: center;
    }
}


.reveal-wrapper {
    overflow: hidden;
    position: relative;
}

/* Style 1: Smooth Individual Letters */
.style-1 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(40px);
}

.style-11 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(40px);
}

.style-12 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(40px);
}

.style-13 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(40px);
}

.style-14 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(40px);
}

/* Style 2: Word Flow */
.style-2 .word-wrapper {
    display: inline-block;
    overflow: hidden;
    /* margin-right: 0.3em; */
}

.style-2 .word {
    display: inline-block;
    transform: translateY(100%);
}

/* Style 3: Cascade Mix */
.style-3 .word-wrapper {
    display: inline-block;
    overflow: hidden;
    /* margin-right: 0.3em; */
}

.style-3 .word {
    display: inline-block;
}

.style-3 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(30px);
}

.style-31 .word-wrapper {
    display: inline-block;
    overflow: hidden;
    /* margin-right: 0.3em; */
}

.style-31 .word {
    display: inline-block;
}

.style-31 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(30px);
}

.style-32 .word-wrapper {
    display: inline-block;
    overflow: hidden;
    /* margin-right: 0.3em; */
}

.style-32 .word {
    display: inline-block;
}

.style-32 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(30px);
}

.style-33 .word-wrapper {
    display: inline-block;
    overflow: hidden;
    /* margin-right: 0.3em; */
}

.style-33 .word {
    display: inline-block;
}

.style-33 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(30px);
}

.style-34 .word-wrapper {
    display: inline-block;
    overflow: hidden;
    /* margin-right: 0.3em; */
}

.style-34 .word {
    display: inline-block;
}

.style-34 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(30px);
}

/* Style 4: Gentle Flow */
.style-4 .word-wrapper {
    display: inline-block;
    overflow: hidden;
    margin-right: 0.3em;
    opacity: 0;
    transform: translateY(20px);
}

/* Style 5: Split Lines */
.style-5 .line {
    display: block;
    overflow: hidden;
    margin-bottom: 0.2em;
}

.style-5 .line-inner {
    display: block;
    transform: translateY(100%);
}

/* Style 6: Smooth Wave */
.style-6 .char {
    display: inline-block;
    opacity: 0;
    transform: translateY(30px) scale(0.9);
}

.label {
    font-size: 0.875rem;
    color: #666;
    margin-bottom: 1rem;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.controls {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: white;
    padding: 1rem;
    border-radius: 12px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    z-index: 100;
}