@font-face {
    font-family: "Nunito";
    src: url("../fonts/nunito/Nunito-VariableFont_wght.ttf") format("truetype");
    font-style: normal;
    font-weight: 200 1000;
    font-display: swap;
}

:root {
    --bp-ink: #17181b;
    --bp-ink-soft: #2b2e33;
    --bp-muted: #667085;
    --bp-line: #e7e3dc;
    --bp-cream: #f5f0e6;
    --bp-cream-2: #faf8f3;
    --bp-green: #19a463;
    --bp-green-dark: #0d7d49;
    --bp-orange: #f59d2a;
    --bp-white: #ffffff;
    --bp-radius: 1.35rem;
    --bp-shadow: 0 24px 70px rgba(27, 29, 33, .10);
}

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
}

html { scroll-behavior: smooth; }
body {
    color: var(--bp-ink);
    background: #fff;
    font-family: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

a { color: var(--bp-green-dark); }
a:hover { color: var(--bp-ink); }

.skip-link {
    position: fixed;
    left: 1rem;
    top: -5rem;
    z-index: 9999;
    background: #000;
    color: #fff;
    padding: .75rem 1rem;
    border-radius: .5rem;
}
.skip-link:focus { top: 1rem; }

.py-lg-6 { padding-top: 5rem; padding-bottom: 5rem; }
.gap-x-4 { column-gap: 1.5rem; }
.gap-y-2 { row-gap: .5rem; }
.letter-space { letter-spacing: .08em; }

.site-header {
    background: rgba(255,255,255,.92);
    border-bottom: 1px solid rgba(23,24,27,.07);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}
.navbar { min-height: 74px; }
.navbar .nav-link {
    color: var(--bp-ink);
    font-weight: 600;
    font-size: .94rem;
    padding-inline: .8rem !important;
}
.navbar .nav-link:hover,
.navbar .nav-link:focus { color: var(--bp-green-dark); }

.bp-brand {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    color: var(--bp-ink);
    font-weight: 700;
    letter-spacing: -.025em;
    font-size: 1.22rem;
}
.bp-brand:hover { color: var(--bp-ink); }
.bp-brand-mark {
    width: 2rem;
    height: 2rem;
    border-radius: .4rem;
    display: inline-grid;
    place-items: center;
    background: transparent;
    color: var(--bp-ink);
    overflow: hidden;
}

.bp-btn {
    border-radius: .8rem;
    font-weight: 700;
    padding-inline: 1.15rem;
    box-shadow: none !important;
}
.btn-lg.bp-btn { padding: .85rem 1.25rem; }
.btn-dark { background: var(--bp-ink); border-color: var(--bp-ink); }
.btn-dark:hover { background: #000; border-color: #000; }
.bp-login { color: var(--bp-ink); font-weight: 700; }

.dropdown-menu {
    border: 1px solid rgba(23,24,27,.08);
    border-radius: 1rem;
    box-shadow: 0 20px 60px rgba(24, 27, 32, .14);
}
.bp-mega-menu { min-width: 28rem; }
.bp-feature-menu { min-width: 36rem; }
.bp-menu-item {
    display: flex;
    align-items: center;
    gap: .75rem;
    border-radius: .7rem;
    padding: .7rem;
    font-weight: 600;
}
.bp-menu-item:hover { background: var(--bp-cream-2); }
.bp-menu-icon {
    width: 2rem;
    height: 2rem;
    display: inline-grid;
    place-items: center;
    border-radius: .6rem;
    background: var(--bp-cream);
    color: var(--bp-green-dark);
}

.bp-hero {
    background:
        radial-gradient(circle at 72% 18%, rgba(25,164,99,.10), transparent 26rem),
        linear-gradient(180deg, var(--bp-cream) 0%, #fff 92%);
}
.bp-hero .container-xl { z-index: 2; }
.bp-hero-copy { color: #565b66; max-width: 42rem; }
.bp-highlight {
    position: relative;
    display: inline-block;
    z-index: 0;
}
.bp-highlight::after {
    content: "";
    position: absolute;
    left: -.05em;
    right: -.05em;
    bottom: .08em;
    height: .2em;
    background: var(--bp-orange);
    z-index: -1;
    border-radius: 99px;
    transform: rotate(-1.5deg);
}
.bp-pill {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    padding: .5rem .75rem;
    color: var(--bp-ink);
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(23,24,27,.09);
    border-radius: 999px;
    text-decoration: none;
    font-size: .9rem;
    font-weight: 700;
}
.bp-pill-dot { width: .5rem; height: .5rem; border-radius: 50%; background: var(--bp-green); }

.bp-hero-visual {
    position: relative;
    border: 1px solid rgba(23,24,27,.1);
    border-radius: 1.45rem;
    background: #fff;
    box-shadow: var(--bp-shadow);
    padding: 2.7rem .75rem .75rem;
    transform: rotate(.7deg);
}
.bp-hero-visual > img { border-radius: .85rem; width: 100%; }
.bp-browser-bar {
    position: absolute;
    inset: .55rem .8rem auto .8rem;
    height: 1.6rem;
    display: flex;
    align-items: center;
    gap: .35rem;
}
.bp-browser-bar > span { width: .5rem; height: .5rem; border-radius: 50%; background: #d7d8dc; }
.bp-browser-address {
    margin-left: .45rem;
    flex: 1;
    max-width: 16rem;
    background: #f1f2f4;
    border-radius: .45rem;
    color: #9a9da5;
    padding: .2rem .55rem;
    font-size: .62rem;
}
.bp-float-card {
    position: absolute;
    align-items: center;
    gap: .7rem;
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(23,24,27,.08);
    border-radius: .9rem;
    box-shadow: 0 16px 40px rgba(23,24,27,.13);
    padding: .7rem .85rem;
    min-width: 13.5rem;
}
.bp-float-card small, .bp-float-card strong { display: block; line-height: 1.25; }
.bp-float-card small { color: var(--bp-muted); font-size: .68rem; }
.bp-float-card strong { font-size: .82rem; margin-top: .15rem; }
.bp-float-card-one { left: -2rem; bottom: 3rem; }
.bp-float-card-two { right: -1.75rem; top: 5rem; }
.bp-float-icon {
    width: 2rem; height: 2rem; border-radius: .65rem; display: grid; place-items: center;
    background: rgba(25,164,99,.12); color: var(--bp-green-dark);
}
.bp-float-icon.orange { background: rgba(245,157,42,.15); color: #b66c07; }
.bp-orb { position: absolute; border-radius: 999px; filter: blur(4px); opacity: .7; }
.bp-orb-one { width: 16rem; height: 16rem; background: rgba(245,157,42,.12); left: -8rem; top: 10rem; }
.bp-orb-two { width: 14rem; height: 14rem; background: rgba(25,164,99,.10); right: -6rem; bottom: 4rem; }

.bp-proof-strip {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: #fff;
    border: 1px solid var(--bp-line);
    border-radius: 1.15rem;
    overflow: hidden;
    box-shadow: 0 12px 40px rgba(23,24,27,.05);
}
.bp-proof-strip > div { padding: 1.15rem 1.25rem; border-right: 1px solid var(--bp-line); }
.bp-proof-strip > div:last-child { border-right: 0; }
.bp-proof-strip strong { display: block; font-size: 1.25rem; letter-spacing: -.03em; }
.bp-proof-strip span { display: block; color: var(--bp-muted); font-size: .8rem; margin-top: .15rem; }

.bp-eyebrow {
    display: block;
    margin-bottom: .8rem;
    color: var(--bp-green-dark);
    text-transform: uppercase;
    letter-spacing: .09em;
    font-size: .78rem;
    font-weight: 800;
}
.bp-section-heading { max-width: 48rem; }
.bp-section-soft { background: var(--bp-cream-2); }
.bp-journey-section {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 18%, rgba(245,157,42,.10), transparent 18rem),
        radial-gradient(circle at 91% 72%, rgba(25,164,99,.10), transparent 20rem),
        linear-gradient(180deg, #fff 0%, #fffcf7 100%);
}
.bp-journey-section::before {
    content: "";
    position: absolute;
    width: 17rem;
    height: 17rem;
    left: -8rem;
    bottom: -9rem;
    border: 1px solid rgba(245,157,42,.16);
    border-radius: 50%;
}
.bp-journey-section .container-xl { position: relative; z-index: 1; }

.bp-workflow {
    --workflow-orange: #f59d2a;
    --workflow-yellow: #d9aa24;
    --workflow-green: #19a463;
    --workflow-blue: #4389d6;
    --workflow-purple: #7b67c8;
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1rem;
    padding: 1.35rem 0 .75rem;
}
.bp-workflow-track {
    position: absolute;
    z-index: 0;
    top: 3.72rem;
    left: 7%;
    right: 7%;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg,
        var(--workflow-orange) 0%,
        #efbd38 24%,
        var(--workflow-green) 49%,
        var(--workflow-blue) 74%,
        var(--workflow-purple) 100%);
    box-shadow: 0 2px 8px rgba(23,24,27,.08);
}
.bp-workflow-step {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 13.5rem;
    padding: 1.15rem;
    overflow: hidden;
    border: 1px solid rgba(23,24,27,.08);
    border-radius: 1.2rem;
    background: #fff;
    box-shadow: 0 14px 34px rgba(23,24,27,.07);
    transition: transform .2s ease, box-shadow .2s ease;
}
.bp-workflow-step::after {
    content: "";
    position: absolute;
    width: 8rem;
    height: 8rem;
    right: -4rem;
    bottom: -4.8rem;
    border-radius: 50%;
    background: var(--step-accent);
    opacity: .11;
}
.bp-workflow-step:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 44px rgba(23,24,27,.10);
}
.bp-workflow-step-enquiry { --step-accent: var(--workflow-orange); --step-shadow: rgba(245,157,42,.24); --step-chip-bg: #fff2df; --step-chip-border: #f6d5a7; --step-chip-text: #a65a00; background: linear-gradient(155deg, #fff 42%, #fff6e9 100%); }
.bp-workflow-step-booking { --step-accent: var(--workflow-yellow); --step-shadow: rgba(217,170,36,.22); --step-chip-bg: #fff8d9; --step-chip-border: #eadb97; --step-chip-text: #7b6200; background: linear-gradient(155deg, #fff 42%, #fff9df 100%); }
.bp-workflow-step-team { --step-accent: var(--workflow-green); --step-shadow: rgba(25,164,99,.22); --step-chip-bg: #e8f7ef; --step-chip-border: #b8e2ca; --step-chip-text: #0d7546; background: linear-gradient(155deg, #fff 42%, #eaf8f1 100%); }
.bp-workflow-step-money { --step-accent: var(--workflow-blue); --step-shadow: rgba(67,137,214,.22); --step-chip-bg: #eaf3fd; --step-chip-border: #bfd7f1; --step-chip-text: #2769ad; background: linear-gradient(155deg, #fff 42%, #edf5ff 100%); }
.bp-workflow-step-gig { --step-accent: var(--workflow-purple); --step-shadow: rgba(123,103,200,.22); --step-chip-bg: #f0edfd; --step-chip-border: #d3caf5; --step-chip-text: #5c49aa; background: linear-gradient(155deg, #fff 42%, #f2efff 100%); }
.bp-workflow-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: 1.05rem;
}
.bp-workflow-icon {
    position: relative;
    display: grid;
    place-items: center;
    width: 3.2rem;
    height: 3.2rem;
    flex: 0 0 auto;
    border: 6px solid #fff;
    border-radius: 1rem;
    color: #fff;
    background: var(--step-accent);
    box-shadow: 0 8px 20px var(--step-shadow);
    font-size: 1.1rem;
}
.bp-workflow-number {
    color: var(--step-accent);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .08em;
}
.bp-workflow-step strong,
.bp-workflow-step small { display: block; }
.bp-workflow-step strong {
    margin-bottom: .45rem;
    color: var(--bp-ink);
    font-size: 1.03rem;
    letter-spacing: -.02em;
}
.bp-workflow-step small {
    color: #686d77;
    line-height: 1.45;
}
.bp-workflow-chip {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: .35rem;
    margin-top: auto;
    padding: .38rem .58rem;
    border: 1px solid var(--step-chip-border);
    border-radius: 999px;
    color: var(--step-chip-text);
    background: var(--step-chip-bg);
    font-size: .7rem;
    font-weight: 800;
}
.bp-workflow-outcome {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem;
    padding: 1.15rem 1.25rem;
    border: 1px solid rgba(13,125,73,.16);
    border-radius: 1.2rem;
    background:
        radial-gradient(circle at 92% 20%, rgba(245,157,42,.14), transparent 12rem),
        linear-gradient(100deg, rgba(25,164,99,.09), rgba(255,255,255,.96) 46%);
}
.bp-workflow-outcome-icon {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border-radius: .9rem;
    color: #fff;
    background: linear-gradient(135deg, var(--bp-green), #53bf86);
    box-shadow: 0 10px 26px rgba(25,164,99,.20);
    font-size: 1.25rem;
}
.bp-workflow-outcome-copy strong,
.bp-workflow-outcome-copy span { display: block; }
.bp-workflow-outcome-copy strong { margin-bottom: .15rem; font-size: 1rem; }
.bp-workflow-outcome-copy span { color: #616672; font-size: .86rem; }
.bp-workflow-outcome-tags { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .4rem; }
.bp-workflow-outcome-tags span {
    padding: .35rem .55rem;
    border: 1px solid rgba(23,24,27,.08);
    border-radius: 999px;
    background: rgba(255,255,255,.75);
    color: #5d626c;
    font-size: .68rem;
    font-weight: 800;
}

.bp-card {
    padding: 1.6rem;
    background: #fff;
    border: 1px solid var(--bp-line);
    border-radius: var(--bp-radius);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.bp-card:hover { transform: translateY(-4px); box-shadow: 0 18px 46px rgba(23,24,27,.08); border-color: #ddd7cd; }
.bp-icon {
    width: 3rem; height: 3rem; display: grid; place-items: center; border-radius: .9rem;
    background: linear-gradient(135deg, rgba(25,164,99,.14), rgba(245,157,42,.12));
    color: var(--bp-green-dark); font-size: 1.25rem;
}
.bp-arrow-link { color: var(--bp-ink); font-weight: 800; text-decoration: none; }
.bp-arrow-link i { transition: transform .15s ease; }
.bp-arrow-link:hover i { transform: translateX(4px); }

.bp-media-card {
    padding: .8rem;
    border-radius: var(--bp-radius);
    background: var(--bp-cream-2);
    border: 1px solid var(--bp-line);
    box-shadow: 0 18px 50px rgba(23,24,27,.06);
}
.bp-media-card img { width: 100%; border-radius: 1rem; }
.bp-check-list { list-style: none; padding: 0; }
.bp-check-list li { display: flex; gap: .7rem; margin-bottom: .75rem; color: #42464f; }
.bp-check-list i { color: var(--bp-green-dark); font-weight: 900; }

.bp-dark-section { background: var(--bp-ink); }
.bp-audience-card {
    display: flex;
    align-items: center;
    gap: .7rem;
    min-height: 4.6rem;
    padding: .95rem;
    color: #fff;
    text-decoration: none;
    border: 1px solid rgba(255,255,255,.11);
    background: rgba(255,255,255,.05);
    border-radius: 1rem;
    font-weight: 700;
    transition: background .15s ease, transform .15s ease;
}
.bp-audience-card:hover { color: #fff; background: rgba(255,255,255,.10); transform: translateY(-2px); }

.bp-quote-card {
    padding: 1.6rem;
    border: 1px solid var(--bp-line);
    border-radius: var(--bp-radius);
    background: #fff;
}
.bp-stars { color: #e6921f; letter-spacing: .09em; font-size: .95rem; }
.bp-quote-card blockquote { font-size: 1.05rem; line-height: 1.65; }

.bp-accordion .accordion-item { border: 0; border-bottom: 1px solid var(--bp-line); background: transparent; }
.bp-accordion .accordion-button {
    background: transparent;
    color: var(--bp-ink);
    box-shadow: none;
    font-weight: 800;
    padding: 1.2rem 0;
}
.bp-accordion .accordion-body { color: var(--bp-muted); padding: 0 0 1.35rem; }

.bp-final-cta { background: var(--bp-cream-2); padding-top: 4rem; }
.bp-final-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 2.4rem;
    border-radius: 1.5rem 1.5rem 0 0;
    background:
        radial-gradient(circle at 80% 0%, rgba(25,164,99,.35), transparent 18rem),
        var(--bp-ink);
}
.site-footer { background: var(--bp-cream-2); }
.footer-intro { max-width: 25rem; }
.footer-links li + li { margin-top: .58rem; }
.footer-links a { color: #5e626c; text-decoration: none; font-size: .9rem; }
.footer-links a:hover { color: var(--bp-ink); }
.bp-social {
    width: 2.2rem; height: 2.2rem; display: grid; place-items: center; border-radius: .7rem;
    border: 1px solid var(--bp-line); color: var(--bp-ink); background: #fff; text-decoration: none;
}
.bp-social:hover { background: var(--bp-ink); color: #fff; }

@media (min-width: 992px) {
    .py-lg-7 { padding-top: 6.5rem !important; padding-bottom: 6.5rem !important; }
    .navbar .dropdown:hover > .dropdown-menu { display: block; margin-top: 0; }
}

@media (max-width: 991.98px) {
    .navbar-collapse { max-height: calc(100vh - 74px); overflow-y: auto; }
    .bp-mega-menu, .bp-feature-menu { min-width: 0; width: 100%; border: 0; box-shadow: none; background: var(--bp-cream-2); }
    .bp-hero-visual { transform: none; }
    .bp-workflow { grid-template-columns: 1fr 1fr; gap: .85rem; padding-left: 1.4rem; }
    .bp-workflow-track {
        top: 2rem;
        bottom: 2rem;
        left: .45rem;
        right: auto;
        width: 4px;
        height: auto;
        background: linear-gradient(180deg, var(--workflow-orange), var(--workflow-green), var(--workflow-purple));
    }
    .bp-workflow-outcome { grid-template-columns: auto 1fr; }
    .bp-workflow-outcome-tags { grid-column: 2; justify-content: flex-start; }
    .bp-proof-strip { grid-template-columns: 1fr 1fr; }
    .bp-proof-strip > div:nth-child(2) { border-right: 0; }
    .bp-proof-strip > div:nth-child(-n+2) { border-bottom: 1px solid var(--bp-line); }
    .bp-final-cta-inner { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 575.98px) {
    h1.display-3 { font-size: clamp(2.55rem, 13vw, 3.4rem); }
    .display-5 { font-size: 2.15rem; }
    .bp-workflow { grid-template-columns: 1fr; }
    .bp-workflow-step { min-height: 0; }
    .bp-workflow-outcome { grid-template-columns: auto 1fr; align-items: start; }
    .bp-workflow-outcome-tags { grid-column: 1 / -1; justify-content: flex-start; padding-left: 0; }
    .bp-proof-strip { grid-template-columns: 1fr; }
    .bp-proof-strip > div { border-right: 0; border-bottom: 1px solid var(--bp-line); }
    .bp-proof-strip > div:last-child { border-bottom: 0; }
    .bp-final-cta-inner { padding: 1.6rem; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition: none !important; animation: none !important; }
}


/* --- Shared page system: solutions, features, pricing, articles and knowledge base --- */
.bp-brand-mark img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.bp-solutions-section {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 92% 12%, rgba(25,164,99,.10), transparent 22rem),
        linear-gradient(180deg, #fff 0%, var(--bp-cream-2) 100%);
}
.bp-solution-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}
.bp-solution-tile {
    --solution-accent: var(--bp-green);
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: start;
    gap: 1rem;
    min-height: 13.2rem;
    padding: 1.35rem;
    overflow: hidden;
    border: 1px solid rgba(23,24,27,.08);
    border-radius: 1.3rem;
    color: var(--bp-ink);
    text-decoration: none;
    background: #fff;
    box-shadow: 0 14px 36px rgba(23,24,27,.055);
    transition: transform .2s ease, box-shadow .2s ease;
}
.bp-solution-tile::after {
    content: "";
    position: absolute;
    width: 10rem;
    height: 10rem;
    right: -5rem;
    bottom: -5rem;
    border-radius: 50%;
    background: var(--solution-accent);
    opacity: .10;
}
.bp-solution-tile:hover {
    color: var(--bp-ink);
    transform: translateY(-4px);
    box-shadow: 0 22px 50px rgba(23,24,27,.09);
}
.bp-solution-solo { --solution-accent: #f59d2a; background: linear-gradient(150deg,#fff 55%,#fff6e8); }
.bp-solution-band { --solution-accent: #19a463; background: linear-gradient(150deg,#fff 55%,#ecf9f2); }
.bp-solution-agency { --solution-accent: #4389d6; background: linear-gradient(150deg,#fff 55%,#edf5ff); }
.bp-solution-entertainment { --solution-accent: #7b67c8; background: linear-gradient(150deg,#fff 55%,#f3f0ff); }
.bp-solution-icon {
    width: 3rem; height: 3rem; display: grid; place-items: center; flex: 0 0 auto;
    border-radius: .9rem; background: var(--solution-accent); color: #fff; font-size: 1.15rem;
    box-shadow: 0 10px 24px color-mix(in srgb, var(--solution-accent) 24%, transparent);
}
.bp-solution-kicker { display:block; color:#777c86; font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; margin:.1rem 0 .4rem; }
.bp-solution-tile h3 { margin:0 0 .45rem; font-size:1.12rem; font-weight:900; letter-spacing:-.025em; }
.bp-solution-tile p { margin:0; color:#666b75; font-size:.88rem; line-height:1.55; }
.bp-solution-arrow { position:relative; z-index:2; display:grid; place-items:center; width:2rem; height:2rem; border:1px solid rgba(23,24,27,.10); border-radius:50%; background:rgba(255,255,255,.75); }
.bp-solution-links { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem 1rem; color:#777c86; font-size:.82rem; }
.bp-solution-links span { font-weight:800; }
.bp-solution-links a { color:var(--bp-ink); font-weight:800; text-decoration:none; border-bottom:1px solid #ccc5ba; }

.bp-page-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 18%, rgba(25,164,99,.11), transparent 23rem),
        linear-gradient(180deg, var(--bp-cream) 0%, #fff 96%);
}
.bp-page-hero.bp-page-hero-feature {
    background: radial-gradient(circle at 20% 15%, rgba(67,137,214,.11), transparent 22rem), linear-gradient(180deg,#f4f8fd 0%,#fff 96%);
}
.bp-page-hero.bp-page-hero-pricing {
    background: radial-gradient(circle at 80% 14%, rgba(245,157,42,.13), transparent 22rem), linear-gradient(180deg,#fbf4e8 0%,#fff 96%);
}
.bp-page-title { max-width: 58rem; }
.bp-page-title .display-2 { letter-spacing: -.055em; }
.bp-breadcrumb { --bs-breadcrumb-divider: '›'; margin-bottom:1.4rem; font-size:.82rem; }
.bp-breadcrumb a { color:#6e737d; text-decoration:none; }
.bp-breadcrumb .active { color:var(--bp-ink); font-weight:700; }
.bp-hero-badge { display:inline-flex; align-items:center; gap:.5rem; padding:.45rem .7rem; border:1px solid rgba(23,24,27,.09); border-radius:999px; background:rgba(255,255,255,.72); font-size:.82rem; font-weight:800; }
.bp-product-shot { position:relative; padding:.8rem; border:1px solid rgba(23,24,27,.09); border-radius:1.4rem; background:#fff; box-shadow:var(--bp-shadow); }
.bp-product-shot img { width:100%; border-radius:.9rem; }
.bp-mini-proof { display:flex; flex-wrap:wrap; gap:.65rem 1rem; color:#666b75; font-size:.82rem; font-weight:700; }
.bp-mini-proof i { color:var(--bp-green-dark); }

.bp-value-band { border-top:1px solid var(--bp-line); border-bottom:1px solid var(--bp-line); background:#fff; }
.bp-value-stat { padding:1.25rem 0; }
.bp-value-stat strong { display:block !important; font-size:1.55rem; font-weight:900; letter-spacing:-.04em; }
.bp-value-stat span { color:var(--bp-muted); font-size:.84rem; }

.bp-feature-row { padding: 3rem 0; }
.bp-feature-row + .bp-feature-row { border-top:1px solid var(--bp-line); }
.bp-feature-visual { position:relative; overflow:hidden; min-height:23rem; border:1px solid var(--bp-line); border-radius:1.4rem; background:var(--bp-cream-2); display:grid; place-items:center; }
.bp-feature-visual img { width:100%; height:auto; }
.bp-feature-number { display:inline-grid; place-items:center; width:2.4rem; height:2.4rem; border-radius:.75rem; background:var(--bp-ink); color:#fff; font-weight:900; font-size:.78rem; }
.bp-inline-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.bp-inline-card { padding:1.2rem; border:1px solid var(--bp-line); border-radius:1.1rem; background:#fff; }
.bp-inline-card i { display:block; margin-bottom:.7rem; color:var(--bp-green-dark); font-size:1.3rem; }
.bp-inline-card strong { display:block; margin-bottom:.3rem; }
.bp-inline-card p { margin:0; color:var(--bp-muted); font-size:.86rem; }
.bp-quote-panel { padding:2rem; border-radius:1.4rem; background:var(--bp-ink); color:#fff; }
.bp-quote-panel blockquote { margin:0; font-size:clamp(1.35rem,2vw,1.8rem); line-height:1.45; font-weight:700; letter-spacing:-.025em; }
.bp-quote-panel figcaption { margin-top:1.2rem; color:rgba(255,255,255,.62); font-size:.85rem; }

.bp-pricing-toolbar { display:flex; justify-content:center; margin-bottom:2rem; }
.bp-billing-toggle { display:inline-flex; padding:.3rem; border:1px solid var(--bp-line); border-radius:999px; background:#fff; box-shadow:0 8px 24px rgba(23,24,27,.05); }
.bp-billing-toggle button { border:0; border-radius:999px; background:transparent; padding:.55rem .95rem; font-weight:800; color:#747983; }
.bp-billing-toggle button.active { background:var(--bp-ink); color:#fff; }
.bp-pricing-card { position:relative; height:100%; padding:1.6rem; border:1px solid var(--bp-line); border-radius:1.35rem; background:#fff; box-shadow:0 14px 40px rgba(23,24,27,.055); }
.bp-pricing-card.popular { border-color:rgba(25,164,99,.35); box-shadow:0 20px 55px rgba(25,164,99,.10); transform:translateY(-8px); }
.bp-pricing-ribbon { position:absolute; top:1rem; right:1rem; padding:.38rem .62rem; border-radius:999px; background:#e7f7ef; color:var(--bp-green-dark); font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.bp-price { display:flex; align-items:flex-end; gap:.35rem; margin:1.15rem 0; }
.bp-price strong { font-size:2.7rem; line-height:1; letter-spacing:-.06em; }
.bp-price span { padding-bottom:.25rem; padding-left:.25rem; }
.bp-plan-list { list-style:none; padding:0; margin:1.25rem 0 1.5rem; }
.bp-plan-list li { display:flex; gap:.55rem; margin:.65rem 0; color:#555b65; font-size:.9rem; }
.bp-plan-list i { color:var(--bp-green-dark); }
.bp-comparison-wrap { overflow:hidden; border:1px solid var(--bp-line); border-radius:1.25rem; background:#fff; }
.bp-comparison-table { margin:0; min-width:760px; }
.bp-comparison-table th, .bp-comparison-table td { padding:.9rem 1rem; vertical-align:middle; }
.bp-comparison-table thead th { background:var(--bp-cream-2); border-bottom:1px solid var(--bp-line); }
.bp-comparison-table .bp-table-section td { background:#f8f5ef; font-weight:900; color:var(--bp-ink); }
.bp-check { color:var(--bp-green-dark); font-weight:900; }
.bp-cross { color:#b0b3ba; }

.bp-article-hero { padding:4.5rem 0 3rem; background:linear-gradient(180deg,var(--bp-cream-2),#fff); border-bottom:1px solid var(--bp-line); }
.bp-article-shell { display:grid; grid-template-columns:minmax(0,1fr) 17rem; gap:4rem; align-items:start; }
.bp-article-content { max-width:49rem; }
.bp-article-content > :first-child { margin-top:0; }
.bp-article-content h2 { margin-top:2.4rem; margin-bottom:.8rem; font-size:1.75rem; font-weight:900; letter-spacing:-.035em; }
.bp-article-content h3 { margin-top:1.8rem; margin-bottom:.7rem; font-size:1.25rem; font-weight:900; }
.bp-article-content p, .bp-article-content li { color:#4f5560; line-height:1.8; }
.bp-article-content a { font-weight:800; }
.bp-article-meta { display:flex; flex-wrap:wrap; gap:.6rem 1.2rem; color:#717680; font-size:.85rem; }
.bp-article-meta strong { color:var(--bp-ink); }
.bp-article-side { position:sticky; top:6.5rem; }
.bp-toc { padding:1.15rem; border:1px solid var(--bp-line); border-radius:1rem; background:var(--bp-cream-2); }
.bp-toc strong { display:block; margin-bottom:.65rem; }
.bp-toc a { display:block; padding:.36rem 0; color:#666b75; text-decoration:none; font-size:.82rem; }
.bp-toc a:hover { color:var(--bp-ink); }
.bp-support-note { padding:1rem 1.1rem; border-left:4px solid var(--bp-green); border-radius:.25rem .8rem .8rem .25rem; background:#edf8f2; color:#3f5d4d; }
.bp-helpful { display:flex; flex-wrap:wrap; align-items:center; gap:.7rem; margin-top:2.5rem; padding:1rem 1.15rem; border:1px solid var(--bp-line); border-radius:1rem; background:#fff; }
.bp-helpful .btn { min-width:4.5rem; }
.bp-related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.bp-related-card { display:block; height:100%; padding:1.2rem; border:1px solid var(--bp-line); border-radius:1rem; text-decoration:none; background:#fff; color:var(--bp-ink); }
.bp-related-card small { color:var(--bp-muted); }

.bp-kb-hero { padding:4.5rem 0 3.5rem; background:radial-gradient(circle at 80% 10%,rgba(67,137,214,.12),transparent 22rem),linear-gradient(180deg,#f3f7fc,#fff); }
.bp-search-box { display:flex; align-items:center; gap:.75rem; max-width:46rem; padding:.42rem .5rem .42rem 1rem; border:1px solid rgba(23,24,27,.10); border-radius:1rem; background:#fff; box-shadow:0 18px 50px rgba(23,24,27,.08); }
.bp-search-box i { color:#777c86; }
.bp-search-box input { min-width:0; flex:1; border:0; outline:0; padding:.7rem 0; font:inherit; }
.bp-kb-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.bp-kb-card { display:flex; flex-direction:column; min-height:13rem; padding:1.3rem; border:1px solid var(--bp-line); border-radius:1.2rem; background:#fff; color:var(--bp-ink); text-decoration:none; transition:transform .2s ease, box-shadow .2s ease; }
.bp-kb-card:hover { color:var(--bp-ink); transform:translateY(-3px); box-shadow:0 16px 40px rgba(23,24,27,.07); }
.bp-kb-card-icon { width:2.7rem; height:2.7rem; display:grid; place-items:center; border-radius:.8rem; margin-bottom:1rem; background:var(--bp-cream); color:var(--bp-green-dark); }
.bp-kb-card h2 { font-size:1.05rem; font-weight:900; margin-bottom:.4rem; }
.bp-kb-card p { color:var(--bp-muted); font-size:.85rem; line-height:1.55; margin-bottom:1rem; }
.bp-kb-card span { margin-top:auto; color:var(--bp-ink); font-size:.75rem; font-weight:900; }
.bp-kb-help { padding:1.5rem; border-radius:1.2rem; background:var(--bp-ink); color:#fff; }

@media (max-width: 991.98px) {
    .bp-solution-grid { grid-template-columns:1fr 1fr; }
    .bp-inline-cards { grid-template-columns:1fr; }
    .bp-pricing-card.popular { transform:none; }
    .bp-article-shell { grid-template-columns:1fr; gap:2rem; }
    .bp-article-side { position:static; }
    .bp-kb-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 767.98px) {
    .bp-solution-grid { grid-template-columns:1fr; }
    .bp-solution-tile { min-height:0; }
    .bp-related-grid { grid-template-columns:1fr; }
    .bp-kb-grid { grid-template-columns:1fr; }
    .bp-page-title .display-2 { font-size:clamp(2.45rem,13vw,3.5rem); }
}


/* v3 migration templates */
.bp-final-cta { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:2rem; border-radius:1.4rem; background:var(--bp-ink); color:#fff; }
.bp-article-content.mx-auto { margin-left:auto; margin-right:auto; }
.bp-article-content blockquote { padding:1rem 1.25rem; border-left:4px solid var(--bp-green); background:var(--bp-cream-2); border-radius:.75rem; }
.bp-article-content table { width:100%; margin:1.5rem 0; border-collapse:collapse; }
.bp-article-content th,.bp-article-content td { padding:.75rem; border:1px solid var(--bp-line); vertical-align:top; }
@media (max-width: 767.98px) { .bp-final-cta { align-items:flex-start; flex-direction:column; } }

.bp-changelog-timeline {
    position: relative;
    padding-left: 34px;
}

.bp-changelog-timeline::before {
    content: "";
    position: absolute;
    left: 9px;
    top: 10px;
    bottom: 0;
    width: 2px;
    background: var(--bs-border-color);
}

.bp-changelog-date {
    position: relative;
    margin: 3rem 0 1.25rem;
}

.bp-changelog-date:first-child {
    margin-top: 0;
}

.bp-changelog-dot {
    position: absolute;
    left: -34px;
    top: 3px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--bs-body-bg);
    border: 5px solid var(--bs-primary);
    z-index: 2;
}

.bp-changelog-item {
    position: relative;
    padding: 0 0 2rem 0;
}

.bp-changelog-item-dot {
    position: absolute;
    left: -29px;
    top: 9px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--bs-border-color);
    z-index: 2;
}

.bp-changelog-body {
    max-width: 760px;
}

.bp-changelog-body p:last-child {
    margin-bottom: 0;
}

.bp-changelog-tag {
    display: inline-flex;
    align-items: center;
    padding: 0.3rem 0.65rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
    background: var(--bs-secondary-bg);
    color: var(--bs-secondary-color);
}

.bp-changelog-tag-new {
    background: rgba(25, 135, 84, 0.12);
    color: #198754;
}

.bp-changelog-tag-improvement {
    background: rgba(13, 110, 253, 0.12);
    color: #0d6efd;
}

.bp-changelog-tag-fix {
    background: rgba(220, 53, 69, 0.12);
    color: #dc3545;
}

@media (max-width: 575.98px) {
    .bp-changelog-timeline {
        padding-left: 28px;
    }

    .bp-changelog-timeline::before {
        left: 7px;
    }

    .bp-changelog-dot {
        left: -28px;
        width: 16px;
        height: 16px;
        border-width: 4px;
    }

    .bp-changelog-item-dot {
        left: -25px;
    }
}
/* =========================================================
   BAND PENCIL BLOG
   ========================================================= */


/* ---------------------------------------------------------
   Featured / latest article
   --------------------------------------------------------- */

.bp-blog-feature {
    padding-bottom: 3rem;
    border-bottom: 1px solid var(--bs-border-color);
}

.bp-blog-feature-image {
    display: block;
    width: 100%;
    height: 380px;
    object-fit: cover;
    object-position: center;
    border-radius: 1rem;
}


/* ---------------------------------------------------------
   Blog grid
   --------------------------------------------------------- */

.bp-blog-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 2rem;
}


/* ---------------------------------------------------------
   Blog card images
   --------------------------------------------------------- */

.bp-blog-card-image {
    display: block;
    width: 100%;
    height: 220px;
    overflow: hidden;
    border-radius: 1rem;
    background: var(--bs-secondary-bg);
}

.bp-blog-card-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
    border-radius: 0 !important;
    transition: transform .25s ease;
}

.bp-blog-card:hover .bp-blog-card-image img {
    transform: scale(1.025);
}


/* ---------------------------------------------------------
   Blog typography
   --------------------------------------------------------- */

.bp-blog-card h2 {
    margin-bottom: .65rem;
}

.bp-blog-card h2 a {
    color: var(--bs-body-color);
    text-decoration: none;
    transition: color .15s ease;
}

.bp-blog-card h2 a:hover {
    color: var(--bs-primary) !important;
}

.bp-blog-card p {
    line-height: 1.65;
}


/* ---------------------------------------------------------
   Category / eyebrow
   --------------------------------------------------------- */

.bp-blog-card .bp-eyebrow {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.bp-blog-card .bp-eyebrow:hover {
    text-decoration: none;
}


/* ---------------------------------------------------------
   Featured article typography
   --------------------------------------------------------- */

.bp-blog-feature h2 a {
    color: var(--bs-body-color);
    text-decoration: none;
    transition: color .15s ease;
}

.bp-blog-feature h2 a:hover {
    color: var(--bs-primary) !important;
}

.bp-blog-feature .lead {
    line-height: 1.65;
}


/* ---------------------------------------------------------
   Article metadata
   --------------------------------------------------------- */

.bp-blog-card .small,
.bp-blog-feature .small {
    font-size: .875rem;
}

.bp-blog-card .small a,
.bp-blog-feature .small a {
    transition: color .15s ease;
}

.bp-blog-card .small a:hover,
.bp-blog-feature .small a:hover {
    color: var(--bs-primary) !important;
}


/* ---------------------------------------------------------
   Breadcrumb
   --------------------------------------------------------- */

.bp-article-hero .breadcrumb {
    --bs-breadcrumb-divider-color: var(--bs-secondary-color);
}

.bp-article-hero .breadcrumb-item a {
    color: var(--bs-secondary-color);
    text-decoration: none;
}

.bp-article-hero .breadcrumb-item a:hover {
    color: var(--bs-primary);
}

.bp-article-hero .breadcrumb-item.active {
    color: var(--bs-body-color);
}


/* ---------------------------------------------------------
   Empty state
   --------------------------------------------------------- */

.bp-blog-empty {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}


/* ---------------------------------------------------------
   Pagination
   --------------------------------------------------------- */

.pagination {
    gap: .35rem;
    flex-wrap: wrap;
}

.pagination .page-item {
    margin: 0;
}

.pagination .page-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    padding: .6rem .85rem;
    border: 1px solid var(--bs-border-color);
    border-radius: .65rem !important;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    font-weight: 600;
    box-shadow: none;
}

.pagination .page-link:hover {
    color: var(--bs-primary);
    background: var(--bs-secondary-bg);
    border-color: var(--bs-border-color);
}

.pagination .page-item.active .page-link {
    color: #fff;
    background: var(--bs-primary);
    border-color: var(--bs-primary);
}

.pagination .page-item.disabled .page-link {
    opacity: .5;
    pointer-events: none;
}


/* ---------------------------------------------------------
   Tablet
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-blog-feature {
        padding-bottom: 2.5rem;
    }

    .bp-blog-feature-image {
        height: 320px;
    }

    .bp-blog-card-image {
        height: 220px;
    }
}


/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 767.98px) {

    .bp-blog-feature {
        padding-bottom: 2rem;
    }

    .bp-blog-feature-image {
        height: 280px;
    }

    .bp-blog-card-image {
        height: 230px;
    }

    .bp-blog-card {
        padding-bottom: 1.5rem;
    }

    .pagination {
        gap: .25rem;
    }

    .pagination .page-link {
        min-width: 40px;
        min-height: 40px;
        padding: .5rem .7rem;
    }
}


/* ---------------------------------------------------------
   Small mobile
   --------------------------------------------------------- */

@media (max-width: 575.98px) {

    .bp-blog-feature-image {
        height: 240px;
    }

    .bp-blog-card-image {
        height: 210px;
    }

    .bp-blog-feature h2 {
        font-size: 1.75rem;
    }

    .bp-blog-card h2 {
        font-size: 1.25rem;
    }
}
/* =========================================================
   ARTICLE
   ========================================================= */

.bp-article-heading,
.bp-article-content {
    max-width: 840px;
}


/* ---------------------------------------------------------
   Breadcrumb
   --------------------------------------------------------- */

.bp-breadcrumb {
    font-size: .875rem;
}

.bp-breadcrumb a {
    color: var(--bs-secondary-color);
    text-decoration: none;
}

.bp-breadcrumb a:hover {
    color: var(--bs-primary);
}


/* ---------------------------------------------------------
   Metadata
   --------------------------------------------------------- */

.bp-article-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem;
    color: var(--bs-secondary-color);
    font-size: .9rem;
}

.bp-article-meta > span {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
}

.bp-article-author {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: var(--bs-body-color);
    font-weight: 700;
    text-decoration: none;
}

.bp-article-author:hover {
    color: var(--bs-primary);
}

.bp-article-author img {
    object-fit: cover;
}

.bp-meta-divider {
    display: block;
    width: 4px;
    height: 4px;
    padding: 0 !important;
    border-radius: 50%;
    background: var(--bs-border-color);
}


/* ---------------------------------------------------------
   Article body typography
   --------------------------------------------------------- */

.bp-article-body {
    font-size: 1.075rem;
    line-height: 1.8;
}

.bp-article-body > *:first-child {
    margin-top: 0;
}

.bp-article-body p {
    margin-bottom: 1.5rem;
}

.bp-article-body h2 {
    margin-top: 3rem;
    margin-bottom: 1rem;
    font-size: 1.75rem;
    font-weight: 800;
    line-height: 1.25;
}

.bp-article-body h3 {
    margin-top: 2.25rem;
    margin-bottom: .85rem;
    font-size: 1.4rem;
    font-weight: 800;
    line-height: 1.3;
}

.bp-article-body h4 {
    margin-top: 2rem;
    margin-bottom: .75rem;
    font-size: 1.15rem;
    font-weight: 800;
}

.bp-article-body ul,
.bp-article-body ol {
    margin-bottom: 1.5rem;
    padding-left: 1.5rem;
}

.bp-article-body li {
    margin-bottom: .5rem;
}

.bp-article-body a {
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.bp-article-body strong {
    font-weight: 800;
}


/* ---------------------------------------------------------
   Article images
   --------------------------------------------------------- */

.bp-article-body img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 2rem auto;
    border-radius: 1rem;
}


/* ---------------------------------------------------------
   Blockquotes
   --------------------------------------------------------- */

.bp-article-body blockquote {
    margin: 2rem 0;
    padding: .25rem 0 .25rem 1.5rem;
    border-left: 4px solid var(--bs-primary);
    color: var(--bs-secondary-color);
    font-size: 1.1rem;
}


/* ---------------------------------------------------------
   Code
   --------------------------------------------------------- */

.bp-article-body pre {
    margin: 2rem 0;
    padding: 1.25rem;
    overflow-x: auto;
    border-radius: .85rem;
    background: var(--bs-secondary-bg);
}

.bp-article-body code {
    font-size: .9em;
}


/* ---------------------------------------------------------
   Tables
   --------------------------------------------------------- */

.bp-table-scroll {
    width: 100%;
    margin: 2rem 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.bp-article-body table {
    min-width: 600px;
    margin-bottom: 0;
}


/* ---------------------------------------------------------
   Support plan availability
   --------------------------------------------------------- */

.bp-feature-availability {
    display: flex;
    gap: 1rem;
    margin-bottom: 2.5rem;
    padding: 1.25rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    background: var(--bs-secondary-bg);
}

.bp-feature-availability-icon {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: .75rem;
    background: var(--bs-primary);
    color: #fff;
    font-size: 1.1rem;
}


/* ---------------------------------------------------------
   Helpful
   --------------------------------------------------------- */

.bp-article-helpful {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid var(--bs-border-color);
}


/* ---------------------------------------------------------
   Blog CTA
   --------------------------------------------------------- */

.bp-article-cta {
    margin-top: 4rem;
    padding: 2rem;
    border-radius: 1.25rem;
    background: var(--bs-secondary-bg);
}


/* ---------------------------------------------------------
   Sharing
   --------------------------------------------------------- */

.bp-article-share {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--bs-border-color);
}

.bp-share-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid var(--bs-border-color);
    border-radius: 50%;
    color: var(--bs-body-color);
    text-decoration: none;
    transition:
        background-color .15s ease,
        border-color .15s ease,
        color .15s ease;
}

.bp-share-button:hover {
    color: var(--bs-primary);
    background: var(--bs-secondary-bg);
}


/* ---------------------------------------------------------
   Related articles
   --------------------------------------------------------- */

.bp-related-articles {
    border-top: 1px solid var(--bs-border-color);
}

.bp-related-card {
    display: flex;
    flex-direction: column;
}

.bp-related-image {
    display: block;
    width: 100%;
    height: 210px;
    overflow: hidden;
    border-radius: 1rem;
}

.bp-related-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .25s ease;
}

.bp-related-card:hover .bp-related-image img {
    transform: scale(1.025);
}

.bp-related-card h3 a {
    transition: color .15s ease;
}

.bp-related-card h3 a:hover {
    color: var(--bs-primary) !important;
}


/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 767.98px) {

    .bp-article-body {
        font-size: 1rem;
        line-height: 1.75;
    }

    .bp-article-body h2 {
        margin-top: 2.5rem;
        font-size: 1.5rem;
    }

    .bp-article-body h3 {
        font-size: 1.25rem;
    }

    .bp-article-meta {
        gap: .6rem;
    }

    .bp-meta-divider {
        width: 3px;
        height: 3px;
    }

    .bp-article-cta {
        padding: 1.5rem;
    }

    .bp-article-share {
        align-items: flex-start;
        flex-direction: column;
    }

    .bp-related-image {
        height: 230px;
    }
}

@media (max-width: 575.98px) {

    .bp-related-image {
        height: 210px;
    }

    .bp-feature-availability {
        padding: 1rem;
    }
}
/* =========================================================
   CONTACT PAGE
   ========================================================= */


/* ---------------------------------------------------------
   Layout
   --------------------------------------------------------- */

.bp-contact-aside {
    max-width: 420px;
}

.bp-contact-form-wrap {
    max-width: 760px;
}


/* ---------------------------------------------------------
   Support links
   --------------------------------------------------------- */

.bp-contact-links {
    border-top: 1px solid var(--bs-border-color);
}

.bp-contact-link {
    display: flex;
    align-items: center;
    gap: .9rem;
    padding: 1.15rem 0;
    border-bottom: 1px solid var(--bs-border-color);
    color: var(--bs-body-color);
    text-decoration: none;
    transition: color .15s ease;
}

.bp-contact-link:hover {
    color: var(--bs-primary);
}

.bp-contact-link-icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: .7rem;
    background: var(--bs-secondary-bg);
    color: var(--bs-primary);
    font-size: 1.05rem;
    transition:
        transform .15s ease,
        background-color .15s ease;
}

.bp-contact-link:hover .bp-contact-link-icon {
    transform: translateY(-1px);
}

.bp-contact-link-content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: .1rem;
}

.bp-contact-link-content strong {
    color: var(--bs-body-color);
    font-weight: 800;
}

.bp-contact-link-content small {
    color: var(--bs-secondary-color);
    line-height: 1.4;
}

.bp-contact-link > .bi-arrow-right {
    color: var(--bs-secondary-color);
    transition:
        color .15s ease,
        transform .15s ease;
}

.bp-contact-link:hover > .bi-arrow-right {
    color: var(--bs-primary);
    transform: translateX(3px);
}


/* ---------------------------------------------------------
   Response times
   --------------------------------------------------------- */

.bp-response-card {
    position: relative;
    display: flex;
    gap: 1rem;
    margin-top: 2rem;
    padding: 1.35rem;
    overflow: hidden;
    border: 1px solid rgba(255, 133, 51, .28);
    border-radius: 1rem;
    background:
        linear-gradient(
            135deg,
            rgba(255, 133, 51, .13) 0%,
            rgba(255, 133, 51, .05) 100%
        );
}


/*
 * Small orange decorative glow.
 */

.bp-response-card::after {
    position: absolute;
    top: -45px;
    right: -45px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: rgba(255, 133, 51, .08);
    content: "";
    pointer-events: none;
}


.bp-response-card-icon {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: .8rem;
    background: #ff8533;
    color: #fff;
    font-size: 1.15rem;
    box-shadow:
        0 6px 18px rgba(255, 133, 51, .18);
}


.bp-response-card-content {
    position: relative;
    z-index: 1;
    min-width: 0;
}


.bp-response-card-label {
    display: block;
    margin-bottom: .15rem;
    color: #c85a10;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}


.bp-response-card h3 {
    margin: 0 0 .4rem;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.3;
}


.bp-response-card p {
    margin: 0;
    color: var(--bs-secondary-color);
    font-size: .9rem;
    line-height: 1.55;
}


.bp-response-card p strong {
    color: var(--bs-body-color);
}


.bp-response-card-note {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    margin-top: .8rem;
    padding-top: .8rem;
    border-top: 1px solid rgba(255, 133, 51, .18);
    color: var(--bs-secondary-color);
    font-size: .8rem;
    line-height: 1.45;
}


.bp-response-card-note i {
    flex: 0 0 auto;
    margin-top: .1rem;
    color: #e66f20;
}


/* ---------------------------------------------------------
   Form
   --------------------------------------------------------- */

.bp-contact-form-wrap .form-label {
    margin-bottom: .5rem;
    font-size: .9rem;
}

.bp-contact-form-wrap .form-control,
.bp-contact-form-wrap .form-select {
    min-height: 52px;
    padding: .8rem 1rem;
    border: 1px solid var(--bs-border-color);
    border-radius: .8rem;
    background: var(--bs-body-bg);
    box-shadow: none;
    transition:
        border-color .15s ease,
        box-shadow .15s ease;
}

.bp-contact-form-wrap textarea.form-control {
    min-height: 190px;
    resize: vertical;
}

.bp-contact-form-wrap .form-control:hover,
.bp-contact-form-wrap .form-select:hover {
    border-color: #b9bec5;
}

.bp-contact-form-wrap .form-control:focus,
.bp-contact-form-wrap .form-select:focus {
    border-color: var(--bs-primary);
    box-shadow:
        0 0 0 .2rem rgba(255, 133, 51, .10);
}

.bp-contact-form-wrap .form-text {
    margin-top: .45rem;
    color: var(--bs-secondary-color);
}


/* ---------------------------------------------------------
   AJAX response
   --------------------------------------------------------- */

.bp-form-message {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    padding: 1rem 1.1rem;
    border-radius: .8rem;
    font-size: .925rem;
    line-height: 1.5;
}

.bp-form-message > i {
    flex: 0 0 auto;
    margin-top: .15rem;
}

.bp-form-message-success {
    border: 1px solid rgba(25, 135, 84, .15);
    background: rgba(25, 135, 84, .08);
    color: #146c43;
}

.bp-form-message-error {
    border: 1px solid rgba(220, 53, 69, .15);
    background: rgba(220, 53, 69, .08);
    color: #b02a37;
}


/* ---------------------------------------------------------
   Desktop
   --------------------------------------------------------- */

@media (min-width: 992px) {

    .bp-contact-form-wrap {
        padding-left: 3rem;
        border-left: 1px solid var(--bs-border-color);
    }

}


/* ---------------------------------------------------------
   Tablet
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-contact-aside {
        max-width: none;
    }

    .bp-contact-form-wrap {
        max-width: none;
        padding-top: 1rem;
    }

}


/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 575.98px) {

    .bp-contact-form-wrap .btn-lg {
        width: 100%;
    }

    .bp-response-card {
        padding: 1.15rem;
    }

    .bp-response-card-icon {
        width: 42px;
        height: 42px;
    }

}
/* =========================================================
   KNOWLEDGE BASE
   ========================================================= */


/* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */

.bp-kb-hero {
    padding: 4.5rem 0 3rem;
    background:
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-kb-hero-content {
    width: 100%;
    max-width: 1100px;
}

.bp-kb-hero-content .lead {
    max-width: 850px;
}


/* ---------------------------------------------------------
   Search
   --------------------------------------------------------- */

.bp-kb-search-wrap {
    width: 100%;
    max-width: 950px;
    margin-top: 2rem;
}

.bp-kb-search {
    position: relative;
}

.bp-kb-search > .bi-search {
    position: absolute;
    top: 50%;
    left: 1.25rem;
    z-index: 2;
    color: var(--bs-secondary-color);
    font-size: 1.15rem;
    transform: translateY(-50%);
    pointer-events: none;
}

.bp-kb-search .form-control {
    width: 100%;
    height: 64px;
    padding: .9rem 3.5rem .9rem 3.3rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;

    background: var(--bs-body-bg);
    color: var(--bs-body-color);

    font-size: 1.05rem;

    box-shadow:
        0 12px 35px rgba(0, 0, 0, .055);

    transition:
        border-color .15s ease,
        box-shadow .15s ease,
        background-color .15s ease;
}

.bp-kb-search .form-control::placeholder {
    color: var(--bs-secondary-color);
    opacity: .8;
}

.bp-kb-search .form-control:hover {
    border-color: #b8bcc2;
}

.bp-kb-search .form-control:focus {
    border-color: #ff8533;
    outline: 0;

    box-shadow:
        0 0 0 .2rem rgba(255, 133, 51, .10),
        0 14px 40px rgba(0, 0, 0, .06);
}


/* Search clear button */

.bp-kb-search-clear {
    position: absolute;
    top: 50%;
    right: .85rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;
    padding: 0;

    border: 0;
    border-radius: 50%;

    background: transparent;
    color: var(--bs-secondary-color);

    transform: translateY(-50%);

    transition:
        background-color .15s ease,
        color .15s ease;
}

.bp-kb-search-clear:hover {
    background: var(--bs-secondary-bg);
    color: var(--bs-body-color);
}


/* Search status */

.bp-kb-search-status {
    min-height: 1.3rem;
    margin-top: .7rem;

    color: var(--bs-secondary-color);

    font-size: .85rem;
}

.bp-kb-searching {
    display: inline-flex;
    align-items: center;
}


/* ---------------------------------------------------------
   Main Knowledge Base content
   --------------------------------------------------------- */

.bp-kb-content {
    padding: 2rem 0 5rem;
}


/* ---------------------------------------------------------
   Section headings
   --------------------------------------------------------- */

.bp-kb-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 2rem;

    margin-bottom: 1.75rem;
}

.bp-kb-section-heading .bp-eyebrow {
    margin-bottom: .25rem;
}

.bp-kb-section-heading h2 {
    margin-top: .35rem !important;
}


/* ---------------------------------------------------------
   Category cards
   --------------------------------------------------------- */

.bp-kb-category {
    display: flex;

    gap: 1.1rem;

    height: 100%;
    padding: 1.4rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;

    background: var(--bs-body-bg);
    color: var(--bs-body-color);

    text-decoration: none;

    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.bp-kb-category:hover {
    color: var(--bs-body-color);

    border-color: rgba(255, 133, 51, .45);

    transform: translateY(-2px);

    box-shadow:
        0 10px 30px rgba(0, 0, 0, .05);
}


/* Category icon */

.bp-kb-category-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;

    border-radius: .85rem;

    background: rgba(255, 133, 51, .10);
    color: #ff8533;

    font-size: 1.25rem;
}


/* Category content */

.bp-kb-category-main {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
}

.bp-kb-category-main > strong {
    margin-bottom: .35rem;

    color: var(--bs-body-color);

    font-size: 1.05rem;
    font-weight: 800;
}

.bp-kb-category-main > small {
    flex: 1;

    color: var(--bs-secondary-color);

    font-size: .875rem;
    line-height: 1.5;
}


/* Category footer */

.bp-kb-category-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 1rem;

    margin-top: 1rem;
}

.bp-kb-category-count {
    display: inline-flex;
    align-items: center;

    padding: .3rem .6rem;

    border-radius: 999px;

    background: var(--bs-secondary-bg);
    color: var(--bs-secondary-color);

    font-size: .72rem;
    font-weight: 800;
    white-space: nowrap;
}

.bp-kb-category-open {
    display: inline-flex;
    align-items: center;

    gap: .4rem;

    color: #ff8533;

    font-size: .78rem;
    font-weight: 800;

    white-space: nowrap;
}

.bp-kb-category-open i {
    transition: transform .15s ease;
}

.bp-kb-category:hover .bp-kb-category-open i {
    transform: translateX(3px);
}


/* ---------------------------------------------------------
   Article list
   --------------------------------------------------------- */

.bp-kb-article-list {
    border-top: 1px solid var(--bs-border-color);
}

.bp-kb-article {
    display: flex;
    align-items: center;

    gap: 1rem;

    padding: 1.35rem .25rem;

    border-bottom: 1px solid var(--bs-border-color);

    color: var(--bs-body-color);

    text-decoration: none;

    transition:
        padding-left .15s ease,
        color .15s ease,
        background-color .15s ease;
}

.bp-kb-article:hover {
    padding-left: .5rem;

    color: #ff8533;
}


/* Article icon */

.bp-kb-article-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    border-radius: .7rem;

    background: var(--bs-secondary-bg);
    color: #ff8533;

    font-size: 1rem;
}


/* Article content */

.bp-kb-article-content {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;

    gap: .2rem;
}

.bp-kb-article-content strong {
    color: var(--bs-body-color);

    font-size: 1rem;
    font-weight: 800;

    transition: color .15s ease;
}

.bp-kb-article:hover .bp-kb-article-content strong {
    color: #ff8533;
}

.bp-kb-article-content small {
    color: var(--bs-secondary-color);

    line-height: 1.5;
}


/* Article arrow */

.bp-kb-article-arrow {
    flex: 0 0 auto;

    color: var(--bs-secondary-color);

    transition:
        color .15s ease,
        transform .15s ease;
}

.bp-kb-article:hover .bp-kb-article-arrow {
    color: #ff8533;

    transform: translateX(3px);
}


/* ---------------------------------------------------------
   Search results view
   --------------------------------------------------------- */

.bp-kb-search-view {
    width: 100%;
}


/*
 * Compatibility with the HTML returned by your existing
 * /search endpoint.
 */

#searchResults {
    border-top: 1px solid var(--bs-border-color);
}

#searchResults .search-div {
    position: relative;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-bottom:
        1px solid var(--bs-border-color) !important;

    border-radius: 0 !important;

    background: transparent !important;
}

#searchResults .search-clickable {
    position: relative;

    display: block !important;

    padding:
        1.3rem
        3rem
        1.3rem
        .25rem !important;

    color: var(--bs-body-color) !important;

    text-decoration: none !important;
}

#searchResults .search-clickable::after {
    position: absolute;

    top: 50%;
    right: .5rem;

    font-family: "bootstrap-icons";
    content: "\F138";

    color: var(--bs-secondary-color);

    transform: translateY(-50%);

    transition:
        transform .15s ease,
        color .15s ease;
}

#searchResults .search-clickable:hover::after {
    color: #ff8533;

    transform:
        translateY(-50%)
        translateX(3px);
}

#searchResults .search-clickable h3 {
    margin: 0 0 .35rem !important;
    padding: 0 !important;

    color: var(--bs-body-color);

    font-size: 1rem !important;
    font-weight: 800 !important;

    transition: color .15s ease;
}

#searchResults .search-clickable:hover h3 {
    color: #ff8533;
}

#searchResults .search-clickable p {
    margin: 0 !important;
    padding: 0 !important;

    color: var(--bs-secondary-color) !important;

    font-size: .9rem !important;
    line-height: 1.5 !important;
}


/* ---------------------------------------------------------
   Empty/error states
   --------------------------------------------------------- */

.bp-kb-empty {
    padding: 4rem 1rem;

    text-align: center;
}

.bp-kb-empty-icon {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 54px;
    height: 54px;

    margin-bottom: 1rem;

    border-radius: 1rem;

    background: var(--bs-secondary-bg);
    color: var(--bs-secondary-color);

    font-size: 1.4rem;
}


/* ---------------------------------------------------------
   Support CTA
   --------------------------------------------------------- */

.bp-kb-help {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 2rem;

    margin-top: 4rem;
    padding: 2rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.2rem;

    background: var(--bs-secondary-bg);
}

.bp-kb-help h2 {
    color: var(--bs-body-color) !important;
}

.bp-kb-help > div {
    max-width: 650px;
}

.bp-kb-help .btn {
    flex: 0 0 auto;
}


/* ---------------------------------------------------------
   Category view
   --------------------------------------------------------- */

.bp-kb-category-view {
    width: 100%;
}


/* ---------------------------------------------------------
   Tablet
   --------------------------------------------------------- */

@media (min-width: 992px) {

    .bp-kb-content {
        padding: 2.25rem 0 6rem;
    }

}


/* ---------------------------------------------------------
   Tablet / smaller desktop
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-kb-hero {
        padding: 3.5rem 0 2.75rem;
    }

    .bp-kb-hero-content {
        max-width: 100%;
    }

    .bp-kb-search-wrap {
        max-width: 100%;
    }

    .bp-kb-content {
        padding-top: 1.75rem;
    }

}


/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 767.98px) {

    .bp-kb-section-heading {
        align-items: flex-start;
        flex-direction: column;

        gap: 1rem;
    }

    .bp-kb-help {
        align-items: flex-start;
        flex-direction: column;

        gap: 1.5rem;
    }

    .bp-kb-help .btn {
        width: 100%;
    }

}


/* ---------------------------------------------------------
   Small mobile
   --------------------------------------------------------- */

@media (max-width: 575.98px) {

    .bp-kb-hero {
        padding: 2.75rem 0 2.25rem;
    }

    .bp-kb-search-wrap {
        margin-top: 1.5rem;
    }

    .bp-kb-search .form-control {
        height: 58px;

        padding-left: 3rem;

        font-size: 1rem;
    }

    .bp-kb-search > .bi-search {
        left: 1.1rem;

        font-size: 1rem;
    }

    .bp-kb-content {
        padding:
            1.5rem
            0
            4rem;
    }

    .bp-kb-category {
        padding: 1.2rem;
    }

    .bp-kb-category-icon {
        width: 44px;
        height: 44px;

        font-size: 1.1rem;
    }

    .bp-kb-category-footer {
        align-items: flex-start;
        flex-direction: column;

        gap: .65rem;
    }

    .bp-kb-article {
        gap: .8rem;

        padding:
            1.15rem
            .15rem;
    }

    .bp-kb-article-icon {
        width: 38px;
        height: 38px;
    }

    .bp-kb-article-content small {
        font-size: .82rem;
    }

    .bp-kb-help {
        margin-top: 3rem;
        padding: 1.5rem;
        color:;
    }
    
    .bp-kb-help h2 {
        color: var(--bs-body-color) !important;
    }

}
/* =========================================================
   FEATURE PAGE
   ========================================================= */


/* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */

.bp-feature-hero {
    padding: 4.5rem 0 2rem;
    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-feature-hero-copy {
    max-width: 920px;
    margin: 3rem auto 0;
    text-align: center;
}

.bp-feature-hero-copy h1 {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.bp-feature-hero-lead {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.65;
}

.bp-feature-hero-copy .d-flex {
    justify-content: center;
}


/* Main screenshot */

.bp-feature-hero-image {
    max-width: 1100px;
    margin: 4.5rem auto 0;
}

.bp-feature-browser {
    overflow: hidden;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    background: var(--bs-body-bg);

    box-shadow:
        0 30px 80px rgba(0, 0, 0, .10);
}

.bp-feature-browser-bar {
    display: flex;
    align-items: center;
    gap: .4rem;

    height: 42px;
    padding: 0 1rem;

    border-bottom: 1px solid var(--bs-border-color);

    background: var(--bs-secondary-bg);
}

.bp-feature-browser-bar span {
    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: #c7c9cc;
}

.bp-feature-browser img {
    display: block;

    width: 100%;
    height: auto;
}


/* ---------------------------------------------------------
   Benefits
   --------------------------------------------------------- */

.bp-feature-benefits {
    padding: 3.5rem 0;

    border-bottom: 1px solid var(--bs-border-color);
}

.bp-feature-benefit {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.bp-feature-benefit-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 44px;
    height: 44px;

    border-radius: .8rem;

    background: rgba(255, 133, 51, .10);
    color: #ff8533;

    font-size: 1.1rem;
}

.bp-feature-benefit p {
    font-size: .9rem;
    line-height: 1.55;
}


/* ---------------------------------------------------------
   Intro
   --------------------------------------------------------- */

.bp-feature-intro {
    padding: 6rem 0 3rem;
}

.bp-feature-intro .lead {
    max-width: 800px;
}


/* ---------------------------------------------------------
   Feature details
   --------------------------------------------------------- */

.bp-feature-detail {
    padding: 6rem 0;
}

.bp-feature-detail:nth-child(even) {
    background: var(--bs-secondary-bg);
}

.bp-feature-detail .lead {
    line-height: 1.65;
}


/* Product visual */

.bp-feature-visual {
    overflow: hidden;

    padding: 1.25rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    background: var(--bs-body-bg);

    box-shadow:
        0 18px 50px rgba(0, 0, 0, .07);
}

.bp-feature-visual img {
    display: block;

    width: 100%;
    height: auto;

    border-radius: .65rem;
}


/* Checks */

.bp-feature-checks {
    display: grid;
    gap: .9rem;

    margin: 2rem 0 0;
    padding: 0;

    list-style: none;
}

.bp-feature-checks li {
    display: flex;
    align-items: flex-start;
    gap: .8rem;

    color: var(--bs-body-color);

    line-height: 1.55;
}

.bp-feature-checks li > span {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 24px;
    height: 24px;

    margin-top: .05rem;

    border-radius: 50%;

    background: rgba(25, 135, 84, .10);
    color: #198754;
}


/* Optional note */

.bp-feature-note {
    display: flex;
    align-items: flex-start;
    gap: .7rem;

    margin-top: 2rem;
    padding: 1rem;

    border-radius: .8rem;

    background: var(--bs-secondary-bg);

    color: var(--bs-secondary-color);

    font-size: .9rem;
}


/* ---------------------------------------------------------
   Process
   --------------------------------------------------------- */

.bp-feature-process {
    padding: 6rem 0;

    border-top: 1px solid var(--bs-border-color);
}

.bp-feature-steps {
    border-top: 1px solid var(--bs-border-color);
}

.bp-feature-step {
    display: flex;
    gap: 1.25rem;

    padding: 1.5rem 0;

    border-bottom: 1px solid var(--bs-border-color);
}

.bp-feature-step-number {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    border-radius: 50%;

    background: #ff8533;
    color: #fff;

    font-size: .8rem;
    font-weight: 800;
}


/* ---------------------------------------------------------
   Feature callout
   --------------------------------------------------------- */

.bp-feature-callout-section {
    padding: 2rem 0 6rem;
}

.bp-feature-callout {
    display: flex;
    align-items: center;
    gap: 1.5rem;

    padding: 2rem;

    border-radius: 1.3rem;

    background:
        linear-gradient(
            135deg,
            #172332 0%,
            #233549 100%
        );

    color: #fff;
}

.bp-feature-callout-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 58px;
    height: 58px;

    border-radius: 1rem;

    background: rgba(255, 255, 255, .1);

    font-size: 1.5rem;
}

.bp-feature-callout-copy {
    flex: 1;
}

.bp-feature-callout-copy > span {
    display: block;

    margin-bottom: .25rem;

    color: #ffad76;

    font-size: .75rem;
    font-weight: 800;

    letter-spacing: .07em;

    text-transform: uppercase;
}

.bp-feature-callout-copy h2 {
    color: #fff !important;
}

.bp-feature-callout-copy p {
    max-width: 720px;

    color: rgba(255, 255, 255, .72);
}


/* ---------------------------------------------------------
   FAQs
   --------------------------------------------------------- */

.bp-feature-faq {
    padding: 6rem 0;

    background: var(--bs-secondary-bg);
}


/* ---------------------------------------------------------
   Related features
   --------------------------------------------------------- */

.bp-feature-related {
    padding: 5rem 0;
}

.bp-feature-related-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;

    margin-bottom: 2rem;
}

.bp-feature-related-links {
    border-top: 1px solid var(--bs-border-color);
}

.bp-feature-related-link {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 1rem;

    padding: 1.2rem .25rem;

    border-bottom: 1px solid var(--bs-border-color);

    color: var(--bs-body-color);

    font-weight: 700;

    text-decoration: none;
}

.bp-feature-related-link > span {
    display: inline-flex;
    align-items: center;
    gap: .75rem;
}

.bp-feature-related-link > span i {
    color: #ff8533;
}

.bp-feature-related-link:hover {
    color: #ff8533;
}

.bp-feature-related-link > .bi-arrow-right {
    transition: transform .15s ease;
}

.bp-feature-related-link:hover > .bi-arrow-right {
    transform: translateX(4px);
}


/* ---------------------------------------------------------
   Final CTA
   --------------------------------------------------------- */

.bp-feature-final-cta {
    padding: 2rem 0 6rem;
}

.bp-feature-final-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 2rem;

    padding: 2.5rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    background: var(--bs-secondary-bg);
}


/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-feature-hero {
        padding-top: 3.5rem;
    }

    .bp-feature-hero-copy {
        margin-top: 2rem;
    }

    .bp-feature-hero-image {
        margin-top: 3rem;
    }

    .bp-feature-detail {
        padding: 4.5rem 0;
    }

    .bp-feature-callout {
        align-items: flex-start;
        flex-direction: column;
    }

}

@media (max-width: 767.98px) {

    .bp-feature-hero-copy {
        text-align: left;
    }

    .bp-feature-hero-copy .d-flex {
        justify-content: flex-start;
    }

    .bp-feature-benefit {
        padding-bottom: 1rem;
    }

    .bp-feature-intro,
    .bp-feature-detail,
    .bp-feature-process,
    .bp-feature-faq {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

    .bp-feature-related-heading,
    .bp-feature-final-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .bp-feature-final-cta-inner .btn {
        width: 100%;
    }

}

@media (max-width: 575.98px) {

    .bp-feature-hero {
        padding-top: 2.5rem;
    }

    .bp-feature-hero-image {
        margin-top: 2.5rem;
    }

    .bp-feature-browser {
        border-radius: .9rem;
    }

    .bp-feature-visual {
        padding: .75rem;
    }

    .bp-feature-callout {
        padding: 1.5rem;
    }

}
/* =========================================================
   FEATURE HERO BROWSER / IFRAME
   ========================================================= */

.bp-feature-browser-bar {
    position: relative;

    display: flex;
    align-items: center;

    height: 46px;
    padding: 0 1rem;

    border-bottom: 1px solid var(--bs-border-color);

    background: var(--bs-secondary-bg);
}

.bp-feature-browser-dots {
    display: flex;
    align-items: center;
    gap: .4rem;
}

.bp-feature-browser-dots span {
    display: block;

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: #c7c9cc;
}

.bp-feature-browser-address {
    position: absolute;
    left: 50%;

    padding: .3rem .8rem;

    border: 1px solid var(--bs-border-color);
    border-radius: .4rem;

    background: var(--bs-body-bg);
    color: var(--bs-secondary-color);

    font-size: .7rem;

    transform: translateX(-50%);
}


/* iframe */

.bp-feature-hero-image {
    width: 100%;
    max-width: 1200px;
    margin: 4rem auto 0;
}

.bp-feature-browser {
    overflow: hidden;
    width: 100%;
    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .10);
}

.bp-feature-browser-bar {
    position: relative;
    display: flex;
    align-items: center;
    height: 44px;
    padding: 0 1rem;
    border-bottom: 1px solid var(--bs-border-color);
    background: var(--bs-secondary-bg);
}

.bp-feature-browser-dots {
    display: flex;
    gap: .4rem;
}

.bp-feature-browser-dots span {
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #c7c9cc;
}

.bp-feature-browser-address {
    position: absolute;
    left: 50%;
    padding: .25rem .75rem;
    border: 1px solid var(--bs-border-color);
    border-radius: .45rem;
    background: var(--bs-body-bg);
    color: var(--bs-secondary-color);
    font-size: .7rem;
    transform: translateX(-50%);
}

/* Critical bit */
.bp-feature-iframe-wrap {
    position: relative;
    width: 100%;
    height: 700px;
    background: #fff;
}

.bp-feature-iframe-wrap iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #fff;
}

@media (max-width: 991.98px) {
    .bp-feature-iframe-wrap {
        height: 600px;
    }
}

@media (max-width: 767.98px) {
    .bp-feature-iframe-wrap {
        height: 520px;
    }

    .bp-feature-browser-address {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .bp-feature-iframe-wrap {
        height: 420px;
    }
}
/* =========================================================
   INTERACTIVE FEATURE HERO
   ========================================================= */

.bp-feature-hero-interactive {
    width: 100%;
    max-width: 1200px;
    margin: 4rem auto 0;
}

.bp-feature-iframe-wrap {
    position: relative;

    width: 100%;
    aspect-ratio: 16 / 9;

    overflow: hidden;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    background: #fff;

    box-shadow:
        0 25px 70px rgba(0, 0, 0, .09);
}

.bp-feature-iframe-wrap iframe {
    position: absolute;
    inset: 0;

    display: block;

    width: 100%;
    height: 100%;

    border: 0;
}


/* Tablet */

@media (max-width: 991.98px) {

    .bp-feature-hero-interactive {
        margin-top: 3rem;
    }

}


/* Mobile */

@media (max-width: 575.98px) {

    .bp-feature-hero-interactive {
        margin-top: 2.5rem;
    }

    .bp-feature-iframe-wrap {
        border-radius: .85rem;
    }

}
/* =========================================================
   SOLUTION CALLOUT
   ========================================================= */

.bp-solution-callout {
    display: flex;
    align-items: center;
    gap: 1.5rem;

    padding: 2rem;

    border: 1px solid rgba(255, 133, 51, .25);
    border-radius: 1.25rem;

    background:
        linear-gradient(
            135deg,
            rgba(255, 133, 51, .11) 0%,
            rgba(255, 133, 51, .035) 100%
        );
}

.bp-solution-callout-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 58px;
    height: 58px;

    border-radius: 1rem;

    background: #ff8533;
    color: #fff;

    font-size: 1.4rem;

    box-shadow:
        0 10px 25px rgba(255, 133, 51, .18);
}

.bp-solution-callout-copy {
    flex: 1;
    min-width: 0;
}

.bp-solution-callout-copy h2 {
    color: var(--bs-body-color) !important;
}

.bp-solution-callout-copy p {
    max-width: 760px;
}

.bp-solution-callout-action {
    flex: 0 0 auto;
}

@media (max-width: 767.98px) {

    .bp-solution-callout {
        align-items: flex-start;
        flex-direction: column;
    }

    .bp-solution-callout-action {
        width: 100%;
    }

    .bp-solution-callout-action .btn {
        width: 100%;
    }

}
.bp-value-stars {
    display: inline-flex;
    align-items: center;
    gap: .15rem;
    color: #f5b301 !important;
    font-size: 1.3rem !important
}

.bp-value-rating strong {
    display: flex;
    align-items: center;
    min-height: 1.5em;
}
/* =========================================================
   DEMO PAGE
   ========================================================= */


/* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */

.bp-demo-hero {
    padding: 4.5rem 0 4rem;

    background:
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-demo-hero-copy {
    width: 100%;
    max-width: 950px;
    margin-top: 3rem;
}

.bp-demo-hero-copy .lead {
    max-width: 800px;
}


/* ---------------------------------------------------------
   Featured demo
   --------------------------------------------------------- */

.bp-demo-featured {
    padding: 5.5rem 0;
}

.bp-demo-feature-list {
    display: grid;
    gap: .65rem;
}

.bp-demo-feature-list span {
    display: flex;
    align-items: center;
    gap: .55rem;

    color: var(--bs-secondary-color);

    font-size: .9rem;
    font-weight: 700;
}

.bp-demo-feature-list i {
    color: #198754;
}


/* ---------------------------------------------------------
   Video
   --------------------------------------------------------- */

.bp-demo-video {
    position: relative;

    width: 100%;
    aspect-ratio: 16 / 9;

    overflow: hidden;

    border-radius: .9rem;

    background: #000;
}

.bp-demo-video iframe {
    position: absolute;
    inset: 0;

    display: block;

    width: 100%;
    height: 100%;

    border: 0;
}

.bp-demo-video-featured {
    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    box-shadow:
        0 25px 65px rgba(0, 0, 0, .10);
}


/* ---------------------------------------------------------
   Testimonials
   --------------------------------------------------------- */

.bp-demo-proof {
    padding: 1rem 0 5rem;
}

.bp-demo-quote {
    height: 100%;
    margin: 0;
    padding: 1.5rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;

    background: var(--bs-body-bg);
}

.bp-demo-stars {
    display: flex;
    gap: .2rem;

    margin-bottom: .9rem;

    color: #e5a900;

    font-size: 1.25rem;
}

.bp-demo-quote p {
    margin-bottom: .75rem;

    color: var(--bs-body-color);

    font-size: 1.05rem;
    font-weight: 700;

    line-height: 1.55;
}

.bp-demo-quote footer {
    color: var(--bs-secondary-color);

    font-size: .8rem;
    font-weight: 700;
}


/* ---------------------------------------------------------
   Demo library
   --------------------------------------------------------- */

.bp-demo-library {
    padding: 5.5rem 0 6rem;
    background: linear-gradient(180deg, var(--bs-secondary-bg) 0%, var(--bs-body-bg) 100%);
}

.bp-demo-library-heading {
    max-width: 800px;

    margin-bottom: 2.5rem;
}


/* Cards */

.bp-demo-card {
    display: flex;
    overflow: hidden;

    height: 100%;

    flex-direction: column;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.1rem;

    background: var(--bs-body-bg);

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}

.bp-demo-card:hover {
    border-color: rgba(255, 133, 51, .35);

    transform: translateY(-3px);

    box-shadow:
        0 12px 35px rgba(0, 0, 0, .06);
}

.bp-demo-card .bp-demo-video {
    border-radius: 0;
}


/* Card body */

.bp-demo-card-body {
    display: flex;

    flex: 1;
    flex-direction: column;

    padding: 1.4rem;
}

.bp-demo-card-title {
    display: flex;
    align-items: center;
    gap: .75rem;

    margin-bottom: .9rem;
}

.bp-demo-card-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;

    border-radius: .7rem;

    background: rgba(255, 133, 51, .10);
    color: #ff8533;

    font-size: 1rem;
}

.bp-demo-card-body p {
    flex: 1;

    margin-bottom: 1.2rem;

    font-size: .9rem;
    line-height: 1.55;
}

.bp-demo-card-body .bp-arrow-link {
    align-self: flex-start;
}


/* ---------------------------------------------------------
   CTA
   --------------------------------------------------------- */

.bp-demo-cta {
    padding: 5rem 0 6rem;
}

.bp-demo-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 2rem;

    padding: 2.5rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    background: var(--bs-secondary-bg);
}


/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-demo-hero {
        padding: 3.5rem 0 3rem;
    }

    .bp-demo-hero-copy {
        margin-top: 2rem;
    }

    .bp-demo-featured,
    .bp-demo-library {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem;
    }

}

@media (max-width: 767.98px) {

    .bp-demo-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .bp-demo-cta-inner .btn {
        width: 100%;
    }

}

@media (max-width: 575.98px) {

    .bp-demo-hero {
        padding: 2.75rem 0;
    }

    .bp-demo-featured {
        padding: 3.5rem 0;
    }

    .bp-demo-library {
        padding: 3.5rem 0 4rem;
    }

    .bp-demo-cta {
        padding: 3.5rem 0 4rem;
    }

    .bp-demo-cta-inner {
        padding: 1.5rem;
    }

}
/* =========================================================
   TESTIMONIALS / REVIEWS
   ========================================================= */


/* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */

.bp-reviews-hero {
    padding: 5rem 0 5.5rem;

    background:
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-reviews-hero-inner {
    max-width: 950px;
    margin-top: 2.5rem;
}

.bp-reviews-hero-inner .lead {
    max-width: 780px;
}


/* Google rating */

.bp-reviews-rating {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: .65rem;

    margin-top: 1.75rem;

    color: var(--bs-secondary-color);

    font-size: .9rem;
}

.bp-reviews-rating strong {
    color: var(--bs-body-color);
}


/* ---------------------------------------------------------
   Stars
   --------------------------------------------------------- */

.bp-review-stars {
    display: inline-flex;
    align-items: center;

    gap: .16rem;

    color: #e5a900;

    font-size: 1.15rem;
    line-height: 1;
}


/* ---------------------------------------------------------
   Featured review
   --------------------------------------------------------- */

.bp-review-feature {
    padding: 7rem 0;
}

.bp-review-feature-logo {
    display: block;

    width: auto;
    max-width: 230px;
    max-height: 105px;

    margin-bottom: 1.75rem;

    object-fit: contain;
}

.bp-review-feature-quote {
    max-width: 900px;

    margin: 0 0 1.5rem;

    color: var(--bs-body-color);

    font-size: clamp(1.9rem, 3vw, 2.8rem);
    font-weight: 850;

    line-height: 1.2;
    letter-spacing: -.025em;
}

.bp-review-feature .lead {
    max-width: 800px;

    font-size: 1.05rem;
    line-height: 1.7;
}


/* ---------------------------------------------------------
   Customer quote wall
   --------------------------------------------------------- */

.bp-review-wall {
    padding: 6rem 0;

    background: var(--bs-secondary-bg);
}

.bp-review-simple {
    position: relative;

    display: flex;
    height: 100%;

    flex-direction: column;

    padding: 1.6rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;

    background: var(--bs-body-bg);

    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.bp-review-simple:hover {
    border-color: rgba(255, 133, 51, .32);

    transform: translateY(-3px);

    box-shadow:
        0 12px 32px rgba(0, 0, 0, .045);
}

.bp-review-simple blockquote {
    margin: 0 0 1rem;

    color: var(--bs-body-color);

    font-size: 1.08rem;
    font-weight: 800;

    line-height: 1.5;
}

.bp-review-simple > p {
    flex: 1;

    margin-bottom: 1.5rem;

    font-size: .875rem;
    line-height: 1.65;
}


/* Reviewer */

.bp-review-simple footer {
    display: flex;
    align-items: center;

    gap: .8rem;

    padding-top: 1rem;

    border-top: 1px solid var(--bs-border-color);
}

.bp-review-simple-logo {
    display: flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 58px;
    height: 42px;
}

.bp-review-simple-logo img {
    display: block;

    max-width: 100%;
    max-height: 100%;

    object-fit: contain;
}

.bp-review-simple footer strong {
    display: block;

    padding-right: 1.5rem;

    font-size: .85rem;
}

.bp-review-simple footer span {
    display: block;

    margin-top: .1rem;

    color: var(--bs-secondary-color);

    font-size: .72rem;
}

.bp-review-site-link {
    position: absolute;

    right: 1.25rem;
    bottom: 1.55rem;

    color: var(--bs-secondary-color);

    font-size: .9rem;

    transition:
        color .15s ease,
        transform .15s ease;
}

.bp-review-site-link:hover {
    color: #ff8533;

    transform: translate(2px, -2px);
}


/* ---------------------------------------------------------
   Google reviews
   --------------------------------------------------------- */

.bp-google-reviews {
    padding: 7rem 0;
}

.bp-google-review-grid {
    columns: 3;
    column-gap: 1rem;
}

.bp-google-review {
    display: inline-block;

    width: 100%;

    margin: 0 0 1rem;
    padding: 1.3rem;

    break-inside: avoid;

    border: 1px solid var(--bs-border-color);
    border-radius: .9rem;

    background: var(--bs-body-bg);
}

.bp-google-review-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    gap: 1rem;

    margin-bottom: .8rem;
}

.bp-google-review-head strong {
    display: block;

    font-size: .85rem;
}

.bp-google-review-head span {
    display: block;

    margin-top: .1rem;

    color: var(--bs-secondary-color);

    font-size: .7rem;
}

.bp-google-g {
    color: #4285f4;

    font-family: Arial, sans-serif;
    font-size: 1.05rem;
}

.bp-google-review .bp-review-stars {
    margin-bottom: .8rem;

    font-size: .9rem;
}

.bp-google-review p {
    margin: 0;

    color: var(--bs-body-color);

    font-size: .86rem;
    line-height: 1.65;
}


/* ---------------------------------------------------------
   CTA
   --------------------------------------------------------- */

.bp-reviews-cta {
    padding: 2rem 0 6rem;
}

.bp-reviews-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 2rem;

    padding-top: 3rem;

    border-top: 1px solid var(--bs-border-color);
}


/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-reviews-hero {
        padding: 4rem 0;
    }

    .bp-review-feature {
        padding: 5rem 0;
    }

    .bp-google-review-grid {
        columns: 2;
    }

}

@media (max-width: 767.98px) {

    .bp-review-wall,
    .bp-google-reviews {
        padding: 4.5rem 0;
    }

    .bp-reviews-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .bp-reviews-cta-inner .d-flex {
        width: 100%;
    }

}

@media (max-width: 575.98px) {

    .bp-reviews-hero {
        padding: 3rem 0 3.5rem;
    }

    .bp-reviews-hero-inner {
        margin-top: 1.5rem;
    }

    .bp-reviews-rating {
        align-items: flex-start;
        flex-direction: column;

        gap: .4rem;
    }

    .bp-review-feature {
        padding: 4rem 0;
    }

    .bp-review-feature-quote {
        font-size: 1.75rem;
    }

    .bp-google-review-grid {
        columns: 1;
    }

}

/* =========================================================
   COMPARISON / ALTERNATIVE PAGES
   ========================================================= */


/* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */

.bp-compare-hero {
    position: relative;

    overflow: hidden;

    padding: 4.5rem 0 5rem;

    background:
        radial-gradient(
            circle at 78% 18%,
            rgba(255, 133, 51, .12),
            transparent 27rem
        ),
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-compare-hero .lead {
    max-width: 720px;
    line-height: 1.65;
}

.bp-compare-subhead {
    margin-bottom: 1rem;

    color: #ff8533;

    font-weight: 800;
}

.bp-compare-mini-proof {
    display: flex;
    flex-wrap: wrap;

    gap: 1.25rem;

    margin-top: 1.25rem;

    color: var(--bs-secondary-color);

    font-size: .8rem;
    font-weight: 700;
}

.bp-compare-mini-proof i {
    margin-right: .3rem;

    color: #198754;
}


/* Hero comparison panel */

.bp-compare-hero-card {
    padding: 1.5rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.4rem;

    background: var(--bs-body-bg);

    box-shadow:
        0 30px 80px rgba(0, 0, 0, .08);
}

.bp-compare-versus {
    display: grid;
    grid-template-columns:
        1fr auto 1fr;

    align-items: center;

    gap: 1rem;
}

.bp-compare-product {
    display: flex;
    align-items: center;

    gap: .85rem;

    min-width: 0;
    padding: 1rem;

    border-radius: 1rem;

    background: var(--bs-secondary-bg);
}

.bp-compare-product-bp {
    background:
        linear-gradient(
            135deg,
            rgba(255, 133, 51, .13),
            rgba(255, 133, 51, .04)
        );
}

.bp-compare-logo {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 46px;
    height: 46px;

    border-radius: .85rem;

    background: #ff8533;
    color: #fff;

    font-size: .78rem;
    font-weight: 900;
}

.bp-compare-logo-other {
    background: var(--bs-body-color);
}

.bp-compare-product small {
    display: block;

    margin-bottom: .15rem;

    color: var(--bs-secondary-color);

    font-size: .65rem;
}

.bp-compare-product strong {
    display: block;

    overflow: hidden;

    color: var(--bs-body-color);

    text-overflow: ellipsis;
    white-space: nowrap;
}

.bp-compare-vs {
    color: var(--bs-secondary-color);

    font-size: .75rem;
    font-weight: 900;

    text-transform: uppercase;
}

.bp-compare-hero-points {
    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: .7rem;

    margin-top: 1rem;
}

.bp-compare-hero-points span {
    display: flex;
    align-items: center;

    gap: .55rem;

    padding: .8rem;

    border: 1px solid var(--bs-border-color);
    border-radius: .7rem;

    color: var(--bs-secondary-color);

    font-size: .75rem;
    font-weight: 700;
}

.bp-compare-hero-points i {
    color: #ff8533;
}


/* ---------------------------------------------------------
   Stars
   --------------------------------------------------------- */

.bp-compare-stars {
    display: inline-flex !important;

    justify-content: center;

    gap: .15rem;

    color: #e5a900 !important;

    font-size: 1.4rem !important;
}


/* ---------------------------------------------------------
   Why section
   --------------------------------------------------------- */

.bp-compare-why {
    padding: 6rem 0;
}

.bp-compare-reasons {
    border-top: 1px solid var(--bs-border-color);
}

.bp-compare-reason {
    display: flex;

    gap: 1.25rem;

    padding: 1.45rem 0;

    border-bottom: 1px solid var(--bs-border-color);
}

.bp-compare-reason-number {
    flex: 0 0 auto;

    padding-top: .15rem;

    color: #ff8533;

    font-size: .75rem;
    font-weight: 900;
}


/* ---------------------------------------------------------
   Comparison table
   --------------------------------------------------------- */

.bp-compare-table-section {
    padding: 6rem 0;

    background: var(--bs-secondary-bg);
}

.bp-compare-heading {
    max-width: 800px;

    margin-bottom: 2.75rem;
}

.bp-compare-table-wrap {
    overflow: hidden;

    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;

    background: var(--bs-body-bg);
}

.bp-compare-table-head,
.bp-compare-row {
    display: grid;

    grid-template-columns:
        minmax(220px, 1fr)
        180px
        180px;
}

.bp-compare-table-head {
    color: var(--bs-secondary-color);

    font-size: .75rem;
    font-weight: 900;

    text-transform: uppercase;
}

.bp-compare-table-head > div {
    padding: 1rem 1.25rem;

    border-bottom: 1px solid var(--bs-border-color);
}

.bp-compare-table-bp {
    background: rgba(255, 133, 51, .10);

    color: #d56a22;
}

.bp-compare-group-title {
    padding: .75rem 1.25rem;

    border-bottom: 1px solid var(--bs-border-color);

    background: var(--bs-secondary-bg);

    color: var(--bs-secondary-color);

    font-size: .72rem;
    font-weight: 900;

    letter-spacing: .05em;

    text-transform: uppercase;
}

.bp-compare-row > div {
    display: flex;
    align-items: center;

    min-height: 56px;
    padding: .8rem 1.25rem;

    border-bottom: 1px solid var(--bs-border-color);
}

.bp-compare-row:last-child > div {
    border-bottom: 0;
}

.bp-compare-feature-name {
    font-size: .86rem;
    font-weight: 700;
}

.bp-compare-cell {
    justify-content: center;

    border-left: 1px solid var(--bs-border-color);
}

.bp-compare-cell-bp {
    background: rgba(255, 133, 51, .045);
}

.bp-compare-yes,
.bp-compare-no {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 28px;
    height: 28px;

    border-radius: 50%;
}

.bp-compare-yes {
    background: rgba(25, 135, 84, .10);
    color: #198754;
}

.bp-compare-no {
    background: var(--bs-secondary-bg);
    color: var(--bs-secondary-color);
}

.bp-compare-text {
    color: var(--bs-body-color);

    font-size: .8rem;
    font-weight: 800;

    text-align: center;
}

.bp-compare-note {
    max-width: 800px;

    margin: 1rem 0 0;

    color: var(--bs-secondary-color);

    font-size: .72rem;
}


/* ---------------------------------------------------------
   Product section
   --------------------------------------------------------- */

.bp-compare-product-section {
    padding: 7rem 0;
}


/* ---------------------------------------------------------
   Quote
   --------------------------------------------------------- */

.bp-compare-quote-section {
    padding: 1rem 0 6rem;
}

.bp-compare-quote {
    max-width: 950px;

    margin: 0 auto;

    text-align: center;
}

.bp-compare-quote .bp-review-stars {
    display: inline-flex;

    gap: .15rem;

    margin-bottom: 1.25rem;

    color: #e5a900;

    font-size: 1.2rem;
}

.bp-compare-quote blockquote {
    margin: 0;

    color: var(--bs-body-color);

    font-size: clamp(1.65rem, 3vw, 2.4rem);
    font-weight: 800;

    line-height: 1.3;
}

.bp-compare-quote footer {
    margin-top: 1.5rem;
}

.bp-compare-quote footer strong,
.bp-compare-quote footer span {
    display: block;
}

.bp-compare-quote footer span {
    margin-top: .2rem;

    color: var(--bs-secondary-color);

    font-size: .78rem;
}


/* ---------------------------------------------------------
   Switching
   --------------------------------------------------------- */

.bp-compare-switch {
    padding: 2rem 0 6rem;
}

.bp-compare-switch-inner {
    display: flex;
    align-items: center;

    gap: 1.5rem;

    padding: 2.25rem;

    border: 1px solid rgba(255, 133, 51, .25);
    border-radius: 1.25rem;

    background:
        linear-gradient(
            135deg,
            rgba(255, 133, 51, .11),
            rgba(255, 133, 51, .025)
        );
}

.bp-compare-switch-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 58px;
    height: 58px;

    border-radius: 1rem;

    background: #ff8533;
    color: #fff;

    font-size: 1.3rem;
}

.bp-compare-switch-copy {
    flex: 1;
}

.bp-compare-switch-copy p {
    max-width: 700px;
}

.bp-compare-switch-actions {
    display: flex;
    flex: 0 0 auto;

    flex-direction: column;

    gap: .5rem;
}


/* ---------------------------------------------------------
   FAQs
   --------------------------------------------------------- */

.bp-compare-faq {
    padding: 6rem 0;
}


/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-compare-hero {
        padding: 3.5rem 0 4rem;
    }

    .bp-compare-why,
    .bp-compare-table-section,
    .bp-compare-product-section {
        padding: 5rem 0;
    }

    .bp-compare-switch-inner {
        align-items: flex-start;
        flex-wrap: wrap;
    }

}

@media (max-width: 767.98px) {

    .bp-compare-versus {
        grid-template-columns: 1fr;
    }

    .bp-compare-vs {
        text-align: center;
    }

    .bp-compare-hero-points {
        grid-template-columns: 1fr;
    }

    .bp-compare-table-wrap {
        overflow-x: auto;
    }

    .bp-compare-table-head,
    .bp-compare-row {
        min-width: 650px;

        grid-template-columns:
            minmax(260px, 1fr)
            150px
            150px;
    }

    .bp-compare-switch-inner {
        flex-direction: column;
    }

    .bp-compare-switch-actions {
        width: 100%;
    }

    .bp-compare-switch-actions .btn {
        width: 100%;
    }

}

@media (max-width: 575.98px) {

    .bp-compare-hero {
        padding: 2.75rem 0 3.5rem;
    }

    .bp-compare-hero-card {
        padding: 1rem;
    }

}
/* =========================================================
   COMPARISON HERO
   ========================================================= */

.bp-compare-hero {
    position: relative;
    overflow: hidden;

    padding: 4.75rem 0 5.25rem;

    background:
        radial-gradient(
            circle at 82% 18%,
            rgba(255, 133, 51, .09),
            transparent 28rem
        ),
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-compare-hero h1 {
    max-width: 680px;
}

.bp-compare-hero-lead {
    max-width: 660px;

    line-height: 1.65;
}

.bp-compare-subhead {
    margin: -.25rem 0 1rem;

    color: #e66f20;

    font-size: .9rem;
    font-weight: 800;
}

.bp-compare-mini-proof {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 1rem;

    margin-top: 1.2rem;

    color: var(--bs-secondary-color);

    font-size: .76rem;
    font-weight: 700;
}

.bp-compare-mini-proof span {
    display: inline-flex;
    align-items: center;

    gap: .35rem;
}

.bp-compare-mini-proof i {
    color: #198754;
}


/* ---------------------------------------------------------
   Comparison preview
   --------------------------------------------------------- */

.bp-compare-preview {
    max-width: 560px;

    margin-left: auto;
    padding: 1.35rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    background: rgba(255, 255, 255, .82);

    box-shadow:
        0 24px 65px rgba(0, 0, 0, .07);

    backdrop-filter: blur(8px);
}

.bp-compare-preview-products {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto
        minmax(0, 1fr);

    align-items: center;

    gap: .9rem;
}

.bp-compare-preview-product {
    display: flex;
    align-items: center;

    min-width: 0;

    gap: .75rem;

    padding: .9rem;

    border-radius: .85rem;

    background: var(--bs-secondary-bg);
}

.bp-compare-preview-product.is-band-pencil {
    background: rgba(255, 133, 51, .09);
}

.bp-compare-preview-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    border-radius: .7rem;

    background: #ff8533;
    color: #fff;

    font-size: .7rem;
    font-weight: 900;
}

.bp-compare-preview-icon.is-competitor {
    background: #202124;
}

.bp-compare-preview-product small {
    display: block;

    margin-bottom: .08rem;

    color: var(--bs-secondary-color);

    font-size: .62rem;
}

.bp-compare-preview-product strong {
    display: block;

    overflow: hidden;

    color: var(--bs-body-color);

    font-size: .86rem;

    text-overflow: ellipsis;
    white-space: nowrap;
}

.bp-compare-preview-vs {
    color: var(--bs-secondary-color);

    font-size: .7rem;
    font-weight: 900;

    text-transform: uppercase;
}

.bp-compare-preview-divider {
    height: 1px;

    margin: 1rem 0;

    background: var(--bs-border-color);
}

.bp-compare-preview-list {
    display: grid;

    gap: .2rem;
}

.bp-compare-preview-list > div {
    display: flex;
    align-items: center;

    gap: .7rem;

    padding: .65rem .25rem;

    color: var(--bs-secondary-color);

    font-size: .78rem;
    font-weight: 700;
}

.bp-compare-preview-list i {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 28px;
    height: 28px;

    border-radius: .55rem;

    background: rgba(255, 133, 51, .09);
    color: #ff8533;

    font-size: .85rem;
}


/* ---------------------------------------------------------
   Tablet/mobile
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-compare-hero {
        padding: 3.75rem 0 4.25rem;
    }

    .bp-compare-preview {
        max-width: none;

        margin-left: 0;
    }

}

@media (max-width: 575.98px) {

    .bp-compare-hero {
        padding: 2.75rem 0 3.5rem;
    }

    .bp-compare-preview {
        padding: 1rem;
    }

    .bp-compare-preview-products {
        grid-template-columns: 1fr;
    }

    .bp-compare-preview-vs {
        text-align: center;
    }

}
/* =========================================================
   COMPARISON HERO - LARGE / CLEAN
   ========================================================= */

.bp-compare-hero {
    position: relative;
    overflow: hidden;

    padding: 5rem 0 6.5rem;

    background:
        radial-gradient(
            circle at 85% 10%,
            rgba(255, 133, 51, .10),
            transparent 30rem
        ),
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-compare-hero-content {
    max-width: 1050px;

    margin-top: 3rem;
}

.bp-compare-hero h1 {
    max-width: 1000px;

    font-size: clamp(3.5rem, 8vw, 6.6rem);
    letter-spacing: -.045em;
}

.bp-compare-subhead {
    max-width: 760px;

    margin-bottom: 1rem;

    color: #e66f20;

    font-size: 1rem;
    font-weight: 800;
}

.bp-compare-hero-lead {
    max-width: 820px;

    margin-bottom: 0;

    font-size: 1.2rem;
    line-height: 1.7;
}

.bp-compare-mini-proof {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 1.2rem;

    margin-top: 1.25rem;

    color: var(--bs-secondary-color);

    font-size: .78rem;
    font-weight: 700;
}

.bp-compare-mini-proof span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.bp-compare-mini-proof i {
    color: #198754;
}


/* Mobile */

@media (max-width: 991.98px) {

    .bp-compare-hero {
        padding: 4rem 0 5rem;
    }

    .bp-compare-hero-content {
        margin-top: 2rem;
    }

}

@media (max-width: 575.98px) {

    .bp-compare-hero {
        padding: 3rem 0 4rem;
    }

    .bp-compare-hero h1 {
        font-size: clamp(3rem, 15vw, 4.5rem);
    }

    .bp-compare-hero-lead {
        font-size: 1.05rem;
    }

}
/* =========================================================
   FAQ PAGE
   ========================================================= */


/* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */

.bp-faq-hero {
    padding: 4.5rem 0 5.5rem;

    background:
        radial-gradient(
            circle at 85% 10%,
            rgba(255, 133, 51, .09),
            transparent 28rem
        ),
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-faq-hero-content {
    max-width: 950px;

    margin-top: 2.5rem;
}

.bp-faq-hero-content h1 {
    max-width: 900px;

    letter-spacing: -.04em;
}

.bp-faq-hero-content > .lead {
    max-width: 760px;

    margin-bottom: 0;

    line-height: 1.7;
}


/* ---------------------------------------------------------
   Search
   --------------------------------------------------------- */

.bp-faq-search {
    position: relative;

    display: flex;
    align-items: center;

    width: 100%;
    max-width: 760px;

    margin-top: 2rem;

    border: 1px solid var(--bs-border-color);
    border-radius: .95rem;

    background: var(--bs-body-bg);

    box-shadow:
        0 10px 30px rgba(0, 0, 0, .04);

    transition:
        border-color .15s ease,
        box-shadow .15s ease;
}

.bp-faq-search:focus-within {
    border-color: rgba(255, 133, 51, .55);

    box-shadow:
        0 0 0 4px rgba(255, 133, 51, .08),
        0 12px 32px rgba(0, 0, 0, .04);
}

.bp-faq-search > i {
    position: absolute;

    left: 1.15rem;

    color: var(--bs-secondary-color);

    font-size: 1rem;
}

.bp-faq-search input {
    width: 100%;

    padding: 1.05rem 3.2rem 1.05rem 3rem;

    border: 0;
    outline: 0;

    background: transparent;
    color: var(--bs-body-color);

    font-size: .95rem;
}

.bp-faq-search input::placeholder {
    color: var(--bs-secondary-color);
}

.bp-faq-search-clear {
    position: absolute;

    right: .8rem;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 32px;
    height: 32px;

    border: 0;
    border-radius: .5rem;

    background: transparent;
    color: var(--bs-secondary-color);
}


/* Popular links */

.bp-faq-popular {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: .45rem .8rem;

    margin-top: 1rem;

    font-size: .76rem;
}

.bp-faq-popular > span {
    color: var(--bs-secondary-color);

    font-weight: 700;
}

.bp-faq-popular a {
    color: var(--bs-body-color);

    font-weight: 700;
    text-decoration: none;
}

.bp-faq-popular a:hover {
    color: #ff8533;
}


/* ---------------------------------------------------------
   Main content
   --------------------------------------------------------- */

.bp-faq-content {
    padding: 6rem 0;
}


/* ---------------------------------------------------------
   Sidebar
   --------------------------------------------------------- */

.bp-faq-sidebar {
    position: sticky;

    top: 7rem;
}

.bp-faq-nav {
    display: grid;

    gap: .25rem;

    margin-top: .8rem;
}

.bp-faq-nav a {
    display: grid;
    grid-template-columns:
        28px
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: .65rem;

    padding: .7rem .75rem;

    border-radius: .7rem;

    color: var(--bs-secondary-color);

    font-size: .8rem;
    font-weight: 700;

    text-decoration: none;

    transition:
        background .15s ease,
        color .15s ease;
}

.bp-faq-nav a:hover {
    background: var(--bs-secondary-bg);
    color: var(--bs-body-color);
}

.bp-faq-nav a > i:first-child {
    color: #ff8533;
}

.bp-faq-nav a > i:last-child {
    font-size: .7rem;
}


/* Sidebar support */

.bp-faq-help {
    margin-top: 2.5rem;
    padding-top: 1.5rem;

    border-top: 1px solid var(--bs-border-color);
}

.bp-faq-help > i {
    display: block;

    margin-bottom: .8rem;

    color: #ff8533;

    font-size: 1.3rem;
}

.bp-faq-help strong {
    display: block;

    margin-bottom: .4rem;

    font-size: .9rem;
}

.bp-faq-help p {
    margin-bottom: .8rem;

    color: var(--bs-secondary-color);

    font-size: .78rem;
    line-height: 1.55;
}


/* ---------------------------------------------------------
   FAQ groups
   --------------------------------------------------------- */

.bp-faq-group {
    scroll-margin-top: 7rem;

    margin-bottom: 5.5rem;
}

.bp-faq-group:last-child {
    margin-bottom: 0;
}

.bp-faq-group-heading {
    display: flex;
    align-items: flex-start;

    gap: 1rem;

    max-width: 800px;

    margin-bottom: 2rem;
}

.bp-faq-group-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;

    border-radius: .85rem;

    background: rgba(255, 133, 51, .10);
    color: #ff8533;

    font-size: 1.1rem;
}

.bp-faq-group-heading p {
    max-width: 700px;

    line-height: 1.6;
}


/* ---------------------------------------------------------
   FAQ items
   --------------------------------------------------------- */

.bp-faq-list {
    border-top: 1px solid var(--bs-border-color);
}

.bp-faq-item {
    border-bottom: 1px solid var(--bs-border-color);
}

.bp-faq-item summary {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 1.5rem;

    padding: 1.25rem 0;

    cursor: pointer;

    color: var(--bs-body-color);

    font-size: .94rem;
    font-weight: 800;

    list-style: none;
}

.bp-faq-item summary::-webkit-details-marker {
    display: none;
}

.bp-faq-item summary::marker {
    display: none;
}

.bp-faq-item summary:hover {
    color: #e66f20;
}

.bp-faq-toggle {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    border: 1px solid var(--bs-border-color);
    border-radius: 50%;

    color: var(--bs-secondary-color);

    font-size: .75rem;

    transition:
        transform .2s ease,
        color .15s ease,
        background .15s ease;
}

.bp-faq-item[open] .bp-faq-toggle {
    transform: rotate(45deg);

    background: rgba(255, 133, 51, .08);
    color: #ff8533;
}

.bp-faq-answer {
    max-width: 800px;

    padding: 0 3.5rem 1.35rem 0;

    color: var(--bs-secondary-color);

    font-size: .9rem;
    line-height: 1.7;
}

.bp-faq-answer p {
    margin: 0;
}

.bp-faq-answer a {
    font-weight: 700;
}


/* ---------------------------------------------------------
   No results
   --------------------------------------------------------- */

.bp-faq-no-results {
    padding: 4rem 2rem;

    text-align: center;
}

.bp-faq-no-results-icon {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 54px;
    height: 54px;

    margin-bottom: 1rem;

    border-radius: 1rem;

    background: var(--bs-secondary-bg);
    color: var(--bs-secondary-color);

    font-size: 1.2rem;
}


/* ---------------------------------------------------------
   Bottom CTA
   --------------------------------------------------------- */

.bp-faq-cta {
    padding: 1rem 0 6rem;
}

.bp-faq-cta-inner {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 2rem;

    padding: 2.5rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.2rem;

    background:
        linear-gradient(
            135deg,
            rgba(255, 133, 51, .08),
            rgba(255, 133, 51, .02)
        );
}


/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-faq-hero {
        padding: 3.5rem 0 4.5rem;
    }

    .bp-faq-content {
        padding: 4.5rem 0;
    }

    .bp-faq-sidebar {
        position: static;
    }

    .bp-faq-nav {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .bp-faq-help {
        display: none;
    }

}

@media (max-width: 767.98px) {

    .bp-faq-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .bp-faq-cta-inner .d-flex {
        width: 100%;
    }

    .bp-faq-group {
        margin-bottom: 4rem;
    }

}

@media (max-width: 575.98px) {

    .bp-faq-hero {
        padding: 2.75rem 0 3.5rem;
    }

    .bp-faq-hero-content {
        margin-top: 1.5rem;
    }

    .bp-faq-nav {
        grid-template-columns: 1fr;
    }

    .bp-faq-group-heading {
        gap: .8rem;
    }

    .bp-faq-group-icon {
        width: 42px;
        height: 42px;
    }

    .bp-faq-answer {
        padding-right: 0;
    }

    .bp-faq-cta-inner {
        padding: 1.5rem;
    }

}
/* =========================================================
   FREE TOOLS
   ========================================================= */


/* Hero */

.bp-tool-hero {
    padding: 4.75rem 0 5.5rem;

    background:
        radial-gradient(
            circle at 85% 10%,
            rgba(255, 133, 51, .09),
            transparent 28rem
        ),
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-tool-hero-inner {
    max-width: 960px;
    margin-top: 2.5rem;
}

.bp-tool-hero-inner h1 {
    max-width: 950px;
    letter-spacing: -.045em;
}

.bp-tool-hero-inner .lead {
    max-width: 780px;
    line-height: 1.7;
}

.bp-tool-hero-proof {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 1.4rem;

    margin-top: 1.5rem;

    color: var(--bs-secondary-color);

    font-size: .78rem;
    font-weight: 700;
}

.bp-tool-hero-proof span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.bp-tool-hero-proof i {
    color: #198754;
}


/* Main */

.bp-tool-section {
    padding: 6rem 0;
}


/* Tool panel */

.bp-tool-panel {
    overflow: hidden;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    background: var(--bs-body-bg);

    box-shadow:
        0 20px 60px rgba(0, 0, 0, .05);
}

.bp-tool-panel-head {
    display: flex;
    align-items: center;

    gap: 1rem;

    padding: 1.5rem;

    border-bottom: 1px solid var(--bs-border-color);

    background: var(--bs-secondary-bg);
}

.bp-tool-panel-icon {
    display: inline-flex;
    flex: 0 0 auto;

    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;

    border-radius: .8rem;

    background: #ff8533;
    color: #fff;

    font-size: 1.1rem;
}


/* Form */

.bp-tool-form {
    padding: 0 1.5rem;
}

.bp-tool-form label {
    display: block;

    margin-bottom: .4rem;

    color: var(--bs-body-color);

    font-size: .78rem;
    font-weight: 800;
}

.bp-tool-form .form-control,
.bp-tool-form .form-select,
.bp-tool-form .input-group-text {
    min-height: 46px;

    border-color: var(--bs-border-color);
}

.bp-tool-form textarea.form-control {
    min-height: auto;

    resize: vertical;
}

.bp-tool-form-section {
    padding: 1.7rem 0;

    border-bottom: 1px solid var(--bs-border-color);
}

.bp-tool-form-section:last-of-type {
    border-bottom: 0;
}

.bp-tool-form-section-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    gap: 1.5rem;

    margin-bottom: 1.4rem;
}

.bp-tool-form-section-head > div {
    display: flex;
    align-items: center;

    gap: .7rem;
}

.bp-tool-form-section-head > div > span {
    color: #ff8533;

    font-size: .67rem;
    font-weight: 900;
}

.bp-tool-form-section-head h3 {
    margin: 0;

    font-size: 1rem;
    font-weight: 850;
}

.bp-tool-form-section-head > p {
    max-width: 290px;

    margin: 0;

    color: var(--bs-secondary-color);

    font-size: .75rem;
    line-height: 1.5;

    text-align: right;
}


/* Repeatable rows */

.bp-tool-repeat-row {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        180px;

    gap: .8rem;

    margin-bottom: .8rem;
}

.bp-tool-add {
    display: inline-flex;
    align-items: center;

    gap: .4rem;

    margin-top: .4rem;
    padding: 0;

    border: 0;

    background: transparent;
    color: #e66f20;

    font-size: .78rem;
    font-weight: 800;
}

.bp-tool-add:hover {
    color: #bd5410;
}


/* Money input */

.bp-tool-money-input {
    position: relative;
}

.bp-tool-money-input > span {
    position: absolute;
    top: 50%;
    left: .8rem;

    z-index: 2;

    color: var(--bs-secondary-color);

    font-size: .85rem;

    transform: translateY(-50%);
}

.bp-tool-money-input input {
    padding-left: 1.8rem;
}


/* Slider */

.bp-tool-slider-value {
    margin-bottom: .45rem;
}

.bp-tool-slider-value strong {
    color: #ff8533;

    font-size: 1.3rem;
}


/* Services */

.bp-tool-service {
    margin-bottom: 1rem;
    padding: 1rem;

    border: 1px solid var(--bs-border-color);
    border-radius: .8rem;

    background: var(--bs-secondary-bg);
}


/* Actions */

.bp-tool-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;

    gap: .6rem;

    padding: 1.5rem 0;
}


/* Live stat */

.bp-tool-live-stat {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-top: 1rem;
    padding: 1rem;

    border-radius: .75rem;

    background: var(--bs-secondary-bg);
}

.bp-tool-live-stat span {
    color: var(--bs-secondary-color);

    font-size: .78rem;
    font-weight: 700;
}

.bp-tool-live-stat strong {
    font-size: 1.2rem;
}


/* Warning */

.bp-tool-warning {
    margin-top: 1rem;
    padding: .8rem 1rem;

    border: 1px solid rgba(220, 53, 69, .18);
    border-radius: .7rem;

    background: rgba(220, 53, 69, .06);
    color: #b02a37;

    font-size: .78rem;
}


/* Results */

.bp-tool-result {
    margin: 0 1.5rem 1.5rem;
    padding: 1.5rem;

    border-radius: 1rem;

    background:
        linear-gradient(
            135deg,
            rgba(25, 135, 84, .11),
            rgba(25, 135, 84, .03)
        );
}

.bp-tool-result-primary {
    display: flex;
    align-items: baseline;

    gap: .65rem;

    margin: .5rem 0 1.4rem;
}

.bp-tool-result-primary strong {
    font-size: clamp(2.2rem, 5vw, 3.5rem);
    font-weight: 900;

    letter-spacing: -.04em;
}

.bp-tool-result-primary span {
    color: var(--bs-secondary-color);

    font-size: .75rem;
}

.bp-tool-result-grid {
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: .7rem;
}

.bp-tool-result-grid-four {
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
}

.bp-tool-result-grid > div {
    padding: .9rem;

    border-radius: .7rem;

    background: var(--bs-body-bg);
}

.bp-tool-result-grid span {
    display: block;

    margin-bottom: .25rem;

    color: var(--bs-secondary-color);

    font-size: .67rem;
    font-weight: 700;
}

.bp-tool-result-grid strong {
    font-size: 1rem;
}

.bp-tool-result-note {
    margin: 1rem 0 0;

    color: var(--bs-secondary-color);

    font-size: .7rem;
}


/* Side guide */

.bp-tool-guide {
    position: sticky;
    top: 7rem;
}

.bp-tool-guide-intro {
    max-width: 500px;

    line-height: 1.7;
}

.bp-tool-tips {
    margin-top: 2rem;

    border-top: 1px solid var(--bs-border-color);
}

.bp-tool-tip {
    display: flex;

    gap: 1rem;

    padding: 1rem 0;

    border-bottom: 1px solid var(--bs-border-color);
}

.bp-tool-tip > span {
    padding-top: .1rem;

    color: #ff8533;

    font-size: .68rem;
    font-weight: 900;
}

.bp-tool-tip strong {
    display: block;

    margin-bottom: .25rem;

    font-size: .85rem;
}

.bp-tool-tip p {
    margin: 0;

    color: var(--bs-secondary-color);

    font-size: 1rem;
    line-height: 1.55;
}


/* Product callout */

.bp-tool-product-callout {
    margin-top: 2rem;
    padding: 1.4rem;

    border: 1px solid rgba(255, 133, 51, .2);
    border-radius: .9rem;

    background:
        linear-gradient(
            135deg,
            rgba(255, 133, 51, .09),
            rgba(255, 133, 51, .02)
        );
}

.bp-tool-product-callout > i {
    display: block;

    margin-bottom: .7rem;

    color: #ff8533;

    font-size: 1.25rem;
}

.bp-tool-product-callout p {
    color: var(--bs-secondary-color);

    font-size: .8rem;
    line-height: 1.6;
}


/* More tools */

.bp-tool-more {
    padding: 5rem 0 6rem;
}

.bp-tool-more-card {
    display: flex;
    height: 100%;

    flex-direction: column;

    gap: .7rem;

    padding: 1.3rem;

    border: 1px solid var(--bs-border-color);
    border-radius: .9rem;

    background: var(--bs-body-bg);
    color: var(--bs-body-color);

    text-decoration: none;

    transition:
        transform .15s ease,
        border-color .15s ease,
        box-shadow .15s ease;
}

.bp-tool-more-card:hover {
    border-color: rgba(255, 133, 51, .3);

    color: var(--bs-body-color);

    transform: translateY(-2px);

    box-shadow:
        0 10px 30px rgba(0, 0, 0, .04);
}

.bp-tool-more-card > i {
    color: #ff8533;

    font-size: 1.2rem;
}

.bp-tool-more-card > strong {
    font-size: .95rem;
}

.bp-tool-more-card > span {
    margin-top: auto;

    color: var(--bs-secondary-color);

    font-size: .72rem;
    font-weight: 700;
}


/* Responsive */

@media (max-width: 991.98px) {

    .bp-tool-guide {
        position: static;
    }

}

@media (max-width: 767.98px) {

    .bp-tool-hero {
        padding: 3.5rem 0 4rem;
    }

    .bp-tool-section {
        padding: 4rem 0;
    }

    .bp-tool-form-section-head {
        flex-direction: column;

        gap: .4rem;
    }

    .bp-tool-form-section-head > p {
        max-width: none;

        text-align: left;
    }

    .bp-tool-repeat-row {
        grid-template-columns: 1fr;
    }

    .bp-tool-result-grid,
    .bp-tool-result-grid-four {
        grid-template-columns: 1fr;
    }

}

@media (max-width: 575.98px) {

    .bp-tool-hero {
        padding: 2.75rem 0 3.5rem;
    }

    .bp-tool-hero-inner {
        margin-top: 1.5rem;
    }

    .bp-tool-panel-head,
    .bp-tool-form {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .bp-tool-result {
        margin-left: 1rem;
        margin-right: 1rem;
    }

    .bp-tool-actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .bp-tool-actions .btn {
        width: 100%;
    }

}
/* =========================================================
   FREE TOOLS LANDING
   ========================================================= */


/* Hero */

.bp-tools-hero {
    padding: 5rem 0 6rem;

    background:
        radial-gradient(
            circle at 84% 12%,
            rgba(255, 133, 51, .11),
            transparent 30rem
        ),
        linear-gradient(
            180deg,
            var(--bs-secondary-bg) 0%,
            var(--bs-body-bg) 100%
        );
}

.bp-tools-hero-inner {
    max-width: 1050px;
    margin-top: 3rem;
}

.bp-tools-hero h1 {
    max-width: 950px;

    letter-spacing: -.045em;
}

.bp-tools-hero .lead {
    max-width: 780px;

    line-height: 1.7;
}

.bp-tools-proof {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 1.2rem;

    margin-top: 1.5rem;

    color: var(--bs-secondary-color);

    font-size: .78rem;
    font-weight: 700;
}

.bp-tools-proof span {
    display: inline-flex;
    align-items: center;

    gap: .35rem;
}

.bp-tools-proof i {
    color: #198754;
}


/* ---------------------------------------------------------
   Tool grid
   --------------------------------------------------------- */

.bp-tools-grid-section {
    padding: 6.5rem 0;
}

.bp-tools-section-heading {
    max-width: 760px;

    margin-bottom: 3rem;
}

.bp-tools-card {
    position: relative;

    display: flex;
    overflow: hidden;

    min-height: 330px;
    height: 100%;

    flex-direction: column;

    padding: 2rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.25rem;

    background: var(--bs-body-bg);
    color: var(--bs-body-color);

    text-decoration: none;

    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.bp-tools-card::after {
    content: "";

    position: absolute;

    right: -5rem;
    bottom: -5rem;

    width: 13rem;
    height: 13rem;

    border-radius: 50%;

    background: rgba(255, 133, 51, .055);

    transition:
        transform .25s ease,
        background .25s ease;
}

.bp-tools-card:hover {
    border-color: rgba(255, 133, 51, .35);

    color: var(--bs-body-color);

    transform: translateY(-4px);

    box-shadow:
        0 20px 50px rgba(0, 0, 0, .055);
}

.bp-tools-card:hover::after {
    background: rgba(255, 133, 51, .09);

    transform: scale(1.15);
}

.bp-tools-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 1rem;

    margin-bottom: 2.2rem;
}

.bp-tools-card-icon {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 50px;
    height: 50px;

    border-radius: .85rem;

    background: rgba(255, 133, 51, .10);
    color: #ff8533;

    font-size: 1.25rem;
}

.bp-tools-card h3 {
    position: relative;
    z-index: 1;

    max-width: 420px;

    margin-bottom: 1rem;

    font-size: clamp(1.75rem, 3vw, 2.35rem);
}

.bp-tools-card > p {
    position: relative;
    z-index: 1;

    max-width: 500px;

    margin-bottom: 2rem;

    font-size: .95rem;
    line-height: 1.65;
}

.bp-tools-card-link {
    position: relative;
    z-index: 1;

    display: inline-flex;
    align-items: center;

    gap: .45rem;

    margin-top: auto;

    color: var(--bs-body-color);

    font-size: .8rem;
    font-weight: 850;
}

.bp-tools-card:hover .bp-tools-card-link {
    color: #e66f20;
}


/* ---------------------------------------------------------
   Benefits
   --------------------------------------------------------- */

.bp-tools-benefits {
    padding: 6rem 0;
}

.bp-tools-benefit {
    height: 100%;

    padding: 1.5rem;

    text-align: center;
}

.bp-tools-benefit-icon {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;

    margin-bottom: 1rem;

    border-radius: .8rem;

    background: rgba(255, 133, 51, .10);
    color: #ff8533;

    font-size: 1.15rem;
}

.bp-tools-benefit p {
    max-width: 320px;

    margin-left: auto;
    margin-right: auto;

    font-size: .85rem;
    line-height: 1.6;
}


/* ---------------------------------------------------------
   Product bridge
   --------------------------------------------------------- */

.bp-tools-product {
    padding: 7rem 0;
}

.bp-tools-product-visual {
    padding: 2rem;

    border: 1px solid var(--bs-border-color);
    border-radius: 1.2rem;

    background: var(--bs-secondary-bg);
}

.bp-tools-product-stat {
    margin-bottom: 2rem;
}

.bp-tools-product-stat span {
    display: block;

    margin-bottom: .25rem;

    color: var(--bs-secondary-color);

    font-size: .72rem;
    font-weight: 800;

    text-transform: uppercase;
}

.bp-tools-product-stat strong {
    display: block;

    color: var(--bs-body-color);

    font-size: clamp(1.8rem, 4vw, 2.8rem);
    font-weight: 900;

    line-height: 1.15;
}

.bp-tools-product-flow {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: .5rem;
}

.bp-tools-product-flow span {
    padding: .65rem .8rem;

    border: 1px solid var(--bs-border-color);
    border-radius: .65rem;

    background: var(--bs-body-bg);

    font-size: .75rem;
    font-weight: 800;
}

.bp-tools-product-flow i {
    color: #ff8533;
}


/* ---------------------------------------------------------
   CTA
   --------------------------------------------------------- */

.bp-tools-cta {
    padding: 1rem 0 6rem;
}

.bp-tools-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 2rem;

    padding: 2.5rem;

    border: 1px solid rgba(255, 133, 51, .22);
    border-radius: 1.2rem;

    background:
        linear-gradient(
            135deg,
            rgba(255, 133, 51, .09),
            rgba(255, 133, 51, .02)
        );
}


/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */

@media (max-width: 991.98px) {

    .bp-tools-hero {
        padding: 4rem 0 5rem;
    }

    .bp-tools-grid-section {
        padding: 5rem 0;
    }

    .bp-tools-product {
        padding: 5rem 0;
    }

}

@media (max-width: 767.98px) {

    .bp-tools-card {
        min-height: 280px;
    }

    .bp-tools-benefits {
        padding: 4.5rem 0;
    }

    .bp-tools-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .bp-tools-cta-inner .btn {
        width: 100%;
    }

}

@media (max-width: 575.98px) {

    .bp-tools-hero {
        padding: 3rem 0 4rem;
    }

    .bp-tools-hero-inner {
        margin-top: 1.5rem;
    }

    .bp-tools-card {
        min-height: 0;

        padding: 1.5rem;
    }

    .bp-tools-card-top {
        margin-bottom: 1.5rem;
    }

    .bp-tools-product-visual {
        padding: 1.4rem;
    }

    .bp-tools-cta-inner {
        padding: 1.5rem;
    }

}
/* =========================================================
   FEATURE DETAIL — TEXT ONLY
   ========================================================= */

.bp-feature-detail-text-only {
    position: relative;
}

.bp-feature-text-panel {
    position: relative;
    max-width: 980px;
    margin: 0 auto;
    padding: 3.25rem 3.5rem;
    overflow: hidden;

    border: 1px solid var(--bp-line);
    border-radius: 1.5rem;

    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(25, 164, 99, .09),
            transparent 17rem
        ),
        linear-gradient(
            135deg,
            #fff 0%,
            var(--bp-cream-2) 100%
        );
}

.bp-feature-text-panel::after {
    content: "";
    position: absolute;
    right: -5rem;
    bottom: -6rem;

    width: 14rem;
    height: 14rem;

    border-radius: 50%;
    background: rgba(245, 157, 42, .08);

    pointer-events: none;
}

.bp-feature-text-panel-copy {
    position: relative;
    z-index: 1;
    max-width: 760px;
}

.bp-feature-text-panel .display-5 {
    max-width: 700px;
}

.bp-feature-text-panel .lead {
    max-width: 720px;
    line-height: 1.65;
}

.bp-feature-text-checks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem 2rem;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767.98px) {

    .bp-feature-text-panel {
        padding: 2rem 1.5rem;
        border-radius: 1.25rem;
    }

    .bp-feature-text-checks {
        grid-template-columns: 1fr;
        gap: .7rem;
    }

}

.bp-feature-iframe-wrap {
    position: relative;
}

.bp-live-demo-badge {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 10;

    display: inline-flex;
    align-items: center;
    gap: 8px;

    padding: 9px 14px;

    background: rgba(20, 20, 20, 0.88);
    color: #fff;

    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    pointer-events: none;
}

.bp-live-demo-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #41d17d;

    box-shadow: 0 0 0 4px rgba(65, 209, 125, 0.15);

    animation: bp-live-demo-pulse 2s infinite;
}

@keyframes bp-live-demo-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(65, 209, 125, 0.45);
    }

    70% {
        box-shadow: 0 0 0 7px rgba(65, 209, 125, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(65, 209, 125, 0);
    }
}

@media (max-width: 767.98px) {
    .bp-live-demo-badge {
        top: 10px;
        right: 10px;
        padding: 7px 10px;
        font-size: 10px;
    }

    .bp-live-demo-dot {
        width: 7px;
        height: 7px;
    }
}
.bp-waitlist-hero {
    padding: 32px 0 88px;
    background:
        radial-gradient(circle at 85% 15%, rgba(255, 193, 7, .10), transparent 30%),
        linear-gradient(180deg, #fff 0%, #fbfbfb 100%);
}

.bp-waitlist-grid {
    min-height: 670px;
}

.bp-waitlist-lead {
    max-width: 720px;
}

.bp-waitlist-proof {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 18px;
}

.bp-waitlist-proof span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: .95rem;
    color: #4b5563;
}

.bp-waitlist-proof i {
    color: #111827;
}

.bp-waitlist-card {
    background: #fff;
    border: 1px solid rgba(17, 24, 39, .08);
    border-radius: 24px;
    padding: clamp(24px, 4vw, 42px);
    box-shadow: 0 24px 70px rgba(17, 24, 39, .08);
}

.bp-waitlist-card .form-control {
    border-radius: 14px;
    border-color: #dfe3e8;
    min-height: 54px;
    box-shadow: none;
}

.bp-waitlist-card .form-control:focus {
    border-color: #111827;
    box-shadow: 0 0 0 4px rgba(17, 24, 39, .06);
}

.bp-waitlist-message {
    border-radius: 12px;
    padding: 12px 14px;
    margin: 6px 0 4px;
    font-size: .95rem;
}

.bp-waitlist-message-error {
    background: #fff4f4;
    border: 1px solid #ffd5d5;
    color: #a61b1b;
}

.bp-waitlist-success {
    text-align: center;
    padding: 28px 10px;
}

.bp-waitlist-success-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 22px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #111827;
    color: #fff;
    font-size: 2rem;
}

.bp-waitlist-next {
    padding: 84px 0 96px;
    border-top: 1px solid rgba(17, 24, 39, .06);
}

.bp-waitlist-steps {
    display: grid;
    gap: 18px;
}

.bp-waitlist-step {
    display: grid;
    grid-template-columns: 54px 1fr;
    gap: 18px;
    padding: 22px 0;
    border-bottom: 1px solid rgba(17, 24, 39, .08);
}

.bp-waitlist-step:first-child {
    padding-top: 0;
}

.bp-waitlist-step-number {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #111827;
    color: #fff;
    display: grid;
    place-items: center;
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .04em;
}

@media (max-width: 991.98px) {
    .bp-waitlist-hero {
        padding-bottom: 64px;
    }

    .bp-waitlist-grid {
        min-height: 0;
        padding-top: 42px;
    }
}

@media (max-width: 575.98px) {
    .bp-waitlist-card {
        border-radius: 18px;
        padding: 22px;
    }

    .bp-waitlist-step {
        grid-template-columns: 44px 1fr;
        gap: 14px;
    }
}
/* Upcoming legal terms notice */
.bp-terms-notice {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    margin: 0 0 32px;
    padding: 22px 24px;

    background: #fff8ed;
    border: 1px solid #f3d5a5;
    border-left: 4px solid #e89422;
    border-radius: 12px;
}

.bp-terms-notice-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;

    width: 44px;
    height: 44px;

    background: #ffffff;
    border: 1px solid #f3d5a5;
    border-radius: 10px;

    font-size: 20px;
    color: #d97d00;
}

.bp-terms-notice-content {
    flex: 1;
    min-width: 0;
}

.bp-terms-notice-label {
    margin-bottom: 4px;

    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: .06em;
    text-transform: uppercase;

    color: #b86700;
}

.bp-terms-notice-title {
    display: block;
    margin-bottom: 5px;

    font-size: 17px;
    line-height: 1.4;

    color: #1f2937;
}

.bp-terms-notice p {
    margin: 0 0 10px;

    font-size: 14px;
    line-height: 1.6;

    color: #5f6368;
}

.bp-terms-notice-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;

    font-size: 14px;
    font-weight: 700;

    color: #b86700;
    text-decoration: none;
}

.bp-terms-notice-link:hover,
.bp-terms-notice-link:focus {
    color: #8f5000;
    text-decoration: underline;
}

.bp-terms-notice-link .bi {
    font-size: 13px;
    transition: transform .15s ease;
}

.bp-terms-notice-link:hover .bi {
    transform: translateX(3px);
}

@media (max-width: 600px) {
    .bp-terms-notice {
        gap: 14px;
        padding: 18px;
    }

    .bp-terms-notice-icon {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
        font-size: 18px;
    }
}