/* _content/BOS.Shared/Components/AppHeader.razor.rz.scp.css */
.bos-icon-button[b-yewv53nys5] {
    border: 0;
    background: transparent;
}

.main-header-container[b-yewv53nys5] {
    min-height: 3.75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gc-space-4);
    padding-inline: var(--gc-space-4);
    background: var(--gc-surface);
    border-block-end: 1px solid var(--gc-border);
}

.header-content-left[b-yewv53nys5],
.header-content-right[b-yewv53nys5] {
    display: flex;
    align-items: center;
    min-width: 0;
}

.header-content-left[b-yewv53nys5] {
    flex: 1 1 auto;
    gap: var(--gc-space-2);
}

/* Utility icons cluster tightly; the account block is separated by a rule so
   the header reads as two groups rather than a row of loose controls. */
.header-content-right[b-yewv53nys5] {
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: var(--gc-space-1);
    margin: 0;
    margin-inline-start: auto;
    padding: 0;
    list-style: none;
}

.header-content-right > .header-element:last-child[b-yewv53nys5] {
    margin-inline-start: var(--gc-space-3);
    padding-inline-start: var(--gc-space-3);
    border-inline-start: 1px solid var(--gc-border);
}

.header-element[b-yewv53nys5] {
    display: inline-flex;
    align-items: center;
}

.bos-mobile-navigation-element[b-yewv53nys5] {
    display: none;
}

.bos-mobile-navigation-toggle[b-yewv53nys5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.bos-mobile-navigation-toggle img[b-yewv53nys5],
.bos-mobile-navigation-mark[b-yewv53nys5] {
    width: 2.25rem;
    height: 2.25rem;
    object-fit: contain;
}

.bos-mobile-navigation-mark[b-yewv53nys5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--gc-radius-sm);
    background: var(--gc-ink-800);
    color: #fff;
    font-weight: var(--gc-weight-bold);
}

.header-search[b-yewv53nys5] {
    position: relative;
    display: block !important;
    flex: 1 1 20rem;
    min-width: 12rem;
    max-width: 22rem;
}

.header-search-bar[b-yewv53nys5] {
    width: 100%;
    min-height: var(--gc-control-height);
    padding-inline: var(--gc-space-3) 2.5rem;
    border-color: var(--gc-border);
    border-radius: var(--gc-radius-sm);
    background: var(--gc-surface-subtle);
    color: var(--gc-text);
    font-size: var(--gc-font-size-body);
}

.header-search-bar:focus[b-yewv53nys5] {
    background: var(--gc-surface);
    border-color: var(--gc-primary);
    box-shadow: 0 0 0 3px rgba(15, 95, 88, 0.14);
}

.header-search-bar[b-yewv53nys5]::placeholder {
    color: var(--gc-text-muted);
}

.header-search-icon[b-yewv53nys5] {
    position: absolute;
    inset-inline-end: 0.75rem;
    inset-block-start: 50%;
    transform: translateY(-50%);
    color: var(--gc-text-muted);
    background: transparent;
    padding: 0;
    line-height: 1;
    cursor: pointer;
}

.bos-global-search-panel[b-yewv53nys5] {
    position: absolute;
    inset-block-start: calc(100% + 0.45rem);
    inset-inline: 0;
    z-index: 1120;
    width: min(34rem, calc(100vw - 2rem));
    min-width: 22rem;
    padding: var(--gc-space-1);
    border: 1px solid var(--gc-border);
    border-radius: var(--gc-radius);
    background: var(--gc-surface);
    box-shadow: var(--gc-shadow-popover);
}

.header-search-shortcut[b-yewv53nys5] {
    display: none;
}

.bos-mobile-search-button[b-yewv53nys5] {
    color: var(--gc-text-secondary);
    font-size: 1.35rem;
}

.bos-sync-menu[b-yewv53nys5],
.bos-notification-menu[b-yewv53nys5],
.bos-user-menu[b-yewv53nys5] {
    position: relative;
}

.bos-user-menu[b-yewv53nys5] {
    display: inline-flex;
    align-items: center;
}

    .bos-sync-menu summary[b-yewv53nys5],
    .bos-user-menu summary[b-yewv53nys5] {
        list-style: none;
    }

    .bos-sync-menu summary[b-yewv53nys5]::-webkit-details-marker,
    .bos-user-menu summary[b-yewv53nys5]::-webkit-details-marker {
        display: none;
    }

/* One size and one resting treatment for every header icon control. */
.bos-sync-summary[b-yewv53nys5],
.bos-notification-summary[b-yewv53nys5] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: var(--gc-radius-sm);
    color: var(--gc-text-secondary);
    font-size: 1.05rem;
    cursor: pointer;
    border: 0;
    background: transparent;
    transition: background-color var(--gc-transition), color var(--gc-transition);
}

.bos-sync-summary:hover[b-yewv53nys5],
.bos-notification-summary:hover[b-yewv53nys5] {
    background: var(--gc-surface-sunken);
    color: var(--gc-text);
}

.bos-notification-icon-wrap[b-yewv53nys5] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.bos-notification-badge[b-yewv53nys5] {
    position: absolute;
    inset-block-start: -0.5rem;
    inset-inline-end: -0.8rem;
    min-width: 1.25rem;
    height: 1.25rem;
    padding: 0 0.3rem;
    border-radius: 999px;
    background: var(--gc-danger);
    color: #fff;
    font-size: 0.7rem;
    font-weight: var(--gc-weight-bold);
    line-height: 1.25rem;
    text-align: center;
}

.bos-sync-badge[b-yewv53nys5] {
    background: var(--gc-info);
}

.bos-user-summary[b-yewv53nys5] {
    display: inline-flex;
    align-items: center;
    gap: var(--gc-space-2);
    padding: var(--gc-space-1) var(--gc-space-2);
    border: 0;
    border-radius: var(--gc-radius-sm);
    background: transparent;
    cursor: pointer;
    transition: background-color var(--gc-transition);
}

.bos-user-summary:hover[b-yewv53nys5] {
    background: var(--gc-surface-sunken);
}

.bos-user-avatar-wrap[b-yewv53nys5] {
    position: relative;
    display: inline-flex;
}

.bos-user-avatar[b-yewv53nys5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    background: var(--gc-primary-surface);
    color: var(--gc-primary);
    font-size: 0.8125rem;
    font-weight: var(--gc-weight-bold);
}

.bos-user-status-dot[b-yewv53nys5] {
    position: absolute;
    inset-inline-end: 0.05rem;
    inset-block-end: 0.05rem;
    width: 0.7rem;
    height: 0.7rem;
    border: 2px solid var(--gc-surface);
    border-radius: 999px;
    background: var(--gc-success);
    box-shadow: 0 0 0 1px rgba(16, 32, 51, 0.05);
}

.bos-user-status-dot.is-offline[b-yewv53nys5] {
    background: var(--gc-danger);
}

.bos-sync-dropdown[b-yewv53nys5],
.bos-notification-dropdown[b-yewv53nys5],
.bos-user-dropdown[b-yewv53nys5] {
    inset-block-start: calc(100% + 0.75rem);
    inset-inline-end: 0;
    min-width: 12rem;
    display: none !important;
}

.bos-sync-dropdown[b-yewv53nys5] {
    width: min(23rem, calc(100vw - 1.5rem));
    padding: 0;
    overflow: hidden;
}

.bos-notification-dropdown[b-yewv53nys5] {
    width: min(25rem, calc(100vw - 1.5rem));
    padding: 0;
    overflow: hidden;
}

.bos-notification-dropdown-header[b-yewv53nys5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 1rem 1rem 0.75rem 1rem;
    border-bottom: 1px solid rgba(23, 32, 54, 0.08);
}

.bos-notification-mark-read[b-yewv53nys5] {
    padding: 0;
    font-weight: 600;
    text-decoration: none;
}

.bos-sync-list[b-yewv53nys5] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.bos-sync-item[b-yewv53nys5] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
    padding: 0.8rem 0.9rem;
    border: 1px solid rgba(23, 32, 54, 0.08);
    border-radius: 0.9rem;
    background: rgba(248, 250, 252, 0.9);
}

.bos-sync-item > .d-flex[b-yewv53nys5] {
    min-width: 0;
    flex-wrap: wrap;
}

.bos-sync-item .fw-medium[b-yewv53nys5],
.bos-sync-item .text-danger[b-yewv53nys5] {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.bos-notification-tabs[b-yewv53nys5] {
    display: flex;
    align-items: center;
    gap: var(--gc-space-2);
    padding: var(--gc-space-3) var(--gc-space-4) var(--gc-space-2);
}

.bos-notification-list[b-yewv53nys5] {
    max-height: 26rem;
    overflow-y: auto;
    padding: 0 0 0.75rem 0;
}

.bos-notification-item[b-yewv53nys5] {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    border: 0;
    background: transparent;
    padding: 0.9rem 1rem;
    text-align: start;
    border-top: 1px solid rgba(23, 32, 54, 0.06);
}

.bos-notification-item:hover[b-yewv53nys5] {
    background: rgba(29, 78, 216, 0.04);
}

.bos-notification-item.is-unread[b-yewv53nys5] {
    background: rgba(22, 163, 74, 0.04);
}

.bos-notification-item-main[b-yewv53nys5] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    min-width: 0;
}

.bos-notification-item-title-row[b-yewv53nys5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.bos-notification-time[b-yewv53nys5] {
    flex-shrink: 0;
    color: var(--gc-text-muted);
    font-size: 0.75rem;
}

.bos-notification-tag[b-yewv53nys5] {
    color: var(--gc-success);
    font-size: 0.75rem;
    font-weight: 600;
}

.bos-notification-unread-dot[b-yewv53nys5] {
    flex-shrink: 0;
    width: 0.6rem;
    height: 0.6rem;
    margin-top: 0.35rem;
    border-radius: 999px;
    background: var(--gc-danger);
}

.bos-sync-menu[open] .bos-sync-dropdown[b-yewv53nys5],
.bos-notification-menu.is-open .bos-notification-dropdown[b-yewv53nys5],
.bos-user-menu[open] .bos-user-dropdown[b-yewv53nys5],
.bos-user-menu.is-open .bos-user-dropdown[b-yewv53nys5] {
    display: block !important;
}

.app-header.is-notification-open[b-yewv53nys5] {
    z-index: 1091;
}

.bos-notification-backdrop[b-yewv53nys5] {
    position: fixed;
    inset: 0;
    z-index: 1090;
    border: 0;
    background: transparent;
    cursor: default;
}

.bos-user-menu-backdrop[b-yewv53nys5] {
    position: fixed;
    inset: 0;
    z-index: 1090;
    border: 0;
    background: transparent;
    cursor: default;
}

.bos-user-dropdown[b-yewv53nys5] {
    position: absolute;
    inset-block-start: calc(100% + 0.75rem);
    inset-inline-start: auto;
    inset-inline-end: 1rem;
    transform: none;
    z-index: 1100;
}

.bos-operational-area-tree[b-yewv53nys5] {
    min-height: 18rem;
    max-height: 25rem;
    padding: 0.75rem;
    overflow: auto;
    border: 1px solid var(--default-border);
    border-radius: 0.5rem;
    background: var(--custom-white);
}

.bos-search-modal-backdrop[b-yewv53nys5] {
    position: fixed;
    inset: 0;
    z-index: 1090;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: calc(var(--bos-safe-top) + 4.25rem) 0.9rem calc(0.9rem + env(safe-area-inset-bottom, 0px));
    height: 100dvh;
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.45);
}

.bos-search-modal[b-yewv53nys5] {
    width: min(58rem, 100%);
    min-height: 0;
    max-height: 100%;
    display: flex;
    flex-direction: column;
    padding: 1.5rem;
    border: 1px solid rgba(255, 255, 255, 0.75);
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 0.85rem 2rem rgba(15, 23, 42, 0.18);
}

.bos-search-modal-header[b-yewv53nys5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
    flex: 0 0 auto;
}

.bos-search-modal-form[b-yewv53nys5] {
    display: flex;
    min-width: 0;
    flex: 0 0 auto;
}

