.btp-page {
    --btp-green: var(--mi-green, #315e43);
    --btp-dark: var(--mi-green-dark, #21432f);
    --btp-card: var(--mi-card, #ffffff);
    --btp-border: var(--mi-border, rgba(49, 94, 67, .12));
    --btp-shadow: var(--mi-shadow, 0 18px 44px rgba(28, 50, 36, .10));
    --btp-soft: var(--mi-beige, #f2ede4);
}

.btp-page .page-hero {
    position: relative;
    min-height: 560px;
    overflow: hidden;
    isolation: isolate;
    background: var(--btp-dark);
}

.btp-page .page-hero .hero-image {
    position: absolute;
    inset: 0;
    z-index: -2;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.btp-page .page-hero::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    content: "";
    background: linear-gradient(90deg, rgba(17, 38, 26, .93) 0%, rgba(17, 38, 26, .78) 47%, rgba(17, 38, 26, .38) 100%);
}

.btp-page .page-hero .container {
    position: relative;
    z-index: 1;
    padding-top: 6rem;
    padding-bottom: 5.5rem;
}

.btp-page .page-hero .eyebrow {
    color: #fff !important;
    border-color: rgba(255,255,255,.28);
    background: rgba(255,255,255,.10);
    backdrop-filter: blur(8px);
}

.btp-page .page-hero h1 {
    max-width: 850px;
    font-size: clamp(2.45rem, 5vw, 4.5rem);
    line-height: 1.03;
    text-wrap: balance;
}

.btp-page .page-hero .lead {
    max-width: 730px;
    color: rgba(255,255,255,.88);
    line-height: 1.75;
}

.btp-page .hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    margin-top: 1.8rem;
}

.btp-page .hero-actions .btn {
    border-radius: 999px;
    padding: .9rem 1.4rem;
    font-weight: 800;
}

.btp-page .trust-strip {
    position: relative;
    z-index: 2;
}

.btp-page .trust-item {
    height: 100%;
    padding: .75rem .5rem;
    text-align: center;
}

.btp-page .trust-icon {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    margin: 0 auto .85rem;
    border-radius: 1rem;
    background: color-mix(in srgb, var(--btp-green) 10%, var(--bs-body-bg));
    color: var(--btp-green);
    font-size: 1.55rem;
    box-shadow: inset 0 0 0 1px var(--btp-border);
    transition: transform .3s ease, box-shadow .3s ease;
}

.btp-page .trust-item:hover .trust-icon {
    transform: translateY(-4px);
    box-shadow: inset 0 0 0 1px var(--btp-border), 0 12px 28px rgba(33, 67, 47, .12);
}

.btp-page .content-section {
    padding: 6.25rem 0;
}

.btp-page .content-section.compact {
    padding: 5.25rem 0;
}

.btp-page .section-kicker {
    display: inline-block;
    margin-bottom: .85rem;
    color: var(--btp-green);
    font-size: .82rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.btp-page .section-title {
    max-width: 760px;
    margin-bottom: 1.25rem;
    font-size: clamp(2rem, 3.2vw, 3.15rem);
    line-height: 1.08;
    text-wrap: balance;
}

.btp-page .section-intro {
    max-width: 760px;
    margin-bottom: 0;
    color: var(--bs-secondary-color);
    font-size: 1.05rem;
    line-height: 1.8;
}

.btp-page .section-image {
    display: block;
    width: 100%;
    height: auto;
    min-height: 430px;
    max-height: 560px;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    border-radius: 1.6rem;
    box-shadow: 0 24px 55px rgba(22, 42, 29, .18);
    animation: imageFloat 5.5s ease-in-out infinite;
    will-change: transform;
    transition: box-shadow .35s ease, transform .35s ease;
}

.btp-page .section-image:hover {
    transform: translateY(-8px) scale(1.012);
    box-shadow: 0 32px 70px rgba(22, 42, 29, .24);
    animation-play-state: paused;
}

@keyframes imageFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

.btp-page .expert-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
    margin-top: 3rem;
}

.btp-page .expert-card {
    height: 100%;
    padding: 1.65rem;
    border: 1px solid var(--btp-border);
    border-radius: 1.25rem;
    background: var(--bs-body-bg);
    box-shadow: 0 12px 30px rgba(25, 46, 32, .06);
    transition: transform .3s ease, box-shadow .3s ease;
}

.btp-page .expert-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 38px rgba(25, 46, 32, .11);
}

.btp-page .expert-card i {
    display: block;
    width: fit-content;
    margin: 0 auto 1rem;
    color: var(--btp-green);
    font-size: 1.7rem;
    text-align: center;
}

.btp-page .expert-card h3 {
    margin-bottom: .65rem;
    font-size: 1.08rem;
}

.btp-page .expert-card p {
    margin-bottom: 0;
    color: var(--bs-secondary-color);
    line-height: 1.7;
}

.btp-page .clean-list {
    display: grid;
    gap: .85rem;
    margin: 1.75rem 0 0;
    padding: 0;
    list-style: none;
}

.btp-page .clean-list li {
    display: flex;
    gap: .8rem;
    align-items: flex-start;
    color: var(--bs-secondary-color);
    line-height: 1.65;
}

.btp-page .clean-list i {
    flex: 0 0 auto;
    margin-top: .1rem;
    color: var(--btp-green);
    font-size: 1.1rem;
}

.btp-page .step-list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 3rem;
}

.btp-page .step {
    padding: 1.5rem;
    border-top: 3px solid var(--btp-green);
    border-radius: 0 0 1rem 1rem;
    background: var(--bs-body-bg);
    box-shadow: 0 10px 28px rgba(25, 46, 32, .06);
}

.btp-page .step-number {
    display: block;
    margin-bottom: .8rem;
    color: var(--btp-green);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.btp-page .step h3 {
    margin-bottom: .55rem;
    font-size: 1rem;
}

.btp-page .step p {
    margin-bottom: 0;
    color: var(--bs-secondary-color);
    font-size: .94rem;
    line-height: 1.65;
}

.btp-page .equipment-line {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 2.5rem;
}

.btp-page .equipment-item {
    display: flex;
    gap: 1rem;
    padding: 1.25rem;
    border: 1px solid var(--btp-border);
    border-radius: 1.1rem;
    background: var(--bs-body-bg);
}

.btp-page .equipment-item i {
    color: var(--btp-green);
    font-size: 1.45rem;
}

.btp-page .equipment-item strong {
    display: block;
    margin-bottom: .25rem;
}

.btp-page .equipment-item span {
    color: var(--bs-secondary-color);
    font-size: .94rem;
    line-height: 1.6;
}

.btp-page .proof-panel {
    padding: 2rem;
    border: 1px solid var(--btp-border);
    border-radius: 1.5rem;
    background: var(--bs-body-bg);
    box-shadow: var(--btp-shadow);
}

.btp-page .proof-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    margin-top: 2rem;
}

.btp-page .proof-point {
    display: flex;
    gap: .85rem;
    align-items: flex-start;
}

.btp-page .proof-point i {
    color: var(--btp-green);
    font-size: 1.3rem;
}

.btp-page .proof-point h3 {
    margin-bottom: .3rem;
    font-size: 1rem;
}

.btp-page .proof-point p {
    margin-bottom: 0;
    color: var(--bs-secondary-color);
    font-size: .93rem;
    line-height: 1.6;
}

.btp-page .faq-wrap {
    max-width: 930px;
    margin: 2.5rem auto 0;
}

.btp-page .accordion-item {
    overflow: hidden;
    margin-bottom: .85rem;
    border: 1px solid var(--btp-border);
    border-radius: 1rem !important;
    background: var(--bs-body-bg);
}

.btp-page .accordion-button {
    padding: 1.2rem 1.35rem;
    font-weight: 800;
    background: transparent;
    box-shadow: none !important;
}

.btp-page .accordion-button:not(.collapsed) {
    color: var(--btp-dark);
    background: color-mix(in srgb, var(--btp-green) 7%, var(--bs-body-bg));
}

.btp-page .accordion-body {
    color: var(--bs-secondary-color);
    line-height: 1.75;
}

.btp-page .pro-cta {
    margin-bottom: 5rem;
    padding: 2.25rem;
    border-radius: 1.75rem;
    color: #fff;
    background: linear-gradient(135deg, #21432f, #315e43);
    box-shadow: 0 20px 44px rgba(24, 52, 35, .18);
}

.btp-page .pro-cta p {
    max-width: 720px;
    color: rgba(255,255,255,.78);
}

.btp-page .pro-cta .btn {
    border-radius: 999px;
    font-weight: 800;
}

@media (max-width: 1399.98px) {
    .btp-page .step-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .btp-page .content-section {
        padding: 4.8rem 0;
    }

    .btp-page .expert-grid {
        grid-template-columns: 1fr;
    }

    .btp-page .section-image {
        min-height: 360px;
        margin-top: 1.5rem;
    }
}


@media (max-width: 575.98px) {
    .btp-page .page-hero .container {
        padding-top: 4.6rem;
        padding-bottom: 4.3rem;
    }

    .btp-page .hero-actions .btn {
        width: 100%;
    }

    .btp-page .content-section {
        padding: 4rem 0;
    }

    .btp-page .step-list,
    .btp-page .equipment-line,
    .btp-page .proof-row {
        grid-template-columns: 1fr;
    }

    .btp-page .section-image {
        min-height: 300px;
    }
}

.btp-page .hub-link-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.15rem;
    margin-top: 2.25rem;
}
.btp-page .hub-link-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 1.55rem;
    border: 1px solid var(--btp-border);
    border-radius: 1.35rem;
    background: var(--btp-card);
    box-shadow: var(--btp-shadow);
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.btp-page .hub-link-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 24px 54px rgba(22, 42, 29, .16);
    border-color: rgba(49, 94, 67, .30);
}
.btp-page .hub-link-card > i {
    display: block;
    width: fit-content;
    margin: 0 auto 1rem;
    color: var(--btp-green);
    font-size: 1.7rem;
}
.btp-page .hub-link-card h3 {
    margin-bottom: .65rem;
    font-size: 1.15rem;
    text-align: center;
}
.btp-page .hub-link-card p {
    margin-bottom: 1.1rem;
    color: var(--mi-muted, #68736b);
    line-height: 1.65;
}
.btp-page .hub-link-card > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    width: fit-content;
    margin: auto auto 0;
    font-weight: 800;
    text-decoration: none;
}

