body.marketing-template-body {
    background: #f8f9ff;
    color: #191b23;
    overflow-x: hidden;
}

body.marketing-template-body .alert-stack {
    position: fixed;
    top: 5.8rem;
    left: 50%;
    z-index: 70;
    width: min(92vw, 640px);
    transform: translateX(-50%);
}

body.marketing-template-body .alert {
    box-shadow: 0 16px 40px rgba(21, 36, 76, 0.12);
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(12px);
}

.marketing-logo-image {
    width: 2.15rem;
    height: 2.15rem;
    object-fit: contain;
    flex: 0 0 auto;
}

body.marketing-template-body img {
    max-width: 100%;
}

.animate-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.animate-on-scroll.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.delay-100 {
    transition-delay: 100ms;
}

.delay-200 {
    transition-delay: 200ms;
}

.delay-300 {
    transition-delay: 300ms;
}

.marketing-section-glow {
    background:
        radial-gradient(circle at top right, rgba(45, 91, 255, 0.16), transparent 36%),
        radial-gradient(circle at bottom left, rgba(255, 171, 0, 0.12), transparent 30%);
}

.marketing-mobile-menu {
    position: fixed;
    inset: 0;
    z-index: 60;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.24s ease;
}

.marketing-mobile-menu.is-open {
    opacity: 1;
    pointer-events: auto;
}

.marketing-mobile-menu__backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(14, 24, 45, 0.34);
    backdrop-filter: blur(4px);
}

.marketing-mobile-menu__drawer {
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    min-height: 100%;
    width: min(88vw, 360px);
    flex-direction: column;
    overflow-y: auto;
    border-left: 1px solid #dce2ea;
    background: #ffffff;
    padding: 1.25rem;
    box-shadow: -16px 0 48px rgba(18, 30, 94, 0.12);
    transform: translateX(100%);
    transition: transform 0.24s ease;
}

.marketing-mobile-menu.is-open .marketing-mobile-menu__drawer {
    transform: translateX(0);
}

@media (max-width: 767px) {
    body.marketing-template-body .alert-stack {
        top: 5rem;
        width: min(94vw, 560px);
    }

    .marketing-logo-image {
        width: 2rem;
        height: 2rem;
    }

    .marketing-mobile-menu__drawer {
        width: min(90vw, 340px);
        padding: 1rem;
    }
}
