.anti-bpla {
    --anti-blue: #214f7d;
    --anti-blue-dark: #102d4a;
    --anti-blue-pale: #eaf1f7;
    --anti-ink: #162536;
    --anti-muted: #647283;
    --anti-line: #dbe3ea;
    color: var(--anti-ink);
    font-family: "Open Sans", sans-serif;
    margin: -60px 0 0;
    overflow: hidden;
}

.anti-bpla ~ * { box-sizing: border-box; }
.anti-bpla *, .anti-bpla *::before, .anti-bpla *::after { box-sizing: border-box; }
.anti-bpla .anti-bpla__shell { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.anti-bpla h1, .anti-bpla h2, .anti-bpla h3, .anti-bpla p { margin-top: 0; }
.anti-bpla h2 { color: var(--anti-ink); font-size: clamp(30px, 4vw, 50px); line-height: 1.08; letter-spacing: -0.035em; margin-bottom: 24px; }

.anti-bpla__hero {
    align-items: center;
    background: #183e64 url("/promo/anti-bpla/assets/anti-bpla-hero.jpg") center center / cover no-repeat;
    color: #fff;
    display: flex;
    min-height: 590px;
    position: relative;
}

.anti-bpla__hero-shade { background: linear-gradient(90deg, rgba(12, 39, 66, .96) 0%, rgba(20, 57, 91, .84) 36%, rgba(20, 57, 91, .22) 65%, rgba(20, 57, 91, 0) 100%); inset: 0; position: absolute; }
.anti-bpla__hero-content { padding: 82px 0 74px; position: relative; width: min(1440px, calc(100% - 80px)) !important; z-index: 1; }
.anti-bpla__eyebrow, .anti-bpla__kicker { font-size: 13px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.anti-bpla__eyebrow { color: #dceafa; margin-bottom: 20px; }
.anti-bpla__hero h1 { color: #fff; font-size: clamp(48px, 6.4vw, 82px); font-weight: 600; letter-spacing: -.045em; line-height: .98; margin: 0 0 28px; max-width: 820px; text-transform: uppercase; }
.anti-bpla__lead { color: rgba(255,255,255,.86); font-size: 20px; line-height: 1.55; max-width: 610px; }
.anti-bpla__actions { align-items: center; display: flex; gap: 28px; margin-top: 34px; }
.anti-bpla__button { background: #fff; border: 1px solid #fff; border-radius: 2px; color: var(--anti-blue-dark) !important; display: inline-block; font-size: 14px; font-weight: 700; letter-spacing: .06em; padding: 17px 28px; text-transform: uppercase; transition: .2s ease; }
.anti-bpla__button:hover { background: transparent; color: #fff !important; }

.anti-bpla__intro { background: #fff; padding: 100px 0; }
.anti-bpla__intro-grid { display: grid; gap: 90px; grid-template-columns: .9fr 1.1fr; }
.anti-bpla__kicker { color: var(--anti-blue); margin-bottom: 18px; }
.anti-bpla__intro-copy { border-left: 1px solid var(--anti-line); padding-left: 64px; }
.anti-bpla__intro-copy p { color: var(--anti-muted); font-size: 18px; line-height: 1.75; margin-bottom: 18px; }

.anti-bpla__risk { background: var(--anti-blue-dark); color: #dbe6f0; padding: 92px 0; }
.anti-bpla__risk-grid { align-items: center; display: grid; gap: 90px; grid-template-columns: .9fr 1.1fr; }
.anti-bpla__risk-copy h2 { color: #fff; }
.anti-bpla__risk-copy > p:not(.anti-bpla__kicker) { font-size: 17px; line-height: 1.75; max-width: 570px; }
.anti-bpla__risk-copy .anti-bpla__kicker { color: #8eb8dc; }
.anti-bpla__risk-copy ul { border-top: 1px solid rgba(255,255,255,.16); list-style: none; margin: 32px 0 0; padding: 14px 0 0; }
.anti-bpla__risk-copy li { border-bottom: 1px solid rgba(255,255,255,.16); padding: 13px 0 13px 26px; position: relative; }
.anti-bpla__risk-copy li::before { background: #8eb8dc; border-radius: 50%; content: ""; height: 6px; left: 2px; position: absolute; top: 21px; width: 6px; }
.anti-bpla__risk-visual { background: #f4f7f9; color: var(--anti-blue-dark); padding: 24px 28px 20px; }
.anti-bpla__risk-visual svg { display: block; height: auto; width: 100%; }
.anti-bpla__risk-visual p { border-top: 1px solid var(--anti-line); font-size: 13px; font-weight: 700; letter-spacing: .08em; margin: 0; padding: 18px 8px 0; text-align: center; text-transform: uppercase; }
.anti-bpla__risk-grid-lines { fill: none; opacity: .55; stroke: #3c78a8; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }
.anti-bpla__risk-object { fill: none; stroke: #173d61; stroke-linecap: round; stroke-linejoin: round; stroke-width: 4; }
.anti-bpla__risk-drone { fill: #f4f7f9; stroke: #173d61; stroke-linecap: round; stroke-linejoin: round; stroke-width: 4; }
.anti-bpla__risk-path { fill: none; stroke: #b65454; stroke-dasharray: 7 8; stroke-width: 3; }
.anti-bpla__risk-stop { fill: #b65454; }
.anti-bpla__risk-stop-mark { fill: none; stroke: #fff; stroke-linecap: round; stroke-width: 3; }

.anti-bpla__specs { background: #f4f7f9; padding: 100px 0 92px; }
.anti-bpla__section-heading { margin-bottom: 48px; max-width: 690px; }
.anti-bpla__spec-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.anti-bpla__spec-grid article { border-left: 1px solid var(--anti-line); min-height: 200px; padding: 18px 28px 20px; }
.anti-bpla__spec-grid article:first-child { border-left: 0; padding-left: 0; }
.anti-bpla__spec-grid article > span { color: #91a4b7; display: block; font-size: 12px; margin-bottom: 50px; }
.anti-bpla__spec-grid strong { color: var(--anti-blue-dark); display: block; font-size: 28px; }
.anti-bpla__spec-grid p { color: var(--anti-muted); margin: 8px 0 0; }
.anti-bpla__spec-note { border-top: 1px solid var(--anti-line); color: var(--anti-muted); margin: 20px 0 0; padding-top: 25px; }

.anti-bpla__production { background: var(--anti-blue-dark); display: grid; grid-template-columns: 1fr 1fr; min-height: 760px; }
.anti-bpla__production-image { background: #d6d9dc url("/promo/anti-bpla/assets/production-overview.jpg") center center / cover no-repeat; min-height: 620px; }
.anti-bpla__production-copy { align-self: center; color: #dbe6f0; max-width: 650px; padding: 80px 8vw; }
.anti-bpla__production-copy h2 { color: #fff; }
.anti-bpla__production-copy > p:not(.anti-bpla__kicker) { font-size: 17px; line-height: 1.75; }
.anti-bpla__production-copy .anti-bpla__kicker { color: #8eb8dc; }
.anti-bpla__steps { border-top: 1px solid rgba(255,255,255,.16); list-style: none; margin: 38px 0 0; padding: 18px 0 0; }
.anti-bpla__steps li { border-bottom: 1px solid rgba(255,255,255,.16); font-size: 16px; padding: 14px 0; }
.anti-bpla__steps span { color: #7da8cc; display: inline-block; font-size: 11px; width: 48px; }

.anti-bpla__use { background: #fff; padding: 100px 0; }
.anti-bpla__section-heading--wide { max-width: 780px; }
.anti-bpla__section-heading--wide > p:last-child { color: var(--anti-muted); font-size: 17px; }
.anti-bpla__use-grid { display: grid; gap: 18px; grid-template-columns: repeat(4, 1fr); }
.anti-bpla__use-grid article { background: var(--anti-blue-pale); display: flex; flex-direction: column; min-height: 230px; padding: 32px 30px 30px; }
.anti-bpla__use-icon { align-items: center; background: #fff; border-radius: 50%; box-shadow: 0 10px 30px rgba(18,49,78,.08); display: flex; height: 78px; justify-content: center; width: 78px; }
.anti-bpla__use-icon svg { fill: none; height: 43px; stroke: var(--anti-blue); stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; width: 43px; }
.anti-bpla__use-grid h3 { color: var(--anti-ink); font-size: 18px; line-height: 1.4; margin: auto 0 0; min-height: 51px; }

.anti-bpla__custom { background: #edf2f6; padding: 100px 0; }
.anti-bpla__custom-grid { align-items: center; display: grid; gap: 110px; grid-template-columns: 1.25fr .75fr; }
.anti-bpla__custom-grid p:not(.anti-bpla__kicker) { color: var(--anti-muted); font-size: 17px; line-height: 1.75; max-width: 680px; }
.anti-bpla__custom-title { font-size: clamp(29px, 3.2vw, 42px) !important; max-width: 720px; }
.anti-bpla__custom-grid ul { background: #fff; box-shadow: 0 18px 50px rgba(18,49,78,.08); list-style: none; margin: 0; padding: 18px 32px; }
.anti-bpla__custom-grid li { border-bottom: 1px solid var(--anti-line); font-weight: 600; padding: 18px 0 18px 28px; position: relative; }
.anti-bpla__custom-grid li:last-child { border-bottom: 0; }
.anti-bpla__custom-grid li::before { background: var(--anti-blue); border-radius: 50%; content: ""; height: 7px; left: 0; position: absolute; top: 25px; width: 7px; }

.anti-bpla__cta { background: var(--anti-blue); color: #dfeaf4; padding: 84px 0; }
.anti-bpla__cta-content { align-items: center; display: flex; gap: 60px; justify-content: space-between; }
.anti-bpla__cta h2 { color: #fff; margin-bottom: 16px; max-width: 780px; }
.anti-bpla__cta p:not(.anti-bpla__kicker) { font-size: 17px; margin: 0; }
.anti-bpla__cta .anti-bpla__kicker { color: #a9c9e5; }
.anti-bpla__button--light { flex: 0 0 auto; }

@media (max-width: 991px) {
    .anti-bpla { margin-top: -60px; }
    .anti-bpla__hero { min-height: 570px; }
    .anti-bpla__hero-shade { background: linear-gradient(90deg, rgba(12,39,66,.95), rgba(12,39,66,.65)); }
    .anti-bpla__intro-grid, .anti-bpla__custom-grid, .anti-bpla__risk-grid { gap: 40px; }
    .anti-bpla__intro-copy { padding-left: 36px; }
    .anti-bpla__spec-grid, .anti-bpla__use-grid { grid-template-columns: repeat(2, 1fr); }
    .anti-bpla__spec-grid article:nth-child(3) { border-left: 0; }
    .anti-bpla__production { grid-template-columns: .85fr 1.15fr; }
    .anti-bpla__production-copy { padding: 70px 50px; }
}

@media (max-width: 767px) {
    .anti-bpla .anti-bpla__shell { width: min(100% - 32px, 620px); }
    .anti-bpla h2 { font-size: 34px; }
    .anti-bpla__hero { background-position: 62% center; min-height: 690px; }
    .anti-bpla__hero-content { padding: 70px 0 58px; width: min(100% - 32px, 620px) !important; }
    .anti-bpla__hero h1 { font-size: 46px; }
    .anti-bpla__lead { font-size: 17px; }
    .anti-bpla__actions { align-items: flex-start; flex-direction: column; }
    .anti-bpla__intro, .anti-bpla__risk, .anti-bpla__specs, .anti-bpla__use, .anti-bpla__custom { padding: 70px 0; }
    .anti-bpla__intro-grid, .anti-bpla__custom-grid, .anti-bpla__risk-grid { grid-template-columns: 1fr; }
    .anti-bpla__intro-copy { border-left: 0; border-top: 1px solid var(--anti-line); padding: 30px 0 0; }
    .anti-bpla__production { grid-template-columns: 1fr; }
    .anti-bpla__production-image { min-height: 520px; }
    .anti-bpla__production-copy { padding: 60px 24px; }
    .anti-bpla__risk-visual { padding: 14px 12px 18px; }
    .anti-bpla__cta-content { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 479px) {
    .anti-bpla__hero h1 { font-size: 38px; }
    .anti-bpla__spec-grid, .anti-bpla__use-grid { grid-template-columns: 1fr; }
    .anti-bpla__spec-grid article, .anti-bpla__spec-grid article:first-child, .anti-bpla__spec-grid article:nth-child(3) { border-left: 0; border-top: 1px solid var(--anti-line); min-height: 0; padding: 26px 0; }
    .anti-bpla__spec-grid article > span { margin-bottom: 25px; }
    .anti-bpla__production-image { min-height: 440px; }
    .anti-bpla__use-grid h3 { min-height: 0; }
}
