body {
    font-family: 'Merriweather', serif;
    color: #1e293b;
    background-color: #f8fcff;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}
h1, h2, h3, .font-heading {
    font-family: 'Cormorant Garamond', serif;
}
.font-sans-custom {
    font-family: 'Montserrat', sans-serif;
}

/* eMagazine Container - Full Bleed 100% width layout */
.emagazine-container {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    background-color: #f8fcff;
}

/* Banner & Image containers - Full width display */
.img-container {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

/* Standard eMagazine Article Text Container */
.article-text-container {
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
}
.article-text {
    font-size: 1.125rem;
    line-height: 1.85;
    color: #2c3e50;
    text-align: justify;
}

/* Animated Cloud Drift Effects - Left to Right */
@keyframes cloudDriftLTR1 {
    0% { transform: translateX(-60%); }
    100% { transform: translateX(220%); }
}
@keyframes cloudDriftLTR2 {
    0% { transform: translateX(-90%); }
    100% { transform: translateX(180%); }
}

.cloud-drift-1 {
    animation: cloudDriftLTR1 25s linear infinite;
}
.cloud-drift-2 {
    animation: cloudDriftLTR2 32s linear infinite;
}

/* Cover Text Delayed Fade-in Effect */
@keyframes fadeInCoverText {
    0% { 
        opacity: 0; 
        transform: translateY(20px); 
    }
    100% { 
        opacity: 1; 
        transform: translateY(0); 
    }
}
.animate-cover-text {
    opacity: 0;
    animation: fadeInCoverText 1.3s cubic-bezier(0.16, 1, 0.3, 1) 0.6s forwards;
}

/* Scroll Reveal Animation */
.reveal-element {
    opacity: 0;
    transform: translateY(28px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
    will-change: opacity, transform;
}
.reveal-element.active {
    opacity: 1;
    transform: translateY(0);
}

/* Image hover zoom pointer */
.img-interactive {
    transition: transform 0.4s ease, filter 0.4s ease;
}
.img-interactive:hover {
    filter: brightness(1.03);
}
    