.bos-search-modal-results[b-yewv53nys5] {
    margin-top: 1rem;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.bos-search-modal-input[b-yewv53nys5] {
    min-width: 0;
    min-height: 4.2rem;
    border-color: var(--gc-border);
    border-radius: 0.4rem 0 0 0.4rem;
    font-size: 1.15rem;
    box-shadow: none;
}

.bos-search-modal-input:focus[b-yewv53nys5] {
    border-color: var(--gc-border-strong);
    box-shadow: none;
}

.bos-search-modal-submit[b-yewv53nys5] {
    flex: 0 0 4.9rem;
    border: 0;
    border-radius: 0 0.4rem 0.4rem 0;
    background: var(--gc-primary);
    color: #fff;
    font-size: 1.8rem;
    line-height: 1;
}

.bos-search-modal-submit:hover[b-yewv53nys5] {
    background: var(--gc-success);
}

@media (max-width: 767.98px) {
    .bos-mobile-navigation-toggle[b-yewv53nys5],
    .bos-sync-summary[b-yewv53nys5],
    .bos-notification-summary[b-yewv53nys5] {
        width: var(--gc-touch-target);
        height: var(--gc-touch-target);
        flex: 0 0 var(--gc-touch-target);
    }

    .bos-mobile-navigation-element[b-yewv53nys5] {
        display: inline-flex;
    }

    .main-header-container[b-yewv53nys5] {
        min-height: 3.75rem;
        gap: 0.5rem;
        padding-inline: 0.75rem;
    }

    .header-content-left[b-yewv53nys5] {
        gap: 0.5rem;
    }

    .header-content-right[b-yewv53nys5] {
        gap: 0.35rem;
    }

    .bos-trial-indicator[b-yewv53nys5]  .header-link {
        padding-inline: 0 !important;
    }

    .header-content-right > .header-element:last-child[b-yewv53nys5] {
        margin-inline-start: var(--gc-space-1);
        padding-inline-start: var(--gc-space-2);
    }

    .header-search[b-yewv53nys5] {
        flex-basis: 12rem;
        min-width: 10rem;
        max-width: 18rem;
    }

    .bos-global-search-panel[b-yewv53nys5] {
        position: fixed;
        inset-inline: 0.75rem;
        inset-block-start: var(--bos-mobile-header-bottom);
        top: var(--bos-mobile-header-bottom) !important;
        width: auto;
        min-width: 0;
    }

    .header-search-bar[b-yewv53nys5] {
        min-height: 2.5rem;
        padding-inline-start: 0.85rem;
    }

    .bos-sync-dropdown[b-yewv53nys5],
    .bos-notification-dropdown[b-yewv53nys5],
    .bos-user-dropdown[b-yewv53nys5] {
        position: fixed;
        inset-inline: 0.75rem;
        inset-inline-end: 0.75rem;
        inset-block-start: var(--bos-mobile-header-bottom);
        top: var(--bos-mobile-header-bottom) !important;
        bottom: auto !important;
        width: auto;
        min-width: 0;
        max-width: none;
        max-height: calc(100dvh - var(--bos-mobile-header-bottom) - 0.75rem);
        overflow-y: auto;
        box-sizing: border-box;
        transform: none !important;
        z-index: 1100;
    }

    .bos-user-dropdown[b-yewv53nys5] {
        inset-inline-start: auto;
        inset-inline-end: 0.85rem;
        inset-block-start: calc(var(--bos-mobile-header-bottom) + 0.35rem);
        top: calc(var(--bos-mobile-header-bottom) + 0.35rem) !important;
        width: min(13rem, calc(100vw - 1.5rem));
        min-width: min(13rem, calc(100vw - 1.5rem));
    }
    .bos-notification-dropdown-header[b-yewv53nys5],
    .bos-notification-item-title-row[b-yewv53nys5] {
        flex-wrap: wrap;
        align-items: flex-start;
    }
}

@media (max-width: 575.98px) {
    .header-content-left[b-yewv53nys5] {
        flex: 0 0 auto;
    }

    .header-content-right[b-yewv53nys5] {
        flex: 1 1 auto;
        min-width: 0;
    }

    .header-search[b-yewv53nys5] {
        display: none !important;
    }

    .header-search-shortcut[b-yewv53nys5] {
        display: inline-flex;
    }

    .bos-mobile-search-button[b-yewv53nys5] {
        width: 2.75rem;
        height: 2.75rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
}

@media (max-width: 420px) {
    .bos-search-modal[b-yewv53nys5] {
        padding: 1rem;
    }

    .bos-search-modal-input[b-yewv53nys5] {
        min-height: 3.4rem;
        font-size: 1rem;
    }

    .bos-search-modal-submit[b-yewv53nys5] {
        flex-basis: 3.8rem;
        font-size: 1.45rem;
    }
}
/* _content/BOS.Shared/Components/AppSidebar.razor.rz.scp.css */
/* GroomCaptain primary navigation.
   Ink surface, quiet resting state, one unmistakable active destination. */

.bos-logo-mark[b-xr1libbelq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 2rem;
    border-radius: var(--gc-radius-sm);
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
    font-weight: var(--gc-weight-bold);
}

.bos-sidebar-logo[b-xr1libbelq] {
    display: inline-flex;
    align-items: center;
    gap: var(--gc-space-2);
    width: 100%;
    min-height: 3.75rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
    font: inherit;
    text-align: start;
}

.bos-sidebar-logo-image[b-xr1libbelq] {
    display: block;
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 2.5rem;
    object-fit: contain;
}

.bos-sidebar-icon-image[b-xr1libbelq] {
    display: none;
    width: 2.25rem;
    height: 2.25rem;
    object-fit: contain;
}

.bos-sidebar-logo-text[b-xr1libbelq] {
    color: #fff;
    font-size: 0.9375rem;
    font-weight: var(--gc-weight-bold);
    letter-spacing: 0.01em;
    line-height: 1.1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.main-sidebar-header[b-xr1libbelq] {
    min-height: 3.75rem;
    width: 15rem;
    display: flex;
    align-items: center;
    padding-inline: var(--gc-space-4);
    background: var(--gc-ink-800);
    border-block-end: 1px solid rgba(255, 255, 255, 0.08);
}

.main-sidebar[b-xr1libbelq] {
    width: 15rem;
    height: calc(100vh - 3.75rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--gc-ink-800);
}

.main-menu[b-xr1libbelq] {
    display: flex;
    flex-direction: column;
    width: 15rem;
    min-height: 100%;
    padding: var(--gc-space-3) 0 var(--gc-space-5);
    margin: 0;
    list-style: none;
}

.side-menu__item[b-xr1libbelq] {
    min-height: 2.375rem;
    display: flex;
    align-items: center;
    gap: var(--gc-space-3);
    position: relative;
    margin-inline: var(--gc-space-2);
    padding: 0 var(--gc-space-3);
    border-radius: var(--gc-radius-sm);
    color: rgba(255, 255, 255, 0.74);
    font-size: 0.875rem;
    font-weight: var(--gc-weight-medium);
    text-decoration: none;
    line-height: 1.3;
    transition: background-color var(--gc-transition), color var(--gc-transition);
}

.bos-side-menu-toggle[b-xr1libbelq] {
    width: calc(100% - var(--gc-space-4));
    border: 0;
    background: transparent;
    text-align: start;
}

.side-menu__item:hover[b-xr1libbelq] {
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
}

.side-menu__item.active[b-xr1libbelq],
.bos-nav-group.active > .side-menu__item[b-xr1libbelq] {
    color: #fff;
    font-weight: var(--gc-weight-semibold);
    background: rgba(255, 255, 255, 0.12);
}

/* Shape cue so the active destination does not rely on contrast alone. */
.side-menu__item.active[b-xr1libbelq]::before,
.bos-nav-group.active > .side-menu__item[b-xr1libbelq]::before {
    content: "";
    position: absolute;
    inset-inline-start: calc(var(--gc-space-2) * -1);
    inset-block: 0.3rem;
    width: 3px;
    border-radius: var(--gc-radius-pill);
    background: var(--gc-accent);
}

.side-menu__icon[b-xr1libbelq] {
    flex: 0 0 1.125rem;
    color: currentColor;
    font-size: 1.0625rem;
    opacity: 0.9;
}

.side-menu__label[b-xr1libbelq] {
    flex: 1 1 auto;
    min-width: 0;
    color: currentColor;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.side-menu__angle[b-xr1libbelq] {
    margin-inline-start: auto;
    color: currentColor;
    font-size: 1rem;
    opacity: 0.6;
    transition: transform var(--gc-transition);
}

.bos-nav-group.open > .side-menu__item .side-menu__angle[b-xr1libbelq] {
    transform: rotate(180deg);
}

.main-menu > li + li[b-xr1libbelq] {
    margin-block-start: 2px;
}

/* Configuration sits below the daily-work list, separated by a rule. */
.gc-nav-utility[b-xr1libbelq] {
    margin-block-start: auto;
    padding-block-start: var(--gc-space-3);
    border-block-start: 1px solid rgba(255, 255, 255, 0.09);
}

.slide-menu[b-xr1libbelq] {
    display: none;
    list-style: none;
    margin: 2px 0 var(--gc-space-2);
    padding: 0;
}

.bos-nav-group.open > .slide-menu[b-xr1libbelq] {
    display: block;
}

.slide-menu .side-menu__item[b-xr1libbelq] {
    min-height: 2.125rem;
    align-items: center;
    margin-inline-start: 2.375rem;
    margin-inline-end: var(--gc-space-2);
    padding-inline: var(--gc-space-3);
    font-size: 0.8125rem;
    font-weight: var(--gc-weight-regular);
    color: rgba(255, 255, 255, 0.62);
}

.slide-menu .side-menu__item.active[b-xr1libbelq] {
    color: #fff;
    font-weight: var(--gc-weight-semibold);
    background: rgba(255, 255, 255, 0.1);
}

.slide-menu .side-menu__item.active[b-xr1libbelq]::before {
    display: none;
}

/* Child rows read as a list; the parent icon already carries the metaphor. */
.slide-menu .side-menu__icon[b-xr1libbelq] {
    display: none;
}

.slide-menu .side-menu__label[b-xr1libbelq] {
    white-space: normal;
    overflow: visible;
    overflow-wrap: anywhere;
    text-overflow: clip;
}

.side-menu__label1[b-xr1libbelq] {
    display: none;
}

.bos-placeholder[b-xr1libbelq] {
    opacity: 0.72;
}

    .bos-placeholder:hover[b-xr1libbelq] {
        opacity: 0.9;
    }

.bos-placeholder-badge[b-xr1libbelq] {
    flex: 0 0 auto;
    font-size: 0.65rem;
    font-weight: var(--gc-weight-bold);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

@media (max-width: 767.98px) {
    .main-sidebar[b-xr1libbelq] {
        height: calc(100dvh - 3.75rem - var(--bos-safe-top, 0px));
        padding-bottom: env(safe-area-inset-bottom, 0px);
    }

    [b-xr1libbelq] .side-menu__item {
        min-height: var(--gc-touch-target);
    }
}

/* Keyboard focus must stay visible against the ink surface. */
a:focus-visible[b-xr1libbelq],
button:focus-visible[b-xr1libbelq] {
    outline: 2px solid var(--gc-accent);
    outline-offset: -2px;
}
/* _content/BOS.Shared/Components/BusinessHealthReport.razor.rz.scp.css */
.business-health-metrics[b-028u6e424k] {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
}

.business-health-metrics[b-028u6e424k]  .gc-metric {
    min-width: 0;
    overflow-wrap: anywhere;
}
/* _content/BOS.Shared/Components/CalendarFullscreen.razor.rz.scp.css */
.calendar-fullscreen[b-ben94kjux6] {
    min-width: 0;
}

.calendar-fullscreen__toolbar[b-ben94kjux6] {
    display: flex;
    justify-content: flex-end;
}

.calendar-fullscreen__toolbar:not(.gc-schedule__toolbar)[b-ben94kjux6] {
    padding: .5rem;
}

.calendar-fullscreen.is-fullscreen[b-ben94kjux6] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: flex;
    flex-direction: column;
    padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
    background: var(--gc-surface, #fff);
}

.is-fullscreen .calendar-fullscreen__toolbar[b-ben94kjux6] {
    flex: 0 0 auto;
}

.is-fullscreen .calendar-fullscreen__content[b-ben94kjux6] {
    flex: 1 1 0;
    min-height: 0;
    overflow: auto;
}

.is-fullscreen[b-ben94kjux6]  .bos-scheduler-guard {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-width: 0;
}

.is-fullscreen[b-ben94kjux6]  .gc-schedule__body {
    height: 100%;
    min-height: 0;
}

.is-fullscreen[b-ben94kjux6]  .k-scheduler {
    height: 100% !important;
    min-height: 0;
    min-width: 0 !important;
    width: 100% !important;
    flex: 1 1 0;
}

/* Resize actual cells rather than transforming the scheduler, so appointment
   placement and pointer coordinates continue to use the same geometry. */
.is-fullscreen[b-ben94kjux6]  .k-scheduler-layout-flex .k-scheduler-cell,
.is-fullscreen[b-ben94kjux6]  .k-scheduler-table td,
.is-fullscreen[b-ben94kjux6]  .k-scheduler-table th {
    font-size: max(8px, calc(14px * var(--calendar-density, 1)));
    line-height: 1.15;
    padding: calc(12px * var(--calendar-density, 1));
    min-width: 0;
    min-height: calc(24px * var(--calendar-density, 1));
    height: auto;
    letter-spacing: normal;
}

.is-fullscreen[b-ben94kjux6]  .k-scheduler-monthview .k-scheduler-cell,
.is-fullscreen[b-ben94kjux6]  .k-scheduler-monthview td {
    min-height: calc(80px * var(--calendar-density, 1));
}

/* Telerik positions timed appointments from the first slot's height. Labeled
   hour rows and empty half-hour rows must therefore remain exactly equal. */
.is-fullscreen[b-ben94kjux6]  .k-scheduler-body .k-scheduler-row:has(> .k-slot-cell) > .k-scheduler-cell {
    box-sizing: border-box;
    height: max(10px, calc(var(--calendar-cell-size, 49px) * var(--calendar-density, 1)));
    min-height: 0;
    padding-block: 0;
    align-items: center;
    overflow: hidden;
}

.is-fullscreen[b-ben94kjux6]  .k-scheduler-monthview {
    --calendar-cell-size: 120px;
}

.is-fullscreen[b-ben94kjux6]  .k-scheduler-layout,
.is-fullscreen[b-ben94kjux6]  .k-scheduler-head {
    min-width: 0 !important;
    min-height: 0;
}

.is-fullscreen[b-ben94kjux6]  .k-event {
    font-size: max(8px, calc(14px * var(--calendar-density, 1)));
    line-height: 1.15;
    padding-block: 0;
    min-height: 0;
}

.is-fullscreen[b-ben94kjux6]  .k-scheduler-toolbar {
    flex-wrap: wrap;
}

.is-fullscreen[b-ben94kjux6]  .template-scheduler-days {
    flex-shrink: 0;
    min-width: 0;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    margin-left: var(--calendar-time-width, 4rem);
}

.is-fullscreen[b-ben94kjux6]  .template-scheduler-days > div {
    padding: .25rem .125rem;
    font-size: clamp(8px, 1vw, 13px);
    overflow: hidden;
    text-overflow: ellipsis;
}
/* _content/BOS.Shared/Components/ComparisonPanel.razor.rz.scp.css */
/*
    One side of the before/after Tuesday. The two panels are joined with no
    gutter on desktop, so the radii are flattened along the seam.
*/

.gc-compare-panel[b-rgkbljmlf5] {
    padding: 24px 26px 26px;
}

.gc-compare-panel.is-warning[b-rgkbljmlf5] {
    background: var(--gc-clay-bg, #fdf1ec);
    border: 1px solid var(--gc-clay-line, #ebc3b4);
    border-right: none;
    border-radius: 12px 0 0 12px;
}

.gc-compare-panel.is-good[b-rgkbljmlf5] {
    background: var(--gc-green-bg, #eaf3ef);
    border: 1px solid var(--gc-green-line, #b9d6ca);
    border-radius: 0 12px 12px 0;
}

.gc-compare-label[b-rgkbljmlf5] {
    margin: 0 0 16px;
    font-family: var(--gc-mono, monospace);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.gc-compare-panel.is-warning .gc-compare-label[b-rgkbljmlf5] {
    color: var(--gc-clay, #c0563a);
}

.gc-compare-panel.is-good .gc-compare-label[b-rgkbljmlf5] {
    color: var(--gc-green, #22624d);
}

.gc-compare-row[b-rgkbljmlf5],
.gc-compare-leg[b-rgkbljmlf5] {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 9px;
}

.gc-compare-time[b-rgkbljmlf5] {
    flex: none;
    width: 56px;
    color: var(--gc-ink, #16203a);
    font-family: var(--gc-mono, monospace);
    font-size: 13px;
}

.gc-compare-row.is-warning .gc-compare-time[b-rgkbljmlf5] {
    color: var(--gc-clay, #c0563a);
    font-weight: 600;
}

.gc-compare-leg .gc-compare-time[b-rgkbljmlf5] {
    color: #a9a395;
    font-size: 12px;
}

.gc-compare-panel.is-good .gc-compare-leg .gc-compare-time[b-rgkbljmlf5] {
    color: #7a9b8d;
}

.gc-compare-leg.is-warning .gc-compare-time[b-rgkbljmlf5] {
    color: var(--gc-clay, #c0563a);
    font-weight: 500;
}

.gc-compare-place[b-rgkbljmlf5] {
    color: var(--gc-ink, #16203a);
    font-size: 15px;
}

.gc-compare-note[b-rgkbljmlf5] {
    color: var(--gc-clay, #c0563a);
    font-family: var(--gc-mono, monospace);
    font-size: 12px;
    font-weight: 500;
}

.gc-compare-row .gc-compare-note[b-rgkbljmlf5] {
    font-family: inherit;
}

.gc-compare-badge[b-rgkbljmlf5] {
    flex: none;
    padding: 3px 7px;
    color: #fff;
    background: var(--gc-clay, #c0563a);
    border-radius: 4px;
    font-family: var(--gc-mono, monospace);
    font-size: 10.5px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.gc-compare-inset[b-rgkbljmlf5] {
    margin: 14px 0 0;
    padding: 12px 14px;
    color: var(--gc-muted, #5c6070);
    background: #fff;
    border: 1px solid var(--gc-green-line, #b9d6ca);
    border-radius: 9px;
    font-size: 14px;
    line-height: 1.45;
}

.gc-compare-inset strong[b-rgkbljmlf5] {
    color: var(--gc-green, #22624d);
}

.gc-compare-footer[b-rgkbljmlf5] {
    margin: 20px 0 0;
    padding-top: 16px;
    color: var(--gc-muted, #5c6070);
    font-size: 15px;
    line-height: 1.45;
}

.gc-compare-panel.is-warning .gc-compare-footer[b-rgkbljmlf5] {
    border-top: 1px solid var(--gc-clay-line, #ebc3b4);
}

.gc-compare-panel.is-good .gc-compare-footer[b-rgkbljmlf5] {
    border-top: 1px solid var(--gc-green-line, #b9d6ca);
}

/* The folded note only appears on phones, where the drive-leg rows are gone. */
.gc-compare-note-mobile[b-rgkbljmlf5] {
    display: none;
}

@media (max-width: 767.98px) {
    .gc-compare-panel.is-warning[b-rgkbljmlf5] {
        margin-bottom: 12px;
        border-right: 1px solid var(--gc-clay-line, #ebc3b4);
        border-radius: 12px;
    }

    .gc-compare-panel.is-good[b-rgkbljmlf5] {
        border-radius: 12px;
    }

    .gc-compare-panel[b-rgkbljmlf5] {
        padding: 14px 16px;
    }

    /* Drive legs collapse into the stop line so the comparison fits one
       screenful; the minutes survive as the stop's folded note. */
    .gc-compare-leg[b-rgkbljmlf5] {
        display: none;
    }

    .gc-compare-note-mobile[b-rgkbljmlf5] {
        display: inline;
    }

    .gc-compare-time[b-rgkbljmlf5] {
        width: 48px;
        font-size: 12.5px;
    }

    .gc-compare-place[b-rgkbljmlf5] {
        font-size: 14.5px;
    }

    .gc-compare-label[b-rgkbljmlf5] {
        font-size: 10.5px;
    }

    .gc-compare-footer[b-rgkbljmlf5] {
        margin-top: 12px;
        padding-top: 12px;
        font-size: 14.5px;
    }
}
/* _content/BOS.Shared/Components/CustomerHandoffPanel.razor.rz.scp.css */
.handoff-panel[b-j4dwmqj8pr] { margin-bottom: 1rem; padding: 1rem; border: 1px solid #cfe2dd; border-radius: 1rem; background: #f5fbf8; }
.handoff-panel.is-due[b-j4dwmqj8pr] { border-color: #8fc4b9; box-shadow: inset 3px 0 #0f5f58; }
.handoff-panel header[b-j4dwmqj8pr] { display: flex; gap: .8rem; margin-bottom: 1rem; }
.handoff-panel header h3[b-j4dwmqj8pr] { margin: .1rem 0 .25rem; font-size: 1.1rem; }
.handoff-panel header p[b-j4dwmqj8pr] { margin: 0; color: #607772; font-size: .82rem; }
.handoff-panel__icon[b-j4dwmqj8pr] { display: grid; flex: 0 0 2.4rem; height: 2.4rem; place-items: center; border-radius: .7rem; background: #dcefe9; color: #0f5f58; font-size: 1.25rem; }
.handoff-panel__eyebrow[b-j4dwmqj8pr] { color: #0f5f58; font-size: .68rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.handoff-panel__choices[b-j4dwmqj8pr] { display: grid; gap: .55rem; }
.handoff-choice[b-j4dwmqj8pr] { display: flex; align-items: center; gap: .7rem; width: 100%; padding: .8rem; border: 1px solid #cfdfdb; border-radius: .8rem; background: #fff; color: #244a44; text-align: left; }
.handoff-choice--primary[b-j4dwmqj8pr] { border-color: #0f5f58; background: #edf8f4; }
.handoff-choice > i:first-child[b-j4dwmqj8pr] { font-size: 1.25rem; color: #0f5f58; }
.handoff-choice span[b-j4dwmqj8pr] { display: flex; flex: 1; flex-direction: column; }
.handoff-choice small[b-j4dwmqj8pr] { color: #6f827e; }
.handoff-panel__ready[b-j4dwmqj8pr], .handoff-panel__own-phone[b-j4dwmqj8pr], .handoff-panel__remote[b-j4dwmqj8pr] { margin-top: .8rem; padding: 1rem; border-radius: .8rem; background: #fff; text-align: center; }
.handoff-panel__ready > i[b-j4dwmqj8pr] { color: #0f5f58; font-size: 2rem; }
.handoff-panel__ready h4[b-j4dwmqj8pr], .handoff-panel__own-phone h4[b-j4dwmqj8pr] { margin: .3rem 0; }
.handoff-panel__ready p[b-j4dwmqj8pr], .handoff-panel__own-phone p[b-j4dwmqj8pr] { color: #677d78; font-size: .82rem; }
.handoff-panel__manual-actions[b-j4dwmqj8pr] { display: flex; justify-content: center; gap: .5rem; }
.handoff-panel__photo-row[b-j4dwmqj8pr] { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; margin: 1rem 0; }
.handoff-panel__photo[b-j4dwmqj8pr], .handoff-panel__photo-add[b-j4dwmqj8pr] { position: relative; display: grid; min-height: 5.4rem; place-items: center; overflow: hidden; border: 1px dashed #9dbeb7; border-radius: .7rem; background: #eef7f4; color: #0f5f58; }
.handoff-panel__photo img[b-j4dwmqj8pr] { width: 100%; height: 100%; object-fit: cover; }
.handoff-panel__photo button[b-j4dwmqj8pr] { position: absolute; top: .25rem; right: .25rem; display: grid; width: 1.6rem; height: 1.6rem; place-items: center; border: 0; border-radius: 50%; background: rgba(15, 30, 28, .75); color: #fff; }
.handoff-panel__photo-add[b-j4dwmqj8pr] { cursor: pointer; font-size: .75rem; }
.handoff-panel__photo-add i[b-j4dwmqj8pr] { font-size: 1.3rem; }
.handoff-panel__photo-add[b-j4dwmqj8pr]  input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.handoff-panel__preview[b-j4dwmqj8pr] { margin: 1rem 0; padding: .8rem; border: 1px solid #e0e9e7; border-radius: .7rem; text-align: left; }
.handoff-panel__preview p[b-j4dwmqj8pr] { margin: .4rem 0; white-space: pre-wrap; }
.handoff-panel__preview small[b-j4dwmqj8pr] { color: #71827f; }
.handoff-panel__complete[b-j4dwmqj8pr] { padding: .8rem; border-radius: .7rem; background: #e5f6ef; color: #0f5f58; font-weight: 800; }
/* _content/BOS.Shared/Components/CustomerNotesPanel.razor.rz.scp.css */
.gc-customer-note[b-9qriwb3l8i] { background: var(--gc-surface); border: 1px solid var(--gc-border); border-radius: var(--gc-radius-sm); padding: 1rem; }
.gc-customer-note.is-important[b-9qriwb3l8i] { background: var(--gc-warning-surface); border-color: var(--gc-warning-border); }
.gc-customer-note__heading[b-9qriwb3l8i] { margin-bottom: 0.5rem; }
.gc-customer-note__text[b-9qriwb3l8i] { color: var(--gc-text); line-height: 1.55; max-height: 14rem; overflow: auto; overflow-wrap: anywhere; white-space: pre-wrap; }
.gc-customer-note__meta[b-9qriwb3l8i] { color: var(--gc-text-muted); font-size: var(--gc-font-size-helper); margin-top: 0.65rem; }
.gc-customer-note-editor[b-9qriwb3l8i] { background: var(--gc-surface-subtle); border: 1px solid var(--gc-border); border-radius: var(--gc-radius); padding: 1rem; }
.gc-customer-note-editor__actions[b-9qriwb3l8i] { display: flex; justify-content: flex-end; margin-top: 1rem; }

@media (max-width: 575.98px) {
    .gc-customer-note-editor__actions[b-9qriwb3l8i] { display: grid; grid-template-columns: 1fr; }
    .gc-customer-note-editor__actions .btn[b-9qriwb3l8i] { min-height: 44px; width: 100%; }
}
/* _content/BOS.Shared/Components/DemoRequestCta.razor.rz.scp.css */
.demo-alternative[b-3r441kzieg] { font-size: .95rem; line-height: 1.6; margin: 1rem 0; }
.demo-alternative a[b-3r441kzieg] { color: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: .2em; }
.demo-button[b-3r441kzieg] { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 13px 22px; border: 1px solid #0f5f58; border-radius: 6px; background: white; color: #0f5f58; font: 700 .95rem/1.4 Inter, system-ui, sans-serif; text-align: center; text-decoration: none; }
.demo-button:hover[b-3r441kzieg] { background: #edf5f3; color: #0c4f49; }
.demo-button:focus-visible[b-3r441kzieg] { outline: 3px solid #b75b12; outline-offset: 4px; }
@media (max-width: 599px) { .demo-button[b-3r441kzieg] { width: 100%; } }
/* _content/BOS.Shared/Components/ExpoCaptainHost.razor.rz.scp.css */
.expo-captain-space[b-b5jh10ibsc] { height: 9rem; }
.expo-captain[b-b5jh10ibsc] {
    --expo-ink: #173d48;
    --expo-accent: #115e6b;
    position: fixed;
    inset-inline-end: max(.75rem, env(safe-area-inset-right, 0px));
    bottom: calc(var(--bos-chat-safe-bottom, max(.75rem, env(safe-area-inset-bottom, 0px))) + var(--expo-keyboard-offset, 0px));
    z-index: 1035;
    width: min(23rem, calc(100vw - 1.5rem - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)));
    color: var(--expo-ink);
    font-size: .9375rem;
    line-height: 1.45;
    pointer-events: none;
}
.expo-captain *[b-b5jh10ibsc], .expo-captain *[b-b5jh10ibsc]::before, .expo-captain *[b-b5jh10ibsc]::after { box-sizing: border-box; }
.expo-captain button[b-b5jh10ibsc] {
    font: inherit;
    min-height: 44px;
    min-width: 44px;
    border: 1px solid #b8cdd1;
    border-radius: .7rem;
    padding: .6rem .85rem;
    background: #fff;
    color: var(--expo-ink);
    cursor: pointer;
    overflow-wrap: anywhere;
    touch-action: manipulation;
}
.expo-captain button:hover[b-b5jh10ibsc] { background: #eef7f8; }
.expo-captain button:focus-visible[b-b5jh10ibsc], .expo-panel:focus-visible[b-b5jh10ibsc] { outline: 3px solid #bd6514; outline-offset: 3px; }
.expo-captain button:disabled[b-b5jh10ibsc] { cursor: default; color: #596c72; background: #f1f4f5; }
.expo-captain .expo-primary[b-b5jh10ibsc], .expo-captain .expo-launcher[b-b5jh10ibsc] { background: var(--expo-accent); color: #fff; border-color: var(--expo-accent); }
.expo-captain .expo-primary:hover[b-b5jh10ibsc], .expo-captain .expo-launcher:hover[b-b5jh10ibsc] { background: #0d4c57; }
.expo-dock[b-b5jh10ibsc] { display: flex; flex-direction: column; align-items: flex-end; gap: .45rem; }
.expo-dock button[b-b5jh10ibsc] { pointer-events: auto; box-shadow: 0 3px 16px #173d4825; }
.expo-launcher[b-b5jh10ibsc] { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .4rem; max-width: 100%; font-weight: 700 !important; }
.expo-launcher img[b-b5jh10ibsc] { object-fit: contain; margin: -.4rem 0; }
.expo-here[b-b5jh10ibsc] { display: block; flex-basis: 100%; font-size: .75rem; font-weight: 400; }
.expo-panel[b-b5jh10ibsc] {
    pointer-events: auto;
    background: #fff;
    border: 1px solid #c6d8dc;
    border-radius: 1rem;
    box-shadow: 0 8px 35px #173d4830;
    margin-bottom: .75rem;
    max-height: max(9rem, calc(var(--expo-viewport-height, 100dvh) - 15rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)));
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.expo-panel-header[b-b5jh10ibsc] { display: flex; gap: .5rem; justify-content: space-between; align-items: flex-start; padding: 1rem 1rem .65rem; flex-shrink: 0; }
.expo-panel h2[b-b5jh10ibsc], .expo-reset-dialog h2[b-b5jh10ibsc] { font-size: 1.15rem; line-height: 1.25; color: var(--expo-ink); margin: .2rem 0 .5rem; font-weight: 700; }
.expo-panel h3[b-b5jh10ibsc] { font-size: 1.1rem; margin: 0 0 .3rem; color: var(--expo-ink); }
.expo-panel p[b-b5jh10ibsc], .expo-reset-dialog p[b-b5jh10ibsc] { margin: 0 0 .8rem; }
.expo-eyebrow[b-b5jh10ibsc] { color: #42646e; font-size: .72rem; letter-spacing: .055em; text-transform: uppercase; }
.expo-captain .expo-close[b-b5jh10ibsc] { font-size: 1.5rem; padding: 0; flex-shrink: 0; border-color: transparent; }
.expo-panel-body[b-b5jh10ibsc] { padding: 0 1rem 1rem; overflow-y: auto; min-height: 0; overflow-wrap: anywhere; }
.expo-panel-footer[b-b5jh10ibsc] { padding: .65rem 1rem; border-top: 1px solid #e0eaec; display: flex; align-items: center; gap: .75rem; flex-shrink: 0; }
.expo-panel-footer span[b-b5jh10ibsc] { font-size: .75rem; color: #42646e; }
.expo-panel-footer button[b-b5jh10ibsc] { flex-shrink: 0; }
.expo-intro-captain[b-b5jh10ibsc] { float: right; object-fit: contain; margin: 0 0 .5rem .5rem; }
.expo-actions[b-b5jh10ibsc] { display: flex; flex-wrap: wrap; gap: .5rem; clear: both; }
.expo-actions button[b-b5jh10ibsc] { flex: 1 1 auto; }
.expo-missions[b-b5jh10ibsc] { list-style: none; padding: 0; margin: .6rem 0 0; display: grid; gap: .45rem; }
.expo-mission[b-b5jh10ibsc] { display: flex; width: 100%; text-align: left; align-items: center; gap: .65rem; }
.expo-mission-icon[b-b5jh10ibsc] { font-size: 1.25rem; width: 1.35rem; flex-shrink: 0; }
.expo-state[b-b5jh10ibsc] { display: block; font-size: .78rem; font-weight: 400; }
.expo-context[b-b5jh10ibsc] { font-size: .85rem; color: #42646e; }
.expo-board-link[b-b5jh10ibsc] { margin-top: .8rem; }
.expo-error[b-b5jh10ibsc] { color: #943b20; }
.expo-status[b-b5jh10ibsc], .expo-feedback:not(:empty)[b-b5jh10ibsc] { background: #fff; border: 1px solid #c6d8dc; border-radius: .75rem; padding: .75rem; margin-bottom: .65rem; overflow-wrap: anywhere; }
.expo-idle[b-b5jh10ibsc] { padding: 1rem; overflow-y: auto; }
.expo-idle > *[b-b5jh10ibsc] { flex-shrink: 0; }
.expo-reset-dialog[b-b5jh10ibsc] {
    pointer-events: auto;
    position: fixed;
    inset: 0;
    margin: auto;
    width: min(25rem, calc(100vw - 2rem));
    max-height: calc(100dvh - 2rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    overflow-y: auto;
    border: 1px solid #c6d8dc;
    border-radius: 1rem;
    padding: 1.25rem;
    background: #fff;
    color: var(--expo-ink);
    box-shadow: 0 12px 50px #173d4840;
}
.expo-reset-dialog[b-b5jh10ibsc]::backdrop { background: #132f3c70; }
.expo-captain .expo-challenge[b-b5jh10ibsc] { width: 100%; margin: .25rem 0 .5rem; font-weight: 700; }
.expo-picker-dialog[b-b5jh10ibsc] { width: min(40rem, calc(100vw - 1.5rem)); padding: 1rem 1rem 1.25rem; }
.expo-picker-dialog__header[b-b5jh10ibsc] { display: flex; gap: .5rem; justify-content: space-between; align-items: flex-start; margin-bottom: .75rem; }
.expo-picker-dialog__hint[b-b5jh10ibsc] { margin: 0; font-size: .85rem; color: #42646e; }
.expo-picker-dialog h2[b-b5jh10ibsc] { margin-bottom: .25rem; }
@media (max-height: 540px) {
    .expo-panel-header[b-b5jh10ibsc] { padding-block: .5rem; }
    .expo-panel-footer[b-b5jh10ibsc] { padding-block: .25rem; }
    .expo-panel-footer span[b-b5jh10ibsc] { display: none; }
    .expo-panel[b-b5jh10ibsc] { max-height: max(9rem, calc(var(--expo-viewport-height, 100dvh) - 9rem)); }
    .expo-here[b-b5jh10ibsc] { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .expo-captain *[b-b5jh10ibsc], .expo-captain *[b-b5jh10ibsc]::before, .expo-captain *[b-b5jh10ibsc]::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
/* _content/BOS.Shared/Components/ExpoScenarioHost.razor.rz.scp.css */
.expo-scenario[b-ycovdwaahd] {
    --expo-ink: #173d48;
    --expo-accent: #115e6b;
    color: var(--expo-ink);
    font-size: .95rem;
    line-height: 1.45;
}
.expo-scenario *[b-ycovdwaahd], .expo-scenario *[b-ycovdwaahd]::before, .expo-scenario *[b-ycovdwaahd]::after { box-sizing: border-box; }
.expo-scenario button[b-ycovdwaahd] {
    font: inherit;
    min-height: 44px;
    min-width: 44px;
    border: 1px solid #b8cdd1;
    border-radius: .7rem;
    padding: .6rem .95rem;
    background: #fff;
    color: var(--expo-ink);
    cursor: pointer;
    touch-action: manipulation;
    overflow-wrap: anywhere;
}
.expo-scenario button:hover[b-ycovdwaahd] { background: #eef7f8; }
.expo-scenario button:focus-visible[b-ycovdwaahd] { outline: 3px solid #bd6514; outline-offset: 3px; }
.expo-scenario button:disabled[b-ycovdwaahd] { cursor: default; color: #596c72; background: #f1f4f5; }
.expo-scenario .expo-scenario-primary[b-ycovdwaahd] { background: var(--expo-accent); color: #fff; border-color: var(--expo-accent); font-weight: 700; }
.expo-scenario .expo-scenario-primary:hover[b-ycovdwaahd] { background: #0d4c57; }

/* Spotlight: a ring with a dimmed surround. Clicks pass straight through to the real control. */
.expo-scenario-spotlight[b-ycovdwaahd] {
    position: fixed;
    z-index: 11000;
    border-radius: .6rem;
    box-shadow: 0 0 0 3px #f2a65a, 0 0 0 9999px rgba(15, 35, 42, .42);
    pointer-events: none;
    transition: left .25s ease, top .25s ease, width .25s ease, height .25s ease;
}
/* Inside the scheduler the rule is: highlight the target without hiding the context needed to understand it.
   The dim moves to the edge of the grid region; the target itself gets a ring and a glow, never a washed-out grid. */
.expo-scenario-context[b-ycovdwaahd] {
    position: fixed;
    z-index: 10990;
    border-radius: .75rem;
    box-shadow: 0 0 0 9999px rgba(15, 35, 42, .42);
    pointer-events: none;
    transition: left .25s ease, top .25s ease, width .25s ease, height .25s ease;
}
.expo-scenario-spotlight--in-context[b-ycovdwaahd] {
    box-shadow: 0 0 0 3px #f2a65a, 0 0 0 7px rgba(242, 166, 90, .32), 0 0 26px 10px rgba(242, 166, 90, .45);
}

.expo-scenario-backdrop[b-ycovdwaahd] {
    position: fixed;
    inset: 0;
    z-index: 11250;
    background: rgba(15, 35, 42, .55);
}

.expo-scenario-card[b-ycovdwaahd] {
    position: fixed;
    z-index: 11300;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: min(28rem, calc(100vw - 2rem));
    background: #fff;
    border: 1px solid #c6d8dc;
    border-radius: 1.25rem;
    padding: 1.5rem;
    box-shadow: 0 16px 60px #173d4850;
    animation: expo-scenario-pop-b-ycovdwaahd .28s ease both;
}
.expo-scenario-card--title[b-ycovdwaahd] { text-align: center; padding: 2rem 1.5rem; }
/* The success card beside a visible outcome: no backdrop, placed like the coach so the repaired appointment stays in view. */
.expo-scenario-card--beside[b-ycovdwaahd] { transform: none; left: auto; top: auto; z-index: 11150; width: min(26rem, calc(100vw - 1.5rem)); padding: 1.1rem 1.15rem; }
.expo-scenario-card--beside h2[b-ycovdwaahd] { font-size: 1.3rem; }
.expo-scenario-card--beside.expo-scenario-coach--floating[b-ycovdwaahd] {
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(max(.75rem, env(safe-area-inset-bottom, 0px)) + 4.25rem);
}
.expo-scenario-card--beside.expo-scenario-coach--top[b-ycovdwaahd] { bottom: auto; top: calc(env(safe-area-inset-top, 0px) + 4.25rem); }
.expo-scenario-card h2[b-ycovdwaahd] { font-size: 1.6rem; line-height: 1.2; margin: .25rem 0 .75rem; font-weight: 700; color: var(--expo-ink); }
.expo-scenario-card--title h2[b-ycovdwaahd] { font-size: 2rem; margin-bottom: 0; }
.expo-scenario-card p[b-ycovdwaahd] { margin: 0 0 .75rem; }
.expo-scenario-card__eyebrow[b-ycovdwaahd] { display: block; color: #42646e; font-size: .72rem; letter-spacing: .055em; text-transform: uppercase; }
.expo-scenario-card__detail[b-ycovdwaahd] { color: #42646e; font-size: .9rem; }
.expo-scenario-card__summary[b-ycovdwaahd] { font-size: 1.1rem; line-height: 1.5; max-width: 34rem; margin: .75rem auto .5rem; }
.expo-scenario-card__actions[b-ycovdwaahd] { display: grid; gap: .6rem; margin-top: 1rem; }
.expo-scenario-card__actions button[b-ycovdwaahd] { min-height: 52px; font-weight: 700; }
@media (min-width: 480px) { .expo-scenario-card__actions[b-ycovdwaahd] { grid-template-columns: 1.3fr 1fr; } }

.expo-scenario-coach[b-ycovdwaahd] {
    position: fixed;
    z-index: 11150;
    background: #fff;
    border: 1px solid #c6d8dc;
    border-radius: 1rem;
    padding: .9rem 1rem;
    box-shadow: 0 10px 40px #173d4840;
    animation: expo-scenario-pop-b-ycovdwaahd .22s ease both;
}
.expo-scenario-coach--floating[b-ycovdwaahd], .expo-scenario-coach[style=""][b-ycovdwaahd] {
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(max(.75rem, env(safe-area-inset-bottom, 0px)) + 4.25rem);
    width: min(26rem, calc(100vw - 1.5rem));
}
.expo-scenario-coach__title[b-ycovdwaahd] { margin: 0 0 .3rem; font-weight: 700; font-size: 1.05rem; line-height: 1.3; }
/* Skip ahead: a small pill under the text, bottom-left, so it never sits over what is being read. */
.expo-scenario-coach__skiprow[b-ycovdwaahd] { display: flex; justify-content: flex-start; margin-top: .5rem; }
.expo-scenario .expo-scenario-coach__skip[b-ycovdwaahd] {
    min-width: 2.4rem;
    min-height: 1.75rem;
    padding: .05rem .6rem;
    border-radius: 999px;
    border: 1px solid #c6d8dc;
    background: #fff;
    color: var(--expo-ink, #0f5f58);
    font-weight: 700;
    font-size: .95rem;
    line-height: 1;
}
.expo-scenario .expo-scenario-coach__skip:hover[b-ycovdwaahd] { background: #e8f2f0; }
.expo-scenario .expo-scenario-coach__skip:focus-visible[b-ycovdwaahd] { outline: 3px solid #bd6514; outline-offset: 2px; }
.expo-scenario-coach__body[b-ycovdwaahd] { margin: 0; color: #2c4f5a; }
.expo-scenario-coach__busy[b-ycovdwaahd] { margin-top: .5rem; color: var(--expo-accent); }
.expo-scenario-coach__simulated[b-ycovdwaahd] { margin-top: .75rem; padding-top: .6rem; border-top: 1px dashed #c6d8dc; }
.expo-scenario-coach__eyebrow[b-ycovdwaahd] { display: block; color: #42646e; font-size: .7rem; letter-spacing: .05em; text-transform: uppercase; margin-bottom: .4rem; }
.expo-scenario-coach__actions[b-ycovdwaahd] { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .75rem; }
.expo-scenario-coach__actions button[b-ycovdwaahd] { flex: 1 1 auto; }
.expo-scenario-error[b-ycovdwaahd] { color: #943b20; margin: .5rem 0 0; }

.expo-scenario-bar[b-ycovdwaahd] {
    position: fixed;
    z-index: 11350; /* above the title/success backdrop so Exit and Restart always work */
    inset-inline-end: max(.75rem, env(safe-area-inset-right, 0px));
    bottom: max(.75rem, env(safe-area-inset-bottom, 0px));
    display: flex;
    align-items: center;
    gap: .45rem;
    padding: .35rem .35rem .35rem .85rem;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(10px);
    border: 1px solid #c6d8dc;
    border-radius: 999px;
    box-shadow: 0 6px 24px #173d4830;
}
.expo-scenario-bar__label[b-ycovdwaahd] { font-size: .8rem; font-weight: 700; color: #42646e; white-space: nowrap; }
.expo-scenario-bar button[b-ycovdwaahd] { min-height: 40px; border-radius: 999px; padding: .4rem .85rem; font-size: .85rem; }

@keyframes expo-scenario-pop-b-ycovdwaahd {
    from { opacity: 0; transform: translate(-50%, -50%) scale(.96); }
    to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}
.expo-scenario-card--beside[b-ycovdwaahd] { animation-name: expo-scenario-fade-b-ycovdwaahd; }
.expo-scenario-coach[b-ycovdwaahd] { animation-name: expo-scenario-fade-b-ycovdwaahd; }
@keyframes expo-scenario-fade-b-ycovdwaahd { from { opacity: 0; } to { opacity: 1; } }

@media (max-width: 639.98px) {
    .expo-scenario-card--beside[b-ycovdwaahd] {
        left: 50% !important;
        top: auto !important;
        transform: translateX(-50%);
        bottom: calc(max(.75rem, env(safe-area-inset-bottom, 0px)) + 4.25rem);
        width: min(26rem, calc(100vw - 1.5rem)) !important;
    }
    .expo-scenario-card--beside.expo-scenario-coach--top[b-ycovdwaahd] { top: calc(env(safe-area-inset-top, 0px) + 4.25rem) !important; bottom: auto !important; }
    .expo-scenario-coach[b-ycovdwaahd] {
        left: 50% !important;
        top: auto !important;
        transform: translateX(-50%);
        bottom: max(.75rem, env(safe-area-inset-bottom, 0px));
        width: min(26rem, calc(100vw - 1.5rem)) !important;
    }
    .expo-scenario-coach.expo-scenario-coach--top[b-ycovdwaahd] {
        top: calc(env(safe-area-inset-top, 0px) + .75rem) !important;
        bottom: auto !important;
    }
    .expo-scenario-bar__label[b-ycovdwaahd] { display: none; }
    .expo-scenario-bar[b-ycovdwaahd] { padding-inline-start: .35rem; }
    .expo-scenario-bar.expo-scenario-bar--top[b-ycovdwaahd] {
        top: calc(env(safe-area-inset-top, 0px) + .75rem);
        bottom: auto;
    }
    .expo-scenario-bar.expo-scenario-bar--hidden[b-ycovdwaahd] { display: none; }
    .expo-scenario-coach.expo-scenario-coach--top.expo-scenario-coach--below-bar[b-ycovdwaahd] {
        top: calc(env(safe-area-inset-top, 0px) + 4.25rem) !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    .expo-scenario *[b-ycovdwaahd], .expo-scenario *[b-ycovdwaahd]::before, .expo-scenario *[b-ycovdwaahd]::after { animation: none !important; transition: none !important; }
}
/* _content/BOS.Shared/Components/ExpoScenarioPicker.razor.rz.scp.css */
.expo-picker[b-14blgt8j1t] {
    display: grid;
    justify-items: center;
    align-content: start;
    gap: 1rem;
    padding: 1rem 1rem 6rem;
    color: var(--gc-text, #13212b);
}
.expo-picker--compact[b-14blgt8j1t] { padding: 0; gap: .65rem; justify-items: stretch; }
.expo-picker__header[b-14blgt8j1t] { width: min(34rem, 100%); padding: .5rem .25rem 0; }
.expo-picker__eyebrow[b-14blgt8j1t] {
    display: block;
    font-size: .72rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--gc-text-secondary, #55636b);
    margin-bottom: .5rem;
}
.expo-picker__title[b-14blgt8j1t] {
    font-size: clamp(1.5rem, 4vw, 2rem);
    line-height: 1.15;
    margin: 0 0 .5rem;
    font-weight: 700;
}
.expo-picker__hint[b-14blgt8j1t] { margin: 0; color: var(--gc-text-secondary, #55636b); }
@media (min-width: 900px) {
    .expo-picker:not(.expo-picker--compact)[b-14blgt8j1t] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 72rem;
        margin: 0 auto;
    }
    .expo-picker:not(.expo-picker--compact) .expo-picker__header[b-14blgt8j1t] { grid-column: 1 / -1; width: 100%; }
    .expo-picker:not(.expo-picker--compact) .expo-picker__card[b-14blgt8j1t] { width: 100%; }
}
.expo-picker__card[b-14blgt8j1t] {
    width: min(34rem, 100%);
    background: var(--gc-surface, #fff);
    border: 1px solid var(--gc-border, #dde3e2);
    border-radius: 1.25rem;
    padding: clamp(1.25rem, 4vw, 2.25rem);
    box-shadow: 0 10px 40px rgba(23, 61, 72, .12);
}
.expo-picker--compact .expo-picker__card[b-14blgt8j1t] { width: 100%; padding: .9rem 1rem; border-radius: .9rem; box-shadow: none; }
.expo-picker--compact .expo-picker__card--actions-only[b-14blgt8j1t] { padding: 0; border: 0; background: transparent; }
.expo-picker__card-title[b-14blgt8j1t] {
    font-size: clamp(1.35rem, 3.5vw, 1.7rem);
    line-height: 1.15;
    margin: 0 0 .75rem;
    font-weight: 700;
}
.expo-picker--compact .expo-picker__card-title[b-14blgt8j1t] { font-size: 1.1rem; margin-bottom: .3rem; }
.expo-picker__card-summary[b-14blgt8j1t] { font-size: 1rem; line-height: 1.5; margin: 0 0 1.25rem; }
.expo-picker--compact .expo-picker__card-summary[b-14blgt8j1t] { font-size: .9rem; margin-bottom: .7rem; color: var(--gc-text-secondary, #55636b); }
.expo-picker__actions[b-14blgt8j1t] { display: grid; gap: .75rem; }
.expo-picker--compact .expo-picker__actions[b-14blgt8j1t] { gap: .5rem; grid-template-columns: 1.4fr 1fr; }
.expo-picker__actions button[b-14blgt8j1t] {
    font: inherit;
    font-weight: 700;
    font-size: 1.05rem;
    min-height: 56px;
    border-radius: .9rem;
    padding: .8rem 1.25rem;
    cursor: pointer;
    touch-action: manipulation;
}
.expo-picker--compact .expo-picker__actions button[b-14blgt8j1t] { min-height: 48px; font-size: .95rem; padding: .6rem .9rem; }
.expo-picker__primary[b-14blgt8j1t] {
    background: var(--gc-primary, #0f5f58);
    color: #fff;
    border: 1px solid var(--gc-primary, #0f5f58);
}
.expo-picker__primary:hover[b-14blgt8j1t] { background: var(--gc-primary-hover, #0c4f49); }
.expo-picker__secondary[b-14blgt8j1t] {
    background: #fff;
    color: var(--gc-primary, #0f5f58);
    border: 1px solid var(--gc-primary-border, #b4d5cf);
}
.expo-picker__secondary:hover[b-14blgt8j1t] { background: var(--gc-primary-surface, #e8f2f0); }
.expo-picker__actions button:focus-visible[b-14blgt8j1t] { outline: 3px solid #bd6514; outline-offset: 3px; }
.expo-picker__actions button:disabled[b-14blgt8j1t] { opacity: .6; cursor: default; }
@media (min-width: 560px) {
    .expo-picker:not(.expo-picker--compact) .expo-picker__actions[b-14blgt8j1t] { grid-template-columns: 1.4fr 1fr; }
}
/* _content/BOS.Shared/Components/ExpoStagedNotification.razor.rz.scp.css */
.expo-staged-notification[b-86rma5huje] {
    position: fixed;
    top: calc(max(.75rem, env(safe-area-inset-top, 0px)) + .25rem);
    left: 50%;
    transform: translate(-50%, -140%);
    width: min(26rem, calc(100vw - 1.5rem));
    z-index: 11200;
    opacity: 0;
    transition: transform .32s cubic-bezier(.2, .9, .3, 1.2), opacity .25s ease;
    pointer-events: none;
}
.expo-staged-notification--in[b-86rma5huje] {
    transform: translate(-50%, 0);
    opacity: 1;
    pointer-events: auto;
}
.expo-staged-notification__card[b-86rma5huje] {
    display: flex;
    gap: .75rem;
    align-items: flex-start;
    width: 100%;
    text-align: left;
    font: inherit;
    color: #173d48;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(12px);
    border: 1px solid #c6d8dc;
    border-radius: 1.1rem;
    padding: .8rem .95rem;
    box-shadow: 0 14px 40px #173d4840;
    cursor: pointer;
    touch-action: manipulation;
}
.expo-staged-notification__card:hover[b-86rma5huje] { background: #fff; }
.expo-staged-notification__card:focus-visible[b-86rma5huje] { outline: 3px solid #bd6514; outline-offset: 3px; }
.expo-staged-notification__brand[b-86rma5huje] {
    flex-shrink: 0;
    display: grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: .75rem;
    background: #e8f2f0;
}
.expo-staged-notification__brand img[b-86rma5huje] { object-fit: contain; }
.expo-staged-notification__text[b-86rma5huje] { display: grid; gap: .1rem; min-width: 0; }
.expo-staged-notification__app[b-86rma5huje] { font-size: .72rem; letter-spacing: .04em; text-transform: uppercase; color: #42646e; }
.expo-staged-notification__time[b-86rma5huje] { text-transform: none; letter-spacing: 0; margin-left: .35rem; }
.expo-staged-notification__title[b-86rma5huje] { font-weight: 700; font-size: 1rem; line-height: 1.25; }
.expo-staged-notification__body[b-86rma5huje] { font-size: .9rem; line-height: 1.35; overflow-wrap: anywhere; }
.expo-staged-notification__action[b-86rma5huje] { margin-top: .3rem; font-weight: 700; color: #115e6b; }
@media (prefers-reduced-motion: reduce) {
    .expo-staged-notification[b-86rma5huje] { transition: none; }
}
/* _content/BOS.Shared/Components/FieldHelp.razor.rz.scp.css */
.gc-field-help[b-rbmw48yn3u] {
    display: inline-block;
    vertical-align: middle;
    margin-inline-start: .125rem;
    font-size: 1rem;
    line-height: 1;
}

.gc-field-help__trigger[b-rbmw48yn3u] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: var(--gc-text-muted, #526477);
    background: transparent;
    cursor: help;
    vertical-align: middle;
}

.gc-field-help__trigger:hover[b-rbmw48yn3u],
.gc-field-help__trigger:focus-visible[b-rbmw48yn3u] {
    color: var(--gc-primary, #196a72);
    background: var(--gc-surface-subtle, #edf5f5);
}

.gc-field-help__trigger:focus-visible[b-rbmw48yn3u] {
    outline: 2px solid var(--gc-primary, #196a72);
    outline-offset: 2px;
}

.gc-field-help__content[b-rbmw48yn3u] {
    position: fixed;
    inset: auto;
    z-index: 2147483647;
    box-sizing: border-box;
    width: min(320px, calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    margin: 0;
    padding: .75rem .875rem;
    border: 1px solid #41586b;
    border-radius: .5rem;
    background: #213547;
    color: #fff;
    box-shadow: 0 4px 16px #0003;
    font: 400 .875rem/1.5 var(--bs-body-font-family, system-ui, sans-serif);
    text-align: start;
    white-space: normal;
    overflow-wrap: anywhere;
    overflow-y: auto;
}

.gc-field-help__content[hidden][b-rbmw48yn3u] {
    display: none;
}
/* _content/BOS.Shared/Components/FirstAppointmentOnboarding.razor.rz.scp.css */
.first-appointment-guide[b-p4lemd4c6k] {
    background: var(--gc-primary-soft, rgba(83, 65, 220, 0.08));
    border: 1px solid var(--gc-primary-border, rgba(83, 65, 220, 0.24));
    border-radius: var(--gc-radius-md, 0.75rem);
    margin-bottom: 1rem;
    padding: 1rem;
}

.first-appointment-guide__header[b-p4lemd4c6k] {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.first-appointment-guide__header h3[b-p4lemd4c6k] {
    font-size: 1.05rem;
    margin: 0.15rem 0 0.25rem;
}

.first-appointment-guide__header p[b-p4lemd4c6k] {
    color: var(--gc-text-muted);
    margin: 0;
}

.first-appointment-guide__eyebrow[b-p4lemd4c6k] {
    color: var(--gc-primary, #5341dc);
    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.first-appointment-guide__steps[b-p4lemd4c6k] {
    display: grid;
    gap: 0.65rem;
    list-style: none;
    margin: 1rem 0 0;
    padding: 0;
}

.first-appointment-guide__steps li[b-p4lemd4c6k] {
    align-items: center;
    background: var(--gc-surface, #fff);
    border: 1px solid var(--gc-border, #d9dee7);
    border-radius: var(--gc-radius-sm, 0.5rem);
    display: grid;
    gap: 0.75rem;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 0.75rem;
}

.first-appointment-guide__steps li.is-complete[b-p4lemd4c6k],
.first-appointment-guide__steps li.is-ready[b-p4lemd4c6k] {
    border-color: var(--gc-success-border, #9ed8b4);
}

.first-appointment-guide__step-number[b-p4lemd4c6k] {
    align-items: center;
    background: var(--gc-primary-soft, #eeebff);
    border-radius: 999px;
    color: var(--gc-primary, #5341dc);
    display: inline-flex;
    font-weight: 750;
    height: 1.75rem;
    justify-content: center;
    width: 1.75rem;
}

.is-complete .first-appointment-guide__step-number[b-p4lemd4c6k],
.is-ready .first-appointment-guide__step-number[b-p4lemd4c6k] {
    background: var(--gc-success-soft, #e5f6eb);
    color: var(--gc-success, #147a3d);
}

.first-appointment-guide__step-copy[b-p4lemd4c6k] {
    display: grid;
    gap: 0.1rem;
}

.first-appointment-guide__step-copy span[b-p4lemd4c6k] {
    color: var(--gc-text-muted);
    font-size: 0.82rem;
}

.first-appointment-guide__step-copy .first-appointment-guide__warning[b-p4lemd4c6k] {
    color: var(--bs-warning-text-emphasis, #664d03);
    font-weight: 650;
}

.first-appointment-location-mode-heading[b-p4lemd4c6k] {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
}

.first-appointment-location-map[b-p4lemd4c6k] {
    border: 1px solid var(--gc-border, #d9dee7);
    border-radius: var(--gc-radius-sm, 0.5rem);
    height: 220px;
    overflow: hidden;
    width: 100%;
}

@media (max-width: 575.98px) {
    .first-appointment-guide__header[b-p4lemd4c6k] {
        display: grid;
    }

    .first-appointment-guide__steps li[b-p4lemd4c6k] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .first-appointment-guide__steps .btn[b-p4lemd4c6k] {
        grid-column: 2;
        justify-self: start;
    }

    .first-appointment-location-map[b-p4lemd4c6k] {
        height: 190px;
    }
}
/* _content/BOS.Shared/Components/FrontDeskConversationThread.razor.rz.scp.css */
.front-desk-conversation-scroll[b-u8tx83urdc] { max-height: 24rem; overflow-y: auto; }
.front-desk-message-text[b-u8tx83urdc] { white-space: pre-wrap; overflow-wrap: anywhere; }
/* _content/BOS.Shared/Components/GcTrialStatusLink.razor.rz.scp.css */
.gc-trial-status-link[b-twl4xon9v1] {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    border-radius: var(--gc-radius-sm);
    text-decoration: none;
}

.gc-trial-status-link:hover[b-twl4xon9v1] {
    text-decoration: none;
}

.gc-trial-status-link:focus-visible[b-twl4xon9v1] {
    outline: 2px solid var(--gc-primary);
    outline-offset: 2px;
}

.gc-trial-status-link__desktop[b-twl4xon9v1],
.gc-trial-status-link__mobile[b-twl4xon9v1] {
    display: inline-flex;
}

.gc-trial-status-link__mobile[b-twl4xon9v1] {
    display: none;
}

@media (max-width: 767.98px) {
    .gc-trial-status-link__desktop[b-twl4xon9v1] {
        display: none;
    }

    .gc-trial-status-link__mobile[b-twl4xon9v1] {
        display: inline-flex;
    }

    .gc-trial-status-link__mobile[b-twl4xon9v1]  i {
        display: none;
    }
}
/* _content/BOS.Shared/Components/GlobalSearchResults.razor.rz.scp.css */
.bos-global-search-status[b-wenzscapr6] {
    padding: 0.85rem 0.95rem;
    font-size: 0.85rem;
}

.bos-global-search-results[b-wenzscapr6] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    max-height: min(26rem, calc(100vh - 8rem));
    overflow-y: auto;
}

.bos-global-search-result[b-wenzscapr6] {
    width: 100%;
    min-height: 3.75rem;
    display: grid;
    grid-template-columns: 2.25rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    border: 0;
    border-radius: var(--gc-radius-sm);
    background: transparent;
    padding: 0.75rem;
    text-align: start;
}

.bos-global-search-result:hover[b-wenzscapr6],
.bos-global-search-result:focus-visible[b-wenzscapr6],
.bos-global-search-result.is-selected[b-wenzscapr6] {
    background: rgba(29, 78, 216, 0.05);
    outline: none;
}

.bos-global-search-result-icon[b-wenzscapr6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: var(--gc-radius-sm);
    background: var(--gc-primary-surface);
    color: var(--gc-primary);
    font-size: 1.1rem;
}

.bos-global-search-result--navigation .bos-global-search-result-icon[b-wenzscapr6] {
    background: rgba(15, 95, 88, 0.1);
    color: var(--gc-primary);
}

.bos-global-search-result--navigation .bos-global-search-action[b-wenzscapr6] {
    color: var(--gc-primary);
}

.bos-global-search-result-main[b-wenzscapr6] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.bos-global-search-title-row[b-wenzscapr6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.bos-global-search-title-row .fw-semibold[b-wenzscapr6],
.bos-global-search-result-main .small[b-wenzscapr6] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bos-global-search-action[b-wenzscapr6] {
    color: var(--gc-primary);
    font-size: 0.78rem;
    font-weight: 600;
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    .bos-global-search-result[b-wenzscapr6] {
        grid-template-columns: 2.25rem minmax(0, 1fr);
    }

    .bos-global-search-action[b-wenzscapr6] {
        grid-column: 2;
        justify-self: start;
    }
}
/* _content/BOS.Shared/Components/GroomCaptainHomepage.razor.rz.scp.css */
.gc-home[b-ozxqxx4o3k] {
    --home-cream: #fffdf8;
    --home-warm: #f7f3ea;
    --home-ink: #16233a;
    --home-body: #3b4558;
    --home-muted: #625c50;
    --home-line: #e4dbc8;
    --home-blue: #3f5d99;
    color: var(--home-ink);
    background: var(--home-cream);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 17px;
    line-height: 1.65;
}

.gc-home[b-ozxqxx4o3k], .gc-home *[b-ozxqxx4o3k] { box-sizing: border-box; }
.gc-home :is(h1, h2, h3, p, figure)[b-ozxqxx4o3k] { margin: 0; }
.gc-home :is(h1, h2, h3)[b-ozxqxx4o3k] { color: inherit; font-weight: 800; text-wrap: balance; }
.gc-home h1[b-ozxqxx4o3k] { font-size: clamp(2.3rem, 4.3vw, 3.9rem); line-height: 1.07; letter-spacing: -.045em; }
.gc-home h2[b-ozxqxx4o3k] { font-size: clamp(1.9rem, 3.3vw, 2.8rem); line-height: 1.14; letter-spacing: -.035em; }
.gc-home h3[b-ozxqxx4o3k] { font-size: 1.45rem; line-height: 1.28; letter-spacing: -.02em; }
.gc-home p[b-ozxqxx4o3k] { color: var(--home-body); }
.gc-home p + p[b-ozxqxx4o3k] { margin-top: 1rem; }
.gc-home a[b-ozxqxx4o3k] { color: inherit; text-underline-offset: .22em; }
/* The shared theme resets anchor/button outlines with !important. */
.gc-home :is(a, button, summary):focus-visible[b-ozxqxx4o3k] { outline: 3px solid #b75b12 !important; outline-offset: 5px; border-radius: 4px; }
.gc-home :is(main, section, article, aside, details, figure)[id][b-ozxqxx4o3k], #calendar-sync[b-ozxqxx4o3k] { scroll-margin-top: 100px; }
.gc-home img[b-ozxqxx4o3k] { display: block; width: 100%; height: auto; }
.home-container[b-ozxqxx4o3k] { width: min(1312px, calc(100% - 96px)); margin-inline: auto; }
.section-space[b-ozxqxx4o3k] { padding-block: 88px; }
.warm-band[b-ozxqxx4o3k] { background: var(--home-warm); }
.eyebrow[b-ozxqxx4o3k] { font-family: ui-monospace, "Cascadia Code", monospace; font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 700; margin-bottom: 18px !important; color: var(--home-muted) !important; }
.small-copy[b-ozxqxx4o3k] { font-size: .875rem; line-height: 1.6; color: var(--home-muted) !important; }
.lead[b-ozxqxx4o3k] { font-size: 1.18rem; line-height: 1.6; }
.home-button[b-ozxqxx4o3k] { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 13px 22px; background: var(--gc-primary, #0f5f58); color: white !important; font-size: .95rem; line-height: 1.4; font-weight: 700; text-align: center; text-decoration: none; border: 1px solid var(--gc-primary, #0f5f58); border-radius: 6px; }
.home-button:hover[b-ozxqxx4o3k] { background: var(--gc-primary-hover, #0c4f49); }
.button-outline[b-ozxqxx4o3k] { background: transparent; color: var(--gc-primary, #0f5f58) !important; }
.button-outline:hover[b-ozxqxx4o3k] { background: #e8f2f0; }
.skip-link[b-ozxqxx4o3k] { position: fixed; top: -100px; left: 20px; z-index: 100; padding: 12px 20px; background: white; }
.skip-link:focus[b-ozxqxx4o3k] { top: 12px; }
.site-header[b-ozxqxx4o3k] { position: sticky; top: 0; z-index: 20; background: var(--home-cream); border-bottom: 1px solid var(--home-line); }
.navigation[b-ozxqxx4o3k] { display: flex; align-items: center; gap: 30px; min-height: 82px; position: relative; }
.wordmark[b-ozxqxx4o3k] { display: inline-flex; align-items: center; gap: 9px; font-size: 1.2rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.wordmark img[b-ozxqxx4o3k] { width: 36px; height: 36px; }
.desktop-nav[b-ozxqxx4o3k] { display: flex; align-items: center; gap: 26px; margin-left: auto; font-size: .9rem; font-weight: 600; }
.desktop-nav a[b-ozxqxx4o3k] { text-decoration: none; padding-block: 12px; }
.desktop-nav a:hover[b-ozxqxx4o3k] { color: var(--home-blue); text-decoration: underline; }
.menu-toggle[b-ozxqxx4o3k] { display: none; }
.mobile-nav[b-ozxqxx4o3k] { display: none; }
.home-hero[b-ozxqxx4o3k] { display: grid; grid-template-columns: 1fr 1.06fr; align-items: center; gap: 52px; padding-block: 78px 88px; }
.hero-copy .lead[b-ozxqxx4o3k] { margin-top: 26px; }
.actions[b-ozxqxx4o3k] { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-block: 28px 16px; }
.text-link[b-ozxqxx4o3k] { font-size: .95rem; font-weight: 700; color: var(--home-blue) !important; padding-block: 12px; }
.hero-evidence[b-ozxqxx4o3k] { border-radius: 16px; background: var(--home-ink); padding: 12px; box-shadow: 0 22px 50px #16233a18; }
.screen-header[b-ozxqxx4o3k] { display: flex; align-items: center; gap: 9px; padding: 4px 6px 14px; color: white; font-size: .83rem; font-weight: 600; }
.screen-header > span:last-child[b-ozxqxx4o3k] { margin-left: auto; font-weight: 400; color: #e1e6f0; font-size: .73rem; }
.screen-dot[b-ozxqxx4o3k] { width: 8px; height: 8px; background: #89c6ba; border-radius: 50%; }
.hero-evidence img[b-ozxqxx4o3k] { border-radius: 7px; }
.hero-evidence figcaption[b-ozxqxx4o3k] { color: #e1e6f0; padding: 14px 6px 4px; font-size: .82rem; line-height: 1.6; }
.section-intro[b-ozxqxx4o3k] { max-width: 790px; margin-bottom: 44px; }
.section-intro > p:not(.eyebrow)[b-ozxqxx4o3k] { margin-top: 18px; }
.story[b-ozxqxx4o3k] { padding-block: 68px; border-block: 1px solid var(--home-line); }
.story .section-intro[b-ozxqxx4o3k] { max-width: 880px; padding-bottom: 44px; border-bottom: 1px solid var(--home-line); }
.story-row[b-ozxqxx4o3k] { display: grid; grid-template-columns: .85fr 1.15fr; gap: 68px; align-items: center; }
.story-row > *[b-ozxqxx4o3k], .today-intro > *[b-ozxqxx4o3k], .pricing-grid > *[b-ozxqxx4o3k] { min-width: 0; }
.story-copy :is(h2, h3) + p[b-ozxqxx4o3k] { margin-top: 22px; }
.story-copy > h3[b-ozxqxx4o3k] { font-size: 2.5rem; }
.evidence > img[b-ozxqxx4o3k], .evidence > picture[b-ozxqxx4o3k] { display: block; border: 1px solid var(--home-line); border-radius: 10px; overflow: hidden; background: white; }
.evidence figcaption[b-ozxqxx4o3k] { margin-top: 12px; font-size: .82rem; line-height: 1.6; color: var(--home-muted); }
.statement[b-ozxqxx4o3k] { color: var(--home-blue) !important; font-size: 1.3rem; font-weight: 750; margin-block: 24px 18px !important; }
.actor[b-ozxqxx4o3k] { display: inline-block; font-family: ui-monospace, monospace; font-size: .72rem; font-weight: 700; line-height: 1.5; letter-spacing: .05em; text-transform: uppercase; padding: 5px 9px; background: #fdf1e3; border: 1px solid #e6c29d; color: #704018; border-radius: 3px; }
.actor-teal[b-ozxqxx4o3k] { background: #e8f2f0; color: #0f5f58; border-color: #b4d5cf; }
.estimate-example[b-ozxqxx4o3k] { margin-top: 48px; border-top: 1px solid var(--home-line); padding-top: 36px; display: grid; grid-template-columns: .85fr 1.15fr; gap: 68px; }
.estimate-example h3 + p[b-ozxqxx4o3k] { margin-top: 15px; }
.supporting-detail[b-ozxqxx4o3k] { margin-top: 16px; font-size: .88rem; }
.supporting-detail img[b-ozxqxx4o3k] { margin-top: 15px; border: 1px solid var(--home-line); }
.gc-home summary[b-ozxqxx4o3k] { cursor: pointer; font-weight: 650; min-height: 48px; padding-block: 13px; }
.gc-home details[open] > summary[b-ozxqxx4o3k] { margin-bottom: 12px; }
.schedule-band[b-ozxqxx4o3k] { padding-block: 76px; background: var(--home-ink); color: white; }
.schedule-band p[b-ozxqxx4o3k] { color: #e0e6ef; }
.schedule-band .eyebrow[b-ozxqxx4o3k], .schedule-band .small-copy[b-ozxqxx4o3k] { color: #bdccdf !important; }
.schedule-band .evidence figcaption[b-ozxqxx4o3k] { color: #bdccdf; }
.story-copy > .booking-heading[b-ozxqxx4o3k] { font-size: 1.35rem; margin-top: 28px; }
.booking-heading + p[b-ozxqxx4o3k] { font-size: .95rem; }
.booking-protection[b-ozxqxx4o3k] { display: grid; grid-template-columns: .85fr 1.15fr; gap: 68px; border-top: 1px solid #627187; margin-top: 40px; padding-top: 32px; }
.booking-protection h3[b-ozxqxx4o3k] { font-size: 1.5rem; }
.booking-protection h3 + p[b-ozxqxx4o3k] { margin-top: 14px; }
.booking-protection p[b-ozxqxx4o3k] { font-size: .95rem; }
.booking-protection .text-link[b-ozxqxx4o3k] { color: #bedde9 !important; display: inline-block; margin-top: 10px; }
.calendar-sync[b-ozxqxx4o3k] { display: grid; grid-template-columns: .85fr 1.15fr; gap: 48px; padding: 32px; margin-bottom: 48px; border: 1px solid #b4d5cf; border-radius: 10px; background: #e8f2f0; }
.calendar-sync h2[b-ozxqxx4o3k] { font-size: 1.9rem; }
.calendar-sync h3[b-ozxqxx4o3k] { font-size: 1.15rem; }
.calendar-sync :is(h2, h3) + p[b-ozxqxx4o3k] { margin-top: 12px; font-size: .95rem; }
.calendar-sync-benefits[b-ozxqxx4o3k] { display: grid; gap: 24px; }
.reminder-outcomes[b-ozxqxx4o3k] { border-left: 2px solid var(--home-line); padding-left: 34px; }
.reminder-outcomes > div + div[b-ozxqxx4o3k] { border-top: 1px solid var(--home-line); margin-top: 22px; padding-top: 22px; }
.reminder-outcomes h3[b-ozxqxx4o3k] { margin-block: 14px 9px; }
.reminder-outcomes > .small-copy[b-ozxqxx4o3k] { margin-top: 20px; }
.payment-note[b-ozxqxx4o3k] { margin-top: 26px; padding: 22px; background: #e8f2f0; border-left: 3px solid #0f5f58; }
.payment-note h3[b-ozxqxx4o3k] { font-size: 1.12rem; margin-bottom: 8px; }
.payment-note p[b-ozxqxx4o3k] { font-size: .93rem; }
.payment-evidence[b-ozxqxx4o3k] { width: min(100%, 570px); justify-self: center; }
.continuity-row[b-ozxqxx4o3k] { display: grid; grid-template-columns: .7fr 1.3fr; gap: 48px; align-items: center; }
.continuity-row > *[b-ozxqxx4o3k] { min-width: 0; }
.continuity-row h2[b-ozxqxx4o3k], .continuity-row .story-copy > h3[b-ozxqxx4o3k] { font-size: clamp(1.8rem, 2.5vw, 2.25rem); }
.opening-proof[b-ozxqxx4o3k] { margin-top: 48px; padding-top: 48px; border-top: 1px solid var(--home-line); }
.waiver-proof[b-ozxqxx4o3k] { margin-top: 40px; border-block: 1px solid var(--home-line); }
.waiver-proof summary[b-ozxqxx4o3k] { padding: 22px 4px; }
.waiver-proof summary span:first-child[b-ozxqxx4o3k] { font-size: 1.25rem; margin-right: 24px; }
.waiver-proof summary span + span[b-ozxqxx4o3k] { font-size: .95rem; font-weight: 400; }
.waiver-content[b-ozxqxx4o3k] { padding: 0 4px 28px; }
.waiver-content > p[b-ozxqxx4o3k] { margin-bottom: 20px; }
.waiver-content .evidence[b-ozxqxx4o3k] { max-width: 1068px; }
.today-band[b-ozxqxx4o3k] { background: #e8f2f0; border-block: 1px solid #bdd7d0; }
.today-intro[b-ozxqxx4o3k] { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: end; margin-bottom: 38px; }
.today-intro .lead[b-ozxqxx4o3k] { font-size: 1.4rem; font-weight: 700; color: #0f5f58; }
.today-evidence[b-ozxqxx4o3k] { max-width: 1080px; margin-inline: auto !important; }
.today-evidence > picture[b-ozxqxx4o3k] { box-shadow: 0 18px 50px #0f5f5810; border: 10px solid white; }
.today-points[b-ozxqxx4o3k] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; margin-top: 42px; }
.today-points h3[b-ozxqxx4o3k] { font-size: 1.2rem; margin-bottom: 12px; }
.today-points p[b-ozxqxx4o3k] { font-size: .95rem; }
.pricing-grid[b-ozxqxx4o3k] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.plan[b-ozxqxx4o3k] { display: flex; flex-direction: column; background: var(--home-cream); border: 1px solid var(--home-line); border-radius: 10px; padding: 30px; }
.plan.recommended[b-ozxqxx4o3k] { border: 2px solid #0f5f58; padding: 29px; }
.plan.recommended .eyebrow[b-ozxqxx4o3k] { color: #0f5f58 !important; }
.plan-price[b-ozxqxx4o3k] { font-size: 3rem; font-weight: 800; line-height: 1.15; color: var(--home-ink) !important; margin-block: 24px 20px !important; letter-spacing: -.03em; }
.plan-price span[b-ozxqxx4o3k] { font-size: .9rem; font-weight: 400; margin-left: 5px; letter-spacing: normal; }
.plan > p:not(.plan-price):not(.eyebrow)[b-ozxqxx4o3k] { font-size: .94rem; }
.plan ul[b-ozxqxx4o3k] { padding-left: 20px; margin-block: 24px 30px; font-size: .93rem; }
.plan li + li[b-ozxqxx4o3k] { margin-top: 10px; }
.plan .home-button[b-ozxqxx4o3k] { margin-top: auto; }
.pricing-note[b-ozxqxx4o3k] { margin-top: 24px !important; font-size: .9rem; max-width: 850px; }
.setup-list[b-ozxqxx4o3k] { list-style: none; counter-reset: setup; display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; padding: 0; margin: 0; }
.setup-list li[b-ozxqxx4o3k] { counter-increment: setup; padding-top: 20px; border-top: 1px solid var(--home-line); }
.setup-list li[b-ozxqxx4o3k]::before { content: counter(setup, decimal-leading-zero); font: 600 .9rem ui-monospace, monospace; color: var(--home-blue); }
.setup-list h3[b-ozxqxx4o3k] { font-size: 1.08rem; margin-block: 18px 10px; }
.setup-list p[b-ozxqxx4o3k] { font-size: .92rem; }
.faq-layout[b-ozxqxx4o3k], .feature-reference[b-ozxqxx4o3k] { display: grid; grid-template-columns: .85fr 1.15fr; gap: 68px; }
.faq-layout h2 + p[b-ozxqxx4o3k], .feature-reference h2 + p[b-ozxqxx4o3k] { margin-top: 20px; }
.faq-list details[b-ozxqxx4o3k], .feature-groups details[b-ozxqxx4o3k] { border-top: 1px solid var(--home-line); }
.faq-list details:last-child[b-ozxqxx4o3k], .feature-groups details:last-child[b-ozxqxx4o3k] { border-bottom: 1px solid var(--home-line); }
.faq-list summary[b-ozxqxx4o3k], .feature-groups summary[b-ozxqxx4o3k] { padding: 20px 4px; line-height: 1.5; }
.faq-list details > p[b-ozxqxx4o3k], .feature-groups details > p[b-ozxqxx4o3k] { padding: 0 4px 22px; font-size: .95rem; }
.walkthrough[b-ozxqxx4o3k] { border-top: 1px solid var(--home-line); background: var(--home-warm); }
.walkthrough[b-ozxqxx4o3k]  .section { padding-block: 60px; }
.walkthrough[b-ozxqxx4o3k]  .container { max-width: 1312px; width: calc(100% - 72px); }
.walkthrough[b-ozxqxx4o3k]  .demo-title { font-size: 1.7rem; }
.walkthrough[b-ozxqxx4o3k]  .btn { min-height: 48px; }
.closing[b-ozxqxx4o3k] { text-align: center; background: var(--home-ink); color: white; }
.closing h2[b-ozxqxx4o3k] { max-width: 740px; margin-inline: auto; font-size: clamp(2rem, 4vw, 3.5rem); }
.closing p[b-ozxqxx4o3k] { color: #dce4ee; max-width: 600px; margin: 24px auto; }
.closing .eyebrow[b-ozxqxx4o3k] { color: #aac9d8 !important; }
.closing .home-button[b-ozxqxx4o3k] { margin-top: 5px; background: white; border-color: white; color: var(--home-ink) !important; }
.home-footer[b-ozxqxx4o3k] { background: #0f1b2e; color: white; padding-block: 52px 24px; }
.footer-top[b-ozxqxx4o3k] { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 40px; padding-bottom: 36px; }
.footer-top p[b-ozxqxx4o3k] { font-size: .9rem; color: #c8d2e0; margin-top: 12px; }
.footer-top nav[b-ozxqxx4o3k], .store-links[b-ozxqxx4o3k] { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; font-size: .9rem; }
.footer-top :is(nav, .store-links) a[b-ozxqxx4o3k] { min-height: 36px; display: inline-flex; align-items: center; gap: 10px; }
.footer-top .store-links p[b-ozxqxx4o3k] { margin-top: 0; }
.footer-bottom[b-ozxqxx4o3k] { border-top: 1px solid #374459; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px 24px; padding-top: 24px; font-size: .8rem; color: #c8d2e0; }

@media (min-width: 1600px) { .home-hero[b-ozxqxx4o3k] { padding-block: 95px; } }
@media (max-width: 1100px) {
    .home-container[b-ozxqxx4o3k] { width: calc(100% - 64px); }
    .navigation[b-ozxqxx4o3k] { gap: 20px; }
    .desktop-nav[b-ozxqxx4o3k] { gap: 20px; }
    .home-hero[b-ozxqxx4o3k] { gap: 30px; }
    .story-row[b-ozxqxx4o3k], .estimate-example[b-ozxqxx4o3k], .faq-layout[b-ozxqxx4o3k], .feature-reference[b-ozxqxx4o3k], .booking-protection[b-ozxqxx4o3k], .continuity-row[b-ozxqxx4o3k] { gap: 38px; }
    .plan[b-ozxqxx4o3k] { padding: 22px; }
    .plan.recommended[b-ozxqxx4o3k] { padding: 21px; }
    .setup-list[b-ozxqxx4o3k] { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 899px) {
    .desktop-nav[b-ozxqxx4o3k] { display: none; }
    .nav-trial[b-ozxqxx4o3k] { margin-left: auto; }
    .menu-toggle[b-ozxqxx4o3k] { display: inline-flex; align-items: center; justify-content: center; background: none; color: var(--home-ink); border: 1px solid var(--home-line); border-radius: 5px; width: 44px; height: 44px; font-size: 1.35rem; flex-shrink: 0; }
    .mobile-nav:not([hidden])[b-ozxqxx4o3k] { display: flex; flex-direction: column; position: absolute; top: 100%; left: 0; right: 0; background: var(--home-cream); padding: 12px 20px; border: 1px solid var(--home-line); box-shadow: 0 16px 24px #16233a15; }
    .mobile-nav a[b-ozxqxx4o3k] { display: block; padding: 12px 4px; text-decoration: none; min-height: 48px; }
    .home-hero[b-ozxqxx4o3k] { grid-template-columns: 1fr; padding-block: 52px 60px; gap: 38px; }
    .hero-copy[b-ozxqxx4o3k] { max-width: 680px; }
    .hero-evidence[b-ozxqxx4o3k] { max-width: 680px; }
    .gc-home h1[b-ozxqxx4o3k] { font-size: 3rem; max-width: 620px; }
    .section-space[b-ozxqxx4o3k] { padding-block: 60px; }
    .story-row[b-ozxqxx4o3k], .estimate-example[b-ozxqxx4o3k], .faq-layout[b-ozxqxx4o3k], .feature-reference[b-ozxqxx4o3k], .booking-protection[b-ozxqxx4o3k], .continuity-row[b-ozxqxx4o3k] { grid-template-columns: 1fr; gap: 30px; }
    .story-copy[b-ozxqxx4o3k] { max-width: 650px; }
    .story-row .evidence[b-ozxqxx4o3k] { width: 100%; }
    .calendar-sync[b-ozxqxx4o3k] { grid-template-columns: 1fr; gap: 28px; }
    .today-intro[b-ozxqxx4o3k] { gap: 30px; }
    .today-points[b-ozxqxx4o3k] { gap: 24px; }
    .pricing-grid[b-ozxqxx4o3k] { gap: 12px; }
    .plan[b-ozxqxx4o3k] { padding: 18px; }
    .plan.recommended[b-ozxqxx4o3k] { padding: 17px; }
    .plan h3[b-ozxqxx4o3k] { font-size: 1.2rem; }
    .footer-top[b-ozxqxx4o3k] { grid-template-columns: 1.2fr 1fr; }
}
@media (max-width: 599px) {
    .gc-home[b-ozxqxx4o3k] { font-size: 16px; }
    .home-container[b-ozxqxx4o3k] { width: calc(100% - 40px); }
    .navigation[b-ozxqxx4o3k] { gap: 10px; min-height: 72px; }
    .wordmark[b-ozxqxx4o3k] { gap: 6px; font-size: 1rem; letter-spacing: -.03em; }
    .wordmark img[b-ozxqxx4o3k] { width: 27px; height: 27px; }
    .nav-trial[b-ozxqxx4o3k] { padding: 10px 11px; font-size: .75rem; min-height: 44px; }
    .menu-toggle[b-ozxqxx4o3k] { width: 40px; }
    .gc-home h1[b-ozxqxx4o3k] { font-size: clamp(2.15rem, 8.9vw, 2.6rem); line-height: 1.1; }
    .gc-home h2[b-ozxqxx4o3k] { font-size: 1.85rem; }
    .home-hero[b-ozxqxx4o3k] { padding-top: 38px; }
    .hero-copy .lead[b-ozxqxx4o3k] { font-size: 1.05rem; margin-top: 22px; }
    .actions[b-ozxqxx4o3k] { gap: 10px; margin-top: 24px; }
    .actions .home-button[b-ozxqxx4o3k] { width: 100%; }
    .actions .text-link[b-ozxqxx4o3k] { padding-block: 7px; }
    .hero-evidence[b-ozxqxx4o3k] { padding: 10px; width: 100%; max-width: 390px; justify-self: center; }
    .screen-header > span:last-child[b-ozxqxx4o3k] { font-size: .68rem; }
    .section-space[b-ozxqxx4o3k], .story[b-ozxqxx4o3k], .schedule-band[b-ozxqxx4o3k] { padding-block: 48px; }
    .section-intro[b-ozxqxx4o3k] { margin-bottom: 32px; }
    .story .section-intro[b-ozxqxx4o3k] { padding-bottom: 32px; }
    .desktop-break[b-ozxqxx4o3k] { display: none; }
    .story-copy > h3[b-ozxqxx4o3k] { font-size: 2rem; }
    .estimate-example[b-ozxqxx4o3k] { margin-top: 34px; padding-top: 28px; }
    .reminder-outcomes[b-ozxqxx4o3k] { padding-left: 22px; }
    .calendar-sync[b-ozxqxx4o3k] { padding: 24px; margin-bottom: 36px; }
    .today-intro[b-ozxqxx4o3k], .today-points[b-ozxqxx4o3k], .pricing-grid[b-ozxqxx4o3k] { grid-template-columns: 1fr; }
    .opening-proof[b-ozxqxx4o3k] { margin-top: 32px; padding-top: 32px; }
    .waiver-proof summary span + span[b-ozxqxx4o3k] { display: block; margin-top: 8px; }
    .waiver-content .evidence picture[b-ozxqxx4o3k] { width: 147px; }
    .today-intro[b-ozxqxx4o3k] { gap: 24px; }
    .today-intro .lead[b-ozxqxx4o3k] { font-size: 1.2rem; }
    .today-evidence > picture[b-ozxqxx4o3k] { border-width: 6px; }
    .today-points[b-ozxqxx4o3k] { gap: 24px; margin-top: 28px; }
    .today-points > div[b-ozxqxx4o3k] { border-top: 1px solid #b4d5cf; padding-top: 20px; }
    .pricing-grid[b-ozxqxx4o3k] { gap: 18px; }
    .plan[b-ozxqxx4o3k] { padding: 26px; }
    .plan.recommended[b-ozxqxx4o3k] { padding: 25px; }
    .plan h3[b-ozxqxx4o3k] { font-size: 1.5rem; }
    .setup-list[b-ozxqxx4o3k] { grid-template-columns: 1fr; gap: 24px; }
    .setup-list li[b-ozxqxx4o3k] { position: relative; padding-left: 40px; }
    .setup-list li[b-ozxqxx4o3k]::before { position: absolute; left: 0; top: 23px; }
    .setup-list h3[b-ozxqxx4o3k] { margin-top: 0; }
    .walkthrough[b-ozxqxx4o3k]  .container { width: calc(100% - 24px); }
    .walkthrough[b-ozxqxx4o3k]  .section { padding-block: 44px; }
    .footer-top[b-ozxqxx4o3k] { grid-template-columns: 1fr; gap: 28px; }
    .footer-top nav[b-ozxqxx4o3k] { display: grid; grid-template-columns: 1fr 1fr; }
    .footer-top :is(nav, .store-links) a[b-ozxqxx4o3k] { min-height: 44px; }
    .footer-bottom[b-ozxqxx4o3k] { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) { .gc-home *[b-ozxqxx4o3k] { scroll-behavior: auto !important; } }
/* _content/BOS.Shared/Components/GroomCaptainStart.razor.rz.scp.css */
.gc-start[b-a3a9bw6j0a] {
    --start-cream: #fffdf8;
    --start-warm: #f7f3ea;
    --start-ink: #16233a;
    --start-body: #3b4558;
    --start-muted: #625c50;
    --start-line: #e4dbc8;
    --start-blue: #3f5d99;
    color: var(--start-ink);
    background: var(--start-cream);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 17px;
    line-height: 1.65;
}

.gc-start[b-a3a9bw6j0a], .gc-start *[b-a3a9bw6j0a] { box-sizing: border-box; }
.gc-start :where(h1, h2, h3, p, figure)[b-a3a9bw6j0a] { margin: 0; }
.gc-start :is(h1, h2, h3)[b-a3a9bw6j0a] { color: inherit; font-weight: 800; text-wrap: balance; }
.gc-start h1[b-a3a9bw6j0a] { font-size: clamp(2.3rem, 4.3vw, 3.6rem); line-height: 1.08; letter-spacing: -.04em; }
.gc-start h2[b-a3a9bw6j0a] { font-size: clamp(1.8rem, 3vw, 2.5rem); line-height: 1.15; letter-spacing: -.03em; }
.gc-start h3[b-a3a9bw6j0a] { font-size: 1.35rem; line-height: 1.3; letter-spacing: -.02em; }
.gc-start p[b-a3a9bw6j0a] { color: var(--start-body); }
.gc-start a[b-a3a9bw6j0a] { color: inherit; text-underline-offset: .22em; }
.gc-start :is(a, summary):focus-visible[b-a3a9bw6j0a] { outline: 3px solid #b75b12 !important; outline-offset: 5px; border-radius: 4px; }
.gc-start :is(main, section)[id][b-a3a9bw6j0a] { scroll-margin-top: 90px; }
.gc-start img[b-a3a9bw6j0a] { display: block; width: 100%; height: auto; }
.start-container[b-a3a9bw6j0a] { width: min(1200px, calc(100% - 64px)); margin-inline: auto; }
.start-eyebrow[b-a3a9bw6j0a] { font-family: ui-monospace, "Cascadia Code", monospace; font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 700; margin-bottom: 14px !important; color: var(--start-muted) !important; }
.start-small[b-a3a9bw6j0a] { font-size: .875rem; line-height: 1.6; color: var(--start-muted) !important; }
.start-lead[b-a3a9bw6j0a] { font-size: 1.2rem; line-height: 1.6; }
.start-button[b-a3a9bw6j0a] { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 13px 22px; background: var(--gc-primary, #0f5f58); color: white !important; font-size: .95rem; line-height: 1.4; font-weight: 700; text-align: center; text-decoration: none; border: 1px solid var(--gc-primary, #0f5f58); border-radius: 6px; }
.start-button:hover[b-a3a9bw6j0a] { background: var(--gc-primary-hover, #0c4f49); }
.start-outline[b-a3a9bw6j0a] { background: transparent; color: var(--gc-primary, #0f5f58) !important; }
.start-outline:hover[b-a3a9bw6j0a] { background: #e8f2f0; }
.start-button-light[b-a3a9bw6j0a] { background: white; border-color: white; color: var(--start-ink) !important; }
.start-button-light:hover[b-a3a9bw6j0a] { background: #eef1f6; }
.start-text-link[b-a3a9bw6j0a] { font-size: .95rem; font-weight: 700; color: var(--start-blue) !important; padding-block: 12px; }

.start-header[b-a3a9bw6j0a] { position: sticky; top: 0; z-index: 20; background: var(--start-cream); border-bottom: 1px solid var(--start-line); }
.start-bar[b-a3a9bw6j0a] { display: flex; align-items: center; gap: 22px; min-height: 76px; }
.start-wordmark[b-a3a9bw6j0a] { display: inline-flex; align-items: center; gap: 9px; font-size: 1.2rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.start-wordmark img[b-a3a9bw6j0a] { width: 36px; height: 36px; }
.start-signin[b-a3a9bw6j0a] { margin-left: auto; font-size: .9rem; font-weight: 600; text-decoration: none; padding: 12px 4px; }

.start-hero[b-a3a9bw6j0a] { display: grid; grid-template-columns: 1fr 1.06fr; align-items: center; gap: 52px; padding-block: 72px 80px; }
.start-hero-copy .start-lead[b-a3a9bw6j0a] { margin-top: 24px; }
.start-actions[b-a3a9bw6j0a] { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-block: 28px 14px; }
.start-hero-evidence[b-a3a9bw6j0a] { border-radius: 16px; background: var(--start-ink); padding: 12px; box-shadow: 0 22px 50px #16233a18; }
.start-hero-evidence img[b-a3a9bw6j0a] { border-radius: 7px; }
.start-hero-evidence figcaption[b-a3a9bw6j0a] { color: #e1e6f0; padding: 12px 6px 2px; font-size: .82rem; line-height: 1.6; }

.start-proof[b-a3a9bw6j0a] { background: var(--start-warm); border-block: 1px solid var(--start-line); }
.start-proof-row[b-a3a9bw6j0a] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; padding-block: 22px; }
.start-proof-row p[b-a3a9bw6j0a] { font-size: .92rem; font-weight: 650; line-height: 1.45; color: var(--start-ink); padding-left: 14px; border-left: 3px solid #0f5f58; }

.start-section[b-a3a9bw6j0a] { padding-block: 80px; }
.start-warm[b-a3a9bw6j0a] { background: var(--start-warm); }
.start-section > .start-container > h2[b-a3a9bw6j0a] { max-width: 760px; margin-bottom: 40px; }
.start-problems[b-a3a9bw6j0a] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.start-problems > div[b-a3a9bw6j0a] { border-top: 3px solid var(--start-ink); padding-top: 20px; }
.start-problems h3[b-a3a9bw6j0a] { margin-bottom: 12px; }
.start-problems p[b-a3a9bw6j0a] { font-size: .98rem; }

.start-row[b-a3a9bw6j0a] { display: grid; grid-template-columns: .85fr 1.15fr; gap: 60px; align-items: center; }
.start-row + .start-row[b-a3a9bw6j0a] { margin-top: 72px; }
.start-row > *[b-a3a9bw6j0a] { min-width: 0; }
.start-copy h3 + p[b-a3a9bw6j0a] { margin-top: 16px; }
.start-evidence > img[b-a3a9bw6j0a], .start-evidence > picture[b-a3a9bw6j0a] { display: block; border: 1px solid var(--start-line); border-radius: 10px; overflow: hidden; background: white; }
.start-evidence figcaption[b-a3a9bw6j0a] { margin-top: 12px; font-size: .82rem; line-height: 1.6; color: var(--start-muted); }
.start-evidence-narrow[b-a3a9bw6j0a] { width: min(100%, 520px); justify-self: center; }
.start-route-proof[b-a3a9bw6j0a] { margin-top: 20px; }
.start-route-proof summary[b-a3a9bw6j0a] { cursor: pointer; min-height: 44px; padding-block: 10px; font-size: .95rem; font-weight: 650; }
.start-route-proof .start-evidence[b-a3a9bw6j0a] { margin-top: 12px; }
.start-more[b-a3a9bw6j0a] { margin-top: 56px; font-size: .98rem; }

.start-testimonials[b-a3a9bw6j0a] { border-bottom: 1px solid var(--start-line); }
.start-testimonial-grid[b-a3a9bw6j0a] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.start-testimonial[b-a3a9bw6j0a] { display: flex; flex-direction: column; min-width: 0; padding: 24px; border: 1px solid var(--start-line); border-top: 3px solid var(--gc-primary, #0f5f58); border-radius: 6px; }
.start-testimonial blockquote[b-a3a9bw6j0a] { margin: 0 0 24px; font-size: .98rem; }
.start-testimonial figcaption[b-a3a9bw6j0a] { margin-top: auto; font-size: .9rem; font-weight: 700; }

.start-pricing[b-a3a9bw6j0a] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.start-plan[b-a3a9bw6j0a] { display: flex; flex-direction: column; background: var(--start-cream); border: 1px solid var(--start-line); border-radius: 10px; padding: 30px; min-width: 0; }
.start-plan.recommended[b-a3a9bw6j0a] { border: 2px solid #0f5f58; padding: 29px; }
.start-plan.recommended .start-eyebrow[b-a3a9bw6j0a] { color: #0f5f58 !important; }
.start-price[b-a3a9bw6j0a] { font-size: 3rem; font-weight: 800; line-height: 1.15; color: var(--start-ink) !important; margin-block: 20px 16px !important; letter-spacing: -.03em; }
.start-price span[b-a3a9bw6j0a] { font-size: .9rem; font-weight: 400; margin-left: 5px; letter-spacing: normal; }
.start-plan > p:not(.start-price):not(.start-eyebrow)[b-a3a9bw6j0a] { font-size: .94rem; }
.start-plan ul[b-a3a9bw6j0a] { padding-left: 20px; margin-block: 22px 28px; font-size: .93rem; }
.start-plan li + li[b-a3a9bw6j0a] { margin-top: 10px; }
.start-plan .start-button[b-a3a9bw6j0a] { margin-top: auto; }
.start-note[b-a3a9bw6j0a] { margin-top: 24px !important; font-size: .92rem; max-width: 850px; }
.start-pricing + .start-note + .start-small[b-a3a9bw6j0a] { margin-top: 10px !important; }

.start-steps[b-a3a9bw6j0a] { list-style: none; counter-reset: step; display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; padding: 0; margin: 0; }
.start-steps li[b-a3a9bw6j0a] { counter-increment: step; padding-top: 20px; border-top: 1px solid var(--start-line); }
.start-steps li[b-a3a9bw6j0a]::before { content: counter(step, decimal-leading-zero); font: 600 .9rem ui-monospace, monospace; color: var(--start-blue); }
.start-steps h3[b-a3a9bw6j0a] { font-size: 1.15rem; margin-block: 14px 8px; }
.start-steps p[b-a3a9bw6j0a] { font-size: .95rem; }

.start-faq[b-a3a9bw6j0a] { display: grid; grid-template-columns: .7fr 1.3fr; gap: 60px; }
.start-faq > h2[b-a3a9bw6j0a] { margin-bottom: 0 !important; }
.start-faq details[b-a3a9bw6j0a] { border-top: 1px solid var(--start-line); }
.start-faq details:last-child[b-a3a9bw6j0a] { border-bottom: 1px solid var(--start-line); }
.start-faq summary[b-a3a9bw6j0a] { cursor: pointer; font-weight: 650; min-height: 48px; padding: 18px 4px; line-height: 1.5; }
.start-faq details > p[b-a3a9bw6j0a] { padding: 0 4px 20px; font-size: .95rem; }

.start-closing[b-a3a9bw6j0a] { text-align: center; background: var(--start-ink); color: white; padding-block: 80px; }
.start-closing h2[b-a3a9bw6j0a] { max-width: 740px; margin: 0 auto 28px; }
.start-closing .start-closing-note[b-a3a9bw6j0a] { color: #dce4ee; margin-top: 18px; font-size: .92rem; }
.start-closing .start-closing-alt[b-a3a9bw6j0a] { color: #dce4ee; margin-top: 10px; font-size: .92rem; }
.start-closing a:not(.start-button)[b-a3a9bw6j0a] { color: white; }

.start-footer[b-a3a9bw6j0a] { background: #0f1b2e; color: #c8d2e0; padding-block: 28px; font-size: .8rem; }
.start-footer .start-container[b-a3a9bw6j0a] { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 24px; }
.start-footer a[b-a3a9bw6j0a] { color: inherit; display: inline-block; padding-block: 8px; }

.start-sticky[b-a3a9bw6j0a] { display: none; }

@media (max-width: 1000px) {
    .start-container[b-a3a9bw6j0a] { width: calc(100% - 48px); }
    .start-hero[b-a3a9bw6j0a] { grid-template-columns: 1fr; gap: 36px; padding-block: 48px 56px; }
    .start-hero-copy[b-a3a9bw6j0a], .start-hero-evidence[b-a3a9bw6j0a] { max-width: 680px; }
    .start-proof-row[b-a3a9bw6j0a] { grid-template-columns: 1fr 1fr; }
    .start-row[b-a3a9bw6j0a], .start-faq[b-a3a9bw6j0a] { grid-template-columns: 1fr; gap: 28px; }
    .start-row + .start-row[b-a3a9bw6j0a] { margin-top: 56px; }
    .start-section[b-a3a9bw6j0a] { padding-block: 60px; }
    .start-problems[b-a3a9bw6j0a], .start-steps[b-a3a9bw6j0a] { grid-template-columns: 1fr; gap: 28px; }
    .start-testimonial-grid[b-a3a9bw6j0a] { grid-template-columns: 1fr; }
    .start-pricing[b-a3a9bw6j0a] { gap: 12px; }
    .start-plan[b-a3a9bw6j0a] { padding: 18px; }
    .start-plan.recommended[b-a3a9bw6j0a] { padding: 17px; }
    .start-sticky[b-a3a9bw6j0a] { display: flex; flex-wrap: wrap; gap: 8px; position: sticky; bottom: 0; z-index: 30; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: var(--start-cream); border-top: 1px solid var(--start-line); box-shadow: 0 -8px 20px #16233a14; }
    .start-sticky .start-button[b-a3a9bw6j0a] { width: 100%; }
    .start-sticky[b-a3a9bw6j0a]  .demo-button { flex: 1; }
}

@media (min-width: 600px) and (max-width: 767px) {
    .start-plan .start-eyebrow[b-a3a9bw6j0a] { min-height: 2lh; }
}

@media (max-width: 599px) {
    .gc-start[b-a3a9bw6j0a] { font-size: 16px; }
    .start-container[b-a3a9bw6j0a] { width: calc(100% - 40px); }
    .start-bar[b-a3a9bw6j0a] { gap: 10px; min-height: 68px; }
    .start-wordmark[b-a3a9bw6j0a] { font-size: 1rem; gap: 6px; }
    .start-wordmark img[b-a3a9bw6j0a] { width: 27px; height: 27px; }
    .start-bar-cta[b-a3a9bw6j0a] { display: none; }
    .gc-start h1[b-a3a9bw6j0a] { font-size: clamp(2.1rem, 8.9vw, 2.5rem); }
    .gc-start h2[b-a3a9bw6j0a] { font-size: 1.75rem; }
    .start-actions .start-button[b-a3a9bw6j0a] { width: 100%; }
    .start-hero-evidence[b-a3a9bw6j0a] { padding: 10px; width: 100%; max-width: 390px; justify-self: center; }
    .start-proof-row[b-a3a9bw6j0a] { grid-template-columns: 1fr; gap: 14px; }
    .start-pricing[b-a3a9bw6j0a] { grid-template-columns: 1fr; gap: 18px; }
    .start-plan[b-a3a9bw6j0a] { padding: 26px; }
    .start-plan.recommended[b-a3a9bw6j0a] { padding: 25px; }
    .start-footer .start-container[b-a3a9bw6j0a] { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) { .gc-start *[b-a3a9bw6j0a] { scroll-behavior: auto !important; } }
/* _content/BOS.Shared/Components/GroomCaptainStartExperiment.razor.rz.scp.css */
.gc-experiment[b-shp14lwyqg] { color: #16233a; background: #fffdf8; font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: 17px; line-height: 1.6; }
.gc-experiment[b-shp14lwyqg], .gc-experiment *[b-shp14lwyqg] { box-sizing: border-box; }
h1[b-shp14lwyqg], h2[b-shp14lwyqg], h3[b-shp14lwyqg], p[b-shp14lwyqg], figure[b-shp14lwyqg] { margin: 0; }
h1[b-shp14lwyqg], h2[b-shp14lwyqg], h3[b-shp14lwyqg] { color: #16233a; font-weight: 800; text-wrap: balance; }
h1[b-shp14lwyqg] { font-size: clamp(2.15rem, 4.2vw, 3.5rem); letter-spacing: -.04em; line-height: 1.08; }
h2[b-shp14lwyqg] { font-size: clamp(1.6rem, 3vw, 2.2rem); letter-spacing: -.03em; line-height: 1.2; }
h3[b-shp14lwyqg] { font-size: 1.1rem; line-height: 1.35; }
p[b-shp14lwyqg] { color: #3b4558; }
a[b-shp14lwyqg] { color: #3f5d99; text-underline-offset: .2em; }
a:focus-visible[b-shp14lwyqg], button:focus-visible[b-shp14lwyqg] { outline: 3px solid #b75b12 !important; outline-offset: 4px; }
.experiment-container[b-shp14lwyqg] { width: min(1120px, calc(100% - 64px)); margin-inline: auto; }
header[b-shp14lwyqg] { border-bottom: 1px solid #e4dbc8; }
.experiment-bar[b-shp14lwyqg] { display: flex; align-items: center; justify-content: space-between; min-height: 68px; gap: 20px; }
.experiment-bar > a:last-child[b-shp14lwyqg] { font-size: .9rem; }
.experiment-wordmark[b-shp14lwyqg] { display: flex; align-items: center; gap: 9px; font-size: 1.2rem; font-weight: 800; color: #16233a; text-decoration: none; }
.experiment-hero[b-shp14lwyqg] { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 56px; padding-block: 54px; }
.experiment-hero > *[b-shp14lwyqg] { min-width: 0; }
.experiment-eyebrow[b-shp14lwyqg] { font: 700 .72rem/1.5 ui-monospace, monospace; letter-spacing: .1em; text-transform: uppercase; color: #625c50; margin-bottom: 14px; }
.experiment-lead[b-shp14lwyqg] { font-size: 1.15rem; margin-block: 22px 14px; }
.experiment-small[b-shp14lwyqg] { font-size: .82rem; line-height: 1.5; margin-top: 12px; }
.experiment-button[b-shp14lwyqg] { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; padding: 13px 22px; background: #0f5f58; color: white; border: 0; border-radius: 6px; font: 700 .95rem/1.4 Inter, system-ui, sans-serif; text-decoration: none; cursor: pointer; }
.experiment-actions[b-shp14lwyqg] { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 24px; }
.experiment-button:hover[b-shp14lwyqg] { background: #0c4f49; color: white; }
.experiment-benefits[b-shp14lwyqg] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; padding-block: 20px 40px; }
.experiment-benefits i[b-shp14lwyqg] { font-size: 1.5rem; color: #0f5f58; }
.experiment-benefits h2[b-shp14lwyqg] { font-size: 1rem; letter-spacing: 0; margin-block: 8px; }
.experiment-benefits p[b-shp14lwyqg] { font-size: .85rem; }
.experiment-proof[b-shp14lwyqg] { text-align: center; padding-bottom: 40px; }
.experiment-proof picture[b-shp14lwyqg] { display: block; max-width: 720px; margin: auto; }
.experiment-proof img[b-shp14lwyqg] { width: 100%; height: auto; border: 1px solid #e4dbc8; border-radius: 10px; box-shadow: 0 14px 35px #16233a12; }
.experiment-proof figcaption[b-shp14lwyqg] { margin-top: 12px; font-size: .8rem; color: #625c50; }
.experiment-pricing[b-shp14lwyqg] { padding-block: 40px; background: #f7f3ea; border-block: 1px solid #e4dbc8; }
.experiment-plans[b-shp14lwyqg] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-block: 24px 18px; }
.experiment-plan[b-shp14lwyqg] { display: flex; flex-direction: column; padding: 24px; border: 1px solid #e4dbc8; background: #fffdf8; border-radius: 10px; min-width: 0; }
.experiment-plan.recommended[b-shp14lwyqg] { border: 2px solid #0f5f58; padding: 23px; }
.experiment-plan > p[b-shp14lwyqg] { font-size: .88rem; }
.experiment-plan .experiment-small[b-shp14lwyqg] { margin-bottom: 20px; }
.experiment-plan .experiment-button[b-shp14lwyqg] { margin-top: auto; }
.experiment-plan .experiment-price[b-shp14lwyqg] { font-size: 2.5rem; font-weight: 800; letter-spacing: -.03em; color: #16233a; margin-block: 8px 12px; }
.experiment-price span[b-shp14lwyqg] { font-size: .85rem; font-weight: 400; letter-spacing: normal; margin-left: 4px; }
.experiment-final[b-shp14lwyqg] { text-align: center; padding-block: 44px; }
.experiment-final .experiment-actions[b-shp14lwyqg] { justify-content: center; }
.experiment-final > a:last-child[b-shp14lwyqg] { display: inline-block; margin-top: 18px; font-size: .9rem; }
.experiment-footer[b-shp14lwyqg] { display: flex; justify-content: space-between; gap: 18px; border-top: 1px solid #e4dbc8; padding-block: 20px; font-size: .78rem; }
.experiment-library[b-shp14lwyqg] { padding-block: 10px 48px; }
.experiment-video-grid[b-shp14lwyqg] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; margin-top: 28px; }
.experiment-video[b-shp14lwyqg] { min-width: 0; }
.experiment-video > button[b-shp14lwyqg] { position: relative; display: block; width: 100%; padding: 0; border: 1px solid #e4dbc8; border-radius: 12px; overflow: hidden; background: #16233a; cursor: pointer; }
.experiment-video img[b-shp14lwyqg] { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; }
.experiment-play[b-shp14lwyqg] { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: grid; place-content: center; width: 64px; height: 64px; background: #0f5f58; color: white; border: 2px solid white; border-radius: 50%; font-size: 24px; box-shadow: 0 4px 20px #0004; }
.experiment-duration[b-shp14lwyqg] { position: absolute; bottom: 12px; right: 12px; background: #16233a; color: white; padding: 2px 8px; border-radius: 4px; font-size: .8rem; }
.experiment-video figcaption[b-shp14lwyqg] { margin-top: 14px; }
.experiment-video figcaption p[b-shp14lwyqg] { font-size: .86rem; margin-top: 6px; }
.experiment-dialog[b-shp14lwyqg] { width: min(960px, calc(100% - 24px)); max-height: calc(100dvh - 24px); padding: 20px; border: 1px solid #e4dbc8; border-radius: 12px; color: #16233a; background: #fffdf8; overflow: auto; }
.experiment-dialog[b-shp14lwyqg]::backdrop { background: #16233ae6; }
.experiment-dialog-bar[b-shp14lwyqg] { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.experiment-dialog-bar h2[b-shp14lwyqg] { font-size: 1.15rem; }
.experiment-dialog-bar button[b-shp14lwyqg] { flex-shrink: 0; min-width: 44px; min-height: 44px; border: 1px solid #b5bebc; border-radius: 6px; background: white; color: #16233a; font-size: 20px; }
.experiment-player[b-shp14lwyqg] { aspect-ratio: 16/9; min-height: 200px; }
.experiment-player[b-shp14lwyqg]  iframe { display: block; width: 100%; height: 100%; min-height: 200px; border: 0; }
.experiment-dialog > .experiment-button[b-shp14lwyqg] { margin-top: 16px; }
.experiment-dialog > .experiment-button[hidden][b-shp14lwyqg] { display: none; }
[data-video-status][b-shp14lwyqg] { margin-top: 12px; }
@media (max-width: 900px) { .experiment-hero[b-shp14lwyqg] { gap: 28px; } .experiment-plans[b-shp14lwyqg] { gap: 12px; } .experiment-plan[b-shp14lwyqg] { padding: 18px; } .experiment-plan.recommended[b-shp14lwyqg] { padding: 17px; } }
@media (max-width: 599px) {
    .experiment-container[b-shp14lwyqg] { width: calc(100% - 32px); }
    .experiment-hero[b-shp14lwyqg] { grid-template-columns: 1fr; padding-block: 30px; gap: 26px; }
    .experiment-lead[b-shp14lwyqg] { font-size: 1rem; margin-top: 18px; }
    .experiment-hero > div > p:not(.experiment-eyebrow):not(.experiment-small)[b-shp14lwyqg] { font-size: .95rem; }
    .experiment-benefits[b-shp14lwyqg] { grid-template-columns: 1fr 1fr; gap: 18px; padding-block: 10px 30px; }
    .experiment-proof picture[b-shp14lwyqg] { max-width: 250px; }
    .experiment-plans[b-shp14lwyqg] { grid-template-columns: 1fr; gap: 12px; }
    .experiment-plan[b-shp14lwyqg] { display: grid; grid-template-columns: 1fr auto; gap: 6px 12px; padding: 16px; }
    .experiment-plan.recommended[b-shp14lwyqg] { padding: 15px; }
    .experiment-plan .experiment-price[b-shp14lwyqg] { margin: 0; font-size: 1.7rem; grid-column: 2; grid-row: 1; }
    .experiment-plan > p:not(.experiment-price)[b-shp14lwyqg] { grid-column: 1 / -1; font-size: .83rem; }
    .experiment-plan .experiment-small[b-shp14lwyqg] { margin-top: 2px; margin-bottom: 0; }
    .experiment-plan .experiment-button[b-shp14lwyqg] { grid-column: 1 / -1; margin-top: 8px; }
    .experiment-pricing[b-shp14lwyqg] { padding-block: 30px; }
    .experiment-video-grid[b-shp14lwyqg] { grid-template-columns: 1fr; gap: 24px; }
    .experiment-footer[b-shp14lwyqg] { flex-direction: column; gap: 8px; }
    .experiment-dialog[b-shp14lwyqg] { padding: 14px; }
}
/* _content/BOS.Shared/Components/MobileCompatibilityGate.razor.rz.scp.css */
.mobile-compatibility-gate[b-u8r6wv5mor] {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: grid;
    place-items: center;
    padding: max(1.5rem, env(safe-area-inset-top)) 1.5rem max(1.5rem, env(safe-area-inset-bottom));
    background: linear-gradient(160deg, #f4f7fb 0%, #e8eef8 100%);
}

.mobile-compatibility-card[b-u8r6wv5mor] {
    width: min(100%, 28rem);
    padding: 2rem;
    border: 1px solid rgba(30, 64, 175, 0.12);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 1.25rem 3rem rgba(15, 23, 42, 0.14);
    text-align: center;
}

.mobile-compatibility-icon[b-u8r6wv5mor] {
    display: grid;
    place-items: center;
    width: 3.5rem;
    height: 3.5rem;
    margin: 0 auto 1rem;
    border-radius: 50%;
    background: #405188;
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
}

.mobile-compatibility-card h1[b-u8r6wv5mor] {
    margin-bottom: 0.75rem;
    font-size: clamp(1.75rem, 7vw, 2.25rem);
}

.mobile-update-available[b-u8r6wv5mor] {
    position: fixed;
    right: 1rem;
    bottom: max(1rem, env(safe-area-inset-bottom));
    left: 1rem;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    width: min(calc(100% - 2rem), 42rem);
    margin-inline: auto;
    padding: 1rem;
    border: 1px solid rgba(30, 64, 175, 0.18);
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 0.75rem 2rem rgba(15, 23, 42, 0.18);
}

.mobile-update-available-actions[b-u8r6wv5mor] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.25rem;
}

@media (max-width: 575.98px) {
    .mobile-update-available[b-u8r6wv5mor] {
        align-items: stretch;
        flex-direction: column;
    }

    .mobile-update-available-actions[b-u8r6wv5mor] {
        justify-content: flex-end;
    }
}
/* _content/BOS.Shared/Components/MyDayScheduleCard.razor.rz.scp.css */
.my-day-card[b-ar2s69kesm] {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--default-border, #dfe3e8);
    border-radius: .75rem;
    background: var(--custom-white, #fff);
    box-shadow: 0 1px 3px rgb(15 23 42 / 6%);
}

.my-day-card--emphasized[b-ar2s69kesm] {
    border-inline-start: .3rem solid var(--primary-color, #405189);
    box-shadow: 0 8px 24px rgb(15 23 42 / 9%);
}

.my-day-card__header[b-ar2s69kesm] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.my-day-card__header > div:first-child[b-ar2s69kesm] {
    min-width: 0;
}

.my-day-card__eyebrow[b-ar2s69kesm] {
    color: var(--text-muted, #64748b);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.my-day-card h3[b-ar2s69kesm] {
    margin: .2rem 0;
    font-size: 1.2rem;
    overflow-wrap: anywhere;
}

.my-day-card__pets[b-ar2s69kesm] {
    color: var(--primary-color, #405189);
    font-weight: 600;
}

.my-day-card__time[b-ar2s69kesm] {
    display: grid;
    flex: 0 0 auto;
    text-align: end;
}

.my-day-card__time strong[b-ar2s69kesm] {
    font-size: 1.05rem;
}

.my-day-card__facts[b-ar2s69kesm] {
    display: grid;
    gap: .55rem;
    margin-bottom: 1rem;
}

.my-day-card__facts > div[b-ar2s69kesm] {
    display: grid;
    grid-template-columns: 1.25rem minmax(0, 1fr);
    gap: .5rem;
    overflow-wrap: anywhere;
}

.my-day-card__warning[b-ar2s69kesm] {
    color: var(--warning-text, #8a4b08);
    font-weight: 600;
}

.my-day-card__attention[b-ar2s69kesm] {
    margin-bottom: 1rem;
    padding: .75rem;
    border-radius: .5rem;
    background: var(--warning-bg-subtle, #fff4e0);
    color: var(--warning-text, #7c4700);
}

.my-day-card__attention ul[b-ar2s69kesm] {
    margin: .35rem 0 0;
    padding-inline-start: 1.25rem;
}

.my-day-card__notes[b-ar2s69kesm] {
    margin-bottom: 1rem;
    padding: .75rem;
    border-radius: .5rem;
    background: var(--light-rgb, #f7f8fa);
    overflow-wrap: anywhere;
}

.my-day-card__notes p[b-ar2s69kesm] {
    margin: 0 0 .45rem;
}

.my-day-card__notes p:last-child[b-ar2s69kesm] {
    margin-bottom: 0;
}

.my-day-card__actions[b-ar2s69kesm] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .6rem;
}

.my-day-card__actions .btn[b-ar2s69kesm] {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    white-space: normal;
}

@media (max-width: 575.98px) {
    .my-day-card__header[b-ar2s69kesm] {
        align-items: flex-start;
    }

    .my-day-card__actions[b-ar2s69kesm] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .my-day-card__actions .btn:first-child[b-ar2s69kesm] {
        grid-column: 1 / -1;
    }
}
/* _content/BOS.Shared/Components/PasswordInput.razor.rz.scp.css */
.gc-password-input[b-8uirm42ky8] {
    position: relative;
    width: 100%;
}

.gc-password-input > input[b-8uirm42ky8] {
    padding-inline-end: 3rem;
}

.gc-password-input__toggle[b-8uirm42ky8] {
    position: absolute;
    inset-inline-end: 0;
    inset-block: 0;
    width: 2.75rem;
    min-height: 2.75rem;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: var(--gc-radius-sm);
    background: transparent;
    color: var(--gc-text-secondary);
}

.gc-password-input__toggle:focus-visible[b-8uirm42ky8] {
    outline: 2px solid var(--gc-primary);
    outline-offset: -3px;
}
/* _content/BOS.Shared/Components/QuickTrialForm.razor.rz.scp.css */
.quick-trial[b-qx1oe2dzhi] { padding: 26px; background: white; border: 1px solid #e4dbc8; border-top: 4px solid #0f5f58; border-radius: 12px; box-shadow: 0 16px 40px #16233a0d; }
h2[b-qx1oe2dzhi] { font-size: 1.45rem; line-height: 1.2; font-weight: 800; color: #16233a; }
p[b-qx1oe2dzhi] { color: #3b4558; font-size: .9rem; line-height: 1.5; }
[b-qx1oe2dzhi] form { display: flex; flex-direction: column; margin-block: 18px 14px; }
label[b-qx1oe2dzhi] { font-size: .86rem; font-weight: 650; margin: 10px 0 4px; }
label span[b-qx1oe2dzhi], .quick-small[b-qx1oe2dzhi] { font-size: .78rem; font-weight: 400; }
[b-qx1oe2dzhi] input { width: 100%; min-height: 44px; padding: 9px 12px; border: 1px solid #b5bebc; border-radius: 5px; font: inherit; font-size: 16px; color: #16233a; background: white; }
[b-qx1oe2dzhi] input:focus { outline: 2px solid #0f5f58; outline-offset: 2px; }
[b-qx1oe2dzhi] .validation-message { color: #a32121; font-size: .85rem; }
.quick-small[b-qx1oe2dzhi] { margin-block: 10px; }
button[b-qx1oe2dzhi] { min-height: 48px; padding: 12px; background: #0f5f58; color: white; border: 0; border-radius: 6px; font: inherit; font-weight: 700; }
button:disabled[b-qx1oe2dzhi] { opacity: .6; }
.quick-actions[b-qx1oe2dzhi] { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.quick-actions button[b-qx1oe2dzhi] { flex: 1 0 auto; }
.quick-trial--compact .quick-actions[b-qx1oe2dzhi] { display: block; margin-top: 16px; }
.quick-trial--compact button[b-qx1oe2dzhi] { width: 100%; }
.quick-trial--compact h2[b-qx1oe2dzhi] { margin-bottom: 12px; }
.quick-pricing[b-qx1oe2dzhi] { margin-top: 12px; text-align: center; }
.quick-pricing p[b-qx1oe2dzhi] { margin: 0; font-size: .85rem; }
.quick-pricing strong[b-qx1oe2dzhi] { color: #16233a; font-weight: 700; }
.quick-pricing .quick-pricing-details[b-qx1oe2dzhi] { margin-top: 4px; font-size: .75rem; }
.quick-pricing a[b-qx1oe2dzhi] { font-size: inherit; color: #0f5f58; text-decoration: underline; white-space: nowrap; }
.quick-live-demo[b-qx1oe2dzhi] { margin: 0 0 6px; font-size: .85rem; }
.quick-live-demo a[b-qx1oe2dzhi] { display: inline-flex; align-items: center; min-height: 44px; color: #0f5f58; text-decoration: underline; }
a[b-qx1oe2dzhi] { color: #3f5d99; font-size: .85rem; text-underline-offset: .2em; }
button:focus-visible[b-qx1oe2dzhi], a:focus-visible[b-qx1oe2dzhi] { outline: 3px solid #b75b12; outline-offset: 4px; }
@media (max-width: 599px) { .quick-trial[b-qx1oe2dzhi] { padding: 20px; } }
/* _content/BOS.Shared/Components/RouteRailRow.razor.rz.scp.css */
/*
    The route card's rail. Tokens (--gc-*) are declared on .brand-landing in
    Home.razor.css and inherit down into this component.
*/

.gc-rail-stop[b-zyl8he7xd9] {
    display: flex;
    gap: 14px;
}

.gc-rail-time[b-zyl8he7xd9] {
    flex: none;
    width: 64px;
    padding-top: 13px;
    color: var(--gc-ink, #16203a);
    font-family: var(--gc-mono, monospace);
    font-size: 13px;
    font-weight: 500;
}

.gc-rail-stop.is-warning .gc-rail-time[b-zyl8he7xd9] {
    color: var(--gc-clay, #c0563a);
}

.gc-rail-card[b-zyl8he7xd9] {
    flex: 1;
    padding: 12px 14px;
    background: var(--gc-blue-bg, #f4f6fb);
    border: 1px solid var(--gc-blue-line, #dfe4f1);
    border-radius: 9px;
}

.gc-rail-stop.is-warning .gc-rail-card[b-zyl8he7xd9] {
    background: var(--gc-clay-bg, #fdf1ec);
    border-color: var(--gc-clay-line, #ebc3b4);
}

.gc-rail-stop.is-open .gc-rail-card[b-zyl8he7xd9] {
    background: #fff;
    border-style: dashed;
}

.gc-rail-stop.is-open .gc-rail-title[b-zyl8he7xd9],
.gc-rail-stop.is-open .gc-rail-detail[b-zyl8he7xd9] {
    color: var(--gc-mono-muted, #8a8272);
}

.gc-rail-head[b-zyl8he7xd9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.gc-rail-title[b-zyl8he7xd9] {
    color: var(--gc-ink, #16203a);
    font-size: 15px;
    font-weight: 600;
}

.gc-rail-badge[b-zyl8he7xd9] {
    flex: none;
    padding: 4px 7px;
    color: #fff;
    background: var(--gc-clay, #c0563a);
    border-radius: 4px;
    font-family: var(--gc-mono, monospace);
    font-size: 10.5px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    animation: gcPulse-b-zyl8he7xd9 2.4s ease-in-out infinite;
}

.gc-rail-detail[b-zyl8he7xd9] {
    margin-top: 2px;
    color: var(--gc-muted-soft, #6b7391);
    font-size: 13px;
}

.gc-rail-detail.is-warning[b-zyl8he7xd9] {
    color: var(--gc-clay, #c0563a);
    font-weight: 500;
}

/* Drive legs: a dashed connector and a duration, never colour alone. */
.gc-rail-leg[b-zyl8he7xd9] {
    display: flex;
    gap: 14px;
    align-items: center;
    padding: 7px 0;
}

.gc-rail-leg .gc-rail-time[b-zyl8he7xd9] {
    padding-top: 0;
}

.gc-rail-connector[b-zyl8he7xd9] {
    width: 2px;
    height: 26px;
    margin-left: 16px;
    background: repeating-linear-gradient(var(--gc-dash, #c9cfe0) 0 4px, transparent 4px 8px);
}

.gc-rail-leg.is-warning .gc-rail-connector[b-zyl8he7xd9] {
    background: repeating-linear-gradient(var(--gc-clay-dash, #e0a78f) 0 4px, transparent 4px 8px);
}

.gc-rail-leg-text[b-zyl8he7xd9] {
    color: var(--gc-mono-muted, #8a8272);
    font-family: var(--gc-mono, monospace);
    font-size: 12px;
}

.gc-rail-leg.is-warning .gc-rail-leg-text[b-zyl8he7xd9] {
    color: var(--gc-clay, #c0563a);
    font-weight: 500;
}

.gc-leg-short[b-zyl8he7xd9] {
    display: none;
}

@media (max-width: 767.98px) {
    .gc-rail-time[b-zyl8he7xd9] {
        width: 48px;
        font-size: 12.5px;
    }

    .gc-rail-connector[b-zyl8he7xd9] {
        margin-left: 12px;
    }

    .gc-rail-leg-text[b-zyl8he7xd9] {
        font-size: 11.5px;
    }
}

/* Below 360px the leg labels drop the word "drive" and keep the minutes. */
@media (max-width: 359.98px) {
    .gc-leg-full[b-zyl8he7xd9] {
        display: none;
    }

    .gc-leg-short[b-zyl8he7xd9] {
        display: inline;
    }
}

@keyframes gcPulse-b-zyl8he7xd9 {
    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.45;
    }
}

@media (prefers-reduced-motion: reduce) {
    .gc-rail-badge[b-zyl8he7xd9] {
        animation: none;
    }
}
/* _content/BOS.Shared/Components/ScheduleUtilizationCard.razor.rz.scp.css */
.schedule-utilization[b-nn6gu2uajz] { min-width: 0; overflow-wrap: anywhere; }
.schedule-utilization h2[b-nn6gu2uajz] { margin: 0; font-size: 1.15rem; }
.utilization-heading[b-nn6gu2uajz] { display: flex; justify-content: space-between; align-items: start; gap: 1rem; flex-wrap: wrap; }
.utilization-controls[b-nn6gu2uajz], .utilization-actions[b-nn6gu2uajz] { display: flex; gap: .5rem; flex-wrap: wrap; }
.utilization-controls label[b-nn6gu2uajz] { min-width: 0; }
.utilization-counts[b-nn6gu2uajz] { margin-top: 1rem; font-size: 1.1rem; }
.utilization-time[b-nn6gu2uajz] { margin: .75rem 0; line-height: 1.6; }
.utilization-progress[b-nn6gu2uajz] { height: .5rem; background: #e6ecec; border-radius: 1rem; margin: .4rem 0; overflow: hidden; }
.utilization-progress span[b-nn6gu2uajz] { display: block; height: 100%; background: #11675f; }
.utilization-health[b-nn6gu2uajz] { padding: .75rem 0; }
.utilization-health.needs-setup[b-nn6gu2uajz] { background: #fff7e6; padding: .75rem; border-radius: .5rem; }
.utilization-health ul[b-nn6gu2uajz] { padding-left: 1.25rem; margin: .5rem 0; }
.utilization-actions a[b-nn6gu2uajz] { white-space: normal; }
.utilization-breakdown summary[b-nn6gu2uajz] { cursor: pointer; font-weight: 650; padding: .4rem 0; }
.utilization-filters[b-nn6gu2uajz] { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1rem 0; }
.utilization-filters label[b-nn6gu2uajz] { flex: 1 1 12rem; min-width: 0; }
.utilization-services[b-nn6gu2uajz] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: .75rem; }
.utilization-service[b-nn6gu2uajz] { border: 1px solid #dce5e5; border-radius: .5rem; padding: .75rem; min-width: 0; }
.utilization-days[b-nn6gu2uajz] { margin: 1rem 0; line-height: 1.8; }
@media(max-width: 390px) { .utilization-controls[b-nn6gu2uajz] { width: 100%; } .utilization-controls label[b-nn6gu2uajz] { flex: 1; } .utilization-counts[b-nn6gu2uajz] { font-size: 1rem; } }
/* _content/BOS.Shared/Components/StatCard.razor.rz.scp.css */
.bos-stat-card[b-g36u8251tp] {
    min-height: 100%;
}

.bos-stat-card-link[b-g36u8251tp] {
    color: inherit;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.bos-stat-card-link:hover[b-g36u8251tp],
.bos-stat-card-link:focus-visible[b-g36u8251tp] {
    color: inherit;
    transform: translateY(-2px);
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.12);
}

.bos-stat-icon[b-g36u8251tp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

.bos-stat-link-icon[b-g36u8251tp] {
    font-size: 1.4rem;
    color: rgba(100, 116, 139, 0.9);
}
/* _content/BOS.Shared/Components/TipSelector.razor.rz.scp.css */
.gc-tip-selector[b-480p9vv4j9] {
    display: grid;
    gap: 1rem;
    color: var(--gc-text, #1f2937);
}

.gc-tip-selector__heading[b-480p9vv4j9] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.gc-tip-selector__title[b-480p9vv4j9] {
    margin: 0;
    font-size: 1.25rem;
    line-height: 1.3;
}

.gc-tip-selector__help[b-480p9vv4j9],
.gc-tip-selector__custom-help[b-480p9vv4j9] {
    margin: 0.25rem 0 0;
    color: var(--gc-text-secondary, #64748b);
    font-size: 0.875rem;
}

.gc-tip-selector__basis[b-480p9vv4j9] {
    flex: 0 0 auto;
    font-weight: 700;
}

.gc-tip-selector__options[b-480p9vv4j9] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.gc-tip-selector__option[b-480p9vv4j9] {
    min-height: 3rem;
    padding: 0.65rem 0.85rem;
    border: 1px solid var(--gc-border-strong, #94a3b8);
    border-radius: var(--gc-radius, 0.65rem);
    background: var(--gc-surface, #fff);
    color: inherit;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    text-align: left;
}

.gc-tip-selector__option:hover:not(:disabled)[b-480p9vv4j9] {
    border-color: var(--gc-primary, #0f766e);
    background: var(--gc-primary-05, #f0fdfa);
}

.gc-tip-selector__option.is-selected[b-480p9vv4j9] {
    border-color: var(--gc-primary, #0f766e);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--gc-primary, #0f766e) 20%, transparent);
    background: var(--gc-primary-05, #f0fdfa);
}

.gc-tip-selector__option--none[b-480p9vv4j9] {
    grid-column: 1 / -1;
}

.gc-tip-selector__option-label[b-480p9vv4j9],
.gc-tip-selector__option-amount[b-480p9vv4j9] {
    font-weight: 700;
}

.gc-tip-selector__option-amount[b-480p9vv4j9] {
    white-space: nowrap;
}

.gc-tip-selector__custom label[b-480p9vv4j9] {
    display: block;
    margin-bottom: 0.4rem;
    font-weight: 600;
}

.gc-tip-selector__currency-input[b-480p9vv4j9] {
    display: flex;
    align-items: center;
    min-height: 3rem;
    border: 1px solid var(--gc-border-strong, #94a3b8);
    border-radius: var(--gc-radius, 0.65rem);
    background: var(--gc-surface, #fff);
    overflow: hidden;
}

.gc-tip-selector__currency-input:focus-within[b-480p9vv4j9] {
    border-color: var(--gc-primary, #0f766e);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--gc-primary, #0f766e) 16%, transparent);
}

.gc-tip-selector__currency-input span[b-480p9vv4j9] {
    padding-left: 0.9rem;
    color: var(--gc-text-secondary, #64748b);
}

.gc-tip-selector__currency-input input[b-480p9vv4j9] {
    min-width: 0;
    width: 100%;
    min-height: 3rem;
    border: 0;
    padding: 0.65rem 0.9rem 0.65rem 0.35rem;
    background: transparent;
    font-size: 1rem;
    outline: 0;
}

.gc-tip-selector__summary[b-480p9vv4j9] {
    padding: 0.85rem 1rem;
    border-radius: var(--gc-radius, 0.65rem);
    background: var(--gc-surface-muted, #f8fafc);
}

.gc-tip-selector__summary > div[b-480p9vv4j9] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.gc-tip-selector__total[b-480p9vv4j9] {
    margin-top: 0.4rem;
    padding-top: 0.65rem;
    border-top: 1px solid var(--gc-border, #e2e8f0);
    font-size: 1.1rem;
}

@media (max-width: 420px) {
    .gc-tip-selector__heading[b-480p9vv4j9] {
        display: block;
    }

    .gc-tip-selector__basis[b-480p9vv4j9] {
        margin-top: 0.5rem;
    }

    .gc-tip-selector__options[b-480p9vv4j9] {
        grid-template-columns: 1fr;
    }

    .gc-tip-selector__option--none[b-480p9vv4j9] {
        grid-column: auto;
    }
}
/* _content/BOS.Shared/Components/VanManagement.razor.rz.scp.css */
.van-management[b-sioylr5cdh] { max-width: 72rem; margin: 0 auto; padding: 1.25rem; overflow-wrap: anywhere; }
.van-management h1[b-sioylr5cdh] { font-size: 2rem; }
.van-management h2[b-sioylr5cdh] { font-size: 1.3rem; }
.van-list[b-sioylr5cdh] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: 1rem; }
.van-card[b-sioylr5cdh], .van-editor[b-sioylr5cdh], .van-review[b-sioylr5cdh] { border: 1px solid #cbd5d9; border-radius: .75rem; padding: 1.25rem; margin-block: 1rem; background: var(--gc-surface, white); }
.van-editor[b-sioylr5cdh] { max-width: 36rem; display: grid; gap: .75rem; }
.van-editor[hidden][b-sioylr5cdh] { display: none; }
.van-capacity[b-sioylr5cdh] { display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem 1rem; padding-block: .75rem; }
.van-help[b-sioylr5cdh], .van-identifier[b-sioylr5cdh] { color: var(--gc-text-secondary, #52606a); font-size: .9rem; }
.van-identifier[b-sioylr5cdh] { display: block; margin-block: -.25rem .75rem; }
.van-status[b-sioylr5cdh] { font-weight: 600; }
.van-optional summary[b-sioylr5cdh] { cursor: pointer; min-height: 44px; display: list-item; align-content: center; }
.van-optional label[b-sioylr5cdh] { display: block; margin-block: .5rem; }
.van-actions[b-sioylr5cdh] { display: flex; flex-wrap: wrap; gap: .25rem; }
.van-choice[b-sioylr5cdh] { display: flex; align-items: center; gap: .75rem; padding-block: .75rem; }
.van-choice input[b-sioylr5cdh] { flex-shrink: 0; width: 1.2rem; height: 1.2rem; min-height: 1.2rem; margin: 0; }
.van-choice__label[b-sioylr5cdh] { display: inline-flex; align-items: center; gap: .125rem; }
.van-choice__label label[b-sioylr5cdh] { margin: 0; }
.van-management button[b-sioylr5cdh], .van-management input[b-sioylr5cdh], .van-management select[b-sioylr5cdh] { min-height: 44px; }
.van-management button[b-sioylr5cdh] { margin: .3rem .3rem .3rem 0; white-space: normal; }
.van-management input:not([type=checkbox])[b-sioylr5cdh], .van-management select[b-sioylr5cdh] { width: 100%; box-sizing: border-box; }
.van-management button:focus-visible[b-sioylr5cdh], .van-management input:focus-visible[b-sioylr5cdh], .van-management select:focus-visible[b-sioylr5cdh], .van-management summary:focus-visible[b-sioylr5cdh] { outline: 3px solid #147e75; outline-offset: 3px; }
/* _content/BOS.Shared/Components/WaiverFieldsEditor.razor.rz.scp.css */
.waiver-field-type[b-69slbue4xy] { width: auto; min-width: 12rem; }
@media (max-width: 575.98px) {
    .waiver-field-type[b-69slbue4xy] { width: 100%; }
    fieldset[b-69slbue4xy] { min-width: 0; }
}
/* _content/BOS.Shared/Layout/MainLayout.razor.rz.scp.css */
.page[b-q75jpoeqii] {
    min-height: 100vh;
}

.main-content[b-q75jpoeqii] {
    min-height: 100vh;
    padding: 4.75rem 1rem 2rem;
    transition: margin-inline-start 0.2s ease, padding-inline-start 0.2s ease;
}

    /* One horizontal gutter for the working area, applied here rather than
       stacked with .main-content padding as it was before. */
    .main-content[b-q75jpoeqii]  .container-fluid {
        max-width: var(--gc-page-max);
        margin-inline: auto;
        padding-inline: var(--gc-page-padding-x);
    }

[b-q75jpoeqii] .app-header {
    position: fixed;
    inset-block-start: 0;
    inset-inline: 0;
    z-index: 1040;
    padding-inline-start: 0 !important;
    transition: inset-inline-start 0.2s ease;
}

[b-q75jpoeqii] .app-sidebar {
    position: fixed;
    inset-block: 0;
    inset-inline-start: 0;
    z-index: 1045;
    width: 15rem;
    overflow: hidden;
    transition: transform 0.2s ease, width 0.2s ease;
}

.bos-sidebar-backdrop[b-q75jpoeqii] {
    display: none;
}

.subscription-shell .main-content[b-q75jpoeqii] {
    margin-inline-start: 0;
}

.subscription-shell[b-q75jpoeqii]  .app-header {
    inset-inline-start: 0;
}

@media (min-width: 768px) {
    [b-q75jpoeqii] .app-header {
        inset-inline-start: 5rem;
    }

    .sidebar-open[b-q75jpoeqii]  .app-header {
        inset-inline-start: 15rem;
    }

    .main-content[b-q75jpoeqii] {
        margin-inline-start: 5rem;
        padding-inline: 0;
    }

    .sidebar-open .main-content[b-q75jpoeqii] {
        margin-inline-start: 15rem;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed {
        width: 5rem;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .side-menu__label,
    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .side-menu__angle,
    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .bos-sidebar-logo-text,
    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .bos-placeholder-badge {
        display: none;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .side-menu__item,
    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .main-sidebar-header .header-logo {
        justify-content: center;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .main-sidebar-header {
        width: 5rem;
        padding-inline: 0.75rem;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .bos-sidebar-logo {
        width: 100%;
        justify-content: center;
        gap: 0;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .main-sidebar,
    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .main-menu {
        width: 5rem;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .slide-menu {
        display: none !important;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .side-menu__item {
        padding-inline: 0.75rem;
        margin-inline: 0.6rem;
        border-radius: 999px;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .main-menu > li + li {
        margin-block-start: 0.95rem;
    }

    [b-q75jpoeqii] .app-sidebar.bos-sidebar-collapsed .slide-menu .side-menu__item {
        justify-content: center;
        margin-inline: 0.85rem;
        padding-inline: 0.65rem;
    }
}

@media (min-width: 992px) {
    .main-content[b-q75jpoeqii] {
        padding-top: 0;
    }
}

@media (max-width: 767.98px) {
    .main-content[b-q75jpoeqii] {
        margin-inline-start: 0;
        padding-top: calc(var(--bos-mobile-header-bottom) + 0.75rem);
        padding-inline: 0;
    }

    .main-content[b-q75jpoeqii]  .container-fluid {
        padding-inline: var(--gc-page-padding-x);
    }

    [b-q75jpoeqii] .app-sidebar {
        transform: translateX(-100%);
        z-index: 11250;
        width: min(18rem, calc(100vw - 2rem));
        padding-block-start: var(--bos-safe-top, 0px);
        box-sizing: border-box;
        background: var(--gc-ink-800);
        box-shadow: var(--gc-shadow-overlay);
        isolation: isolate;
    }

    [b-q75jpoeqii] .app-sidebar .main-sidebar-header,
    [b-q75jpoeqii] .app-sidebar .main-sidebar,
    [b-q75jpoeqii] .app-sidebar .main-menu {
        background: var(--gc-ink-800);
    }

    .sidebar-open[b-q75jpoeqii]  .app-sidebar {
        transform: translateX(0);
    }

    .sidebar-open[b-q75jpoeqii]  .bos-guided-tour-highlight {
        z-index: auto !important;
    }

    .bos-sidebar-backdrop[b-q75jpoeqii] {
        position: fixed;
        inset: 0;
        z-index: 11240;
        border: 0;
        background: rgba(15, 23, 42, 0.45);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.2s ease;
    }

    .sidebar-open .bos-sidebar-backdrop[b-q75jpoeqii] {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }
}

#blazor-error-ui[b-q75jpoeqii] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1200;
}

    #blazor-error-ui .dismiss[b-q75jpoeqii] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/BOS.Shared/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-akr213e12b] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-akr213e12b] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-akr213e12b] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-akr213e12b] {
    font-size: 1.1rem;
}

.bi[b-akr213e12b] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-akr213e12b] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-akr213e12b] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-akr213e12b] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-akr213e12b] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-akr213e12b] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-akr213e12b] {
        padding-bottom: 1rem;
    }

    .nav-item[b-akr213e12b]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-akr213e12b]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-akr213e12b]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-akr213e12b] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-akr213e12b] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-akr213e12b] {
        display: none;
    }

    .nav-scrollable[b-akr213e12b] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* _content/BOS.Shared/Pages/Appointments.razor.rz.scp.css */
/* Filters stay collapsed until asked for, at every screen size, so the
   schedule is the first thing in the viewport. The collapsed container is
   removed entirely rather than left as an empty bordered strip. */
.bos-mobile-filter-panel:not(.is-open)[b-o3xk24wqye] {
    display: none;
}

.bos-mobile-filter-panel .gc-filters__body[b-o3xk24wqye] {
    display: none;
}

.bos-mobile-filter-panel.is-open .gc-filters__body[b-o3xk24wqye] {
    display: block;
}

.bos-payment-split[b-o3xk24wqye] {
    display: flex;
    max-width: 100%;
    position: relative;
    width: 100%;
    z-index: 11090;
}

.bos-payment-split__menu[b-o3xk24wqye] {
    background-color: #fff;
    border: 1px solid var(--bs-border-color);
    bottom: calc(100% + 0.25rem);
    box-shadow: 0 0.5rem 1rem rgba(15, 23, 42, 0.18);
    min-width: 12rem;
    opacity: 1;
    position: absolute;
    right: 0;
    top: auto;
    z-index: 11100;
}

.bos-payment-split__menu .dropdown-item[b-o3xk24wqye] {
    min-height: 2.75rem;
}

.bos-editor-status-row[b-o3xk24wqye] {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}

.bos-editor-payment-status[b-o3xk24wqye] {
    margin-left: auto;
    text-align: right;
}

.bos-terminal-reader-manager[b-o3xk24wqye] {
    min-width: min(100%, 28rem);
    text-align: left;
}

.bos-terminal-reader-select[b-o3xk24wqye] {
    flex: 1 1 14rem;
    min-width: 12rem;
}

.bos-card-payment-window .k-window-content[b-o3xk24wqye] {
    overflow: visible;
}

.bos-card-payment-status[b-o3xk24wqye] {
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
    padding: 1rem;
}

.bos-editor-footer-actions[b-o3xk24wqye] {
    container-type: inline-size;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    overflow: visible;
    position: relative;
    z-index: 11085;
    width: 100%;
}

.bos-editor-footer-row[b-o3xk24wqye] {
    display: flex;
    gap: 0.5rem;
    width: 100%;
}

.bos-editor-footer-row--tools[b-o3xk24wqye] {
    align-items: stretch;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow: visible;
    position: relative;
    z-index: 11090;
}

.bos-editor-footer-row--save[b-o3xk24wqye] {
    align-items: center;
    justify-content: flex-start;
}

.bos-editor-footer-row--save > div:first-child[b-o3xk24wqye] {
    margin-right: 0;
}

.bos-editor-footer-row--save > .btn[b-o3xk24wqye] {
    margin-left: auto;
}

.bos-editor-assist-split[b-o3xk24wqye] {
    display: flex;
    margin-left: 0;
    max-width: 100%;
    position: relative;
    width: 100%;
}

.bos-editor-assist-split__menu[b-o3xk24wqye] {
    bottom: calc(100% + 0.25rem);
    min-width: 13rem;
    position: absolute;
    right: 0;
    top: auto;
    z-index: 11070;
}

.bos-payment-split > .btn:first-child[b-o3xk24wqye],
.bos-editor-assist-split > .btn:first-child[b-o3xk24wqye] {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bos-payment-split > .dropdown-toggle-split[b-o3xk24wqye],
.bos-editor-assist-split > .dropdown-toggle-split[b-o3xk24wqye] {
    flex: 0 0 3rem;
    width: 3rem;
}

@media (max-width: 767.98px) {
    .bos-payment-split__menu[b-o3xk24wqye],
    .bos-editor-assist-split__menu[b-o3xk24wqye] {
        left: 0;
        right: auto;
    }

    .bos-editor-status-row[b-o3xk24wqye] {
        align-items: stretch;
    }
}

@container (min-width: 576px) {
    .bos-editor-footer-row--tools[b-o3xk24wqye] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bos-editor-footer-row--tools > .btn[b-o3xk24wqye],
    .bos-payment-split[b-o3xk24wqye],
    .bos-editor-assist-split[b-o3xk24wqye] {
        width: 100%;
    }
}

@container (min-width: 720px) {
    .bos-editor-footer-actions[b-o3xk24wqye] {
        align-items: center;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 0.5rem;
    }

    .bos-editor-footer-row--tools[b-o3xk24wqye],
    .bos-editor-footer-row--save[b-o3xk24wqye],
    .bos-editor-footer-row--save > div:first-child[b-o3xk24wqye] {
        display: contents;
    }

    .bos-editor-footer-row--save > div:first-child > .btn[b-o3xk24wqye] {
        flex: 0 0 auto;
        order: 1;
    }

    .bos-editor-footer-row--tools > .btn[b-o3xk24wqye] {
        flex: 0 0 auto;
        order: 2;
        width: auto;
    }

    .bos-payment-split[b-o3xk24wqye] {
        flex: 0 0 auto;
        margin-left: auto;
        order: 2;
        width: auto;
    }

    .bos-editor-assist-split[b-o3xk24wqye] {
        flex: 0 0 auto;
        order: 3;
        width: auto;
    }

    .bos-payment-split > .btn:first-child[b-o3xk24wqye],
    .bos-editor-assist-split > .btn:first-child[b-o3xk24wqye] {
        flex: 0 0 auto;
    }

    .bos-editor-footer-row--save > .btn[b-o3xk24wqye] {
        flex: 0 0 auto;
        margin-left: auto;
        order: 4;
    }
}
.gc-appointment-customer-notes[b-o3xk24wqye] {
    background: var(--gc-warning-surface);
    border: 1px solid var(--gc-warning-border);
    border-radius: var(--gc-radius-sm);
    color: var(--gc-text);
}

.gc-appointment-customer-notes > summary[b-o3xk24wqye] {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 0.65rem;
    list-style: none;
    min-height: 2.75rem;
    padding: 0.7rem 0.85rem;
}

.gc-appointment-customer-notes > summary[b-o3xk24wqye]::-webkit-details-marker {
    display: none;
}

.gc-appointment-customer-notes__title[b-o3xk24wqye] {
    align-items: center;
    display: inline-flex;
    font-weight: 650;
    gap: 0.45rem;
}

.gc-appointment-customer-notes__title > i[b-o3xk24wqye] {
    color: var(--gc-warning);
}

.gc-appointment-customer-notes__chevron[b-o3xk24wqye] {
    margin-left: auto;
    transition: transform 150ms ease;
}

.gc-appointment-customer-notes[open] .gc-appointment-customer-notes__chevron[b-o3xk24wqye] {
    transform: rotate(180deg);
}

.gc-appointment-customer-notes__body[b-o3xk24wqye] {
    border-top: 1px solid var(--gc-warning-border);
    display: grid;
    gap: 0.75rem;
    padding: 0.85rem;
}

.gc-appointment-customer-note__source[b-o3xk24wqye],
.gc-appointment-customer-note__meta[b-o3xk24wqye] {
    color: var(--gc-text-muted);
    font-size: var(--gc-font-size-helper);
}

.gc-appointment-customer-note__source[b-o3xk24wqye] {
    font-weight: 700;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.gc-appointment-customer-note__text[b-o3xk24wqye] {
    margin-top: 0.2rem;
    max-height: 10rem;
    overflow: auto;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.gc-appointment-customer-note__meta[b-o3xk24wqye] {
    margin-top: 0.35rem;
}
.schedule-layers[b-o3xk24wqye] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-block-end: .75rem;
}

.schedule-layer[b-o3xk24wqye] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .375rem;
    min-height: 2.5rem;
    padding: .375rem .75rem;
    border: 1px solid var(--gc-border, #d9e2e8);
    border-radius: 1.5rem;
    color: var(--gc-text, #334155);
    background: var(--gc-surface, #fff);
    font-size: .8125rem;
    line-height: 1.25;
}

.schedule-layer.is-active[b-o3xk24wqye] {
    background: var(--gc-primary-soft, #e7f4f1);
    border-color: var(--gc-primary, #147d6c);
    color: var(--gc-primary, #147d6c);
}

.schedule-layer-booking[b-o3xk24wqye] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.schedule-layer-view-all[b-o3xk24wqye] {
    background: none;
    border: 0;
    color: var(--gc-primary, #147d6c);
    font-size: .8125rem;
    padding: .25rem;
    text-decoration: underline;
    white-space: nowrap;
}

.schedule-layer-view-all:focus-visible[b-o3xk24wqye] { outline: 2px solid currentColor; outline-offset: 2px; }

.schedule-layer:focus-visible[b-o3xk24wqye] { outline: 2px solid currentColor; outline-offset: 2px; }
.schedule-layer .gc-segmented__count[b-o3xk24wqye] { flex-shrink: 0; background: #fff0ca; color: #694800; }
.schedule-layer-event-label[b-o3xk24wqye] { display: flex; align-items: center; gap: .25rem; min-width: 0; }
.schedule-layer-event-label > span[b-o3xk24wqye] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Coverage is quiet; requests share one review treatment, distinguished by text and icon. */
[b-o3xk24wqye] #appointments-scheduler .schedule-layer-event {
    background: #fff6df !important;
    color: #694800 !important;
    border: 1px dashed #a97921 !important;
    box-shadow: none !important;
    cursor: pointer;
}

[b-o3xk24wqye] #appointments-scheduler .schedule-layer-event--shift {
    background: #f1f5f9 !important;
    color: #475569 !important;
    border: 1px solid #cbd5e1 !important;
}

[b-o3xk24wqye] #appointments-scheduler .schedule-layer-event .k-event-delete,
[b-o3xk24wqye] #appointments-scheduler .schedule-layer-event .k-resize-handle { display: none !important; }

@media (max-width: 575.98px) {
    .schedule-layers[b-o3xk24wqye] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .375rem; }
    .schedule-layer[b-o3xk24wqye] { padding: .375rem .25rem; font-size: .75rem; }
    .schedule-layer > i[b-o3xk24wqye] { display: none; }
    .schedule-layer-booking[b-o3xk24wqye] { align-items: stretch; flex-direction: column; gap: .125rem; min-width: 0; }
    .schedule-layer-booking .schedule-layer[b-o3xk24wqye] { width: 100%; }
    .schedule-layer-view-all[b-o3xk24wqye] { align-self: center; font-size: .75rem; }
}
/* _content/BOS.Shared/Pages/ConferenceSetup.razor.rz.scp.css */
.conference-setup-page[b-2fhnjabqpw] {
    align-content: center;
}

.conference-setup[b-2fhnjabqpw] {
    width: 100%;
}

.conference-setup-event[b-2fhnjabqpw] {
    margin: 0 0 .5rem;
    color: var(--gc-primary);
    font-size: .8125rem;
    font-weight: 700;
    letter-spacing: .04em;
}

.conference-setup-hint[b-2fhnjabqpw],
.conference-setup-return-note[b-2fhnjabqpw] {
    margin: 1rem 0 0;
}

.conference-setup-return-note[b-2fhnjabqpw] {
    color: var(--gc-text-secondary);
    font-size: .875rem;
}

.conference-setup-actions[b-2fhnjabqpw] {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 1.5rem;
}

.conference-setup[b-2fhnjabqpw]  input,
.conference-setup[b-2fhnjabqpw]  select {
    min-height: 44px;
    font-size: 1rem;
}

@media (max-width: 480px) {
    .conference-setup-actions > *[b-2fhnjabqpw] {
        width: 100%;
    }
}
/* _content/BOS.Shared/Pages/Dashboard.razor.rz.scp.css */
.dashboard-heading[b-v02z0etov9]  .gc-page-header__top {
    flex-wrap: nowrap;
}

.dashboard-heading[b-v02z0etov9]  .gc-page-header__actions {
    width: auto;
    flex: 0 0 auto;
    align-self: center;
}

.dashboard-help-toggle[b-v02z0etov9] {
    white-space: nowrap;
}

.dashboard-today-metrics[b-v02z0etov9] {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
}

.dashboard-today-metrics[b-v02z0etov9]  .gc-metric {
    min-width: 0;
    overflow-wrap: anywhere;
}

.dashboard-chart[b-v02z0etov9] {
    min-height: 320px;
}

.dashboard-grid[b-v02z0etov9] {
    border: 0;
}

    .dashboard-grid[b-v02z0etov9]  .k-grid-content,
    .dashboard-grid[b-v02z0etov9]  .k-grid-header {
        background: transparent;
    }
/* _content/BOS.Shared/Pages/ExpoScenarios.razor.rz.scp.css */
.expo-scenarios[b-th69lg9r04] {
    min-height: 60vh;
    display: grid;
    place-items: center;
    padding: 1rem;
}
.expo-scenarios--list[b-th69lg9r04] { display: block; padding: 0; }
/* _content/BOS.Shared/Pages/Home.razor.rz.scp.css */
.brand-landing[b-suwlulhigg] {
    --bos-ink: #172033;
    --bos-muted: #667085;
    --bos-line: #d8e0ea;
    --bos-primary: #216b62;
    --bos-primary-dark: #164b45;
    --bos-accent: #f4a261;
    --bos-bg: #f5f7fb;
    --bos-card: #ffffff;
    min-height: 100vh;
    margin: 0;
    color: var(--bos-ink);
    background: var(--bos-bg);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.brand-landing[b-suwlulhigg],
.brand-landing *[b-suwlulhigg] {
    box-sizing: border-box;
    letter-spacing: 0;
}

.brand-landing a[b-suwlulhigg] {
    color: inherit;
}

.brand-landing .row[b-suwlulhigg] {
    margin-right: 0;
    margin-left: 0;
}

.landing-nav[b-suwlulhigg] {
    position: sticky;
    top: 0;
    z-index: 10;
    border-bottom: 1px solid rgba(23, 32, 51, 0.08);
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(12px);
}

.brand-mark[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 0.5rem;
    background: var(--bos-primary);
    color: #fff;
    font-weight: 800;
}

.brand-logo[b-suwlulhigg] {
    display: block;
    height: 2.25rem;
    width: auto;
    max-width: 12rem;
    object-fit: contain;
}

.landing-brand-name[b-suwlulhigg] {
    color: var(--bos-ink);
    font-weight: 800;
    line-height: 1.1;
    white-space: nowrap;
}

.brand-landing .nav-link[b-suwlulhigg] {
    color: #344054;
    font-weight: 600;
}

.brand-landing .btn-bos-primary[b-suwlulhigg],
.brand-landing .btn-bos-primary:visited[b-suwlulhigg] {
    border-color: var(--bos-primary);
    background: var(--bos-primary);
    color: #f8fffd;
}

.brand-landing .btn-bos-primary:hover[b-suwlulhigg],
.brand-landing .btn-bos-primary:focus[b-suwlulhigg],
.brand-landing .btn-bos-primary:active[b-suwlulhigg] {
    border-color: var(--bos-primary-dark);
    background: var(--bos-primary-dark);
    color: #ffffff;
}

.btn-bos-secondary[b-suwlulhigg] {
    border-color: rgba(33, 107, 98, 0.28);
    background: #fff;
    color: var(--bos-primary-dark);
}

.section[b-suwlulhigg] {
    padding: 5rem 0;
}

.hero[b-suwlulhigg] {
    position: relative;
    overflow: hidden;
    padding: 6rem 0 4.5rem;
    background: linear-gradient(135deg, rgba(33, 107, 98, 0.14), rgba(244, 162, 97, 0.1)), #fff;
}

.hero h1[b-suwlulhigg] {
    max-width: 12.5ch;
    font-size: clamp(2.75rem, 8vw, 6.25rem);
    line-height: 0.94;
    font-weight: 850;
}

.hero-copy[b-suwlulhigg] {
    max-width: 42rem;
    color: #475467;
    font-size: 1.16rem;
    line-height: 1.65;
}

.eyebrow[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 1.1rem;
    color: var(--bos-primary-dark);
    font-size: 0.78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.route-visual[b-suwlulhigg] {
    position: relative;
    min-height: 35rem;
    border: 1px solid rgba(23, 32, 51, 0.08);
    border-radius: 0.75rem;
    overflow: hidden;
    background: linear-gradient(90deg, rgba(33, 107, 98, 0.08) 1px, transparent 1px), linear-gradient(0deg, rgba(33, 107, 98, 0.08) 1px, transparent 1px), #fdfefe;
    background-size: 4.5rem 4.5rem;
    box-shadow: 0 1.25rem 4rem rgba(23, 32, 51, 0.12);
}

.route-line[b-suwlulhigg] {
    position: absolute;
    inset: 8% 6%;
}

.route-line svg[b-suwlulhigg] {
    width: 100%;
    height: 100%;
}

.route-card[b-suwlulhigg] {
    position: absolute;
    width: min(18rem, 76%);
    padding: 1rem;
    border: 1px solid rgba(23, 32, 51, 0.1);
    border-radius: 0.65rem;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 0.75rem 2rem rgba(23, 32, 51, 0.12);
}

.route-card strong[b-suwlulhigg] {
    display: block;
    margin-bottom: 0.25rem;
}

.route-card span[b-suwlulhigg] {
    color: var(--bos-muted);
    font-size: 0.9rem;
}

.route-card.one[b-suwlulhigg] {
    top: 8%;
    left: 8%;
}

.route-card.two[b-suwlulhigg] {
    top: 38%;
    right: 7%;
}

.route-card.three[b-suwlulhigg] {
    bottom: 9%;
    left: 12%;
}

.route-pin[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    margin-right: 0.5rem;
    border-radius: 999px;
    background: rgba(33, 107, 98, 0.12);
    color: var(--bos-primary-dark);
}

.feature-card[b-suwlulhigg],
.pricing-card[b-suwlulhigg],
.demo-card[b-suwlulhigg],
.testimonial-card[b-suwlulhigg],
.lead-form-card[b-suwlulhigg] {
    height: 100%;
    border: 1px solid rgba(23, 32, 51, 0.08);
    border-radius: 0.75rem;
    background: var(--bos-card);
    box-shadow: 0 0.8rem 2rem rgba(23, 32, 51, 0.06);
}

.feature-card[b-suwlulhigg] {
    padding: 1.35rem;
}

.testimonial-card[b-suwlulhigg] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1.35rem;
    margin: 0;
}

.testimonial-card blockquote[b-suwlulhigg] {
    margin: 0;
    color: #344054;
    font-size: 1rem;
    line-height: 1.55;
}

.testimonial-card figcaption[b-suwlulhigg] {
    display: grid;
    gap: 0.15rem;
    color: var(--bos-muted);
    font-size: 0.88rem;
}

.testimonial-card figcaption strong[b-suwlulhigg] {
    color: var(--bos-ink);
}

.lead-form-card[b-suwlulhigg] {
    padding: 1.5rem;
}

.lead-form-card .validation-message[b-suwlulhigg] {
    margin-top: 0.35rem;
    color: #b42318;
    font-size: 0.85rem;
}

.lead-form-card .validation-errors[b-suwlulhigg] {
    margin-bottom: 1rem;
    color: #b42318;
}

.lead-honeypot[b-suwlulhigg] {
    position: absolute;
    left: -10000px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.feature-tag-list[b-suwlulhigg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.feature-tag[b-suwlulhigg] {
    padding: 0.42rem 0.72rem;
    border-width: 1px;
    border-style: solid;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.2;
}

.feature-tag.bg-primary[b-suwlulhigg] {
    border-color: var(--primary-color);
}

.feature-tag:hover[b-suwlulhigg],
.feature-tag:focus[b-suwlulhigg] {
    outline: 0;
    box-shadow: 0 0 0 0.18rem rgba(33, 107, 98, 0.12);
}

.thank-you-state[b-suwlulhigg] {
    display: flex;
    min-height: 18rem;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.feature-icon[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    margin-bottom: 1rem;
    border-radius: 0.65rem;
    background: rgba(33, 107, 98, 0.1);
    color: var(--bos-primary-dark);
    font-size: 1.35rem;
}

.muted[b-suwlulhigg] {
    color: var(--bos-muted);
}

.section-title[b-suwlulhigg] {
    max-width: 48rem;
    margin-bottom: 2rem;
}

.section-title h2[b-suwlulhigg] {
    font-size: clamp(2rem, 4vw, 3.35rem);
    font-weight: 800;
}

.workflow-step[b-suwlulhigg] {
    display: flex;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid var(--bos-line);
}

.workflow-step:last-child[b-suwlulhigg] {
    border-bottom: 0;
}

.step-number[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 2rem;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: var(--bos-primary);
    color: #fff;
    font-weight: 800;
}

.pricing-card[b-suwlulhigg] {
    display: flex;
    flex-direction: column;
    padding: 1.5rem;
}

.pricing-card h3[b-suwlulhigg] {
    margin-bottom: 0.75rem;
}

.price[b-suwlulhigg] {
    font-size: 2.1rem;
    font-weight: 850;
    line-height: 1.1;
}

.pricing-list[b-suwlulhigg] {
    display: grid;
    gap: 0.75rem;
    padding: 0;
    margin: 1.25rem 0 0;
    list-style: none;
}

.pricing-list li[b-suwlulhigg] {
    display: flex;
    gap: 0.55rem;
    align-items: flex-start;
}

.check[b-suwlulhigg] {
    color: var(--bos-primary);
    font-weight: 900;
}

.callout[b-suwlulhigg] {
    padding: 1rem;
    border: 1px solid rgba(244, 162, 97, 0.35);
    border-radius: 0.75rem;
    background: #fff8ef;
}

.footer[b-suwlulhigg] {
    padding: 2rem 0;
    border-top: 1px solid rgba(23, 32, 51, 0.08);
    background: #fff;
}

@media (max-width: 991.98px) {
    .hero[b-suwlulhigg] {
        padding-top: 4rem;
    }

    .route-visual[b-suwlulhigg] {
        min-height: 30rem;
    }
}

@media (max-width: 575.98px) {
    .section[b-suwlulhigg] {
        padding: 3.25rem 0;
    }

    .hero h1[b-suwlulhigg] {
        font-size: 3rem;
    }

    .route-card[b-suwlulhigg] {
        width: 84%;
    }

    .route-card.two[b-suwlulhigg] {
        top: 42%;
    }
}

/* ============================================================================
   Conversion-funnel additions
   ----------------------------------------------------------------------------
   Everything above this line is the original GroomCaptain homepage stylesheet,
   unchanged. What follows adds the sections the funnel work introduced —
   product proof, audiences, FAQ, plan CTAs, the journey strip — written in the
   same idiom: the same --bos-* tokens, the same radii, the same restraint.

   The governing rule is the original page's, not the redesign's: type and
   whitespace carry the hierarchy, and a card is only used for something that
   is genuinely a discrete comparable object.
   ========================================================================== */

/* Keyboard users land on a long marketing page; give them a way past the nav. */
.landing-skip[b-suwlulhigg] {
    position: absolute;
    left: -9999px;
    z-index: 20;
    padding: 0.75rem 1.25rem;
    background: var(--bos-primary);
    color: #fff;
    font-weight: 700;
    border-radius: 0 0 0.5rem 0;
}

.landing-skip:focus[b-suwlulhigg] {
    left: 0;
    top: 0;
}

/* ---- Wider canvas ------------------------------------------------------- */
/* The original page floated in a 1140px Bootstrap container. At 1440 the
   compositions can afford more room without hurting line length, which is
   controlled separately by the measure on each text block. */
.brand-landing .container[b-suwlulhigg] {
    max-width: 1320px;
}

/* ---- Hero ------------------------------------------------------------- */

.hero-actions[b-suwlulhigg] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.75rem;
}

.btn-hero[b-suwlulhigg] {
    padding: 1rem 2.25rem;
    font-size: 1.05rem;
    font-weight: 700;
}

/* The secondary path is a link, so exactly one thing in the hero reads as
   the action. */
.hero-secondary[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding-bottom: 0.2rem;
    border-bottom: 1px solid rgba(23, 32, 51, 0.25);
    color: var(--bos-ink);
    font-weight: 700;
    text-decoration: none;
}

.hero-secondary:hover[b-suwlulhigg] {
    border-bottom-color: var(--bos-primary);
    color: var(--bos-primary-dark);
}

.hero-note[b-suwlulhigg] {
    max-width: 34rem;
    color: var(--bos-muted);
    font-size: 0.95rem;
    line-height: 1.55;
}

.app-store-badges[b-suwlulhigg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.app-store-badge[b-suwlulhigg],
.app-store-badge:visited[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    width: 10.25rem;
    min-height: 3rem;
    padding: 0.38rem 0.7rem;
    color: #fff !important;
    background: #050505;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 0.55rem;
    text-decoration: none;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.2);
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.app-store-badge:hover[b-suwlulhigg],
.app-store-badge:focus-visible[b-suwlulhigg] {
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 5px 12px rgba(16, 24, 40, 0.22);
}

.app-store-badge:focus-visible[b-suwlulhigg] {
    outline: 3px solid rgba(33, 107, 98, 0.28);
    outline-offset: 2px;
}

.app-store-badge-icon[b-suwlulhigg] {
    flex: 0 0 auto;
    font-size: 1.75rem;
    line-height: 1;
}

.app-store-badge-copy[b-suwlulhigg] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    line-height: 1;
}

.app-store-badge-kicker[b-suwlulhigg] {
    font-size: 0.62rem;
    letter-spacing: 0.01em;
}

.app-store-badge-name[b-suwlulhigg] {
    margin-top: 0.16rem;
    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    white-space: nowrap;
}

.hero-highlights[b-suwlulhigg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem 1.75rem;
    padding: 1.25rem 0 0;
    margin: 0;
    border-top: 1px solid var(--bos-line);
    list-style: none;
}

.hero-highlights li[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    font-size: 0.95rem;
    font-weight: 700;
}

.hero-highlights i[b-suwlulhigg] {
    color: var(--bos-primary);
    font-size: 1.15rem;
}

/* ---- Shared section furniture ------------------------------------------ */

.section-tint[b-suwlulhigg] {
    background: linear-gradient(180deg, rgba(33, 107, 98, 0.05), rgba(244, 162, 97, 0.05));
}

.section-quiet[b-suwlulhigg] {
    padding: 3.5rem 0;
    border-top: 1px solid var(--bos-line);
    background: #fff;
}

.lede-lg[b-suwlulhigg] {
    max-width: 44rem;
    color: #475467;
    font-size: 1.12rem;
    line-height: 1.65;
}

.sticky-title[b-suwlulhigg] {
    position: sticky;
    top: 6rem;
}

/* ---- Editorial statements (replaces the problem card grid) -------------- */

.stmt-list[b-suwlulhigg] {
    display: grid;
    gap: 0;
}

.stmt[b-suwlulhigg] {
    padding: 1.5rem 0;
    border-top: 1px solid var(--bos-line);
}

.stmt:last-child[b-suwlulhigg] {
    border-bottom: 1px solid var(--bos-line);
}

.stmt h3[b-suwlulhigg] {
    margin: 0 0 0.4rem;
    font-size: 1.35rem;
    font-weight: 800;
    letter-spacing: -0.01em;
}

.stmt p[b-suwlulhigg] {
    max-width: 46rem;
    font-size: 1rem;
    line-height: 1.6;
}

/* ---- Journey (replaces the six lifecycle boxes) ------------------------- */

.journey[b-suwlulhigg] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1.5rem;
    padding: 3rem 0 0;
    margin: 0;
    list-style: none;
    position: relative;
}

/* A single line runs behind the whole sequence, so it reads as one path. */
.journey[b-suwlulhigg]::before {
    content: "";
    position: absolute;
    top: 3rem;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, rgba(33, 107, 98, 0.3), rgba(244, 162, 97, 0.45));
}

.journey-step[b-suwlulhigg] {
    display: grid;
    gap: 0.35rem;
    align-content: start;
    padding-top: 3rem;
    position: relative;
}

.journey-dot[b-suwlulhigg] {
    position: absolute;
    top: 2.25rem;
    left: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 999px;
    background: var(--bos-primary);
    color: #fff;
    font-size: 0.8rem;
    font-weight: 800;
    box-shadow: 0 0 0 0.35rem var(--bos-bg);
}

.journey-step strong[b-suwlulhigg] {
    font-size: 1rem;
    font-weight: 800;
}

.journey-step span.muted[b-suwlulhigg] {
    font-size: 0.9rem;
    line-height: 1.5;
}

/* ---- Fact list (replaces the six route-protection cards) ---------------- */

.fact-list[b-suwlulhigg] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 2.5rem;
}

.fact[b-suwlulhigg] {
    display: grid;
    grid-template-columns: 2.4rem 1fr;
    gap: 0.9rem;
    align-items: start;
    padding: 1.35rem 0;
    border-top: 1px solid var(--bos-line);
}

.fact-icon[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 999px;
    background: rgba(33, 107, 98, 0.1);
    color: var(--bos-primary-dark);
    font-size: 1.15rem;
}

.fact strong[b-suwlulhigg] {
    display: block;
    margin-bottom: 0.2rem;
    font-size: 1.05rem;
    font-weight: 800;
}

.fact p[b-suwlulhigg] {
    font-size: 0.95rem;
    line-height: 1.55;
}

/* ---- Product proof — few, large, alternating ---------------------------- */

.proof-row[b-suwlulhigg] {
    display: grid;
    gap: 2.5rem;
    align-items: center;
    padding: 3.5rem 0;
    border-top: 1px solid var(--bos-line);
}

.proof-row:first-of-type[b-suwlulhigg] {
    border-top: 0;
}

@media (min-width: 992px) {
    .proof-row[b-suwlulhigg] {
        grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
        gap: 4rem;
    }

    /* Alternate sides. The column widths flip with the order so the
       screenshot always takes the larger share. */
    .proof-row-flip[b-suwlulhigg] {
        grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
    }

    .proof-row-flip .proof-copy[b-suwlulhigg] {
        order: 2;
    }
}

.proof-copy h3[b-suwlulhigg] {
    margin: 0.35rem 0 0.75rem;
    font-size: clamp(1.6rem, 2.4vw, 2.25rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.1;
}

.proof-copy p[b-suwlulhigg] {
    font-size: 1.02rem;
    line-height: 1.6;
}

.proof-points[b-suwlulhigg] {
    display: grid;
    gap: 0.6rem;
    padding: 0;
    margin: 1.25rem 0 0;
    list-style: none;
}

.proof-points li[b-suwlulhigg] {
    display: flex;
    gap: 0.55rem;
    align-items: flex-start;
    color: #475467;
    font-size: 0.97rem;
    line-height: 1.5;
}

.proof-shot[b-suwlulhigg] {
    margin: 0;
}

/* Screenshots are 1440-wide captures. The frame crops past the app's
   navigation rail and scales up, so the working area stays legible instead of
   shrinking into grey texture. */
.proof-frame[b-suwlulhigg] {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    border: 1px solid rgba(23, 32, 51, 0.1);
    border-radius: 0.75rem;
    background: #fdfefe;
    box-shadow: 0 1.25rem 4rem -1rem rgba(23, 32, 51, 0.18);
}

.proof-frame img[b-suwlulhigg] {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: auto;
}

.proof-frame-zoom img[b-suwlulhigg] {
    width: 168%;
    left: -29%;
}

.proof-shot figcaption[b-suwlulhigg] {
    margin-top: 0.65rem;
    font-size: 0.85rem;
}

/* ---- Fill the gaps — one opening, three staff-controlled steps ---------- */

.fill-gaps-section[b-suwlulhigg] {
    color: #f4f7fa;
    background: #102538;
}

.fill-gaps-section .eyebrow[b-suwlulhigg] {
    color: #9fd7cb;
}

.fill-gaps-grid[b-suwlulhigg] {
    display: grid;
    gap: 2.5rem;
    align-items: center;
}

.fill-gaps-copy h2[b-suwlulhigg] {
    max-width: 13ch;
    margin: 0;
    color: #fff;
    font-size: clamp(2.25rem, 5vw, 4.5rem);
    font-weight: 850;
    line-height: 0.98;
    letter-spacing: -0.04em;
    text-wrap: balance;
}

.fill-gaps-lede[b-suwlulhigg] {
    max-width: 38rem;
    margin: 1.35rem 0 0;
    color: #cbd7df;
    font-size: 1.08rem;
    line-height: 1.65;
}

.fill-gaps-control[b-suwlulhigg] {
    max-width: 38rem;
    margin: 1.5rem 0 0;
    padding-left: 1rem;
    color: #dce6ec;
    border-left: 3px solid var(--bos-accent);
    line-height: 1.6;
}

.fill-gaps-control strong[b-suwlulhigg] {
    color: #fff;
}

.fill-gaps-demo[b-suwlulhigg] {
    overflow: hidden;
    color: var(--bos-ink);
    background: #fff;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 1rem;
    box-shadow: 0 1.5rem 4rem -1.5rem rgba(0, 0, 0, 0.55);
}

.fill-gaps-slot[b-suwlulhigg] {
    display: grid;
    gap: 0.2rem;
    padding: 1rem 1.2rem;
    color: #fff;
    background: var(--bos-primary);
}

.fill-gaps-slot strong[b-suwlulhigg] {
    font-size: 1.12rem;
}

.fill-gaps-slot > span:last-child[b-suwlulhigg] {
    color: #d7eee9;
    font-size: 0.88rem;
}

.fill-gaps-label[b-suwlulhigg] {
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.08em !important;
    text-transform: uppercase;
}

.fill-gaps-flow[b-suwlulhigg] {
    display: grid;
    margin: 0;
    padding: 0 1.2rem;
    list-style: none;
}

.fill-gaps-flow > li[b-suwlulhigg] {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    gap: 0.85rem;
    padding: 1.2rem 0;
    border-bottom: 1px solid var(--bos-line);
}

.fill-gaps-flow > li:last-child[b-suwlulhigg] {
    border-bottom: 0;
}

.fill-gaps-flow strong[b-suwlulhigg] {
    display: block;
    font-size: 1.05rem;
}

.fill-gaps-flow p[b-suwlulhigg] {
    margin: 0.35rem 0 0;
    color: #5f6d7c;
    font-size: 0.92rem;
    line-height: 1.5;
}

.fill-gaps-step[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    color: var(--bos-primary-dark);
    background: #e5f3ef;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 850;
}

.fill-gaps-tags[b-suwlulhigg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.8rem;
}

.fill-gaps-tags span[b-suwlulhigg] {
    padding: 0.28rem 0.5rem;
    color: var(--bos-primary-dark);
    background: #edf7f4;
    border: 1px solid #c7e2dc;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 750;
}

.fill-gaps-messages[b-suwlulhigg] {
    display: grid;
    gap: 0.55rem;
    margin-top: 0.8rem;
}

.fill-gaps-message[b-suwlulhigg] {
    padding: 0.75rem 0.85rem;
    background: #f7f8fa;
    border: 1px solid var(--bos-line);
    border-radius: 0.65rem;
}

.fill-gaps-message > span[b-suwlulhigg] {
    color: var(--bos-primary-dark);
    font-size: 0.75rem;
    font-weight: 850;
    letter-spacing: 0.06em !important;
    text-transform: uppercase;
}

.fill-gaps-message p[b-suwlulhigg] {
    color: #344054;
    font-size: 0.86rem;
}

@media (min-width: 992px) {
    .fill-gaps-grid[b-suwlulhigg] {
        grid-template-columns: minmax(18rem, 0.8fr) minmax(31rem, 1.2fr);
        gap: 4.5rem;
    }

    .fill-gaps-messages[b-suwlulhigg] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ---- Audience fit (replaces the three audience cards) ------------------- */

.fit-list[b-suwlulhigg] {
    display: grid;
    gap: 0;
}

.fit[b-suwlulhigg] {
    padding: 1.6rem 0;
    border-top: 1px solid var(--bos-line);
}

.fit:last-child[b-suwlulhigg] {
    border-bottom: 1px solid var(--bos-line);
}

.fit-head[b-suwlulhigg] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.75rem;
    margin-bottom: 0.4rem;
}

.fit-head h3[b-suwlulhigg] {
    margin: 0;
    font-size: 1.3rem;
    font-weight: 800;
    letter-spacing: -0.01em;
}

.fit-plan[b-suwlulhigg] {
    padding: 0.2rem 0.6rem;
    border: 1px solid rgba(33, 107, 98, 0.28);
    border-radius: 999px;
    color: var(--bos-primary-dark);
    font-size: 0.75rem;
    font-weight: 800;
}

.fit p[b-suwlulhigg] {
    max-width: 44rem;
    font-size: 0.98rem;
    line-height: 1.55;
}

.fit-points[b-suwlulhigg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.75rem;
    padding: 0;
    margin: 0.75rem 0 0;
    list-style: none;
}

.fit-points li[b-suwlulhigg] {
    display: flex;
    gap: 0.45rem;
    align-items: flex-start;
    color: #475467;
    font-size: 0.93rem;
}

/* ---- Pricing additions -------------------------------------------------- */

.pricing-card[b-suwlulhigg] {
    height: 100%;
    position: relative;
}

/* The recommended plan is marked with the warm accent rather than by being
   taller, so the row stays comparable. */
.pricing-card-featured[b-suwlulhigg] {
    border-color: var(--bos-accent);
    box-shadow: 0 0 0 1px var(--bos-accent), 0 0.8rem 2rem rgba(23, 32, 51, 0.08);
}

.pricing-flag[b-suwlulhigg] {
    position: absolute;
    top: -0.7rem;
    left: 1.5rem;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    background: var(--bos-accent);
    color: #4a2c0a;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.pricing-audience[b-suwlulhigg] {
    color: var(--bos-muted);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin-bottom: 0.35rem;
}

/* Buttons line up across the row whatever the feature-list length. */
.pricing-card .btn[b-suwlulhigg] {
    margin-top: auto;
}

/* ---- Plan comparison, folded away -------------------------------------- */

.compare > summary[b-suwlulhigg] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    border: 1px solid var(--bos-line);
    border-radius: 0.65rem;
    background: #fff;
    color: var(--bos-ink);
    font-weight: 700;
    cursor: pointer;
    list-style: none;
}

.compare > summary[b-suwlulhigg]::-webkit-details-marker {
    display: none;
}

.compare > summary[b-suwlulhigg]::after {
    content: "\002B";
    color: var(--bos-muted);
    font-weight: 800;
}

.compare[open] > summary[b-suwlulhigg]::after {
    content: "\2212";
}

.compare > summary:hover[b-suwlulhigg] {
    border-color: var(--bos-primary);
    color: var(--bos-primary-dark);
}

.compare-scroll[b-suwlulhigg] {
    margin-top: 1rem;
    overflow-x: auto;
    border: 1px solid var(--bos-line);
    border-radius: 0.75rem;
    background: #fff;
}

.compare table[b-suwlulhigg] {
    width: 100%;
    min-width: 34rem;
    border-collapse: collapse;
}

.compare th[b-suwlulhigg],
.compare td[b-suwlulhigg] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--bos-line);
    font-size: 0.9rem;
    text-align: left;
}

.compare thead th[b-suwlulhigg] {
    background: rgba(33, 107, 98, 0.05);
    font-weight: 800;
    white-space: nowrap;
}

.compare tbody th[b-suwlulhigg] {
    font-weight: 600;
}

.compare tbody tr:last-child th[b-suwlulhigg],
.compare tbody tr:last-child td[b-suwlulhigg] {
    border-bottom: 0;
}

/* ---- FAQ ---------------------------------------------------------------- */

.faq[b-suwlulhigg] {
    display: grid;
    gap: 0;
}

.faq-item[b-suwlulhigg] {
    border-top: 1px solid var(--bos-line);
}

.faq-item:last-child[b-suwlulhigg] {
    border-bottom: 1px solid var(--bos-line);
}

.faq-item > summary[b-suwlulhigg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 0;
    font-size: 1.08rem;
    font-weight: 700;
    cursor: pointer;
    list-style: none;
}

.faq-item > summary[b-suwlulhigg]::-webkit-details-marker {
    display: none;
}

.faq-item > summary[b-suwlulhigg]::after {
    content: "\002B";
    flex: 0 0 auto;
    color: var(--bos-muted);
    font-size: 1.3rem;
    font-weight: 800;
}

.faq-item[open] > summary[b-suwlulhigg]::after {
    content: "\2212";
}

.faq-item > summary:hover[b-suwlulhigg] {
    color: var(--bos-primary-dark);
}

.faq-answer[b-suwlulhigg] {
    max-width: 52rem;
    padding-bottom: 1.25rem;
    font-size: 0.98rem;
    line-height: 1.65;
}

/* ---- Final CTA — a chapter, not another content block ------------------- */

.final-cta[b-suwlulhigg] {
    padding: 5rem 0;
    background: linear-gradient(135deg, rgba(33, 107, 98, 0.14), rgba(244, 162, 97, 0.12)), #fff;
    border-top: 1px solid var(--bos-line);
}

.final-cta-inner[b-suwlulhigg] {
    max-width: 46rem;
}

.final-cta h2[b-suwlulhigg] {
    max-width: 14ch;
    font-size: clamp(2.25rem, 5.5vw, 4rem);
    font-weight: 850;
    line-height: 0.98;
    letter-spacing: -0.02em;
}

.final-cta p[b-suwlulhigg] {
    max-width: 40rem;
    margin: 1.25rem 0 0;
    color: #475467;
    font-size: 1.12rem;
    line-height: 1.6;
}

.final-cta-actions[b-suwlulhigg] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.75rem;
    margin-top: 2rem;
}

/* ---- Demo, subordinated ------------------------------------------------- */

.demo-title[b-suwlulhigg] {
    margin: 0.5rem 0 0.5rem;
    font-size: 1.5rem;
    font-weight: 800;
}

.demo-thanks[b-suwlulhigg] {
    display: grid;
    gap: 0.4rem;
    justify-items: start;
}

/* ---- Footer ------------------------------------------------------------- */

.footer-heading[b-suwlulhigg] {
    margin-bottom: 0.75rem;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.footer-links[b-suwlulhigg] {
    display: grid;
    gap: 0.5rem;
    padding: 0;
    margin: 0;
    list-style: none;
}

.footer-links a[b-suwlulhigg] {
    color: var(--bos-muted);
    text-decoration: none;
}

.footer-links a:hover[b-suwlulhigg] {
    color: var(--bos-primary-dark);
    text-decoration: underline;
}

.footer-blurb[b-suwlulhigg] {
    max-width: 30rem;
    line-height: 1.6;
}

.footer-bottom[b-suwlulhigg] {
    padding-top: 1.25rem;
    border-top: 1px solid var(--bos-line);
    font-size: 0.85rem;
}

/* ---- Accessibility ------------------------------------------------------ */

.brand-landing a:focus-visible[b-suwlulhigg],
.brand-landing button:focus-visible[b-suwlulhigg],
.brand-landing summary:focus-visible[b-suwlulhigg] {
    outline: 3px solid var(--bos-primary);
    outline-offset: 2px;
    border-radius: 0.25rem;
}

@media (prefers-reduced-motion: reduce) {
    .brand-landing *[b-suwlulhigg] {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
    }
}

.brand-landing [id][b-suwlulhigg] {
    scroll-margin-top: 6rem;
}

/* ============================================================================
   Responsive — keep the composition, not just the absence of overflow
   ========================================================================== */

@media (max-width: 1199.98px) {
    .journey[b-suwlulhigg] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 2rem 1.5rem;
    }

    /* With the steps on more than one row a single line behind them would be
       wrong, so each step carries its own short rule instead. */
    .journey[b-suwlulhigg]::before {
        display: none;
    }

    .journey-step[b-suwlulhigg]::before {
        content: "";
        position: absolute;
        top: 3rem;
        left: 2.1rem;
        right: 0;
        height: 2px;
        background: rgba(33, 107, 98, 0.22);
    }
}

@media (max-width: 991.98px) {
    .sticky-title[b-suwlulhigg] {
        position: static;
    }

    .fact-list[b-suwlulhigg] {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
    }

    .proof-row[b-suwlulhigg] {
        padding: 2.5rem 0;
    }
}

@media (max-width: 767.98px) {
    .journey[b-suwlulhigg] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .brand-landing .container[b-suwlulhigg] {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    .hero h1[b-suwlulhigg] {
        font-size: 2.85rem;
        line-height: 0.98;
    }

    .hero-actions[b-suwlulhigg],
    .final-cta-actions[b-suwlulhigg] {
        gap: 1.1rem;
    }

    .btn-hero[b-suwlulhigg] {
        width: 100%;
    }

    /* Two columns of numbered steps still reads as a sequence on a phone;
       six stacked boxes would not. */
    .journey[b-suwlulhigg] {
        gap: 1.75rem 1.25rem;
    }

    .journey-step[b-suwlulhigg] {
        padding-top: 2.5rem;
    }

    .journey-dot[b-suwlulhigg] {
        top: 1.75rem;
    }

    .journey-step[b-suwlulhigg]::before {
        top: 2.5rem;
    }

    .proof-frame-zoom img[b-suwlulhigg] {
        width: 210%;
        left: -36%;
    }

    .fit-head h3[b-suwlulhigg] {
        font-size: 1.15rem;
    }

    .final-cta[b-suwlulhigg] {
        padding: 3.5rem 0;
    }
}

/* The nav links sat flush against one another with only a flex gap of 1;
   they need their own padding to read as separate targets. */
.landing-nav-links[b-suwlulhigg] {
    gap: 0.25rem;
}

.brand-landing .landing-nav-links .nav-link[b-suwlulhigg] {
    padding: 0.5rem 0.85rem;
    border-radius: 0.5rem;
}

.brand-landing .landing-nav-links .nav-link:hover[b-suwlulhigg] {
    background: rgba(33, 107, 98, 0.08);
    color: var(--bos-primary-dark);
}

/* On a phone the three annotations are absolutely positioned over a much
   shorter canvas, so they cover the map almost entirely. Below the tablet
   breakpoint the illustration becomes map-above-list: the route stays visible
   and the annotations read as a list instead of a collapsed collage. */
@media (max-width: 767.98px) {
    .route-visual[b-suwlulhigg] {
        display: grid;
        gap: 0.6rem;
        min-height: 0;
        padding: 1rem;
    }

    .route-line[b-suwlulhigg] {
        position: relative;
        inset: auto;
        aspect-ratio: 4 / 3;
    }

    /* The pin lives inside <strong>, so it is not a grid item - a two-column
       grid here put the title in a 2rem track and overlapped it with the body.
       Normal flow is correct: the pin is already inline inside the title. */
    .route-card[b-suwlulhigg] {
        position: static;
        width: 100%;
        box-shadow: none;
    }
}

/* =====================================================================
   Design 2a — route-aware conversion homepage
   ---------------------------------------------------------------------
   Everything below is scoped to .brand-groomcaptain so the generic
   BackOfficeScheduler brand keeps the page it already had. The tokens are
   declared on the brand root, so they inherit into the RouteRailRow and
   ComparisonPanel child components, which carry their own scoped CSS.

   Archivo and IBM Plex Mono are the design's families. Neither webfont is
   loaded by the host page, so both stacks fall back to what the app already
   ships rather than adding a render-blocking third-party request.
   ===================================================================== */

.brand-landing.brand-groomcaptain[b-suwlulhigg] {
    --gc-ink: #16203a;
    --gc-navy: #405188;
    --gc-navy-deep: #2a3560;
    --gc-paper: #fbf8f3;
    --gc-paper-tint: #f4f1ea;
    --gc-line: #efe9de;
    --gc-line-strong: #e6dfd3;
    --gc-muted: #5c6070;
    --gc-muted-soft: #6b7391;
    --gc-mono-muted: #8a8272;
    --gc-clay: #c0563a;
    --gc-clay-bg: #fdf1ec;
    --gc-clay-line: #ebc3b4;
    --gc-clay-dash: #e0a78f;
    --gc-green: #22624d;
    --gc-green-bg: #eaf3ef;
    --gc-green-line: #b9d6ca;
    --gc-blue-bg: #f4f6fb;
    --gc-blue-line: #dfe4f1;
    --gc-dash: #c9cfe0;
    --gc-dark-card: #243050;
    --gc-dark-line: #35427a;
    --gc-dark-text: #d5daea;
    --gc-dark-muted: #8fa0d6;
    --gc-dark-lede: #b7bfd6;
    --gc-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

    background: var(--gc-paper);
    color: var(--gc-ink);
}

/* The design's own hatched stand-in, used wherever a capture or photograph
   has not been produced yet. It is deliberately obvious: a missing asset
   should read as missing, not as a broken image. */
.brand-groomcaptain .gc-placeholder[b-suwlulhigg] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    text-align: center;
    background: repeating-linear-gradient(135deg, #f1ede5 0 8px, #e9e4da 8px 16px);
    border-radius: 12px;
}

.brand-groomcaptain .gc-placeholder-label[b-suwlulhigg] {
    max-width: 320px;
    color: var(--gc-mono-muted);
    font-family: var(--gc-mono);
    font-size: 11.5px;
    line-height: 1.7;
}

.brand-groomcaptain .gc-placeholder-45[b-suwlulhigg] {
    aspect-ratio: 4 / 5;
    width: 100%;
}

.brand-groomcaptain .gc-placeholder-1610[b-suwlulhigg] {
    aspect-ratio: 16 / 10;
    width: 100%;
    border-radius: 0;
}

/* ---- S1 · Hero ------------------------------------------------------ */

.brand-groomcaptain .hero-2a[b-suwlulhigg] {
    padding-bottom: 0;
    background: var(--gc-paper);
}

.brand-groomcaptain .hero-2a h1[b-suwlulhigg] {
    letter-spacing: -0.028em;
    line-height: 1.02;
}

.brand-groomcaptain .hero-headline-accent[b-suwlulhigg] {
    display: block;
    color: var(--gc-navy);
}

.brand-groomcaptain .hero-2a .hero-copy[b-suwlulhigg] {
    max-width: 430px;
    color: var(--gc-muted);
    font-size: 18.5px;
    line-height: 1.5;
}

.brand-groomcaptain .hero-2a .hero-note[b-suwlulhigg] {
    color: var(--gc-mono-muted);
    font-family: var(--gc-mono);
    font-size: 12.5px;
}

.brand-groomcaptain .hero-2a .eyebrow[b-suwlulhigg] {
    color: var(--gc-navy);
    font-family: var(--gc-mono);
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.brand-groomcaptain .gc-hero-panel[b-suwlulhigg] {
    position: relative;
    display: flex;
    align-items: center;
    padding: 36px 40px 36px 24px;
    background: var(--gc-navy-deep);
}

/* PHOTO A sits behind the card at 25%, so the card stays the thing you read. */
.brand-groomcaptain .gc-hero-photo[b-suwlulhigg] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: 0;
    object-fit: cover;
    opacity: 0.25;
}

.brand-groomcaptain .gc-hero-photo.gc-placeholder[b-suwlulhigg] {
    align-items: flex-end;
    justify-content: flex-start;
    padding: 18px 24px;
    opacity: 0.35;
}

/* ---- S2 · Route card ------------------------------------------------ */

.brand-groomcaptain .gc-route-card[b-suwlulhigg] {
    position: relative;
    z-index: 1;
    width: 100%;
    overflow: hidden;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 28px 60px -24px rgba(10, 14, 30, 0.5);
}

/* The control is a radio group: usable with no script at all, and arrow-key
   navigation comes free from the radios. */
.brand-groomcaptain .gc-route-radio[b-suwlulhigg] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

.brand-groomcaptain .gc-route-head[b-suwlulhigg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px;
    background: var(--gc-paper);
    border-bottom: 1px solid var(--gc-line);
}

.brand-groomcaptain .gc-route-label[b-suwlulhigg] {
    color: var(--gc-mono-muted);
    font-family: var(--gc-mono);
    font-size: 11.5px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.brand-groomcaptain .gc-route-toggle[b-suwlulhigg] {
    display: flex;
    gap: 0;
    padding: 3px;
    background: var(--gc-line);
    border-radius: 8px;
}

.brand-groomcaptain .gc-route-tab[b-suwlulhigg] {
    margin: 0;
    padding: 7px 13px;
    color: var(--gc-muted-soft);
    font-size: 12.5px;
    font-weight: 500;
    border-radius: 6px;
    cursor: pointer;
    transition: color 0.2s ease, background 0.2s ease;
}

.brand-groomcaptain .gc-route-tab:hover[b-suwlulhigg] {
    color: var(--gc-ink);
}

/* Focus lives on the label, because the input itself is visually hidden. */
.brand-groomcaptain #gc-route-plain:focus-visible ~ .gc-route-head .gc-route-tab[for="gc-route-plain"][b-suwlulhigg],
.brand-groomcaptain #gc-route-smart:focus-visible ~ .gc-route-head .gc-route-tab[for="gc-route-smart"][b-suwlulhigg] {
    outline: 2px solid var(--gc-navy);
    outline-offset: 2px;
}

.brand-groomcaptain #gc-route-plain:checked ~ .gc-route-head .gc-route-tab[for="gc-route-plain"][b-suwlulhigg] {
    color: var(--gc-ink);
    font-weight: 600;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

.brand-groomcaptain #gc-route-smart:checked ~ .gc-route-head .gc-route-tab[for="gc-route-smart"][b-suwlulhigg] {
    color: #fff;
    font-weight: 600;
    background: var(--gc-navy);
}

/* Both states share one grid cell, so the taller two-day schedule sets a
   stable card height while opacity can cross-fade between them. */
.brand-groomcaptain .gc-route-body[b-suwlulhigg] {
    display: grid;
    min-height: 388px;
    padding: 22px 22px 16px;
}

.brand-groomcaptain .gc-route-state[b-suwlulhigg] {
    grid-area: 1 / 1;
    min-width: 0;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.28s ease, visibility 0s linear 0.28s;
}

.brand-groomcaptain #gc-route-plain:checked ~ .gc-route-body .gc-route-state-plain[b-suwlulhigg],
.brand-groomcaptain #gc-route-smart:checked ~ .gc-route-body .gc-route-state-smart[b-suwlulhigg] {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transition-delay: 0s;
}

/* The state headings exist for print and for assistive technology; on screen
   the segmented control already names the state. */
.brand-groomcaptain .gc-route-state-heading[b-suwlulhigg] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

.brand-groomcaptain .gc-route-days[b-suwlulhigg] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.brand-groomcaptain .gc-route-day[b-suwlulhigg] {
    min-width: 0;
}

.brand-groomcaptain .gc-route-day + .gc-route-day[b-suwlulhigg] {
    padding-left: 18px;
    border-left: 1px solid var(--gc-line);
}

.brand-groomcaptain .gc-route-day-heading[b-suwlulhigg] {
    margin: 0 0 10px;
    color: var(--gc-mono-muted);
    font-family: var(--gc-mono);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.brand-groomcaptain .gc-route-day[b-suwlulhigg]  .gc-rail-stop,
.brand-groomcaptain .gc-route-day[b-suwlulhigg]  .gc-rail-leg {
    gap: 10px;
}

.brand-groomcaptain .gc-route-day[b-suwlulhigg]  .gc-rail-time {
    width: 42px;
    font-size: 11.5px;
}

.brand-groomcaptain .gc-route-day[b-suwlulhigg]  .gc-rail-card {
    padding: 10px;
}

.brand-groomcaptain .gc-route-day[b-suwlulhigg]  .gc-rail-head {
    flex-wrap: wrap;
    gap: 4px 8px;
}

.brand-groomcaptain .gc-route-day[b-suwlulhigg]  .gc-rail-title {
    font-size: 13.5px;
    line-height: 1.25;
}

.brand-groomcaptain .gc-route-day[b-suwlulhigg]  .gc-rail-detail {
    font-size: 12px;
    line-height: 1.3;
}

.brand-groomcaptain .gc-route-day[b-suwlulhigg]  .gc-rail-connector {
    height: 22px;
    margin-left: 10px;
}

.brand-groomcaptain .gc-route-caption[b-suwlulhigg] {
    margin: 12px 0 0;
    color: var(--gc-muted);
    font-size: 14px;
    line-height: 1.5;
}

/* ---- S2b · Anchor line ---------------------------------------------- */

.brand-groomcaptain .gc-anchor[b-suwlulhigg] {
    padding: 56px 0 48px;
    text-align: center;
    background: var(--gc-paper);
    border-top: 1px solid var(--gc-line);
}

.brand-groomcaptain .gc-anchor-line[b-suwlulhigg] {
    max-width: 820px;
    margin: 0 auto;
    color: var(--gc-ink);
    font-size: 34px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.022em;
    text-wrap: pretty;
}

/* ---- S3 · Before/after Tuesday -------------------------------------- */

.brand-groomcaptain .gc-comparison[b-suwlulhigg] {
    padding: 52px 0 56px;
    background: var(--gc-paper-tint);
    border-top: 1px solid var(--gc-line);
}

.brand-groomcaptain .gc-section-head[b-suwlulhigg] {
    margin-bottom: 28px;
    text-align: center;
}

.brand-groomcaptain .gc-section-head .eyebrow[b-suwlulhigg] {
    margin-bottom: 12px;
    color: var(--gc-navy);
    font-family: var(--gc-mono);
    font-size: 11.5px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.brand-groomcaptain .gc-section-head h2[b-suwlulhigg] {
    max-width: 760px;
    margin: 0 auto;
    font-size: 32px;
    line-height: 1.12;
    letter-spacing: -0.022em;
}

/* Joined, with no gutter, so the seam reads as one Tuesday shown twice. */
.brand-groomcaptain .gc-compare-grid[b-suwlulhigg] {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.brand-groomcaptain .gc-comparison-explanation[b-suwlulhigg] {
    max-width: 860px;
    margin: 26px auto 0;
    color: var(--gc-muted);
    font-size: 17px;
    line-height: 1.55;
    text-align: center;
    text-wrap: pretty;
}

/* ---- S4 · Software proof (the page's only inversion) ---------------- */

.brand-groomcaptain .gc-proof[b-suwlulhigg] {
    padding: 56px 0 60px;
    background: var(--gc-ink);
}

.brand-groomcaptain .gc-section-head-dark .eyebrow[b-suwlulhigg] {
    color: var(--gc-dark-muted);
}

.brand-groomcaptain .gc-section-head-dark h2[b-suwlulhigg] {
    max-width: 800px;
    color: #fff;
    font-size: 40px;
    line-height: 1.08;
    letter-spacing: -0.026em;
}

.brand-groomcaptain .gc-proof-lede[b-suwlulhigg] {
    max-width: 620px;
    margin: 12px auto 0;
    color: var(--gc-dark-lede);
    font-size: 17.5px;
    line-height: 1.5;
    text-wrap: pretty;
}

.brand-groomcaptain .gc-proof-grid[b-suwlulhigg] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.brand-groomcaptain .gc-proof-capture[b-suwlulhigg] {
    margin: 0;
}

.brand-groomcaptain .gc-proof-capture img[b-suwlulhigg] {
    display: block;
    width: 100%;
    aspect-ratio: 2 / 1;
    object-fit: cover;
    object-position: top;
    border-radius: 12px;
}

.brand-groomcaptain .gc-proof-callouts[b-suwlulhigg] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.brand-groomcaptain .gc-callout[b-suwlulhigg] {
    max-width: none;
    padding: 16px 18px;
    border-radius: 10px;
}

.brand-groomcaptain .gc-callout-clay[b-suwlulhigg] {
    color: #fff;
    background: var(--gc-clay);
}

.brand-groomcaptain .gc-callout-navy[b-suwlulhigg] {
    color: var(--gc-dark-text);
    background: var(--gc-dark-card);
    border: 1px solid var(--gc-dark-line);
}

.brand-groomcaptain .gc-callout-label[b-suwlulhigg] {
    margin-bottom: 6px;
    font-family: var(--gc-mono);
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.brand-groomcaptain .gc-callout-clay .gc-callout-label[b-suwlulhigg] {
    opacity: 0.85;
}

.brand-groomcaptain .gc-callout-navy .gc-callout-label[b-suwlulhigg] {
    color: var(--gc-dark-muted);
}

.brand-groomcaptain .gc-callout-body[b-suwlulhigg] {
    margin: 0;
    font-size: 16px;
    line-height: 1.45;
}

.brand-groomcaptain .gc-proof-closing[b-suwlulhigg] {
    grid-column: 1 / -1;
    max-width: 820px;
    margin: 0;
    color: var(--gc-dark-muted);
    font-size: 15px;
    line-height: 1.55;
    text-wrap: pretty;
}

.brand-groomcaptain .gc-crop-grid[b-suwlulhigg] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.brand-groomcaptain .gc-crop[b-suwlulhigg] {
    margin: 0;
    overflow: hidden;
    background: var(--gc-dark-card);
    border: 1px solid var(--gc-dark-line);
    border-radius: 12px;
}

.brand-groomcaptain .gc-crop img[b-suwlulhigg] {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.brand-groomcaptain .gc-crop figcaption[b-suwlulhigg] {
    padding: 14px 16px;
    color: var(--gc-dark-text);
    font-size: 14.5px;
    line-height: 1.45;
}

/* ---- S5 · What it protects ------------------------------------------ */

.brand-groomcaptain .gc-protect[b-suwlulhigg] {
    padding: 52px 0;
    background: var(--gc-paper);
}

.brand-groomcaptain .gc-protect-grid[b-suwlulhigg] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    max-width: 1100px;
    margin: 0 auto;
}

.brand-groomcaptain .gc-protect-line[b-suwlulhigg] {
    margin: 0;
    color: var(--gc-ink);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: -0.01em;
}

/* Table stakes, set quieter than the two reasons to switch. */
.brand-groomcaptain .gc-protect-line.is-muted[b-suwlulhigg] {
    color: var(--gc-muted);
    font-weight: 500;
}

/* ---- S6 · Photo band ------------------------------------------------ */

.brand-groomcaptain .gc-photo-band[b-suwlulhigg] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 220px;
    padding: 32px 20px;
    text-align: center;
}

.brand-groomcaptain .gc-photo-band-img[b-suwlulhigg] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: 0;
    object-fit: cover;
}

.brand-groomcaptain .gc-photo-band-img.gc-placeholder[b-suwlulhigg] {
    align-items: flex-start;
    justify-content: center;
    padding-top: 18px;
}

.brand-groomcaptain .gc-photo-band-copy[b-suwlulhigg] {
    position: relative;
    z-index: 1;
}

.brand-groomcaptain .gc-photo-band-overline[b-suwlulhigg] {
    margin: 0;
    color: var(--gc-ink);
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.brand-groomcaptain .gc-photo-band-support[b-suwlulhigg] {
    margin: 6px 0 0;
    color: var(--gc-muted);
    font-size: 16px;
}

/* ---- S7 · Pricing --------------------------------------------------- */

.brand-groomcaptain .pricing-card-featured[b-suwlulhigg] {
    background: var(--gc-blue-bg);
    border-color: var(--gc-navy);
}

/* ---- Responsive ------------------------------------------------------ */

@media (min-width: 992px) {
    /* 530px of copy against a panel that bleeds to the viewport edge. */
    .brand-groomcaptain .hero-2a .row[b-suwlulhigg] {
        display: grid;
        grid-template-columns: 530px 1fr;
        align-items: center;
    }

    .brand-groomcaptain .hero-2a .row > .col-lg-6[b-suwlulhigg] {
        flex: none;
        width: auto;
        max-width: none;
    }

    .brand-groomcaptain .hero-2a .row > .col-lg-6:last-child[b-suwlulhigg] {
        margin-right: calc(50% - 50vw);
        padding-right: 0;
    }
}

/* 768px is the last width where the split comparison works. */
@media (max-width: 991.98px) {
    .brand-groomcaptain .gc-proof-grid[b-suwlulhigg] {
        grid-template-columns: 1fr;
    }

    .brand-groomcaptain .gc-crop-grid[b-suwlulhigg] {
        grid-template-columns: repeat(2, 1fr);
    }

    .brand-groomcaptain .gc-protect-grid[b-suwlulhigg] {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .brand-groomcaptain .gc-hero-panel[b-suwlulhigg] {
        padding: 24px 20px;
    }
}

@media (max-width: 767.98px) {
    .brand-groomcaptain .gc-compare-grid[b-suwlulhigg] {
        grid-template-columns: 1fr;
    }

    .brand-groomcaptain .gc-crop-grid[b-suwlulhigg] {
        grid-template-columns: 1fr;
    }

    .brand-groomcaptain .gc-proof-callouts[b-suwlulhigg] {
        grid-template-columns: 1fr;
    }

    .brand-groomcaptain .gc-proof-capture img[b-suwlulhigg] {
        aspect-ratio: 1;
        object-position: 50% top;
    }

    .brand-groomcaptain .hero-2a h1[b-suwlulhigg] {
        font-size: 33px;
        line-height: 1.05;
    }

    .brand-groomcaptain .hero-2a .hero-copy[b-suwlulhigg] {
        font-size: 16.5px;
    }

    .brand-groomcaptain .gc-anchor-line[b-suwlulhigg] {
        font-size: 21px;
    }

    .brand-groomcaptain .gc-section-head h2[b-suwlulhigg] {
        font-size: 24px;
    }

    .brand-groomcaptain .gc-section-head-dark h2[b-suwlulhigg] {
        font-size: 28px;
    }

    .brand-groomcaptain .gc-route-body[b-suwlulhigg] {
        min-height: 0;
        padding: 15px 15px 12px;
    }

    .brand-groomcaptain .gc-route-days[b-suwlulhigg] {
        grid-template-columns: 1fr;
    }

    .brand-groomcaptain .gc-route-day + .gc-route-day[b-suwlulhigg] {
        padding: 18px 0 0;
        border-top: 1px solid var(--gc-line);
        border-left: 0;
    }

    /* 48px tap targets, and the control fills the card width. */
    .brand-groomcaptain .gc-route-head[b-suwlulhigg] {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .brand-groomcaptain .gc-route-toggle[b-suwlulhigg] {
        width: 100%;
    }

    .brand-groomcaptain .gc-route-tab[b-suwlulhigg] {
        flex: 1;
        min-height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .brand-groomcaptain .hero-2a .btn-hero[b-suwlulhigg] {
        width: 100%;
        min-height: 48px;
    }
}

/* ---- Motion and print ------------------------------------------------ */

@media (prefers-reduced-motion: reduce) {
    .brand-groomcaptain .gc-route-state[b-suwlulhigg] {
        transition: none;
    }

    .brand-groomcaptain .gc-route-tab[b-suwlulhigg] {
        transition: none;
    }
}

/* Both states print, each under its own visible heading. */
@media print {
    .brand-groomcaptain .gc-route-body[b-suwlulhigg] {
        display: block;
        min-height: 0;
    }

    .brand-groomcaptain .gc-route-state[b-suwlulhigg] {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto;
        transition: none;
    }

    .brand-groomcaptain .gc-route-state-heading[b-suwlulhigg] {
        position: static;
        width: auto;
        height: auto;
        margin: 16px 0 8px;
        clip: auto;
        color: var(--gc-ink);
        font-size: 14px;
        font-weight: 700;
    }

    .brand-groomcaptain .gc-route-toggle[b-suwlulhigg] {
        display: none;
    }
}

/* ---- 2a overrides of the pre-2a landing foundation -------------------
   These undo defaults that the original hero relied on. They are scoped to
   .brand-groomcaptain .hero-2a so the generic brand's hero is untouched. */

/* The original hero sets a 12.5ch measure and an 8vw clamp, which is right
   for a three-word headline and far too large for this two-sentence one. */
.brand-groomcaptain .hero-2a h1[b-suwlulhigg] {
    max-width: none;
    font-size: clamp(2rem, 3.6vw, 3.25rem);
    font-weight: 700;
    line-height: 1.02;
}

/* Navy is the design's action colour. The scope stops at the landing page:
   the signed-in app keeps its green primary, because re-theming the product
   is not a homepage change. */
.brand-groomcaptain .hero-2a .btn-bos-primary[b-suwlulhigg],
.brand-groomcaptain .hero-2a .btn-bos-primary:visited[b-suwlulhigg],
.brand-groomcaptain .gc-proof .btn-bos-primary[b-suwlulhigg],
.brand-groomcaptain .final-cta .btn-bos-primary[b-suwlulhigg] {
    background: var(--gc-navy);
    border-color: var(--gc-navy);
}

.brand-groomcaptain .hero-2a .btn-bos-primary:hover[b-suwlulhigg],
.brand-groomcaptain .hero-2a .btn-bos-primary:focus[b-suwlulhigg],
.brand-groomcaptain .hero-2a .btn-bos-primary:active[b-suwlulhigg] {
    background: var(--gc-navy-deep);
    border-color: var(--gc-navy-deep);
}

.brand-groomcaptain .hero-2a .hero-secondary[b-suwlulhigg] {
    color: var(--gc-navy);
}

/* The eyebrow is mono and unadorned in this design. */
.brand-groomcaptain .hero-2a .eyebrow i[b-suwlulhigg],
.brand-groomcaptain .gc-section-head .eyebrow i[b-suwlulhigg] {
    display: none;
}

/* Keep the bleeding panel from forcing a horizontal scrollbar, and stop the
   grid columns from refusing to shrink. */
.brand-groomcaptain .hero-2a[b-suwlulhigg] {
    overflow: hidden;
}

.brand-groomcaptain .hero-2a .row > .col-lg-6[b-suwlulhigg] {
    min-width: 0;
}

.brand-groomcaptain .gc-hero-panel[b-suwlulhigg] {
    min-width: 0;
}

.brand-groomcaptain .gc-route-card[b-suwlulhigg] {
    max-width: 860px;
}

/* The nav CTA follows the page, not the app shell. */
.brand-groomcaptain .landing-nav .btn-bos-primary[b-suwlulhigg],
.brand-groomcaptain .landing-nav .btn-bos-primary:visited[b-suwlulhigg] {
    background: var(--gc-navy);
    border-color: var(--gc-navy);
}

.brand-groomcaptain .landing-nav .nav-link:hover[b-suwlulhigg] {
    color: var(--gc-navy);
}

/* The final CTA band is navy in this design, with a white button on it. */
.brand-groomcaptain .final-cta[b-suwlulhigg] {
    background: var(--gc-navy);
}

.brand-groomcaptain .final-cta h2[b-suwlulhigg] {
    color: #fff;
}

.brand-groomcaptain .final-cta p[b-suwlulhigg] {
    color: #cbd3ec;
}

.brand-groomcaptain .final-cta .btn-bos-primary[b-suwlulhigg],
.brand-groomcaptain .final-cta .btn-bos-primary:visited[b-suwlulhigg] {
    color: var(--gc-ink);
    background: #fff;
    border-color: #fff;
}

.brand-groomcaptain .final-cta .btn-bos-primary:hover[b-suwlulhigg],
.brand-groomcaptain .final-cta .btn-bos-primary:focus[b-suwlulhigg] {
    color: var(--gc-ink);
    background: #f0f2f8;
    border-color: #f0f2f8;
}

@media (max-width: 991.98px) {
    /* The navy panel becomes a band above the card rather than beside it. */
    .brand-groomcaptain .gc-hero-panel[b-suwlulhigg] {
        padding: 20px;
    }

    .brand-groomcaptain .gc-route-card[b-suwlulhigg] {
        max-width: none;
    }
}

/* ---- S0 · Header wordmark at phone width ---------------------------
   The detailed lockup stays at >=768px; below it a 30px square mark and a
   20px/700 live-text wordmark replace it, per the design. */

.brand-mark-compact[b-suwlulhigg],
.landing-brand-name-compact[b-suwlulhigg] {
    display: none;
}

@media (max-width: 767.98px) {
    .brand-groomcaptain .brand-logo[b-suwlulhigg] {
        display: none;
    }

    .brand-groomcaptain .brand-mark-compact[b-suwlulhigg] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 30px;
        color: #fff;
        background: var(--gc-navy);
        border-radius: 8px;
        font-size: 15px;
        font-weight: 700;
    }

    .brand-groomcaptain .landing-brand-name-compact[b-suwlulhigg] {
        display: inline;
        color: var(--gc-ink);
        font-size: 20px;
        font-weight: 700;
        letter-spacing: -0.02em;
    }
}
/* _content/BOS.Shared/Pages/Login.razor.rz.scp.css */
.login-shell[b-6md0ic981y] {
    background:
        radial-gradient(circle at top, rgba(13, 110, 253, 0.18), transparent 35%),
        linear-gradient(180deg, #eef4ff 0%, #f8fbff 100%);
}

@media (max-width: 767.98px) {
    .gcp-auth[b-6md0ic981y] {
        padding-top: calc(max(var(--bos-safe-top, 0px), 0px) + 3rem);
    }

    .gcp-auth__brand img[b-6md0ic981y] {
        height: 9.75rem;
        max-width: 100%;
        object-fit: contain;
    }

    .gcp-auth__back[b-6md0ic981y] {
        display: none;
    }
}

.login-card[b-6md0ic981y] {
    backdrop-filter: blur(10px);
}

.login-brand-link[b-6md0ic981y] {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    justify-content: center;
    color: #12343b;
    text-decoration: none;
}

.login-brand-logo[b-6md0ic981y] {
    display: block;
    width: min(15rem, 70vw);
    height: auto;
}

.login-brand-mark[b-6md0ic981y] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 0.55rem;
    background: #216b62;
    color: #fff;
    font-weight: 800;
}

.login-brand-name[b-6md0ic981y] {
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1;
}

.login-password-label[b-6md0ic981y] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.login-password-label a[b-6md0ic981y] {
    color: var(--gcp-primary, #0b6b5d);
    font-size: 0.875rem;
    font-weight: 700;
    text-decoration: none;
}

.login-password-label a:hover[b-6md0ic981y] {
    text-decoration: underline;
}

.login-password-label a:focus-visible[b-6md0ic981y] {
    border-radius: 0.25rem;
    outline: 3px solid rgba(11, 107, 93, 0.22);
    outline-offset: 3px;
}
/* _content/BOS.Shared/Pages/MyDay.razor.rz.scp.css */
.my-day[b-95lhmbcpd7] {
    display: grid;
    width: min(100%, 52rem);
    gap: 1.5rem;
    margin: 0 auto;
    padding-bottom: calc(1.5rem + env(safe-area-inset-bottom, 0px));
}

.my-day__date-control[b-95lhmbcpd7] {
    position: relative;
    display: inline-flex;
}

.my-day__date-picker[b-95lhmbcpd7] {
    font-family: inherit;
    cursor: pointer;
}

.my-day__date-picker:disabled[b-95lhmbcpd7] {
    cursor: wait;
}

.my-day__date-picker-input[b-95lhmbcpd7] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    pointer-events: none;
}

.my-day__section[b-95lhmbcpd7] {
    display: grid;
    min-width: 0;
    gap: .75rem;
}

.my-day__section h2[b-95lhmbcpd7] {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: 0;
    font-size: 1.05rem;
}

.my-day__section h2 span[b-95lhmbcpd7] {
    display: inline-grid;
    min-width: 1.5rem;
    min-height: 1.5rem;
    place-items: center;
    border-radius: 999px;
    background: var(--light, #eef1f5);
    color: var(--text-muted, #64748b);
    font-size: .75rem;
}

.my-day__list[b-95lhmbcpd7] {
    display: grid;
    min-width: 0;
    gap: 1rem;
}

.my-day__earlier[b-95lhmbcpd7] {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--default-border, #dfe3e8);
    border-radius: .75rem;
}

.my-day__earlier summary[b-95lhmbcpd7] {
    min-height: 44px;
    cursor: pointer;
    font-weight: 700;
}

@media (max-width: 575.98px) {
    .my-day[b-95lhmbcpd7] {
        gap: 1.25rem;
    }
}
/* _content/BOS.Shared/Pages/PrivateFeedback.razor.rz.scp.css */
.feedback-state[b-bukdute4n3] { padding: 2rem; text-align: center; color: #647773; }
.feedback-list[b-bukdute4n3] { display: grid; gap: 1rem; }
.feedback-card[b-bukdute4n3] { padding: 1.25rem; }
.feedback-card header[b-bukdute4n3], .feedback-card footer[b-bukdute4n3] { display: flex; justify-content: space-between; gap: .75rem; flex-wrap: wrap; }
.feedback-card header div[b-bukdute4n3] { display: flex; flex-direction: column; }
.feedback-card header span[b-bukdute4n3], .feedback-card time[b-bukdute4n3], .feedback-card footer[b-bukdute4n3] { color: #667d78; font-size: .82rem; }
.feedback-stars[b-bukdute4n3] { margin: 1rem 0 .5rem; color: #f39a32; font-size: 1.35rem; letter-spacing: .08rem; }
.feedback-card p[b-bukdute4n3] { margin: .5rem 0 1rem; white-space: pre-wrap; }
.feedback-card footer[b-bukdute4n3] { padding-top: .85rem; border-top: 1px solid #e1ebe8; }
.feedback-skipped[b-bukdute4n3] { margin: 1rem 0; color: #71827f; font-style: italic; }
/* _content/BOS.Shared/Pages/Profile.razor.rz.scp.css */
.profile-stripe-busy-overlay[b-r82k582olj] {
    position: fixed;
    inset: 0;
    z-index: 30000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, 0.28);
}

.profile-stripe-busy-panel[b-r82k582olj] {
    width: min(26rem, 100%);
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid var(--gc-border);
    border-radius: 8px;
    background: #fff;
}

.profile-tab-content[b-r82k582olj] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Save bar: makes the scope of a save visible instead of leaving a lone
   button floating over the form. Sticky positioning is unchanged. */
.profile-tab-actions[b-r82k582olj] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--gc-space-3);
    position: sticky;
    top: calc(var(--bos-safe-top, 0px) + 4.75rem);
    z-index: 40;
    margin-block-end: var(--gc-space-4);
    padding: var(--gc-space-2) var(--gc-space-3);
    border: 1px solid var(--gc-border);
    border-radius: var(--gc-radius);
    background: var(--gc-surface);
    box-shadow: var(--gc-shadow-raised);
    pointer-events: auto;
}

.profile-tab-actions__scope[b-r82k582olj] {
    margin-inline-end: auto;
    color: var(--gc-text-muted);
    font-size: var(--gc-font-size-helper);
}

.profile-tab-actions .btn[b-r82k582olj] {
    pointer-events: auto;
}

.profile-focus-highlight[b-r82k582olj] {
    border-radius: var(--gc-radius-sm);
    box-shadow: 0 0 0 3px rgba(15, 95, 88, 0.22);
    padding: 0.5rem;
}

.business-hours-focus[b-r82k582olj] {
    scroll-margin-top: calc(var(--bos-safe-top, 0px) + 11rem);
}

.business-hours-focus.profile-focus-highlight[b-r82k582olj] {
    animation: business-hours-pulse-b-r82k582olj 1.2s ease-in-out 3;
}

@keyframes business-hours-pulse-b-r82k582olj {
    0%, 100% { box-shadow: 0 0 0 3px rgba(15, 95, 88, 0.22); }
    50% { box-shadow: 0 0 0 8px rgba(15, 95, 88, 0.4); }
}

@media (prefers-reduced-motion: reduce) {
    .business-hours-focus.profile-focus-highlight[b-r82k582olj] {
        animation: none;
    }
}

@media (max-width: 575.98px) {
    .profile-tab-actions__scope[b-r82k582olj] {
        display: none;
    }

    .profile-tab-actions .btn[b-r82k582olj] {
        flex: 1 1 auto;
    }
}

.subscription-plan-grid[b-r82k582olj] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
    gap: 1rem;
}

.subscription-plan-panel[b-r82k582olj] {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid var(--gc-border);
    border-radius: 8px;
    background: #fff;
}

.subscription-plan-panel h3[b-r82k582olj] {
    margin: 0.1rem 0 0;
    font-size: 1.05rem;
    font-weight: 800;
}

.subscription-plan-panel p[b-r82k582olj] {
    min-height: 4rem;
    margin: 0.85rem 0;
    color: var(--gc-text-muted);
    font-size: 0.875rem;
}

.subscription-plan-panel ul[b-r82k582olj] {
    margin: 0;
    padding-left: 1.1rem;
    color: var(--gc-text-secondary);
    font-size: 0.8125rem;
}

.subscription-plan-panel li + li[b-r82k582olj] {
    margin-top: 0.35rem;
}

.subscription-plan-eyebrow[b-r82k582olj] {
    color: var(--gc-primary);
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
}

.subscription-plan-price[b-r82k582olj] {
    flex: 0 0 auto;
    text-align: right;
    white-space: nowrap;
}

.subscription-plan-price span[b-r82k582olj] {
    display: block;
    color: var(--gc-text);
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1;
}

.subscription-plan-price small[b-r82k582olj] {
    color: var(--gc-text-muted);
    font-size: 0.75rem;
}

.membership-guide-actions[b-r82k582olj] {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1rem;
}

.membership-guide-plan-actions[b-r82k582olj] {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
    gap: 0.75rem;
}

.membership-guide-plan-actions .btn[b-r82k582olj] {
    width: 100%;
    white-space: normal;
}

.route-protection-panel[b-r82k582olj] {
    display: grid;
    gap: var(--gc-space-4);
    padding: var(--gc-space-4);
    border: 1px solid var(--gc-border);
    border-radius: var(--gc-radius);
    background: var(--gc-surface-subtle);
}

.route-protection-intro[b-r82k582olj] {
    max-width: 72rem;
}

.route-protection-intro .gc-fieldset__legend[b-r82k582olj] {
    margin-block-end: var(--gc-space-2);
}

.route-safe-definition[b-r82k582olj],
.route-protection-status[b-r82k582olj],
.route-protection-outcomes[b-r82k582olj] {
    padding: var(--gc-space-3);
    border-radius: var(--gc-radius-sm);
    background: var(--gc-surface);
}

.route-safe-definition[b-r82k582olj] {
    border-inline-start: 3px solid var(--gc-primary);
}

.route-protection-activation[b-r82k582olj],
.route-protection-field[b-r82k582olj] {
    min-width: 0;
}

.route-protection-activation .gc-help[b-r82k582olj],
.route-protection-field > .gc-help[b-r82k582olj],
.route-protection-field > .route-protection-note[b-r82k582olj] {
    margin-block-start: var(--gc-space-2);
}

.route-protection-status[b-r82k582olj] {
    border: 1px dashed var(--gc-border-strong);
    color: var(--gc-text-secondary);
}

.route-protection-grid[b-r82k582olj] {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(16rem, 2fr);
    gap: var(--gc-space-4);
    align-items: start;
}

.route-protection-field[b-r82k582olj] {
    padding: var(--gc-space-3);
    border: 1px solid var(--gc-border);
    border-radius: var(--gc-radius-sm);
    background: var(--gc-surface);
}

.route-protection-field--wide[b-r82k582olj] {
    grid-column: 1 / -1;
}

.route-mode-list[b-r82k582olj] {
    display: grid;
    gap: var(--gc-space-2);
    margin-block-start: var(--gc-space-3);
}

.route-mode-option[b-r82k582olj] {
    display: block;
    cursor: pointer;
    min-width: 0;
    padding: var(--gc-space-2) var(--gc-space-3);
    border-inline-start: 3px solid transparent;
}

.route-mode-option.is-selected[b-r82k582olj] {
    border-inline-start-color: var(--gc-primary);
    background: var(--gc-primary-surface);
}

.route-mode-option__name[b-r82k582olj] {
    color: var(--gc-text);
    font-weight: 700;
}

.route-protection-distance-input[b-r82k582olj] {
    max-width: 16rem;
}

.route-protection-note[b-r82k582olj] {
    color: var(--gc-warning-text, #8a5a00);
    font-size: var(--gc-font-size-helper);
}

.route-protection-outcomes[b-r82k582olj] {
    display: grid;
    gap: var(--gc-space-2);
    border: 1px solid var(--gc-border);
    color: var(--gc-text-secondary);
    font-size: var(--gc-font-size-helper);
}

@media (max-width: 575.98px) {
    .membership-guide-actions[b-r82k582olj] {
        align-items: stretch;
    }

    .membership-guide-plan-actions[b-r82k582olj] {
        grid-template-columns: 1fr;
    }

    .route-protection-panel[b-r82k582olj] {
        padding: var(--gc-space-3);
    }

    .route-protection-field[b-r82k582olj] {
        padding: var(--gc-space-3);
    }
}

@media (max-width: 991.98px) {
    .route-protection-grid[b-r82k582olj] {
        grid-template-columns: 1fr;
    }

    .route-protection-field--wide[b-r82k582olj] {
        grid-column: auto;
    }

    .route-protection-distance-input[b-r82k582olj] {
        max-width: none;
    }
}

.profile-version-footer[b-r82k582olj] {
    margin: 2rem 0 1rem;
    color: var(--gc-text-muted);
    font-size: 0.75rem;
    text-align: center;
}
/* _content/BOS.Shared/Pages/ProtectRoutePage.razor.rz.scp.css */
.protect-route[b-7x30zcme68] {
    --ink: #16233a;
    --body: #3b4558;
    --cream: #fffdf8;
    --warm: #f7f3ea;
    --line: #e4dbc8;
    --teal: var(--gc-primary, #0f5f58);
    color: var(--ink);
    background: var(--cream);
    font: 17px/1.65 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.protect-route[b-7x30zcme68], .protect-route *[b-7x30zcme68] { box-sizing: border-box; }
.protect-route :is(h1, h2, h3, p, figure)[b-7x30zcme68] { margin: 0; }
.protect-route :is(h1, h2, h3)[b-7x30zcme68] { color: inherit; font-weight: 800; text-wrap: balance; letter-spacing: -.035em; }
.protect-route h1[b-7x30zcme68] { font-size: clamp(2.6rem, 5vw, 4.3rem); line-height: 1.07; letter-spacing: -.045em; }
.protect-route h2[b-7x30zcme68] { font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.15; }
.protect-route h3[b-7x30zcme68] { font-size: 1.15rem; line-height: 1.3; letter-spacing: -.02em; }
.protect-route p[b-7x30zcme68] { color: var(--body); }
.protect-route a[b-7x30zcme68] { color: inherit; text-underline-offset: .22em; }
.protect-route :is(a, button, summary):focus-visible[b-7x30zcme68] { outline: 3px solid #b75b12 !important; outline-offset: 5px; }
.protect-route button[b-7x30zcme68] { font-family: inherit; cursor: pointer; }
.protect-route button:disabled[b-7x30zcme68] { cursor: default; }
.protect-route [id][b-7x30zcme68] { scroll-margin-top: 100px; }
.route-container[b-7x30zcme68] { width: min(1200px, calc(100% - 80px)); margin-inline: auto; }
.eyebrow[b-7x30zcme68] { font: 700 .72rem/1.5 ui-monospace, "Cascadia Code", monospace; letter-spacing: .11em; text-transform: uppercase; color: #625c50 !important; margin-bottom: 18px !important; }
.small-copy[b-7x30zcme68] { font-size: .82rem; color: #625c50 !important; }
.route-button[b-7x30zcme68] { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 21px; border: 1px solid var(--teal); border-radius: 6px; color: white !important; background: var(--teal); font-size: .94rem; line-height: 1.4; font-weight: 700; text-decoration: none; white-space: nowrap; }
.route-button:hover[b-7x30zcme68] { background: var(--gc-primary-hover, #0c4f49); }
.button-outline[b-7x30zcme68] { background: transparent; color: var(--teal) !important; }
.button-outline:hover[b-7x30zcme68] { background: #e8f2f0; }
.skip-link[b-7x30zcme68] { position: fixed; top: -100px; left: 20px; z-index: 100; padding: 12px 20px; background: white; }
.skip-link:focus[b-7x30zcme68] { top: 12px; }
.site-header[b-7x30zcme68] { position: sticky; top: 0; z-index: 20; background: var(--cream); border-bottom: 1px solid var(--line); }
.navigation[b-7x30zcme68] { position: relative; display: flex; align-items: center; gap: 30px; min-height: 82px; }
.wordmark[b-7x30zcme68] { display: inline-flex; align-items: center; gap: 9px; color: inherit; font-size: 1.2rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.desktop-nav[b-7x30zcme68] { display: flex; align-items: center; gap: 28px; margin-left: auto; font-size: .9rem; font-weight: 600; }
.desktop-nav a[b-7x30zcme68] { padding-block: 12px; text-decoration: none; }
.mobile-menu[b-7x30zcme68] { display: none; }
.hero[b-7x30zcme68] { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; padding-block: 72px; }
.hero h1 span[b-7x30zcme68] { color: var(--teal); }
.hero .lead[b-7x30zcme68] { font-size: 1.18rem; margin-block: 24px 12px; }
.actions[b-7x30zcme68] { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-block: 26px 14px; }
.hero-signup[b-7x30zcme68] { min-width: 0; scroll-margin-top: 100px; }
.route-comparison[b-7x30zcme68] { padding-block: 56px; background: var(--warm); border-block: 1px solid var(--line); }
.route-comparison h2[b-7x30zcme68] { max-width: 850px; }
.section-intro[b-7x30zcme68] { max-width: 850px; margin-top: 20px !important; }
.comparison-grid[b-7x30zcme68] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: 32px; }
.comparison-grid figure[b-7x30zcme68] { padding: 22px; background: white; border: 1px solid var(--line); border-radius: 10px; }
.comparison-grid h3[b-7x30zcme68] { margin-bottom: 18px; }
.comparison-grid svg[b-7x30zcme68] { display: block; width: 100%; height: auto; border-radius: 6px; }
.comparison-label[b-7x30zcme68] { font-size: .8rem; font-weight: 700; color: var(--teal); margin-block: 14px 8px; }
.comparison-grid figure:first-child .comparison-label[b-7x30zcme68] { color: #865023; }
.illustration-note[b-7x30zcme68] { margin-top: 20px !important; max-width: 900px; font-size: .8rem; color: #625c50 !important; }
.visual-features[b-7x30zcme68] { padding-block: 64px; background: var(--warm); border-block: 1px solid var(--line); }
.feature-grid[b-7x30zcme68] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 32px; }
.feature-card[b-7x30zcme68] { min-width: 0; padding: 24px 20px; background: white; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 4px 12px #16233a05; }
.feature-heading[b-7x30zcme68] { display: flex; align-items: flex-start; gap: 12px; min-height: 66px; }
.feature-heading > i[b-7x30zcme68] { color: var(--teal); font-size: 32px; line-height: 1.2; }
.feature-heading h3[b-7x30zcme68] { font-size: 1.4rem; line-height: 1.2; }
.feature-card > p[b-7x30zcme68] { margin-top: 16px; min-height: 96px; font-size: .94rem; line-height: 1.6; }
.area-visual[b-7x30zcme68], .schedule-visual[b-7x30zcme68], .opening-visual[b-7x30zcme68] { margin-top: 24px !important; }
.area-visual svg[b-7x30zcme68] { display: block; width: 100%; height: auto; }
.area-visual figcaption[b-7x30zcme68] { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 14px; color: var(--teal); font-size: .9rem; font-weight: 700; }
.schedule-visual[b-7x30zcme68] { display: grid; gap: 18px; }
.schedule-example[b-7x30zcme68] { padding: 12px; border-radius: 10px; }
.gap-example[b-7x30zcme68] { background: #fcf0e9; }
.fit-example[b-7x30zcme68] { background: #e8f2f0; }
.schedule-example h4[b-7x30zcme68] { display: flex; gap: 7px; align-items: flex-start; margin: 0 0 10px; font-size: .9rem; line-height: 1.45; font-weight: 700; color: #70451e; }
.fit-example h4[b-7x30zcme68] { color: var(--teal); }
.schedule-example h4 > i[b-7x30zcme68] { font-size: 18px; line-height: 1.1; }
.schedule-row[b-7x30zcme68] { position: relative; display: flex; gap: 8px; align-items: center; min-height: 38px; margin-top: 7px; padding: 7px 9px; border-radius: 6px; background: white; color: var(--ink); font-size: .94rem; line-height: 1.4; }
.schedule-row > i[b-7x30zcme68] { color: var(--teal); font-size: 17px; }
.idle-gap[b-7x30zcme68] { min-height: 50px; border: 1px dashed #94602d; background: transparent; color: #70451e; font-weight: 700; }
.idle-gap > i[b-7x30zcme68] { color: #70451e; }
.travel-buffer[b-7x30zcme68] { min-height: 30px; padding-block: 4px; background: transparent; color: var(--body); font-size: .875rem; }
.proposed-booking[b-7x30zcme68] { border: 1px solid var(--teal); font-weight: 700; }
.proposed-booking > i:last-child[b-7x30zcme68] { margin-left: auto; }
.opening-visual[b-7x30zcme68] { list-style: none; padding: 0; display: grid; gap: 32px; }
.opening-visual li[b-7x30zcme68] { position: relative; display: flex; gap: 12px; align-items: center; min-height: 76px; padding: 14px; border: 1px solid #b4d5cf; border-radius: 8px; background: #f1f8f5; }
.opening-visual li + li[b-7x30zcme68]::before { content: "↓"; position: absolute; bottom: calc(100% + 2px); left: calc(50% - 9px); color: var(--teal); font-size: 25px; line-height: 28px; }
.opening-visual li > i[b-7x30zcme68] { color: var(--teal); font-size: 25px; }
.opening-visual strong[b-7x30zcme68], .opening-visual span[b-7x30zcme68] { display: block; font-size: .94rem; line-height: 1.45; }
.opening-visual span[b-7x30zcme68] { color: var(--body); font-size: .875rem; margin-top: 3px; }
.opening-visual .canceled-opening[b-7x30zcme68] { border-color: var(--line); background: #f3f2ef; }
.canceled-opening > i[b-7x30zcme68] { color: #625c50 !important; }
.canceled-opening strong[b-7x30zcme68] { text-decoration: line-through; color: #625c50; }
.opening-visual .accepted-opening[b-7x30zcme68] { border: 2px solid var(--teal); background: #e8f2f0; }
.supporting-benefits[b-7x30zcme68] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; margin-top: 40px; }
.supporting-benefits article[b-7x30zcme68] { padding: 24px; border: 1px solid var(--line); border-radius: 10px; background: var(--cream); }
.support-visual[b-7x30zcme68] { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; color: var(--teal); font-size: .8rem; font-weight: 600; }
.support-visual i[b-7x30zcme68] { font-size: 23px; }
.supporting-benefits p[b-7x30zcme68] { margin-top: 12px; font-size: .94rem; }
.plan-note[b-7x30zcme68] { margin-top: 32px !important; padding-top: 24px; border-top: 1px solid var(--line); font-size: .82rem; }
.plan-note a[b-7x30zcme68], .text-link[b-7x30zcme68] { color: var(--teal); font-weight: 700; }
.demonstration[b-7x30zcme68] { display: grid; grid-template-columns: .7fr 1.3fr; gap: 48px; align-items: center; padding-block: 64px; }
.demonstration h2 + p[b-7x30zcme68] { margin-top: 20px; }
.text-link[b-7x30zcme68] { display: inline-block; margin-block: 22px 8px; }
.demonstration .text-link[b-7x30zcme68] { border: 0; background: none; padding: 0; font-size: 1rem; text-align: left; text-decoration: underline; text-underline-offset: .22em; }
.demo-preview[b-7x30zcme68] { display: block; position: relative; width: 100%; padding: 0; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; background: var(--ink); text-decoration: none; }
.demo-preview[b-7x30zcme68]::before { content: "▶"; position: absolute; left: 50%; top: calc(50% - 24px); transform: translate(-50%, -50%); display: grid; place-items: center; width: 72px; height: 72px; padding-left: 4px; border: 2px solid white; border-radius: 50%; background: var(--teal); color: white; font-size: 28px; box-shadow: 0 2px 16px #16233a40; }
.demo-preview img[b-7x30zcme68] { display: block; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; }
.play-label[b-7x30zcme68] { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 13px; background: var(--ink); color: white; font-size: .9rem; font-weight: 700; }
.play-label i[b-7x30zcme68] { font-size: 24px; }
.closing[b-7x30zcme68] { padding-block: 64px; text-align: center; background: #e8f2f0; border-block: 1px solid #b4d5cf; }
.closing h2[b-7x30zcme68] { margin-inline: auto; }
.closing p[b-7x30zcme68] { max-width: 560px; margin: 20px auto 24px; }
.closing .small-copy[b-7x30zcme68] { margin-bottom: 0; }
.route-footer[b-7x30zcme68] { background: #0f1b2e; color: white; padding-block: 36px 24px; }
.footer-top[b-7x30zcme68] { display: flex; justify-content: space-between; gap: 24px; align-items: center; padding-bottom: 28px; }
.route-footer nav[b-7x30zcme68] { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; font-size: .85rem; }
.route-footer a[b-7x30zcme68] { min-height: 40px; display: inline-flex; align-items: center; }
.footer-bottom[b-7x30zcme68] { border-top: 1px solid #374459; padding-top: 24px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 18px 24px; font-size: .75rem; color: #c8d2e0; }
.route-dialog[b-7x30zcme68] { width: min(960px, calc(100% - 32px)); max-height: calc(100dvh - 32px); padding: 24px; border: 1px solid var(--line); border-radius: 12px; color: var(--ink); background: var(--cream); }
.route-dialog[b-7x30zcme68]::backdrop { background: #0f1b2ed9; }
.dialog-bar[b-7x30zcme68] { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.dialog-bar h2[b-7x30zcme68] { font-size: clamp(1.2rem, 3vw, 1.65rem); }
.dialog-bar button[b-7x30zcme68] { flex-shrink: 0; width: 44px; height: 44px; background: white; border: 1px solid var(--line); border-radius: 6px; color: var(--ink); }
.video-player[b-7x30zcme68] { aspect-ratio: 16/9; background: var(--ink); }
.video-player[b-7x30zcme68]  iframe { width: 100%; height: 100%; border: 0; }
.route-dialog > p[b-7x30zcme68] { font-size: .9rem; margin-block: 16px; }
@media (max-width: 899px) {
    .route-container[b-7x30zcme68] { width: calc(100% - 48px); }
    .hero[b-7x30zcme68] { gap: 32px; padding-block: 48px; }
    .hero h1[b-7x30zcme68] { font-size: 2.8rem; }
    .feature-grid[b-7x30zcme68] { grid-template-columns: 1fr; }
    .feature-card[b-7x30zcme68] { display: grid; grid-template-columns: 1fr 1fr; column-gap: 28px; padding: 28px; }
    .feature-heading[b-7x30zcme68] { min-height: 0; align-self: end; }
    .feature-card > p[b-7x30zcme68] { min-height: 0; align-self: start; }
    .feature-card > :last-child[b-7x30zcme68] { grid-column: 2; grid-row: 1 / 3; margin-top: 0 !important; }
    .supporting-benefits[b-7x30zcme68] { gap: 20px; }
    .support-visual[b-7x30zcme68] { flex-wrap: wrap; gap: 8px; }
    .demonstration[b-7x30zcme68] { grid-template-columns: 1fr; gap: 28px; }
    .demo-copy[b-7x30zcme68] { max-width: 700px; }
    .footer-top[b-7x30zcme68] { align-items: flex-start; }
}
@media (max-width: 699px) {
    .route-container[b-7x30zcme68] { width: calc(100% - 40px); }
    .navigation[b-7x30zcme68] { min-height: 72px; gap: 12px; }
    .wordmark[b-7x30zcme68] { font-size: 1rem; gap: 5px; }
    .wordmark img[b-7x30zcme68] { width: 30px; height: 30px; }
    .navigation > .route-button[b-7x30zcme68] { margin-left: auto; font-size: .78rem; padding: 10px 12px; min-height: 44px; }
    .desktop-nav[b-7x30zcme68] { display: none; }
    .mobile-menu[b-7x30zcme68] { display: block; }
    .mobile-menu summary[b-7x30zcme68] { width: 32px; min-height: 44px; display: grid; place-items: center; cursor: pointer; font-size: 24px; list-style: none; }
    .mobile-menu summary[b-7x30zcme68]::-webkit-details-marker { display: none; }
    .mobile-menu nav[b-7x30zcme68] { position: absolute; top: 100%; left: 0; right: 0; display: grid; padding: 12px 20px; background: var(--cream); border: 1px solid var(--line); box-shadow: 0 12px 24px #16233a14; }
    .mobile-menu nav a[b-7x30zcme68] { padding: 12px 0; min-height: 48px; }
    .hero[b-7x30zcme68], .demonstration[b-7x30zcme68] { grid-template-columns: 1fr; gap: 30px; padding-block: 40px; }
    .hero h1[b-7x30zcme68] { font-size: clamp(2.5rem, 10vw, 3.3rem); }
    .hero .lead[b-7x30zcme68] { font-size: 1.1rem; }
    .hero-copy > p:not(.eyebrow)[b-7x30zcme68] { font-size: .97rem; }
    .hero-copy > .small-copy[b-7x30zcme68] { font-size: .8rem !important; }
    .actions[b-7x30zcme68] { gap: 10px; }
    .actions .route-button[b-7x30zcme68] { flex: 1 1 auto; padding-inline: 14px; font-size: .85rem; }
    .visual-features[b-7x30zcme68], .closing[b-7x30zcme68], .route-comparison[b-7x30zcme68] { padding-block: 40px; }
    .comparison-grid[b-7x30zcme68] { grid-template-columns: 1fr; gap: 22px; }
    .comparison-grid figure[b-7x30zcme68] { padding: 18px; }
    .feature-card[b-7x30zcme68] { display: block; padding: 24px 20px; }
    .feature-heading[b-7x30zcme68] { align-items: center; }
    .feature-heading h3[b-7x30zcme68] { font-size: 1.4rem; }
    .feature-card > :last-child[b-7x30zcme68] { margin-top: 24px !important; }
    .supporting-benefits[b-7x30zcme68] { grid-template-columns: 1fr; gap: 20px; margin-top: 28px; }
    .supporting-benefits article[b-7x30zcme68] { padding: 20px; }
    .plan-note[b-7x30zcme68] { margin-top: 24px !important; }
    .footer-top[b-7x30zcme68] { flex-direction: column; gap: 18px; }
    .footer-bottom[b-7x30zcme68] { flex-direction: column; }
    .route-footer nav[b-7x30zcme68] { gap: 8px 20px; }
}
@media (max-width: 359px) {
    .navigation[b-7x30zcme68] { gap: 6px; }
    .navigation > .route-button[b-7x30zcme68] { padding-inline: 8px; }
}
/* _content/BOS.Shared/Pages/Register.razor.rz.scp.css */
.login-shell[b-zs01dghidf] {
    background:
        radial-gradient(circle at top, rgba(13, 110, 253, 0.18), transparent 35%),
        linear-gradient(180deg, #eef4ff 0%, #f8fbff 100%);
}

.login-card[b-zs01dghidf] {
    backdrop-filter: blur(10px);
}

.login-brand-link[b-zs01dghidf] {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    justify-content: center;
    color: #12343b;
    text-decoration: none;
}

.login-brand-logo[b-zs01dghidf] {
    display: block;
    width: min(15rem, 70vw);
    height: auto;
}

.login-brand-mark[b-zs01dghidf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 0.55rem;
    background: #216b62;
    color: #fff;
    font-weight: 800;
}

.login-brand-name[b-zs01dghidf] {
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1;
}
/* _content/BOS.Shared/Pages/Reports.razor.rz.scp.css */
.reports-tabs[b-h49jaakae2] {
    display: flex;
    gap: .5rem;
    overflow-x: auto;
    padding-block: .25rem;
    scrollbar-width: thin;
}

.reports-tab[b-h49jaakae2] {
    border: 1px solid var(--bs-border-color);
    border-radius: 999px;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    text-decoration: none;
    flex: 0 0 auto;
    min-height: 2.5rem;
    padding: .5rem .9rem;
    font-weight: 600;
}

.reports-tab[aria-current="page"][b-h49jaakae2] {
    border-color: var(--bs-primary);
    background: var(--bs-primary);
    color: #fff;
}

.reports-filters[b-h49jaakae2] {
    display: grid;
    grid-template-columns: repeat(6, minmax(9rem, 1fr));
    gap: .75rem;
    width: 100%;
    align-items: end;
}

.reports-filter[b-h49jaakae2] {
    min-width: 0;
}

.reports-filter label[b-h49jaakae2] {
    display: block;
    margin-bottom: .25rem;
    font-size: .78rem;
    font-weight: 700;
}

.reports-filter--apply[b-h49jaakae2] {
    display: flex;
    gap: .5rem;
}

.reports-filter--apply .btn[b-h49jaakae2] {
    flex: 1;
}

.reports-meta[b-h49jaakae2] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem 1rem;
    margin: -.5rem 0 1rem;
    color: var(--bs-secondary-color);
    font-size: .82rem;
}

.reports-table-wrap[b-h49jaakae2] {
    overflow-x: auto;
}

.reports-table[b-h49jaakae2] {
    width: 100%;
    border-collapse: collapse;
}

.reports-table th[b-h49jaakae2],
.reports-table td[b-h49jaakae2] {
    border-bottom: 1px solid var(--bs-border-color);
    padding: .75rem;
    text-align: left;
    vertical-align: top;
}

.reports-table th[b-h49jaakae2] {
    color: var(--bs-secondary-color);
    font-size: .75rem;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.reports-table td[data-align="number"][b-h49jaakae2],
.reports-table th[data-align="number"][b-h49jaakae2] {
    text-align: right;
    white-space: nowrap;
}

.reports-detail-link[b-h49jaakae2] {
    font-weight: 650;
    text-decoration-thickness: .08em;
    text-underline-offset: .16em;
}

.reports-note[b-h49jaakae2] {
    border-left: .25rem solid var(--bs-info);
    background: rgba(var(--bs-info-rgb), .08);
    border-radius: .5rem;
    padding: .85rem 1rem;
    margin-bottom: 1rem;
}

.reports-trust[b-h49jaakae2] {
    border-top: 1px solid var(--bs-border-color);
    margin-top: 2rem;
    padding-top: 1.25rem;
}

.reports-trust ul[b-h49jaakae2] {
    margin-bottom: 0;
}

@media (max-width: 1199.98px) {
    .reports-filters[b-h49jaakae2] {
        grid-template-columns: repeat(3, minmax(10rem, 1fr));
    }
}

@media (max-width: 767.98px) {
    .reports-filters[b-h49jaakae2] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .reports-table thead[b-h49jaakae2] {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        white-space: nowrap;
    }

    .reports-table[b-h49jaakae2],
    .reports-table tbody[b-h49jaakae2],
    .reports-table tr[b-h49jaakae2],
    .reports-table td[b-h49jaakae2] {
        display: block;
        width: 100%;
    }

    .reports-table tr[b-h49jaakae2] {
        border-bottom: 1px solid var(--bs-border-color);
        padding: .55rem 0;
    }

    .reports-table td[b-h49jaakae2],
    .reports-table td[data-align="number"][b-h49jaakae2] {
        display: grid;
        grid-template-columns: minmax(7.5rem, 42%) 1fr;
        gap: .75rem;
        border: 0;
        padding: .3rem .75rem;
        text-align: left;
        white-space: normal;
    }

    .reports-table td[b-h49jaakae2]::before {
        content: attr(data-label);
        color: var(--bs-secondary-color);
        font-size: .75rem;
        font-weight: 700;
        text-transform: uppercase;
    }
}

@media (max-width: 480px) {
    .reports-filters[b-h49jaakae2] {
        grid-template-columns: 1fr;
    }

    .reports-filter--apply[b-h49jaakae2] {
        position: sticky;
        bottom: .5rem;
        z-index: 2;
        background: var(--bs-body-bg);
        padding-block: .25rem;
    }
}
/* _content/BOS.Shared/Pages/SchedulingAssistant.razor.rz.scp.css */
@media (max-width: 575.98px) {
    .scheduling-tools .gc-list__row[b-25phc57n8k] {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr);
    }

    .scheduling-tools .gc-list__row > :last-child[b-25phc57n8k] {
        grid-column: 2;
        justify-content: flex-start !important;
    }

    .scheduling-tools .btn[b-25phc57n8k] {
        overflow-wrap: normal;
        word-break: normal;
    }
}
/* _content/BOS.Shared/Pages/Shifts.razor.rz.scp.css */
@media (max-width: 767.98px) {
    .bos-mobile-filter-panel .bos-mobile-filter-panel__body[b-3er9i5llmk] {
        display: none;
    }

    .bos-mobile-filter-panel.is-open .bos-mobile-filter-panel__body[b-3er9i5llmk] {
        display: block;
    }
}
/* _content/BOS.Shared/Pages/StartSimplePage.razor.rz.scp.css */
.simple-header[b-mj9rikvnru], .simple-footer[b-mj9rikvnru] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    padding-block: 1rem;
}

.simple-hero[b-mj9rikvnru], .simple-grid[b-mj9rikvnru], .simple-steps[b-mj9rikvnru] {
    display: grid;
    gap: clamp(1.5rem, 4vw, 3rem);
    align-items: center;
}

.simple-hero h1[b-mj9rikvnru] {
    font-size: clamp(2.1rem, 5vw, 3.9rem);
    text-wrap: balance;
    margin-block: .75rem 1rem;
}

.simple-hero figure[b-mj9rikvnru] { margin: 0; }
.simple-hero img[b-mj9rikvnru] { border: 1px solid var(--gc-border); border-radius: .75rem; }
.simple-hero figcaption[b-mj9rikvnru] { font-size: .875rem; margin-top: .5rem; }
.simple-grid h2[b-mj9rikvnru], .simple-start h2[b-mj9rikvnru] { font-size: clamp(1.6rem, 3vw, 2.25rem); }
.simple-grid ul[b-mj9rikvnru] { margin-bottom: 0; padding-inline-start: 1.25rem; }
.simple-grid li + li[b-mj9rikvnru] { margin-top: .5rem; }
.simple-steps[b-mj9rikvnru] { align-items: start; padding-inline-start: 1.25rem; margin: 1.25rem 0 0; }
.simple-steps strong[b-mj9rikvnru] { display: block; }
.simple-price[b-mj9rikvnru] { font-size: 2rem; font-weight: 700; }
.simple-price small[b-mj9rikvnru] { font-size: 1rem; font-weight: 400; }
.simple-footer[b-mj9rikvnru] { justify-content: flex-start; font-size: .875rem; }

@media (min-width: 800px) {
    .simple-hero[b-mj9rikvnru] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .simple-grid[b-mj9rikvnru] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .simple-steps[b-mj9rikvnru] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* _content/BOS.Shared/Pages/Subscribe.razor.rz.scp.css */
.subscription-gate-page[b-1dxv3rphoi] {
    max-width: 72rem;
    margin: 0 auto;
    padding: 2rem 0 3rem;
}

.subscription-gate-hero[b-1dxv3rphoi] {
    max-width: 46rem;
    margin-bottom: 1.5rem;
}

.subscription-gate-kicker[b-1dxv3rphoi] {
    color: var(--gc-primary);
    font-size: 0.78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.subscription-gate-hero h1[b-1dxv3rphoi] {
    margin: 0.35rem 0 0.75rem;
    color: #111827;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.15;
}

.subscription-gate-hero p[b-1dxv3rphoi] {
    margin: 0;
    color: #64748b;
    font-size: 1rem;
}

.subscription-gate-toolbar[b-1dxv3rphoi] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.subscription-plan-grid[b-1dxv3rphoi] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr));
    gap: 1rem;
}

.subscription-plan-panel[b-1dxv3rphoi] {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.subscription-plan-panel h2[b-1dxv3rphoi] {
    margin: 0.1rem 0 0;
    color: #111827;
    font-size: 1.05rem;
    font-weight: 800;
}

.subscription-plan-panel p[b-1dxv3rphoi] {
    min-height: 4rem;
    margin: 0.85rem 0;
    color: #64748b;
    font-size: 0.875rem;
}

.subscription-plan-panel ul[b-1dxv3rphoi] {
    margin: 0;
    padding-left: 1.1rem;
    color: #475569;
    font-size: 0.8125rem;
}

.subscription-plan-panel li + li[b-1dxv3rphoi] {
    margin-top: 0.35rem;
}

.subscription-plan-eyebrow[b-1dxv3rphoi] {
    color: var(--gc-primary);
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
}

.subscription-plan-price[b-1dxv3rphoi] {
    flex: 0 0 auto;
    text-align: right;
    white-space: nowrap;
}

.subscription-plan-price span[b-1dxv3rphoi] {
    display: block;
    color: #111827;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1;
}

.subscription-plan-price small[b-1dxv3rphoi] {
    color: #64748b;
    font-size: 0.75rem;
}

.subscription-plan-note[b-1dxv3rphoi] {
    min-height: 2.25rem;
    color: #b45309;
    font-size: 0.78rem;
}

@media (max-width: 575.98px) {
    .subscription-gate-page[b-1dxv3rphoi] {
        padding-top: 1rem;
    }

    .subscription-gate-hero h1[b-1dxv3rphoi] {
        font-size: 1.55rem;
    }

    .subscription-gate-toolbar[b-1dxv3rphoi] {
        align-items: stretch;
        justify-content: flex-start;
        flex-direction: column;
    }
}
/* _content/BOS.Shared/Pages/SubscribeSuccess.razor.rz.scp.css */
.subscription-success-page[b-0h953vcohn] {
    min-height: calc(100vh - 10rem);
    display: grid;
    place-items: center;
    padding: 2rem 0 3rem;
}

.subscription-success-panel[b-0h953vcohn] {
    width: min(100%, 42rem);
    padding: 2rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 36px rgba(15, 23, 42, 0.08);
}

.subscription-success-kicker[b-0h953vcohn] {
    color: var(--gc-primary);
    font-size: 0.78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.subscription-success-panel h1[b-0h953vcohn] {
    margin: 0.35rem 0 0.75rem;
    color: #111827;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.15;
}

.subscription-success-panel p[b-0h953vcohn] {
    max-width: 34rem;
    margin: 0;
    color: #64748b;
    font-size: 1rem;
}

.subscription-success-actions[b-0h953vcohn] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.5rem;
}

@media (max-width: 575.98px) {
    .subscription-success-panel[b-0h953vcohn] {
        padding: 1.25rem;
    }

    .subscription-success-panel h1[b-0h953vcohn] {
        font-size: 1.55rem;
    }
}
/* _content/BOS.Shared/Pages/Tips.razor.rz.scp.css */
.tips-link-result[b-nwq6w9ulm9] {
    padding: 0.85rem;
    border-radius: var(--gc-radius);
    background: var(--gc-surface-muted);
}

.tips-history-header[b-nwq6w9ulm9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.tips-history-filter[b-nwq6w9ulm9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.tips-history-filter label[b-nwq6w9ulm9] {
    margin: 0;
    font-size: 0.8rem;
    font-weight: 600;
}

.tips-history-filter .form-control[b-nwq6w9ulm9] {
    width: 8rem;
}

.tips-history-table th[b-nwq6w9ulm9] {
    white-space: nowrap;
}

.tips-row-actions[b-nwq6w9ulm9] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    white-space: nowrap;
}

@media (max-width: 767.98px) {
    .tips-history-filter[b-nwq6w9ulm9] {
        width: 100%;
        align-items: stretch;
        flex-wrap: wrap;
    }

    .tips-history-filter label[b-nwq6w9ulm9] {
        flex-basis: 100%;
    }

    .tips-history-filter .form-control[b-nwq6w9ulm9] {
        flex: 1 1 8rem;
        width: auto;
        min-height: 3rem;
    }

    .tips-history-filter .btn[b-nwq6w9ulm9],
    .tips-row-actions .btn[b-nwq6w9ulm9] {
        min-height: 3rem;
    }
}
/* _content/BOS.Shared/Pages/Waivers.razor.rz.scp.css */
.waiver-template-selected[b-fi4gkagon0] {
    background: rgba(var(--primary-rgb), .08);
}

.waiver-service-grid[b-fi4gkagon0] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: .75rem;
}

.waiver-preview[b-fi4gkagon0] {
    min-height: 12rem;
    max-height: 34rem;
    overflow-y: auto;
    white-space: pre-wrap;
    line-height: 1.65;
}
