/*
 * BazaarMed Sitewide Final v1
 * Agent 05 — remaining public, account, commerce and content routes.
 * Scope contract: loaded after bm-sitewide-final-v1.css and activated only
 * when html.bm-sitewide-final-v1 is present.
 */

html.bm-sitewide-final-v1 {
    /* Aligned to the v35 homepage / products-vendors brand tokens
       (--bmsw-primary #05427e, --bmsw-green #23ad77) — these previously
       matched the older v1/v2 preview blue instead of the approved v35 one. */
    --bm-rem-blue: #05427e;
    --bm-rem-blue-deep: #032f5b;
    --bm-rem-cyan: #01affd;
    --bm-rem-green: #23ad77;
    --bm-rem-green-deep: #16835a;
    --bm-rem-ink: #10233b;
    --bm-rem-muted: #5c7088;
    --bm-rem-page: #f4f8fc;
    --bm-rem-surface: #ffffff;
    --bm-rem-line: #dce7f1;
    --bm-rem-line-strong: #c9d9e8;
    --bm-rem-danger: #c93645;
    --bm-rem-radius-control: 12px;
    --bm-rem-radius-card: 20px;
    --bm-rem-radius-panel: 28px;
    --bm-rem-shadow-sm: 0 8px 24px rgba(18, 54, 97, .06);
    --bm-rem-shadow-md: 0 18px 48px rgba(18, 54, 97, .10);
    --bm-rem-ease: cubic-bezier(.2, .8, .2, 1);
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content,
    .bm-final-route-generic
) body {
    color: var(--bm-rem-ink);
    background:
        radial-gradient(circle at 8% 18%, rgba(1, 175, 253, .07), transparent 26rem),
        radial-gradient(circle at 92% 72%, rgba(47, 174, 125, .07), transparent 28rem),
        var(--bm-rem-page);
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) main {
    min-height: 52vh;
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(a, button, input, select, textarea) {
    transition:
        color 220ms var(--bm-rem-ease),
        background-color 220ms var(--bm-rem-ease),
        border-color 220ms var(--bm-rem-ease),
        box-shadow 220ms var(--bm-rem-ease),
        opacity 220ms var(--bm-rem-ease),
        transform 220ms var(--bm-rem-ease);
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(button, [type="button"], [type="submit"], .uk-button, .hikabtn, .btn) {
    min-height: 46px;
    border-radius: var(--bm-rem-radius-control);
    font-weight: 800;
    cursor: pointer;
    touch-action: manipulation;
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(.uk-button-primary, .hikabtn-primary, .hikabtn-success, .btn-primary, .btn-success) {
    border-color: var(--bm-rem-blue) !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--bm-rem-blue), #1769a7) !important;
    box-shadow: 0 10px 24px rgba(29, 78, 137, .18);
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(.uk-button-primary, .hikabtn-primary, .hikabtn-success, .btn-primary, .btn-success):hover {
    border-color: var(--bm-rem-blue-deep) !important;
    background: linear-gradient(135deg, var(--bm-rem-blue-deep), var(--bm-rem-blue)) !important;
    box-shadow: 0 14px 30px rgba(29, 78, 137, .24);
    transform: translateY(-2px);
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(.uk-button-default, .hikabtn-default, .btn-secondary) {
    border: 1px solid var(--bm-rem-line-strong) !important;
    color: var(--bm-rem-blue) !important;
    background: #fff !important;
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(.uk-button-default, .hikabtn-default, .btn-secondary):hover {
    border-color: rgba(29, 78, 137, .35) !important;
    background: #eef6fd !important;
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(button, input, select, textarea, a):focus-visible {
    outline: 3px solid rgba(1, 175, 253, .30) !important;
    outline-offset: 3px;
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(input, select, textarea, .uk-input, .uk-select, .form-control, .form-select) {
    min-height: 46px;
    border: 1px solid var(--bm-rem-line-strong) !important;
    border-radius: var(--bm-rem-radius-control) !important;
    color: var(--bm-rem-ink);
    background-color: #fff;
    box-shadow: 0 1px 0 rgba(18, 54, 97, .02);
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(input, select, textarea, .uk-input, .uk-select, .form-control, .form-select):focus {
    border-color: var(--bm-rem-blue) !important;
    box-shadow: 0 0 0 4px rgba(29, 78, 137, .10) !important;
}

html.bm-sitewide-final-v1:is(
    .bm-final-route-auth,
    .bm-final-route-account,
    .bm-final-route-commerce,
    .bm-final-route-search,
    .bm-final-route-content
) :is(input, select, textarea, button):disabled {
    cursor: not-allowed;
    opacity: .52;
    box-shadow: none !important;
    transform: none !important;
}

/* Authentication — one calm, trustworthy focal panel. */
html.bm-sitewide-final-v1.bm-final-route-auth body {
    background:
        linear-gradient(rgba(18, 54, 97, .025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(18, 54, 97, .025) 1px, transparent 1px),
        radial-gradient(circle at 15% 20%, rgba(1, 175, 253, .13), transparent 25rem),
        radial-gradient(circle at 88% 80%, rgba(47, 174, 125, .11), transparent 28rem),
        #f6fbfe;
    background-size: 48px 48px, 48px 48px, auto, auto, auto;
}

html.bm-sitewide-final-v1.bm-final-route-auth :is(
    .cellphone-content,
    .authcode-content,
    .registration-content
) {
    position: relative;
    width: min(calc(100% - 32px), 560px);
    margin: clamp(40px, 7vw, 92px) auto;
    padding: clamp(24px, 4vw, 42px);
    overflow: hidden;
    border: 1px solid rgba(29, 78, 137, .14);
    border-radius: var(--bm-rem-radius-panel);
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 28px 80px rgba(18, 54, 97, .13);
    isolation: isolate;
}

html.bm-sitewide-final-v1.bm-final-route-auth .registration-content {
    width: min(calc(100% - 32px), 820px);
}

html.bm-sitewide-final-v1.bm-final-route-auth :is(
    .cellphone-content,
    .authcode-content,
    .registration-content
)::before {
    position: absolute;
    inset: 0 0 auto;
    z-index: -1;
    height: 7px;
    content: "";
    background: linear-gradient(90deg, var(--bm-rem-blue), var(--bm-rem-cyan), var(--bm-rem-green));
}

html.bm-sitewide-final-v1.bm-final-route-auth :is(
    .cellphone-content,
    .authcode-content,
    .registration-content
)::after {
    position: absolute;
    inset: -90px -90px auto auto;
    z-index: -1;
    width: 220px;
    height: 220px;
    border: 42px solid rgba(1, 175, 253, .055);
    border-radius: 50%;
    content: "";
}

html.bm-sitewide-final-v1.bm-final-route-auth :is(
    .cellphone-content,
    .authcode-content,
    .registration-content
) > h1 {
    margin: 0 0 28px !important;
    color: var(--bm-rem-ink) !important;
    font-size: clamp(22px, 3vw, 30px) !important;
    font-weight: 900 !important;
    line-height: 1.65;
}

html.bm-sitewide-final-v1.bm-final-route-auth #user-auth {
    position: relative;
}

html.bm-sitewide-final-v1.bm-final-route-auth #user-auth form {
    margin: 0;
}

html.bm-sitewide-final-v1.bm-final-route-auth #user-auth :is(.uk-form-label, label) {
    display: block;
    margin: 0 0 8px;
    color: var(--bm-rem-ink);
    font-size: 14px;
    font-weight: 800;
}

html.bm-sitewide-final-v1.bm-final-route-auth #user-auth :is(input, select, textarea) {
    width: 100%;
    min-height: 54px;
    padding-inline: 16px;
    font-size: 16px;
}

html.bm-sitewide-final-v1.bm-final-route-auth #user-auth button[type="submit"] {
    width: 100%;
    min-height: 54px;
}

html.bm-sitewide-final-v1.bm-final-route-auth .otp-wrapper {
    display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 9px !important;
    direction: ltr;
}

html.bm-sitewide-final-v1.bm-final-route-auth .otp-wrapper .otp-input {
    width: 100%;
    min-width: 0;
    height: 58px;
    padding: 0 !important;
    border-radius: 12px !important;
    color: var(--bm-rem-blue-deep);
    font-size: 22px;
    font-variant-numeric: tabular-nums;
    font-weight: 900;
}

html.bm-sitewide-final-v1.bm-final-route-auth .otp-wrapper .otp-input:valid {
    border-color: var(--bm-rem-green) !important;
    background: #f2fbf7 !important;
}

html.bm-sitewide-final-v1.bm-final-route-auth .buttons_row,
html.bm-sitewide-final-v1.bm-final-route-auth .plainlink {
    min-height: 44px;
    align-items: center;
}

html.bm-sitewide-final-v1.bm-final-route-auth .plainlink {
    color: var(--bm-rem-blue) !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    text-decoration: none;
}

html.bm-sitewide-final-v1.bm-final-route-auth .plainlink:hover {
    color: var(--bm-rem-green-deep) !important;
}

html.bm-sitewide-final-v1.bm-final-route-auth .authLoaderCom {
    z-index: 20;
    border-radius: var(--bm-rem-radius-card);
    background: rgba(255, 255, 255, .80);
    backdrop-filter: blur(5px);
}

html.bm-sitewide-final-v1.bm-final-route-auth .authWrapper {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

html.bm-sitewide-final-v1.bm-final-route-auth main.uk-background-muted {
    background: transparent !important;
}

html.bm-sitewide-final-v1.bm-final-route-auth #system-message-container .uk-alert {
    border-radius: var(--bm-rem-radius-control) !important;
    border: 0 !important;
    box-shadow: var(--bm-rem-shadow-sm);
}

html.bm-sitewide-final-v1.bm-final-route-auth #system-message-container .uk-alert-close {
    background: transparent !important;
    color: inherit !important;
    opacity: .7;
}

/* Profile, addresses and orders — consistent dashboard surfaces. */
html.bm-sitewide-final-v1.bm-final-route-account :is(
    .com-users-profile,
    .com-users-profile__edit-form,
    .hikashop_address_listing_div,
    .hikashop_order_listing,
    .hikashop_orders_content
) {
    width: min(calc(100% - 32px), 1180px);
    margin-inline: auto;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile {
    margin-block: clamp(32px, 6vw, 72px);
    padding: clamp(22px, 4vw, 42px);
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-panel);
    background: rgba(255, 255, 255, .96);
    box-shadow: var(--bm-rem-shadow-md);
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile > :is(h1, h2),
html.bm-sitewide-final-v1.bm-final-route-account .profileTitle {
    color: var(--bm-rem-ink) !important;
    font-size: clamp(24px, 3vw, 34px) !important;
    font-weight: 900 !important;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile :is(
    .com-users-profile__core,
    .com-users-profile__custom,
    .com-users-profile__params,
    .com-users-profile__multifactor
) {
    margin-top: 20px;
    padding: 22px;
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
    background: linear-gradient(180deg, #fff, #fbfdff);
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile dl {
    display: grid;
    grid-template-columns: minmax(140px, .55fr) minmax(0, 1fr);
    margin: 0;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile :is(dt, dd) {
    min-width: 0;
    margin: 0;
    padding: 12px 14px;
    border-bottom: 1px solid #edf3f8;
    line-height: 1.8;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile dt {
    color: var(--bm-rem-muted);
    font-weight: 700;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile dd {
    color: var(--bm-rem-ink);
    font-weight: 750;
    overflow-wrap: anywhere;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile__edit-form {
    margin-block: clamp(32px, 6vw, 72px);
    padding: clamp(22px, 4vw, 40px);
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-panel);
    background: #fff;
    box-shadow: var(--bm-rem-shadow-md);
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile__edit-form :is(
    fieldset,
    .control-group
) {
    min-width: 0;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile__edit-form fieldset {
    margin: 0 0 24px;
    padding: 20px;
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile__edit-form legend {
    width: auto;
    padding: 0 10px;
    color: var(--bm-rem-blue-deep);
    font-size: 18px;
    font-weight: 900;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile__edit-form .control-group {
    display: grid;
    grid-template-columns: minmax(150px, .38fr) minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    margin: 0;
    padding: 12px 0;
    border-bottom: 1px solid #edf3f8;
}

html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile__edit-form .control-label {
    color: var(--bm-rem-ink);
    font-weight: 800;
}

html.bm-sitewide-final-v1.bm-final-route-account :is(
    .hikashop_address_listing_div,
    .hikashop_orders_content,
    .hikashop_order_listing
) {
    margin-block: clamp(30px, 5vw, 64px);
}

html.bm-sitewide-final-v1.bm-final-route-account :is(
    .address_selection,
    .hikashop_user_address,
    .orderBox
) {
    position: relative;
    height: 100%;
    padding: 20px;
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
    background: #fff;
    box-shadow: var(--bm-rem-shadow-sm);
}

html.bm-sitewide-final-v1.bm-final-route-account :is(
    .address_selection,
    .hikashop_user_address,
    .orderBox
):hover {
    border-color: rgba(29, 78, 137, .24);
    box-shadow: var(--bm-rem-shadow-md);
    transform: translateY(-3px);
}

html.bm-sitewide-final-v1.bm-final-route-account .defaultAddress,
html.bm-sitewide-final-v1.bm-final-route-account .address_selected {
    border-color: rgba(47, 174, 125, .55);
    box-shadow: 0 0 0 3px rgba(47, 174, 125, .08), var(--bm-rem-shadow-sm);
}

html.bm-sitewide-final-v1.bm-final-route-account :is(.ordersTable, .orderDetailsTable) {
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
    box-shadow: var(--bm-rem-shadow-sm);
}

html.bm-sitewide-final-v1.bm-final-route-account :is(.ordersTable, .orderDetailsTable) th {
    padding: 14px;
    border-bottom: 1px solid var(--bm-rem-line);
    color: var(--bm-rem-blue-deep);
    background: #eff6fc;
    font-size: 13px;
    font-weight: 900;
    text-align: right;
}

html.bm-sitewide-final-v1.bm-final-route-account :is(.ordersTable, .orderDetailsTable) td {
    padding: 15px 14px;
    border-bottom: 1px solid #edf3f8;
    color: var(--bm-rem-ink);
    vertical-align: middle;
}

/* .ordersTable's real markup is div/grid-based (header/body/row), not a <table> — style that structure directly. */
html.bm-sitewide-final-v1.bm-final-route-account .ordersTable .header {
    padding: 14px;
    border-bottom: 1px solid var(--bm-rem-line);
    color: var(--bm-rem-blue-deep);
    background: #eff6fc;
    font-size: 13px;
    font-weight: 900;
}

html.bm-sitewide-final-v1.bm-final-route-account .ordersTable .body .row {
    padding: 15px 14px;
    border-bottom: 1px solid #edf3f8;
    color: var(--bm-rem-ink);
}

html.bm-sitewide-final-v1.bm-final-route-account .ordersTable .body .row:last-child {
    border-bottom: 0;
}

html.bm-sitewide-final-v1.bm-final-route-account :is(.ordersTable, .orderDetailsTable) tr:last-child td {
    border-bottom: 0;
}

html.bm-sitewide-final-v1.bm-final-route-account :is(.uk-label, .badge) {
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 800;
}

/* Cart and checkout — calm two-column flow with a stable summary. */
html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_checkout_page,
    .hikashop_cart,
    .hikashop_cart_page,
    .checkoutWrapper
) {
    width: min(calc(100% - 32px), 1240px);
    margin: clamp(30px, 5vw, 64px) auto;
}

html.bm-sitewide-final-v1.bm-final-route-commerce .hikashop_wizardbar {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 8px;
    margin-bottom: 24px;
    padding: 8px;
    border: 1px solid var(--bm-rem-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--bm-rem-shadow-sm);
}

html.bm-sitewide-final-v1.bm-final-route-commerce [class*="hikashop_cart_step"] {
    min-height: 48px;
    padding: 11px 14px;
    border-radius: 12px;
    color: var(--bm-rem-muted);
    background: #f7fafd;
    font-weight: 750;
}

html.bm-sitewide-final-v1.bm-final-route-commerce [class*="hikashop_cart_step"].hikashop_cart_step_current {
    color: #fff;
    background: linear-gradient(135deg, var(--bm-rem-blue), #1769a7);
}

html.bm-sitewide-final-v1.bm-final-route-commerce .hikashop_checkout_page {
    padding: clamp(18px, 3vw, 32px);
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-panel);
    background: rgba(255, 255, 255, .94);
    box-shadow: var(--bm-rem-shadow-md);
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_checkout_address,
    .hikashop_checkout_shipping,
    .hikashop_checkout_payment,
    .hikashop_checkout_coupon,
    .hikashop_checkout_fields,
    .hikashop_checkout_terms,
    .hikashop_checkout_login,
    .hikashop_checkout_cart
) {
    margin: 0 0 18px;
    padding: 20px;
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
    background: #fff;
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_checkout_shipping_div,
    .hikashop_checkout_payment_card,
    .hikashop_checkout_address_info
) {
    margin-bottom: 10px;
    padding: 16px;
    border: 1px solid var(--bm-rem-line);
    border-radius: 15px;
    background: #fbfdff;
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_checkout_shipping_div,
    .hikashop_checkout_payment_card
):has(input:checked) {
    border-color: rgba(47, 174, 125, .55);
    background: #f3fbf7;
    box-shadow: 0 0 0 3px rgba(47, 174, 125, .08);
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_cart_products,
    .hikashop_checkout_cart table
) {
    width: 100%;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_cart_products,
    .hikashop_checkout_cart table
) th {
    padding: 13px 12px;
    border-bottom: 1px solid var(--bm-rem-line);
    color: var(--bm-rem-blue-deep);
    background: #eff6fc;
    font-size: 13px;
    font-weight: 900;
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_cart_products,
    .hikashop_checkout_cart table
) td {
    padding: 15px 12px;
    border-bottom: 1px solid #edf3f8;
    vertical-align: middle;
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_cart_product_image_thumb,
    .hikashop_product_checkout_cart_image
) {
    width: 72px;
    height: 72px;
    padding: 5px;
    border: 1px solid var(--bm-rem-line);
    border-radius: 14px;
    object-fit: contain;
    background: #fff;
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .hikashop_checkout_cart_final_total,
    .hikashop_cart_total_value,
    .hika_show_cart_total_price
) {
    color: var(--bm-rem-blue-deep);
    font-size: 18px;
    font-variant-numeric: tabular-nums;
    font-weight: 900;
}

html.bm-sitewide-final-v1.bm-final-route-commerce .hikashop_checkout_buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
    margin-top: 20px;
}

html.bm-sitewide-final-v1.bm-final-route-commerce :is(
    .checkoutStartWrapper,
    .checkoutSummeryWrapper,
    .checkoutEndWrapper
) {
    min-width: 0;
}

/* Search — prominent query field and readable result cards. */
html.bm-sitewide-final-v1.bm-final-route-search .com-finder {
    padding-block: clamp(34px, 6vw, 72px) !important;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder > .uk-container {
    width: min(calc(100% - 32px), 1120px);
    max-width: none;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder > .uk-container > h1 {
    max-width: 860px;
    margin: 0 auto 24px !important;
    color: var(--bm-rem-ink) !important;
    font-size: clamp(25px, 4vw, 38px) !important;
    font-weight: 900 !important;
    line-height: 1.55;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__form {
    padding: clamp(18px, 3vw, 28px);
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
    background: #fff;
    box-shadow: var(--bm-rem-shadow-md);
}

html.bm-sitewide-final-v1.bm-final-route-search .js-finder-searchform {
    margin-bottom: 0 !important;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__search {
    margin: 0;
    padding: 0;
    border: 0;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__search #q {
    min-height: 54px;
    padding-inline: 18px;
    font-size: 16px;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__search button[type="submit"] {
    width: 100%;
    min-height: 54px;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__advanced {
    margin-top: 18px;
    padding: 18px;
    border: 1px solid var(--bm-rem-line);
    border-radius: 16px;
    background: #f8fbfe;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__tips {
    border: 0;
    border-radius: 14px;
    color: var(--bm-rem-muted);
    background: #eef6fc;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__results {
    margin-top: 28px;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__results > ol,
html.bm-sitewide-final-v1.bm-final-route-search .com-finder__results > ul {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__results > :is(ol, ul) > li {
    padding: 18px;
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
    background: #fff;
    box-shadow: var(--bm-rem-shadow-sm);
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__results > :is(ol, ul) > li:hover {
    border-color: rgba(29, 78, 137, .25);
    box-shadow: var(--bm-rem-shadow-md);
    transform: translateY(-3px);
}

html.bm-sitewide-final-v1.bm-final-route-search .com-finder__results .uk-width-expand {
    display: block !important;
    min-width: 0;
}

html.bm-sitewide-final-v1.bm-final-route-search .result__title {
    margin: 0 0 8px;
    line-height: 1.7;
}

html.bm-sitewide-final-v1.bm-final-route-search .result__title-link {
    color: var(--bm-rem-blue-deep);
    font-size: 17px;
    font-weight: 900;
    text-decoration: none;
}

html.bm-sitewide-final-v1.bm-final-route-search .result__title-link:hover {
    color: var(--bm-rem-blue);
}

html.bm-sitewide-final-v1.bm-final-route-search .result__title-url {
    display: block;
    margin-top: 4px;
    color: var(--bm-rem-green-deep);
    direction: ltr;
    font-size: 11px;
    overflow-wrap: anywhere;
    text-align: right;
}

html.bm-sitewide-final-v1.bm-final-route-search .result__description {
    margin: 0;
    color: var(--bm-rem-muted);
    font-size: 14px;
    line-height: 1.95;
}

html.bm-sitewide-final-v1.bm-final-route-search .result__image {
    margin: 0;
}

html.bm-sitewide-final-v1.bm-final-route-search .result__image img {
    width: 100%;
    border-radius: 14px;
    object-fit: cover;
}

html.bm-sitewide-final-v1.bm-final-route-search .result__taxonomy {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

html.bm-sitewide-final-v1.bm-final-route-search .result__taxonomy-item {
    padding: 4px 9px;
    border-radius: 999px;
    color: var(--bm-rem-blue);
    background: #eef6fc;
    font-size: 11px;
}

/* Magazine listing — editorial cards with consistent image ratios and height. */
html.bm-sitewide-final-v1.bm-final-route-mag .com-content-category-blog {
    width: min(calc(100% - 32px), 1280px);
    margin-inline: auto;
    padding-block: clamp(34px, 6vw, 72px);
}

/* mag.php also puts uk-margin-medium-top on .page-header, stacking a second
   ~40px gap on top of the container's own clamp() top padding above. Zero it
   out here so the header sits right after the container's single gap. */
html.bm-sitewide-final-v1.bm-final-route-mag .com-content-category-blog > .page-header {
    margin-top: 0 !important;
}

html.bm-sitewide-final-v1.bm-final-route-mag .com-content-category-blog .bigTitle {
    margin: 0 0 30px !important;
    color: var(--bm-rem-ink) !important;
    font-size: clamp(28px, 4vw, 42px) !important;
    font-weight: 900 !important;
}

html.bm-sitewide-final-v1.bm-final-route-mag .com-content-category-blog__items {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

html.bm-sitewide-final-v1.bm-final-route-mag .com-content-category-blog__item {
    min-width: 0;
    width: auto !important;
    padding: 0 !important;
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
    background: #fff;
    box-shadow: var(--bm-rem-shadow-sm);
    transition:
        border-color 240ms var(--bm-rem-ease),
        box-shadow 240ms var(--bm-rem-ease),
        transform 240ms var(--bm-rem-ease);
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper:hover {
    border-color: rgba(29, 78, 137, .24);
    box-shadow: var(--bm-rem-shadow-md);
    transform: translateY(-5px);
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper figure {
    margin: 0;
    overflow: hidden;
    background: #edf5fb;
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper figure a {
    display: block !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* The source art is exported square (2048x2048), so the card frame matches
   that ratio exactly and object-fit: cover fills it edge to edge with no
   crop and no letterbox padding. */
html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper figure img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    max-height: none !important;
    padding: 0 !important;
    background: none !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform 420ms var(--bm-rem-ease);
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper:hover figure img {
    transform: scale(1.035);
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper > :not(figure) {
    margin-inline: 20px;
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper .page-header {
    margin-top: 18px;
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper h2 {
    margin: 0;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.75;
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper h2 a {
    display: -webkit-box;
    color: var(--bm-rem-ink);
    overflow: hidden;
    text-decoration: none;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper h2 a:hover {
    color: var(--bm-rem-blue);
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper .article-info {
    color: var(--bm-rem-muted);
    font-size: 12px;
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper .readmore {
    margin-top: auto;
    padding-block: 16px 20px;
}

html.bm-sitewide-final-v1.bm-final-route-mag .magItemWrapper .readmore a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--bm-rem-blue);
    font-weight: 850;
    text-decoration: none;
}

/* Long-form articles, static pages, contact and FAQ. */
html.bm-sitewide-final-v1.bm-final-route-content:not(.bm-final-route-mag) .com-content-article {
    width: min(calc(100% - 32px), 1000px);
    margin: clamp(34px, 6vw, 72px) auto;
    padding: clamp(22px, 4vw, 48px);
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-panel);
    background: #fff;
    box-shadow: var(--bm-rem-shadow-md);
}

html.bm-sitewide-final-v1.bm-final-route-mag .com-content-article {
    width: min(calc(100% - 32px), 920px);
    max-width: none;
    margin-inline: auto;
    padding: clamp(22px, 4vw, 46px);
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-panel);
    background: #fff;
    box-shadow: var(--bm-rem-shadow-md);
}

html.bm-sitewide-final-v1.bm-final-route-content .com-content-article .page-header > :is(h1, h2) {
    margin: 0 0 20px;
    color: var(--bm-rem-ink) !important;
    font-size: clamp(26px, 4vw, 40px) !important;
    font-weight: 900 !important;
    line-height: 1.55;
}

html.bm-sitewide-final-v1.bm-final-route-content .com-content-article__body {
    color: #263c55 !important;
    font-size: 16px;
    line-height: 2.05;
}

html.bm-sitewide-final-v1.bm-final-route-content .com-content-article__body :is(p, li) {
    overflow-wrap: anywhere;
}

html.bm-sitewide-final-v1.bm-final-route-content .com-content-article__body :is(h2, h3, h4) {
    margin-block: 1.6em .65em;
    color: var(--bm-rem-ink);
    font-weight: 900;
    line-height: 1.65;
}

html.bm-sitewide-final-v1.bm-final-route-content .com-content-article__body a {
    color: var(--bm-rem-blue);
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

html.bm-sitewide-final-v1.bm-final-route-content .com-content-article__body :is(img, video, iframe) {
    max-width: 100%;
    border-radius: 16px;
}

html.bm-sitewide-final-v1.bm-final-route-content .item-image {
    overflow: hidden;
    border-radius: 20px !important;
    background: #edf5fb;
}

html.bm-sitewide-final-v1.bm-final-route-content .item-image img {
    display: block;
    width: 100%;
    height: auto;
}

html.bm-sitewide-final-v1.bm-final-route-content :is(
    .aboutWrapper,
    .contactWrapper,
    .contactForm
) {
    width: min(calc(100% - 32px), 1180px);
    margin-inline: auto;
}

html.bm-sitewide-final-v1.bm-final-route-content .contactItem {
    height: 100%;
    padding: 20px;
    border: 1px solid var(--bm-rem-line);
    border-radius: var(--bm-rem-radius-card);
    background: #fff;
    box-shadow: var(--bm-rem-shadow-sm);
}

html.bm-sitewide-final-v1.bm-final-route-content .uk-accordion {
    display: grid;
    gap: 12px;
    width: min(calc(100% - 32px), 960px);
    margin: 28px auto;
    padding: 0;
    list-style: none;
}

html.bm-sitewide-final-v1.bm-final-route-content .uk-accordion > li {
    overflow: hidden;
    border: 1px solid var(--bm-rem-line);
    border-radius: 16px;
    background: #fff;
    box-shadow: var(--bm-rem-shadow-sm);
}

html.bm-sitewide-final-v1.bm-final-route-content .uk-accordion .uk-accordion-title {
    min-height: 56px;
    padding: 16px 18px;
    color: var(--bm-rem-ink);
    font-size: 15px;
    font-weight: 850;
    text-decoration: none;
}

html.bm-sitewide-final-v1.bm-final-route-content .uk-accordion .uk-accordion-title:hover {
    color: var(--bm-rem-blue);
    background: #f7fbfe;
}

html.bm-sitewide-final-v1.bm-final-route-content .uk-accordion .uk-accordion-content {
    padding: 0 18px 18px;
    color: var(--bm-rem-muted);
    font-size: 14px;
    line-height: 2;
}

html.bm-sitewide-final-v1.bm-final-route-content :is(
    .contactForm,
    .formResponsive,
    .rsform
) :is(.form-group, .control-group) {
    margin-bottom: 16px;
}

html.bm-sitewide-final-v1.bm-final-route-content :is(
    .contactForm,
    .formResponsive,
    .rsform
) label {
    display: block;
    margin-bottom: 8px;
    color: var(--bm-rem-ink);
    font-weight: 800;
}

html.bm-sitewide-final-v1.bm-final-route-content :is(
    .contactForm,
    .formResponsive,
    .rsform
) textarea {
    min-height: 140px;
    resize: vertical;
}

/* Existing custom error layout: only refinement when the final stylesheet is available. */
html.bm-sitewide-final-v1 .bm-error-card {
    border-color: rgba(29, 78, 137, .14);
    border-radius: var(--bm-rem-radius-panel);
    box-shadow: var(--bm-rem-shadow-md);
}

html.bm-sitewide-final-v1 .bm-error-code {
    color: var(--bm-rem-blue);
    background: linear-gradient(135deg, #eef7fd, #edf9f4);
}

html.bm-sitewide-final-v1 .bm-error-action-primary {
    background: linear-gradient(135deg, var(--bm-rem-blue), #1769a7);
    box-shadow: 0 10px 24px rgba(29, 78, 137, .18);
}

/* Responsive contract. */
@media (max-width: 959px) {
    html.bm-sitewide-final-v1.bm-final-route-mag .com-content-category-blog__items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile__edit-form .control-group {
        grid-template-columns: 1fr;
        gap: 8px;
        align-items: start;
    }

    html.bm-sitewide-final-v1.bm-final-route-commerce :is(
        .hikashop_cart_products,
        .hikashop_checkout_cart
    ) {
        display: block;
        max-width: 100%;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: thin;
    }
}

@media (max-width: 639px) {
    html.bm-sitewide-final-v1:is(
        .bm-final-route-auth,
        .bm-final-route-account,
        .bm-final-route-commerce,
        .bm-final-route-search,
        .bm-final-route-content
    ) body {
        background-image:
            radial-gradient(circle at 10% 12%, rgba(1, 175, 253, .07), transparent 18rem),
            radial-gradient(circle at 90% 82%, rgba(47, 174, 125, .06), transparent 20rem);
    }

    html.bm-sitewide-final-v1.bm-final-route-auth :is(
        .cellphone-content,
        .authcode-content,
        .registration-content
    ) {
        width: min(calc(100% - 24px), 560px);
        margin-block: 24px 36px;
        padding: 24px 18px;
        border-radius: 22px;
    }

    html.bm-sitewide-final-v1.bm-final-route-auth .otp-wrapper {
        gap: 6px !important;
    }

    html.bm-sitewide-final-v1.bm-final-route-auth .otp-wrapper .otp-input {
        height: 52px;
        font-size: 19px;
    }

    html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile dl {
        grid-template-columns: 1fr;
    }

    html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile dt {
        padding-bottom: 4px;
        border-bottom: 0;
    }

    html.bm-sitewide-final-v1.bm-final-route-account .com-users-profile dd {
        padding-top: 4px;
    }

    html.bm-sitewide-final-v1.bm-final-route-account :is(
        .ordersTable,
        .orderDetailsTable
    ) {
        display: block;
        max-width: 100%;
        overflow-x: auto;
        white-space: nowrap;
    }

    html.bm-sitewide-final-v1.bm-final-route-commerce .hikashop_checkout_page {
        width: min(calc(100% - 24px), 1240px);
        padding: 14px;
        border-radius: 20px;
    }

    html.bm-sitewide-final-v1.bm-final-route-commerce :is(
        .hikashop_checkout_address,
        .hikashop_checkout_shipping,
        .hikashop_checkout_payment,
        .hikashop_checkout_coupon,
        .hikashop_checkout_fields,
        .hikashop_checkout_terms,
        .hikashop_checkout_login,
        .hikashop_checkout_cart
    ) {
        padding: 15px;
        border-radius: 16px;
    }

    html.bm-sitewide-final-v1.bm-final-route-commerce .hikashop_checkout_buttons {
        flex-direction: column;
    }

    html.bm-sitewide-final-v1.bm-final-route-commerce .hikashop_checkout_buttons > * {
        width: 100%;
    }

    html.bm-sitewide-final-v1.bm-final-route-search .com-finder > .uk-container {
        width: min(calc(100% - 24px), 1120px);
    }

    html.bm-sitewide-final-v1.bm-final-route-search .com-finder__form,
    html.bm-sitewide-final-v1.bm-final-route-search .com-finder__results > :is(ol, ul) > li {
        padding: 15px;
        border-radius: 16px;
    }

    html.bm-sitewide-final-v1.bm-final-route-search .result__image {
        width: 100% !important;
    }

    html.bm-sitewide-final-v1.bm-final-route-search .result__image img {
        aspect-ratio: 16 / 9;
    }

    html.bm-sitewide-final-v1.bm-final-route-mag .com-content-category-blog {
        width: min(calc(100% - 24px), 1280px);
        padding-block: 28px 44px;
    }

    html.bm-sitewide-final-v1.bm-final-route-mag .com-content-category-blog__items {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    html.bm-sitewide-final-v1.bm-final-route-content .com-content-article {
        width: min(calc(100% - 24px), 1000px) !important;
        margin-block: 24px 40px !important;
        padding: 21px 17px !important;
        border-radius: 20px !important;
    }

    html.bm-sitewide-final-v1.bm-final-route-content .com-content-article__body {
        font-size: 15px;
        line-height: 2;
    }

    html.bm-sitewide-final-v1.bm-final-route-content .uk-accordion {
        width: min(calc(100% - 24px), 960px);
    }
}

@media (prefers-reduced-motion: reduce) {
    html.bm-sitewide-final-v1:is(
        .bm-final-route-auth,
        .bm-final-route-account,
        .bm-final-route-commerce,
        .bm-final-route-search,
        .bm-final-route-content
    ) *,
    html.bm-sitewide-final-v1:is(
        .bm-final-route-auth,
        .bm-final-route-account,
        .bm-final-route-commerce,
        .bm-final-route-search,
        .bm-final-route-content
    ) *::before,
    html.bm-sitewide-final-v1:is(
        .bm-final-route-auth,
        .bm-final-route-account,
        .bm-final-route-commerce,
        .bm-final-route-search,
        .bm-final-route-content
    ) *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }

    html.bm-sitewide-final-v1:is(
        .bm-final-route-auth,
        .bm-final-route-account,
        .bm-final-route-commerce,
        .bm-final-route-search,
        .bm-final-route-content
    ) :is(a, button, .magItemWrapper, .orderBox, .address_selection):hover {
        transform: none !important;
    }
}

/* v1.5.1 — superseded: the old "show media completely" fix forced a fixed
   210px landscape box with object-fit: contain, which let the square
   (2048x2048) source art float inside as a small square surrounded by
   white padding. The square aspect-ratio rule set above on
   ".magItemWrapper figure img" already matches the source 1:1, so cover-fit
   there fills the frame edge to edge with zero crop and zero letterboxing —
   this block is intentionally left empty so it no longer overrides that. */

/* v1.5.0 — Legal pages use the approved navy/blue/green trust palette. */
html.bm-sitewide-final-v1.bm-final-route-legal body {
    background:
        radial-gradient(circle at 90% 6%, rgba(1, 175, 253, .08), transparent 28rem),
        radial-gradient(circle at 8% 82%, rgba(35, 173, 119, .07), transparent 25rem),
        #f4f8fc !important;
}

html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article {
    position: relative;
    overflow: hidden;
    border-color: #d7e4ee !important;
    background: linear-gradient(180deg, #fff 0%, #fbfdff 100%) !important;
}

html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 4px;
    background: linear-gradient(90deg, #23ad77 0%, #01affd 48%, #05427e 100%);
}

html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article .page-header > :is(h1, h2) {
    color: #07365f !important;
}

html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article__body {
    color: #29435d !important;
}

html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article__body :is(h2, h3, h4) {
    color: #05427e !important;
}

html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article__body a {
    color: #075eaa !important;
}

html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article__body :is(blockquote, .alert, .uk-alert) {
    border-inline-start: 4px solid #23ad77;
    border-radius: 12px;
    background: #eef8f5;
    color: #173f36;
}

/* v1.5.1 — removed: forced a fixed 180px height at mobile widths, fighting
   the square aspect-ratio set on ".magItemWrapper figure img" above and
   causing the same floating/letterboxed look on phones. The square ratio
   already scales correctly with the column width at every breakpoint. */


/* ---------------------------------------------------------------
   BMED FIX V12 - checkbox and radio sizing.
   The #user-auth rule earlier in this file forces width:100% and
   min-height:54px on every input, which renders checkboxes as empty
   full-width boxes. They still toggle, but nobody recognises them as
   checkboxes. Restore native sizing; specificity is one class above
   the offending rule so source order cannot matter.
   --------------------------------------------------------------- */
html.bm-sitewide-final-v1.bm-final-route-auth #user-auth input[type="checkbox"],
html.bm-sitewide-final-v1.bm-final-route-auth #user-auth input[type="radio"],
html.bm-sitewide-final-v1 input[type="checkbox"],
html.bm-sitewide-final-v1 input[type="radio"] {
    width: 16px;
    height: 16px;
    min-height: 16px;
    max-width: 16px;
    padding: 0;
    flex: 0 0 auto;
}

html.bm-sitewide-final-v1 .bm-reg-checkline {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

/* BazaarMed Terms Reader v4 — scoped exclusively to /terms. */
html.bm-sitewide-final-v1.bm-final-route-legal body.bm-terms-v4-page {
    background: #fff !important;
}

html.bm-sitewide-final-v1.bm-final-route-legal body.bm-terms-v4-page .com-content-article {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
}

html.bm-sitewide-final-v1.bm-final-route-legal body.bm-terms-v4-page .com-content-article::before,
html.bm-sitewide-final-v1.bm-final-route-legal body.bm-terms-v4-page .com-content-article > .page-header {
    display: none !important;
}

.bm-terms-v4 {
    --terms-navy: #06457f;
    --terms-navy-dark: #043665;
    --terms-green: #0a9b67;
    --terms-text: #3d5269;
    --terms-muted: #718196;
    --terms-line: #dce6ef;
    color: var(--terms-text);
    direction: rtl;
}

.bm-terms-hero {
    margin-inline: calc(50% - 50vw);
    padding: 36px 20px 28px;
    border-bottom: 1px solid #e5edf4;
    background: #f8fbfe;
    text-align: center;
}

.bm-terms-hero__inner,
.bm-terms-tabs,
.bm-terms-layout {
    width: min(calc(100% - 40px), 1040px);
    margin-inline: auto;
}

.bm-terms-hero h1 {
    margin: 0 0 13px;
    color: var(--terms-navy);
    font-size: clamp(27px, 3vw, 38px);
    font-weight: 850;
    line-height: 1.45;
    letter-spacing: -.6px;
}

.bm-terms-intro {
    max-width: 820px;
    margin-inline: auto;
    color: #52677d;
    font-size: 14px;
    line-height: 2;
}

.bm-terms-intro p { margin: 0; }
.bm-terms-intro p:not(:first-child) { display: none; }

.bm-terms-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 28px;
    margin-bottom: 34px;
    overflow: hidden;
    border: 1px solid #a9bfd3;
    border-radius: 10px;
    background: #fff;
}

.bm-terms-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 68px;
    padding: 10px 16px;
    border-inline-start: 1px solid #dce6ef;
    color: var(--terms-navy) !important;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.65;
    text-align: center;
    text-decoration: none !important;
    transition: background-color .18s ease, color .18s ease;
}

.bm-terms-tab:first-child { border-inline-start: 0; }
.bm-terms-tab i { font-size: 19px; }
.bm-terms-tab bdi { display: block; font-size: 11px; font-weight: 550; opacity: .82; }
.bm-terms-tab:hover { background: #f3f8fc; }
.bm-terms-tab.is-active { background: var(--terms-navy); color: #fff !important; }
html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article__body .bm-terms-tab.is-active,
html.bm-sitewide-final-v1.bm-final-route-legal .com-content-article__body .bm-terms-tab.is-active :is(span, bdi, i) {
    color: #fff !important;
    opacity: 1 !important;
}
.bm-terms-tab:focus-visible { position: relative; z-index: 2; outline: 3px solid rgba(10,155,103,.3); outline-offset: -3px; }

.bm-terms-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 250px;
    direction: ltr;
    gap: clamp(38px, 6vw, 76px);
    align-items: start;
    padding-bottom: 80px;
}

.bm-terms-reader,
.bm-terms-toc { direction: rtl; }

.bm-terms-reader {
    min-width: 0;
    max-width: 760px;
}

.bm-terms-reader > h2 {
    margin: 0 0 24px !important;
    padding: 19px 22px !important;
    border: 0 !important;
    border-radius: 12px;
    background: #f3f8fc;
    color: var(--terms-navy) !important;
    font-size: clamp(19px, 2vw, 23px) !important;
    font-weight: 800 !important;
    line-height: 1.75 !important;
    text-align: right;
}

.bm-terms-reader > h3 {
    margin: 0 !important;
    padding: 27px 0 13px !important;
    border-top: 1px solid var(--terms-line);
    color: var(--terms-navy) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.8 !important;
    scroll-margin-top: 120px;
}

.bm-terms-reader > h2 + h3 { border-top: 0; padding-top: 4px !important; }
.bm-terms-reader > p,
.bm-terms-reader > ul,
.bm-terms-reader > ol {
    margin: 0 0 13px !important;
    color: var(--terms-text) !important;
    font-size: 15px !important;
    font-weight: 450 !important;
    line-height: 2.05 !important;
    text-align: right;
}

.bm-terms-reader bdi { unicode-bidi: isolate; }

.bm-terms-toc {
    position: sticky;
    top: 112px;
    padding: 4px 0;
}

.bm-terms-toc__title {
    margin: 0 0 16px;
    color: var(--terms-navy);
    font-size: 13px;
    font-weight: 800;
}

.bm-terms-toc__list {
    position: relative;
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0 22px 0 0;
    list-style: none;
}

.bm-terms-toc__list::before {
    content: "";
    position: absolute;
    top: 9px;
    right: 5px;
    bottom: 9px;
    width: 1px;
    background: #cdd9e4;
}

.bm-terms-toc__list a {
    position: relative;
    display: block;
    min-height: 38px;
    padding: 8px 0 8px 5px;
    color: #607286 !important;
    font-size: 11.5px;
    font-weight: 550;
    line-height: 1.7;
    text-decoration: none !important;
}

.bm-terms-toc__list a::before {
    content: "";
    position: absolute;
    top: 14px;
    right: -22px;
    width: 9px;
    height: 9px;
    border: 1px solid #b8c7d4;
    border-radius: 50%;
    background: #fff;
}

.bm-terms-toc__list a:hover,
.bm-terms-toc__list a.is-active { color: var(--terms-green) !important; }
.bm-terms-toc__list a.is-active::before { border-color: var(--terms-green); background: var(--terms-green); }

@media (max-width: 820px) {
    .bm-terms-hero { padding-top: 28px; }
    .bm-terms-tabs { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
    .bm-terms-tab { flex: 0 0 82%; border-inline-start: 1px solid #dce6ef; scroll-snap-align: start; }
    .bm-terms-layout { grid-template-columns: 1fr; direction: rtl; gap: 24px; }
    .bm-terms-toc { position: static; order: -1; padding: 14px 16px; border: 1px solid var(--terms-line); border-radius: 10px; background: #f8fbfe; }
    .bm-terms-toc__list { display: flex; gap: 8px; overflow-x: auto; padding: 0 0 4px; }
    .bm-terms-toc__list::before,
    .bm-terms-toc__list a::before { display: none; }
    .bm-terms-toc__list li { flex: 0 0 auto; }
    .bm-terms-toc__list a { min-height: 40px; padding: 8px 12px; border: 1px solid #d7e3ed; border-radius: 8px; background: #fff; }
}

@media (max-width: 520px) {
    .bm-terms-hero__inner,
    .bm-terms-tabs,
    .bm-terms-layout { width: min(calc(100% - 28px), 1040px); }
    .bm-terms-hero h1 { font-size: 25px; }
    .bm-terms-tabs { margin-top: 20px; margin-bottom: 26px; }
    .bm-terms-reader > h2 { padding: 16px !important; font-size: 18px !important; }
    .bm-terms-reader > h3 { font-size: 16px !important; }
    .bm-terms-reader > p,
    .bm-terms-reader > ul,
    .bm-terms-reader > ol { font-size: 14px !important; line-height: 2 !important; }
}

/* BazaarMed information pages v5 — shared language with the Terms reader. */
html.bm-sitewide-final-v1 body:is(.bm-faq-v5-page,.bm-about-v5-page,.bm-contact-v5-page) {
    background: #fff !important;
}

body:is(.bm-faq-v5-page,.bm-about-v5-page) .com-content-article {
    width: min(calc(100% - 40px), 1040px) !important;
    max-width: none !important;
    margin: 0 auto 80px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
}

body:is(.bm-faq-v5-page,.bm-about-v5-page) .com-content-article > .page-header:first-of-type {
    margin-inline: calc(50% - 50vw) !important;
    margin-bottom: 34px !important;
    padding: 42px 20px 34px !important;
    border-bottom: 1px solid #e4edf4;
    background: #f8fbfe;
    text-align: center;
}

body:is(.bm-faq-v5-page,.bm-about-v5-page) .com-content-article > .page-header:first-of-type .bigTitle {
    margin: 0 !important;
    color: #06457f !important;
    font-size: clamp(28px,3vw,38px) !important;
    font-weight: 850 !important;
    line-height: 1.5 !important;
}

/* FAQ */
body.bm-faq-v5-page .bm-phase0-content {
    width: min(100%,820px);
    max-width: none;
    margin-inline: auto;
    color: #3d5269;
    font-size: 15px;
    line-height: 2;
}

body.bm-faq-v5-page .bm-phase0-content .bm-lead {
    margin: 0 auto 28px;
    padding: 0 0 24px;
    border: 0;
    border-bottom: 1px solid #dce6ef;
    border-radius: 0;
    background: transparent;
    color: #52677d;
    font-size: 14px;
    line-height: 2;
    text-align: center;
}

body.bm-faq-v5-page .bm-phase0-content .uk-accordion {
    width: 100%;
    margin: 0;
    gap: 10px;
}

body.bm-faq-v5-page .bm-phase0-content .uk-accordion > li {
    border: 1px solid #dce6ef;
    border-radius: 10px;
    box-shadow: none;
    transition: border-color .18s ease,background-color .18s ease;
}

body.bm-faq-v5-page .bm-phase0-content .uk-accordion > li.uk-open {
    border-color: #a9bfd3;
    background: #f8fbfe;
}

body.bm-faq-v5-page .bm-phase0-content .uk-accordion-title {
    min-height: 58px;
    padding: 16px 18px;
    color: #06457f !important;
    font-size: 15px;
    font-weight: 800;
}

body.bm-faq-v5-page .bm-phase0-content .uk-accordion-content {
    margin: 0;
    padding: 0 18px 18px;
    color: #4d6075;
    font-size: 14px;
    line-height: 2;
}

body.bm-faq-v5-page .bm-phase0-content .bm-note {
    margin: 26px 0 0;
    padding: 15px 18px;
    border: 1px solid #bfe3d3;
    border-radius: 10px;
    background: #f3faf7;
    color: #315a4b;
}

/* About */
body.bm-about-v5-page .com-content-article > .uk-grid {
    display: block !important;
    width: min(100%,820px);
    margin: 0 auto !important;
}

body.bm-about-v5-page .com-content-article > .uk-grid > div {
    width: 100% !important;
    padding: 0 !important;
}

body.bm-about-v5-page .com-content-article > .uk-grid .page-header {
    margin: 0 0 22px;
}

body.bm-about-v5-page .com-content-article > .uk-grid .page-header :is(h1,h2) {
    color: #06457f !important;
    font-size: clamp(22px,2.5vw,30px) !important;
    font-weight: 850 !important;
    line-height: 1.7 !important;
    text-align: right !important;
}

body.bm-about-v5-page .com-content-article > .uk-grid .f300 {
    color: #3d5269 !important;
    font-size: 15px !important;
    font-weight: 450 !important;
    line-height: 2.1 !important;
}

body.bm-about-v5-page .com-content-article > .uk-grid .f300 :is(h2,h3) {
    margin: 32px 0 12px !important;
    padding-top: 28px;
    border-top: 1px solid #dce6ef;
    color: #06457f !important;
    font-size: 20px !important;
    font-weight: 800 !important;
}

body.bm-about-v5-page .com-content-article > .uk-grid .f300 p {
    margin: 0 0 16px;
    text-align: right;
}

/* Contact */
body.bm-contact-v5-page > main,
body.bm-contact-v5-page .contactWrapper,
body.bm-contact-v5-page .contactForm { background: #fff !important; }

body.bm-contact-v5-page .com-rsform > .uk-container,
body.bm-contact-v5-page .uk-container:has(> .contactWrapper) {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
}

body.bm-contact-v5-page .uk-container:has(> .contactWrapper) > h1 {
    margin: 0 !important;
    padding: 42px 20px 10px;
    border-top: 0;
    background: #f8fbfe;
    color: #06457f !important;
    font-size: clamp(28px,3vw,38px) !important;
    font-weight: 850 !important;
}

body.bm-contact-v5-page .uk-container:has(> .contactWrapper) > h1 + p {
    margin: 0 0 34px !important;
    padding: 0 20px 32px;
    border-bottom: 1px solid #e4edf4;
    background: #f8fbfe;
    color: #607286 !important;
    font-size: 14px !important;
    line-height: 2;
}

body.bm-contact-v5-page .contactWrapper {
    width: min(calc(100% - 40px),1040px) !important;
}

body.bm-contact-v5-page .contactInfo { margin-bottom: 28px !important; }
body.bm-contact-v5-page .contactItem {
    min-height: 190px;
    padding: 24px !important;
    border: 1px solid #dce6ef !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.bm-contact-v5-page .contactItem i { color: #0a9b67 !important; font-size: 38px !important; }
body.bm-contact-v5-page .contactItem .uk-h5 { color: #06457f !important; font-weight: 800 !important; }
body.bm-contact-v5-page .contactItem :is(a,.uk-text-muted) { line-height: 1.9; }

body.bm-contact-v5-page .contactMap {
    overflow: hidden;
    margin-bottom: 44px !important;
    border: 1px solid #dce6ef;
    border-radius: 12px;
}

body.bm-contact-v5-page .contactMap iframe { display: block; min-height: 390px; border-radius: 0 !important; }
body.bm-contact-v5-page .contactForm { padding: 30px 0 70px; border-top: 1px solid #e4edf4; }
body.bm-contact-v5-page .contactForm .bigTitle { color: #06457f !important; font-size: 25px !important; font-weight: 800 !important; }

@media (max-width: 640px) {
    body:is(.bm-faq-v5-page,.bm-about-v5-page) .com-content-article { width: min(calc(100% - 28px),1040px) !important; }
    body:is(.bm-faq-v5-page,.bm-about-v5-page) .com-content-article > .page-header:first-of-type { padding-top: 30px !important; }
    body.bm-contact-v5-page .contactWrapper { width: min(calc(100% - 28px),1040px) !important; }
    body.bm-contact-v5-page .contactItem { min-height: auto; }
}

/* BMED FIX V12b - checkboxes must read as multi-select, not single-choice.
   A round control says "pick one", which is the opposite of this field.
   The competing radius comes from a broad route-scoped design-system rule;
   !important is the honest way to carve out this one control type rather
   than escalating selectors further. Radios stay round deliberately. */
html.bm-sitewide-final-v1 input[type="checkbox"] {
    border-radius: 3px !important;
}
