/* =================================================================== BLOG NEWSLETTER section css =================================================================== */
.blog-newsletter {
    padding-block: 0 var(--sectionGap);

    & .blog-newsletter__panel {
        position: relative;
        display: grid;
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
        align-items: center;
        gap: var(--sp60);
        padding: var(--sp60);
        background: var(--surface-1);
        border: 1px solid var(--line);
        border-radius: var(--r-md);
        overflow: hidden;

        &::after {
            position: absolute; right: -120px; bottom: -160px;
            width: 420px; height: 420px;
            background: radial-gradient(circle, var(--blue-100) 0%, transparent 65%);
            content: "";
        }
    }

    & .blog-newsletter__copy { position: relative; z-index: 1; }

    & .blog-newsletter__copy .section-title-wrap { margin-bottom: var(--sp25); }

    & .blog-newsletter__text { margin-bottom: var(--sp25); font-size: var(--f18); }

    & .blog-newsletter__form-wrap {
        position: relative; z-index: 1;
        padding: var(--sp40);
        background: var(--white);
        border: 1px solid var(--line);
        border-radius: var(--r-md);
        box-shadow: var(--shadow-sm);
    }

    & .blog-newsletter__label { color: var(--ink); }

    & .blog-newsletter__note {
        color: var(--muted);
        & a { color: var(--primary); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
    }
}

/* =================================================================== RESPONSIVE =================================================================== */
@media (max-width: 991.98px) {
    .blog-newsletter {
        & .blog-newsletter__panel { grid-template-columns: 1fr; padding: var(--sp40); }
    }
}

@media (max-width: 575.98px) {
    .blog-newsletter {
        & .blog-newsletter__panel { padding: var(--sp30) var(--sp20); gap: var(--sp30); }
        & .blog-newsletter__form-wrap { padding: var(--sp25) var(--sp20); }
    }
}