.btp-page .hub-link-card > a > i {
    display: inline-block;
    width: auto;
    margin: 0;
    color: currentColor;
    font-size: 1.2rem;
    line-height: 1;
}
.btp-page .hub-link-card a::after {
    position: absolute;
    inset: 0;
    content: "";
}
.btp-page .hub-parent-link {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: 1rem;
    font-weight: 800;
    text-decoration: none;
}
@media (max-width: 991.98px) {
    .btp-page .hub-link-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 575.98px) {
    .btp-page .hub-link-grid {
        grid-template-columns: 1fr;
    }
}

.btp-page .reference-panel{margin:2rem auto 0;padding:1.35rem 1.45rem;border:1px solid var(--btp-border);border-radius:1.25rem;background:var(--btp-card);box-shadow:0 16px 38px rgba(22,42,29,.08)}
.btp-page .reference-panel-head{display:flex;align-items:flex-start;gap:.85rem;margin-bottom:1rem}
.btp-page .reference-panel-head i{flex:0 0 auto;color:var(--btp-green);font-size:1.45rem}
.btp-page .reference-panel-head h3{margin:0 0 .25rem;font-size:1.1rem}
.btp-page .reference-panel-head p{margin:0;color:var(--mi-muted,#68736b);font-size:.92rem}
.btp-page .reference-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.btp-page .reference-link{display:flex;align-items:flex-start;gap:.7rem;padding:.9rem 1rem;border:1px solid var(--btp-border);border-radius:1rem;color:inherit;text-decoration:none;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.btp-page .reference-link:hover,.btp-page .reference-link:focus-visible{transform:translateY(-2px);border-color:rgba(49,94,67,.32);box-shadow:0 12px 28px rgba(22,42,29,.08)}
.btp-page .reference-link i{flex:0 0 auto;margin-top:.08rem;color:var(--btp-green);font-size:1.1rem}
.btp-page .reference-link strong,.btp-page .reference-link span{display:block}
.btp-page .reference-link strong{margin-bottom:.15rem;font-size:.94rem}
.btp-page .reference-link span{color:var(--mi-muted,#68736b);font-size:.84rem;line-height:1.45}
@media(max-width:767.98px){.btp-page .reference-links{grid-template-columns:1fr}}

