.bn-purchase { display: block; margin: 24px 0 32px; color: #00254c; }
.bn-purchase__express { margin: 20px 0; --shopify-accelerated-checkout-button-block-size: 48px; --shopify-accelerated-checkout-button-border-radius: 10px; }
.bn-purchase__express more-payment-options-link,
.bn-purchase__express .shopify-payment-button__more-options { display: none !important; }
.bn-purchase__payment-info { margin-top: 12px; color: #536471; font-size: 12px; line-height: 1.65; }
.bn-purchase__payment-info[hidden] { display: none; }
.bn-purchase__payment-info summary { display: list-item; list-style: disclosure-closed inside; width: fit-content; margin: 0 auto; padding: 8px 12px; cursor: pointer; color: #00254c; font-size: 13px; }
.bn-purchase__payment-info[open] summary { list-style-type: disclosure-open; }
.bn-purchase__payment-info summary:focus-visible { outline: 2px solid #316e9c; outline-offset: 3px; border-radius: 4px; }
.bn-purchase__payment-info [data-payment-info-content] { padding: 8px 0; }
.bn-purchase__payment-info small { font: inherit; }
.bn-purchase__delivery { margin: 0; font-size: 12px; font-weight: 400; line-height: 1.5; color: #536471; }
.bn-purchase [hidden], .bn-purchase .bn-purchase__enhanced { display: none !important; }
.bn-purchase.is-ready .bn-purchase__enhanced:not([hidden]) { display: block !important; }
.bn-purchase.is-ready .bn-purchase__native { display: none; }
.bn-purchase:not(.is-ready) .bn-purchase__summary { display: none; }
.bn-purchase .product-form { margin: 0; }
.bn-purchase fieldset { padding: 0; margin: 0 0 20px; border: 0; min-width: 0; }
.bn-purchase legend { font-size: 18px; font-weight: 650; margin-bottom: 14px; padding: 0; }
.bn-purchase__variant { display: flex; align-items: center; gap: 14px; padding: 18px; margin-bottom: 10px; border: 1px solid #d9e1e4; border-radius: 14px; cursor: pointer; transition: background .15s, border-color .15s; }
.bn-purchase__variant:hover { border-color: #6e9291; }
.bn-purchase__variant:has(input:checked) { background: #f1f7f5; border: 2px solid #00254c; padding: 17px; box-shadow: 0 3px 12px #00254c08; }
.bn-purchase__variant:has(input:disabled) { opacity: .5; cursor: not-allowed; }
.bn-purchase input[type=radio], .bn-purchase input[type=checkbox] { width: 20px; height: 20px; margin: 0; accent-color: #00254c; flex-shrink: 0; cursor: pointer; }
.bn-purchase__variant-copy { flex: 1; min-width: 0; }
.bn-purchase__variant-copy strong, .bn-purchase__variant-price strong { display: block; font-size: 19px; font-weight: 650; line-height: 1.4; }
.bn-purchase__unit { display: block; color: #536471; font-size: 13px; margin-top: 3px; }
.bn-purchase__variant-price { text-align: right; flex-shrink: 0; }
.bn-purchase__saving { display: inline-block; padding: 2px 9px; margin-top: 5px; color: #285c4b; background: #e1efe7; border-radius: 20px; font-size: 12px; font-weight: 650; }
.bn-purchase__subscription { padding: 12px 14px; border: 1px solid #d9e6e0; background: #f4f8f5; border-radius: 12px; margin-bottom: 16px; }
.bn-purchase__subscribe-label { display: flex; gap: 10px; align-items: center; min-height: 24px; cursor: pointer; }
.bn-purchase .bn-purchase__subscribe-label input { width: 18px; height: 18px; }
.bn-purchase__subscribe-label > span { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.bn-purchase__subscribe-label strong { font-size: 15px; line-height: 1.4; }
.bn-purchase__subscribe-label small { color: #285c4b; background: #e1efe7; border-radius: 20px; padding: 1px 7px; font-size: 12px; font-weight: 650; line-height: 1.5; }
.bn-purchase [data-plan-controls] { padding: 3px 0 0 28px; }
.bn-purchase [data-plan-controls] > label { font-size: 13px; font-weight: 600; display: block; margin-bottom: 7px; }
.bn-purchase select { width: 100%; max-width: 100%; padding: 12px; border: 1px solid #bdcec6; border-radius: 8px; color: #00254c; background: white; font: inherit; font-size: 14px; }
.bn-purchase .bn-purchase__terms { font-size: 12px; line-height: 1.6; color: #536471; margin: 12px 0 0; }
.bn-purchase__summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin: 22px 0 18px; }
.bn-purchase__summary > span { color: #536471; font-size: 14px; }
.bn-purchase__summary strong { font-size: 26px; line-height: 1.2; }
.bn-purchase__actions { display: flex; align-items: flex-end; gap: 14px; }
.bn-purchase__quantity { flex: 0 0 126px; }
.bn-purchase__quantity > label { display: block; font-size: 12px; margin-bottom: 6px; color: #536471; }
.bn-purchase__quantity > div { display: flex; height: 54px; border: 1px solid #d9e1e4; border-radius: 10px; overflow: hidden; }
.bn-purchase__quantity button { border: 0; background: #f4f7f6; color: #00254c; width: 36px; flex-shrink: 0; font-size: 20px; cursor: pointer; }
.bn-purchase__quantity button:disabled { opacity: .4; cursor: default; }
.bn-purchase__quantity input { appearance: textfield; width: 100%; min-width: 0; text-align: center; border: 0; border-radius: 0; font: inherit; font-size: 16px; color: #00254c; background: white; }
.bn-purchase__quantity input::-webkit-inner-spin-button { appearance: none; }
.bn-purchase .product-form__submit { min-height: 54px; flex: 1; margin: 0; border-radius: 10px; font-size: 16px; font-weight: 650; letter-spacing: .02em; }
.bn-purchase .bn-purchase__note { font-size: 12px; line-height: 1.5; text-align: center; color: #536471; margin: 14px 0 0; }
.bn-purchase .product-form__error-message-wrapper { padding: 14px; margin-bottom: 16px; border: 1px solid #b94545; border-radius: 8px; color: #9f2929; font-size: 14px; }
@media (max-width: 749px) {
  .bn-purchase__variant { padding: 14px; gap: 10px; }
  .bn-purchase__variant:has(input:checked) { padding: 13px; }
  .bn-purchase__variant-copy strong, .bn-purchase__variant-price strong { font-size: 17px; }
  .bn-purchase__summary strong { font-size: 23px; }
  .bn-purchase__quantity { flex-basis: 114px; }
  .bn-purchase__actions { gap: 10px; }
}
@media (prefers-reduced-motion: reduce) { .bn-purchase__variant { transition: none; } }
