/* Business-package composition; shared primitives live in public-components.css. */
.business-package-page #main-content {
    --kws-ink: var(--kws-public-color-text-strong);
    --kws-body: var(--kws-public-color-text);
    --kws-muted: var(--kws-public-color-text-muted);
    --kws-line: var(--kws-public-color-line);
    --bp-canvas: var(--kws-public-color-canvas);
    --bp-surface: var(--kws-public-color-surface);
    background: var(--bp-canvas);
    color: var(--kws-ink);
}

.business-package-page #main-content .bp-kicker {
    color: var(--kws-muted);
    font-size: 12px;
    font-weight: 750;
    letter-spacing: 0.14em;
}
.business-package-page #main-content section[id] {
    scroll-margin-top: calc(var(--kws-header) + 24px);
}

.business-package-page .promotion-hero {
    --kws-ink: #fff;
    --kws-body: #eeeef1;
    --kws-muted: #e0e2e7;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: #191a1c;
    color: var(--kws-ink);
}
.business-package-page .promotion-hero__background {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 45%;
    filter: blur(3px);
    transform: scale(1.02);
}
.business-package-page .promotion-hero::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg, rgb(15 23 42 / 67%), rgb(15 23 42 / 73%));
    content: "";
}
.business-package-page .promotion-hero__inner {
    display: flex;
    min-height: 680px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-block: 100px;
    text-align: center;
}
.business-package-page .promotion-hero__copy { width: 100%; max-width: 1120px; }
.business-package-page .bp-eyebrow { margin-top: 0; color: #82a6ff; font-size: clamp(18px, 2vw, 25px); font-weight: 750; letter-spacing: -0.03em; }
.business-package-page .promotion-hero h1 {
    margin-top: 22px;
    font-size: clamp(40px, 4.6vw, 64px);
    font-weight: 800;
    line-height: 1.38;
    letter-spacing: -0.045em;
    word-break: keep-all;
}
.business-package-page .promotion-hero__description {
    margin-top: 26px;
    color: #e0e6ef;
    font-size: 18px;
    line-height: 1.75;
    word-break: keep-all;
}
.business-package-page .promotion-package-bridge {
    position: relative;
    padding-block: var(--kws-public-space-30);
    background:
        radial-gradient(720px 420px at 88% 0%, rgb(96 165 250 / 35%), transparent 70%),
        radial-gradient(560px 380px at 0% 100%, rgb(30 64 175 / 55%), transparent 70%),
        linear-gradient(120deg, #1d4ed8 0%, #1e3a8a 100%);
    color: #fff;
    overflow: hidden;
}

.business-package-page .promotion-package-bridge__inner {
    text-align: center;
}

.business-package-page .promotion-package-bridge .bp-kicker {
    color: #bfdbfe;
}

.business-package-page .promotion-package-bridge h2 {
    color: #fff;
}

.business-package-page .promotion-package-bridge__inner > div:last-child {
    max-width: var(--kws-public-container-form);
    margin: 28px auto 0;
}

.business-package-page .promotion-package-bridge p:not(.bp-kicker) {
    color: rgb(255 255 255 / 88%);
    line-height: 1.8;
}

.business-package-page .promotion-package-bridge .kws-button {
    margin-top: 28px;
    background: #fff;
    color: #1d4ed8;
}

.business-package-page .promotion-package-bridge .kws-button:is(:hover, :focus-visible) {
    background: #eff6ff;
    color: #1e40af;
}

@media (max-width: 1024px) {
    .business-package-page .promotion-hero__inner { min-height: 640px; padding-block: 88px; }
}
@media (max-width: 767px) {
    .business-package-page .promotion-hero__inner { min-height: 600px; padding-block: 72px; }
    .business-package-page .promotion-hero__background { object-position: 53% center; }
    .business-package-page .bp-eyebrow { font-size: clamp(15px, 4.1vw, 19px); }
    .business-package-page .promotion-hero h1 { font-size: clamp(29px, 7.8vw, 48px); margin-top: 20px; }
    .business-package-page .promotion-hero__description { max-width: 290px; margin: 24px auto 0; font-size: 15px; }
    .business-package-page .promotion-package-bridge { padding-block: calc(var(--kws-public-space-12) + var(--kws-public-space-6)); }
}
