/*
 * Unified BoatShowAvenue stylesheet
 * Application styles are followed by portable UX primitives and compatibility overrides.
 */

:root {
    /* Runtime values are emitted from config/ui-design-legend.json. */
    --color-brand-navy: #0c2d55;
    --color-brand-deep: #071f38;
    --color-brand-ocean: #0e72aa;
    --color-brand-ocean-hover: #095a88;
    --color-brand-ocean-soft: #e6f3f9;
    --color-brand-powder: #a9ddf3;
    --color-accent-coral: #e75f73;
    --color-accent-coral-hover: #c9485e;
    --color-accent-coral-soft: #fff0f3;
    --color-surface-canvas: #ffffff;
    --color-surface-page: #f5f8fa;
    --color-surface-subtle: #f1f5f7;
    --color-surface-muted: #e8f0f4;
    --color-text-primary: #183247;
    --color-text-strong: #0a2744;
    --color-text-secondary: #5b6f7f;
    --color-border-subtle: #e2eaf0;
    --color-border-default: #cfdce5;
    --color-border-strong: #9fb2c0;
    --color-focus: #147db8;
    --color-success: #18794e;
    --color-warning: #9a5b08;
    --color-danger: #bf3f55;
    --font-family-sans: "Plus Jakarta Sans", "Segoe UI", Arial, sans-serif;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --font-size-h1: clamp(2rem, 3.4vw, 3.5rem);
    --font-size-h2: clamp(1.625rem, 2.3vw, 2.25rem);
    --font-size-h3: clamp(1.25rem, 1.5vw, 1.5rem);
    --font-size-h4: 1.0625rem;
    --font-size-body: 0.9375rem;
    --font-size-body-sm: 0.875rem;
    --line-height-heading: 1.14;
    --line-height-body: 1.4;
    --line-height-compact: 1.3;
    --letter-spacing-display: -0.035em;
    --radius-control: 0.375rem;
    --radius-card: 0.5rem;
    --radius-panel: 0.25rem;
    --radius-round: 999px;
    --size-control-md: 2.75rem;
    --layout-content: 75rem;
    --layout-gutter: clamp(1rem, 3.6vw, 3.75rem);
    --layout-grid-gap: clamp(0.875rem, 1.6vw, 1.5rem);
    --shadow-xs: 0 1px 2px rgba(7, 31, 56, 0.06);
    --shadow-card: 0 8px 24px rgba(7, 31, 56, 0.08);
    --shadow-card-hover: 0 16px 38px rgba(7, 31, 56, 0.13);
    --shadow-popover: 0 20px 50px rgba(7, 31, 56, 0.18);
    --shadow-focus: 0 0 0 3px rgba(20, 125, 184, 0.24);
    --motion-duration-fast: 120ms;
    --motion-duration-base: 180ms;
    --motion-duration-slow: 280ms;
    --motion-ease-standard: cubic-bezier(0.2, 0, 0, 1);
    --motion-lift: -2px;

    /* Compatibility aliases for established templates and components. */
    --bsa-navy: var(--color-brand-navy);
    --bsa-deep-blue: var(--color-brand-deep);
    --bsa-pink: var(--color-accent-coral);
    --bsa-red: var(--color-danger);
    --bsa-white: var(--color-surface-canvas);
    --bsa-page: var(--color-surface-page);
    --bsa-panel: var(--color-surface-subtle);
    --bsa-border: var(--color-border-default);
    --bsa-text: var(--color-text-primary);
    --bsa-muted: var(--color-text-secondary);
    --bsa-soft-accent: var(--color-accent-coral-soft);
    --bsa-shadow: var(--shadow-card);
    --bsa-backend-control-radius: var(--radius-control);
    --bsa-backend-panel-radius: var(--radius-panel);
    --bsa-backend-space-xs: 0.5rem;
    --bsa-backend-space-sm: 0.75rem;
    --bsa-backend-space-md: 1rem;
    --bsa-backend-space-lg: 1.25rem;
    --bsa-backend-space-xl: 1.5rem;
}

.nowrap {
    white-space: nowrap;
}

.auth-page {
    display: grid;
    place-items: start center;
    min-height: 62vh;
}

.auth-page:not(.auth-page--wide) {
    max-width: 560px !important;
}

.auth-panel {
    width: 100%;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 18px 42px rgba(12, 42, 68, .08);
}
.auth-panel__intro {
    margin: 0 0 18px;
}
.auth-panel__intro h1 {
    margin: 0 0 8px;
    color: var(--bsa-navy);
    font-size: clamp(20px, 2vw, 28px);
    line-height: 1.08;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.auth-panel__intro p {
    margin: 0;
    color: var(--bsa-muted);
}
.auth-form,
.dashboard-form {
    display: grid;
    gap: 20px;
}
.auth-form--grid,
.dashboard-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.auth-form__full,
.dashboard-form__full,
.dashboard-form .btn {
    grid-column: 1 / -1;
}
.dashboard-form__password-grid {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
:is(.sell-listing-form, .signup-form) .field--required {
    position: relative;
}
:is(.sell-listing-form, .signup-form) .field--required > span:first-child {
    padding-right: 88px;
}
.signup-form .field--required > label:first-child {
    padding-right: 88px;
}
:is(.sell-listing-form, .signup-form) .field--required > .field-required,
.account-type-picker--required > .field-required {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0;
    color: var(--bsa-red);
    line-height: inherit;
    font-size: 8px;
    letter-spacing: 0.5px;
    line-height: 16px;
}
.account-type-picker--required {
    position: relative;
}
.signup-form .field-required[hidden] {
    display: none;
}
.password-input {
    position: relative;
}
.field .password-input > input {
    padding-right: 46px;
}
.password-visibility-toggle {
    position: absolute;
    top: 50%;
    right: 0;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    transform: translateY(-50%);
    border: 0;
    border-radius: var(--radius-control);
    background: transparent;
    color: var(--color-text-secondary);
    line-height: 1;
}
.password-visibility-toggle:hover {
    background: var(--color-surface-muted);
    color: var(--color-text-primary);
}
.password-visibility-toggle:focus-visible {
    outline: 2px solid var(--color-focus);
    outline-offset: 1px;
}
.password-visibility-toggle svg {
    width: 18px;
    height: 18px;
}
.password-visibility-toggle .is-hidden {
    display: none;
}
.listing-validation-stack {
    position: fixed;
    left: 24px;
    bottom: 24px;
    z-index: 95;
    display: flex;
    flex-direction: column;
    gap: 2px;
    width: min(300px, calc(100vw - 48px));
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-top: 2px;
}
.listing-validation-notice {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: center;
    gap: 0px;
    width: 100%;
    padding: 5px;
    border: 1px solid #f0b9b9;
    border-radius: 8px;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    cursor: pointer;
    font: inherit;
    font-weight: 800;
    text-align: left;
    font-size: 12px;
}
.listing-validation-notice:hover,
.listing-validation-notice:focus-visible {
    border-color: var(--bsa-red);
    outline: none;
    transform: translateY(-1px);
}
.listing-validation-notice__icon {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border-radius: 6px;
    background: #fff0f0;
    color: var(--bsa-red);
    font-size: 17px;
    line-height: 1;
}
.sell-listing-form [aria-invalid="true"] {
    border-color: var(--bsa-red);
    box-shadow: 0 0 0 2px rgba(210, 52, 52, .1);
}
@media (max-width: 640px) {
    .listing-validation-stack {
        right: 12px;
        bottom: 12px;
        left: 12px;
        width: auto;
        max-height: min(60vh, calc(100vh - 24px));
    }
}
.sell-listing-form {
    gap: 20px;
}
.sell-form-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 6px;
    border: 1px solid var(--bsa-border);
    border-radius: 10px;
    background: #f4f8fb;
}
.sell-form-tabs__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 18px;
    border: 0;
    border-radius: 0.25rem;
    background: transparent;
    color: var(--bsa-muted);
    font-size: 14px;
    font-weight: 800;
}
.sell-form-tabs__button.is-active {
    background: var(--bsa-white);
    color: var(--bsa-navy);
    box-shadow: 0 8px 18px rgba(12, 42, 68, .08);
}
.sell-form-panel {
    padding: 22px;
    border: 1px solid var(--bsa-border);
    border-radius: 10px;
    background: var(--bsa-white);
}
.sell-form-panel__intro {
    margin-bottom: 18px;
}
.sell-form-panel__intro-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}
.sell-form-panel__intro h2 {
    margin: 0 0 6px;
    font-size: 1.1rem;
}
.sell-form-panel__intro p {
    margin: 0;
    color: var(--bsa-muted);
}
.listing-status-toggle {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 10px;
    flex: 0 0 auto;
    min-height: 34px;
    cursor: pointer;
    user-select: none;
}
.listing-status-toggle__input {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}
.listing-status-toggle__text {
    color: #c4474f;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .04em;
    line-height: 1;
    text-transform: uppercase;
}
.listing-status-toggle__listed {
    display: none;
}
.listing-status-toggle__unlisted {
    display: inline;
}
.listing-status-toggle__track {
    position: relative;
    display: block;
    width: 46px;
    height: 26px;
    border-radius: 0.25rem;
    background: #c4474f;
    transition: background .16s ease, box-shadow .16s ease;
}
.listing-status-toggle__track::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    width: 18px;
    height: 18px;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    transition: transform .16s ease;
}
.listing-status-toggle__input:checked ~ .listing-status-toggle__text {
    color: #14865c;
}
.listing-status-toggle__input:checked ~ .listing-status-toggle__text .listing-status-toggle__listed {
    display: inline;
}
.listing-status-toggle__input:checked ~ .listing-status-toggle__text .listing-status-toggle__unlisted {
    display: none;
}
.listing-status-toggle__input:checked ~ .listing-status-toggle__track {
    background: #14865c;
}
.listing-status-toggle__input:checked ~ .listing-status-toggle__track::before {
    transform: translateX(20px);
}
.listing-status-toggle__input:focus-visible ~ .listing-status-toggle__track {
    outline: 3px solid rgba(18, 95, 126, .2);
    outline-offset: 3px;
}
.unit-switch {
    display: inline-flex;
    align-items: center;
    gap: 0px;
    margin: 0;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f4f8fb;
    text-transform: uppercase;
    padding: 4px;
}
.unit-switch__label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.unit-switch__option {
    position: relative;
    cursor: pointer;
    line-height: 1;
}
.unit-switch__option input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}
.unit-switch__option span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 0 12px;
    border-radius: 0.25rem;
    color: var(--bsa-muted);
    font-size: 10px;
    letter-spacing: 1px;
    font-weight: 800;
    white-space: nowrap;
    transition: background .16s ease, color .16s ease, box-shadow .16s ease;
}
.unit-switch__option input:checked + span {
    background: var(--bsa-navy);
    color: var(--bsa-white);
    box-shadow: 0 8px 18px rgba(12, 42, 68, .08);
}
.unit-switch__option input:focus-visible + span {
    outline: 3px solid rgba(236, 98, 113, .18);
    outline-offset: 2px;
}
.unit-switch[disabled],
.unit-switch[disabled] .unit-switch__option,
.unit-switch[disabled] .unit-switch__option input {
    cursor: default;
}
.listing-control-stack {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 10px;
}
.listing-status-switch .unit-switch__option input[value="0"]:checked + span {
    background: #555555;
}
.listing-status-switch .unit-switch__option input[value="1"]:checked + span {
    background: #14865c;
}
.listing-approval-switch .unit-switch__option input[value="pending"]:checked + span {
    background: #327cd1;
}
.listing-approval-switch .unit-switch__option input[value="approved"]:checked + span {
    background: #14865c;
}
.listing-approval-switch .unit-switch__option input[value="rejected"]:checked + span {
    background: #be2534;
}
.listing-review-notice {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 12px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}
.listing-review-notice svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    margin-top: 1px;
}
.listing-approval-panel {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    width: 100%;
    margin-bottom: var(--bsa-backend-space-lg);
    padding: 18px;
    border-left: 4px solid #327cd1;
}
.listing-approval-panel--error {
    border-left-color: #be2534;
}
.listing-approval-panel__icon {
    display: grid;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 50%;
    background: rgba(50, 124, 209, .1);
    color: #327cd1;
}
.listing-approval-panel--error .listing-approval-panel__icon {
    background: rgba(190, 37, 52, .1);
    color: #be2534;
}
.listing-approval-panel__icon svg {
    width: 18px;
    height: 18px;
}
.listing-approval-panel__copy {
    flex: 1 1 auto;
    min-width: 0;
}
.listing-approval-panel__eyebrow,
.listing-approval-panel__copy h2,
.listing-approval-panel__copy > p:last-child {
    margin: 0;
}
.listing-approval-panel__eyebrow {
    margin-bottom: 4px;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.listing-approval-panel__copy h2 {
    color: var(--bsa-navy);
    font-size: 16px;
    line-height: 1.25;
}
.listing-approval-panel__copy > p:last-child {
    margin-top: 6px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.5;
}
.listing-approval-panel__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}
.listing-approval-panel .listing-approval-panel__action--approve,
.listing-approval-panel .listing-approval-panel__action--approve:hover {
    border-color: #14865c;
    background: #14865c;
    color: var(--bsa-white);
}
.listing-approval-panel .listing-approval-panel__action--reject,
.listing-approval-panel .listing-approval-panel__action--reject:hover {
    border-color: #be2534;
    background: #be2534;
    color: var(--bsa-white);
}
@media (max-width: 700px) {
    .listing-approval-panel {
        flex-wrap: wrap;
    }
    .listing-approval-panel__copy {
        flex-basis: calc(100% - 48px);
    }
    .listing-approval-panel__actions {
        flex-basis: 100%;
        justify-content: flex-start;
        padding-left: 48px;
    }
}
.sell-form-panel__grid {
    margin: 0;
}
.field-note {
    display: block;
    margin-top: 2px;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.45;
}
.js-password-rule-status:empty,
.js-password-confirm-status:empty {
    display: none;
}
.field-note--muted {
    color: var(--bsa-muted);
}
.field-note--success {
    color: #227a4f;
}
.field-note--error {
    color: #c2344f;
}
.password-requirements-card {
    padding: 12px 14px;
    border: 1px solid #d9e6ef;
    border-radius: 0.25rem;
    background: #f5f7fa;
}
.password-requirements-card p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.55;
}

.sell-edit-toolbar__back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--bsa-pink);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}
.sell-edit-toolbar__back:hover {
    text-decoration: underline;
}
.sell-edit-toolbar__back svg {
    width: 16px;
    height: 16px;
}
.sell-edit-toolbar__id {
    margin-left: auto;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1;
    text-align: right;
}
.sell-edit-toolbar__id strong {
    color: var(--bsa-navy);
}
.media-upload-field {
    display: grid;
    gap: 12px;
    margin-bottom: 10px;
}
.media-upload-field__head {
    display: grid;
    gap: 4px;
}
.media-upload-field__head span {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}
.media-upload-field__head small,
.media-upload-field__empty {
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.5;
}
.media-upload-field__tiles {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: 12px;
}
.media-upload-tile {
    position: relative;
    display: grid;
    gap: 0px;
    height: 100%;
    min-width: 0;
    _padding: 12px;
    border: 1px solid #d9e6ef;
    border-radius: 10px;
    background: #f8fbfd;
    box-shadow: 0 8px 20px rgba(12, 42, 68, .05);
    overflow: hidden;
}
.media-upload-tile.is-dragging {
    opacity: .72;
    box-shadow: 0 18px 30px rgba(12, 42, 68, .12);
}
.icon-btn.media-upload-tile__remove {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 2;
    width: 30px;
    height: 30px;
    min-width: 30px;
    min-height: 30px;
    padding: 0;
}
.icon-btn.media-upload-tile__remove svg {
    width: 14px;
    height: 14px;
}
.media-upload-tile__preview {
    display: grid;
    place-items: center;
    min-height: 116px;
    overflow: hidden;
    border-radius: 0.25rem;
    background: linear-gradient(180deg, #f1f6fa 0%, #ddeaf2 100%);
}
.media-upload-tile__preview img {
    width: 100%;
    height: 116px;
    object-fit: cover;
    display: block;
}
.media-upload-tile__preview--file,
.media-upload-tile__preview > .media-upload-tile__preview--file {
    width: 100%;
    min-height: 116px;
    display: grid;
    place-items: center;
    color: var(--bsa-navy);
}
.media-upload-tile__preview--file svg,
.media-upload-tile__preview > .media-upload-tile__preview--file svg {
    width: 30px;
    height: 30px;
}
.media-upload-tile__meta {
    display: grid;
    gap: 3px;
    min-width: 0;
    padding: 10px;
}
.media-upload-tile__meta strong,
.media-upload-tile__meta small {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.media-upload-tile__meta strong {
    color: var(--bsa-navy);
    font-size: 14px;
}
.media-upload-tile__meta small {
    color: var(--bsa-muted);
    font-size: 12px;
}
.media-upload-tile__meta-new {
    color: var(--bsa-red);
}
.media-upload-tile__meta-size::before {
    content: " · ";
}
.media-upload-tile__drag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: end;
    color: var(--bsa-muted);
    cursor: grab;
    padding: 5px;
}
.media-upload-tile__drag svg {
    width: 16px;
    height: 16px;
}
.media-upload-field__picker {
    display: grid;
    place-items: center;
    align-content: center;
    min-width: 0;
    min-height: 174px;
    height: 100%;
    padding: 20px;
    border: 1px dashed #bfd4e1;
    border-radius: 10px;
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 800;
    text-align: center;
    cursor: pointer;
    transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.media-upload-field__picker:hover,
.media-upload-field__picker:focus-within {
    border-color: var(--bsa-navy);
    background: #f1f7fb;
    box-shadow: 0 8px 20px rgba(12, 42, 68, .07);
}
.media-upload-field__picker[hidden] {
    display: none;
}
.field .media-upload-field__picker > span,
.media-upload-field__picker > span {
    display: grid;
    place-items: center;
    width: 100%;
    gap: 8px;
    white-space: normal;
}
.media-upload-field__picker input {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.media-upload-field__picker svg {
    width: 45px;
    height: 45px;
}
.btn.media-upload-queue-trigger {
    position: fixed;
    z-index: 10002;
    bottom: 24px;
    left: 24px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    line-height: 1;
    padding: 10px 14px;
    border-color: rgba(12, 42, 68, .14);
    background: var(--bsa-white);
    color: var(--bsa-navy);
    box-shadow: 0 12px 32px rgba(5, 24, 40, .22), 0 3px 10px rgba(5, 24, 40, .12);
}
.btn.media-upload-queue-trigger:hover,
.btn.media-upload-queue-trigger:focus-visible {
    border-color: rgba(12, 42, 68, .28);
    background: #f8fbfd;
    color: var(--bsa-navy);
    box-shadow: 0 16px 38px rgba(5, 24, 40, .25), 0 4px 12px rgba(5, 24, 40, .14);
}
.btn.media-upload-queue-trigger[disabled] {
    cursor: wait;
    opacity: .9;
}
.media-upload-queue-trigger svg {
    width: 17px;
    height: 17px;
}
.media-upload-queue-trigger > span:first-of-type {
    position: relative;
    top: -1px;
}
.media-upload-queue-trigger__count {
    display: inline-grid;
    place-items: center;
    min-width: 22px;
    height: 22px;
    padding: 0 7px;
    border-radius: 999px;
    background: var(--bsa-panel);
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 800;
}
.media-upload-queue {
    position: fixed;
    z-index: 10001;
    bottom: 80px;
    left: 24px;
    width: min(450px, calc(100vw - 48px));
    margin: 0;
}
.media-upload-queue__dialog {
    display: grid;
    gap: 20px;
    width: 100%;
    max-height: calc(100vh - 112px);
    max-height: calc(100dvh - 112px);
    padding: 18px;
    overflow-y: auto;
    border: 1px solid var(--bsa-border);
    border-radius: 12px;
    background: var(--bsa-white);
    box-shadow: 0 18px 48px rgba(5, 24, 40, .24);
}
.media-upload-queue-trigger[hidden],
.media-upload-queue[hidden],
.media-upload-current[hidden],
.media-upload-pending[hidden],
.media-upload-error[hidden] {
    display: none;
}
.media-upload-queue.is-overlay {
    inset: 0;
    display: grid;
    place-items: center;
    width: auto;
    padding: 24px;
    background: rgba(5, 24, 40, .34);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
.media-upload-queue.is-overlay .media-upload-queue__dialog {
    position: relative;
    width: min(450px, 100%);
    max-height: calc(100vh - 48px);
    max-height: calc(100dvh - 48px);
    box-shadow: 0 24px 70px rgba(5, 24, 40, .3);
}
body.has-media-upload-overlay {
    overflow: hidden;
}
body.has-media-upload-overlay .media-upload-queue-trigger {
    display: none;
}
.media-upload-queue__head,
.media-upload-current__meta,
.media-upload-error {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}
.media-upload-queue__head > div {
    display: grid;
    gap: 4px;
}
.media-upload-queue__head strong,
.media-upload-pending > strong {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--bsa-navy);
    font-size: 14px;
}
.media-upload-queue__head strong svg {
    width: 17px;
    height: 17px;
}
.media-upload-queue__head span,
.media-upload-current small,
.media-upload-current__meta span,
.media-upload-pending__item span,
.media-upload-pending__item small {
    color: var(--bsa-muted);
    font-size: 12px;
}
.media-upload-queue__count {
    flex: 0 0 auto;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--bsa-panel);
    color: var(--bsa-navy) !important;
    font-weight: 800;
}
.media-upload-current {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    padding: 14px;
    border-radius: 10px;
    background: #f4f9fc;
}
.media-upload-current__body {
    display: grid;
    gap: 9px;
    min-width: 0;
}
.media-upload-current__meta {
    width: 100%;
    min-width: 0;
}
.media-upload-preview {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    overflow: hidden;
    border: 1px solid #d9e6ef;
    border-radius: 8px;
    background: var(--bsa-white);
}
.media-upload-current__preview {
    width: 64px;
    height: 64px;
}
.media-upload-preview__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 7px;
}
.media-upload-preview__image.is-image {
    object-fit: cover;
    padding: 0;
}
.media-upload-current__meta strong {
    display: block;
    flex: 1 1 0;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    color: var(--bsa-navy);
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.media-upload-current__meta span {
    flex: 0 1 auto;
    min-width: 0;
    max-width: 50%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.media-upload-progress {
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #dce8ef;
}
.media-upload-progress > span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: var(--color-success);
    transition: width .12s linear;
}
.media-upload-progress.is-processing > span {
    animation: media-upload-processing 1s ease-in-out infinite;
}
@keyframes media-upload-processing {
    0%, 100% { opacity: .45; }
    50% { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
    .media-upload-progress.is-processing > span {
        animation: none;
        opacity: .75;
    }
}
.media-upload-pending {
    display: grid;
    gap: 10px;
}
.media-upload-pending__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 8px;
}
.media-upload-pending__item {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid #d9e6ef;
    border-radius: 8px;
    background: #f8fbfd;
}
.media-upload-pending__details {
    display: grid;
    gap: 3px;
    min-width: 0;
}
.media-upload-pending__item strong {
    display: block;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    color: var(--bsa-navy);
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.media-upload-pending__item.is-error {
    border-color: rgba(190, 37, 56, .35);
    background: rgba(190, 37, 56, .05);
}
.media-upload-pending__remove {
    color: var(--bsa-red);
}
.media-upload-pending__remove svg {
    width: 16px;
    height: 16px;
}
.media-upload-error {
    padding: 12px;
    border-radius: 8px;
    background: rgba(190, 37, 56, .08);
    color: var(--bsa-red);
    font-size: 13px;
}
.media-upload-error .btn {
    flex: 0 0 auto;
}
.media-upload-error__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
}
@media (max-width: 640px) {
    .btn.media-upload-queue-trigger {
        bottom: 12px;
        left: 12px;
    }
    .media-upload-queue {
        bottom: 66px;
        left: 12px;
        width: calc(100vw - 24px);
    }
    .media-upload-queue__dialog {
        max-height: calc(100vh - 78px);
        max-height: calc(100dvh - 78px);
    }
    .media-upload-queue.is-overlay .media-upload-queue__dialog {
        width: 100%;
        max-height: calc(100vh - 24px);
        max-height: calc(100dvh - 24px);
    }
    .media-upload-queue.is-overlay { padding: 12px; }
    .media-upload-queue__head,
    .media-upload-current__meta,
    .media-upload-error {
        align-items: stretch;
        flex-direction: column;
    }
    .media-upload-current__meta span {
        max-width: 100%;
    }
    .media-upload-queue__count {
        align-self: flex-start;
    }
}
.js-media-upload-queue-form.is-uploading .media-upload-field__picker,
.js-media-upload-queue-form.is-uploading .media-upload-tile__remove,
.js-media-upload-queue-form.is-uploading .media-upload-tile__drag {
    opacity: .5;
    pointer-events: none;
}
.sell-feature-editor {
    display: grid;
    gap: 12px;
}
.sell-feature-editor__head {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
}
.sell-feature-editor__head span,
.field > span {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
}
.sell-feature-editor__head small {
    display: block;
    margin-top: 4px;
    color: var(--bsa-muted);
    font-size: 12px;
}
.sell-feature-rows {
    display: grid;
    gap: 12px;
}
.sell-feature-row {
    position: relative;
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid #d9e6ef;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.sell-feature-row input,
.sell-feature-row textarea {
    width: 100%;
    min-width: 0;
}
.sell-feature-row .icon-btn {
    justify-self: end;
}
.sell-array-editor {
    display: grid;
    gap: 12px;
}
.sell-array-rows {
    display: grid;
    gap: 12px;
}
.sell-array-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 14px;
    border: 1px solid #d9e6ef;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.sell-array-row input {
    width: 100%;
    min-width: 0;
}
.sell-array-row .icon-btn {
    justify-self: end;
}
.make-builder-picker {
    position: relative;
    display: block;
}
.make-builder-picker input {
    padding-right: 42px;
}
.make-builder-picker__icon {
    position: absolute;
    top: 50%;
    right: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--bsa-muted);
    transform: translateY(-50%);
    pointer-events: none;
}
.make-builder-picker__icon svg {
    width: 16px;
    height: 16px;
}
.make-builder-picker__menu {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 40;
    display: grid;
    gap: 2px;
    max-height: 240px;
    padding: 6px;
    overflow-y: auto;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 18px 32px rgba(12, 42, 68, .14);
}
.make-builder-picker__menu[hidden] {
    display: none;
}
.make-builder-picker__option,
.make-builder-picker__empty {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 0 12px;
    border: 0;
    border-radius: 0.25rem;
    background: transparent;
    color: var(--bsa-text);
    font-size: 14px;
    text-align: left;
}
.make-builder-picker__option {
    cursor: pointer;
}
.make-builder-picker__option:hover,
.make-builder-picker__option.is-active {
    background: #f4f8fb;
    color: var(--bsa-navy);
}
.make-builder-picker__empty {
    color: var(--bsa-muted);
}
.sell-form-submit {
    display: flex;
    justify-content: flex-end;
}
.account-type-picker {
    display: grid;
    gap: 8px;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}
.account-type-picker legend {
    margin: 0 0 1px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}
.account-type-options {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.account-type-option {
    position: relative;
    min-width: 0;
    cursor: pointer;
}
.account-type-option input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}
.account-type-option__body {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 104px;
    padding: 13px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
    text-align: center;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}
.account-type-option__body strong,
.account-type-option__body small {
    display: block;
    min-width: 0;
}
.account-type-option__body strong {
    font-size: 18px;
    line-height: 1.2;
}
.account-type-option__body small {
    margin-top: 5px;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.35;
}
.account-type-option:hover .account-type-option__body {
    border-color: #f1a4af;
    background: var(--bsa-white);
}
.account-type-option input:focus-visible + .account-type-option__body {
    outline: 3px solid rgba(236, 98, 113, .18);
    outline-offset: 2px;
}
.account-type-option input:checked + .account-type-option__body {
    border-color: var(--bsa-pink);
    background: var(--bsa-soft-accent);
    box-shadow: 0 10px 24px rgba(236, 98, 113, .14);
}
.auth-links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 18px;
    margin-top: 16px;
    font-weight: 750;
}
.auth-links a {
    color: var(--bsa-pink);
}
.dashboard-shell {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}
.dashboard-sidebar {
    display: grid;
    gap: 20px;
}
.dashboard-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--bsa-navy);
    font-weight: 900;
}
.dashboard-nav {
    display: grid;
    gap: 6px;
}
.dashboard-nav a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 0.25rem;
    color: var(--bsa-text);
    font-weight: 800;
}
.dashboard-nav a svg {
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
}
.dashboard-nav a.is-active,
.dashboard-nav a:hover {
    background: #edf6fb;
    color: var(--bsa-pink);
}
.dashboard-main {
    min-width: 0;
}

.dashboard-topbar h1 {
    margin: 3px 0 6px;
    color: var(--bsa-navy);
    font-size: clamp(20px, 2vw, 28px);
    line-height: 1.08;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.dashboard-topbar p {
    max-width: 760px;
    margin: 0;
    color: var(--bsa-muted);
}

.dashboard-user-pill__identity {
    display: grid;
    justify-items: start;
    gap: 6px;
    min-width: 0;
}
.dashboard-user-pill > span,
.dashboard-user-pill__identity > span {
    color: var(--bsa-navy);
    font-weight: 900;
}
.dashboard-user-pill__avatar {
    width: 48px;
    height: 48px;
    border: 2px solid rgba(18, 44, 90, .08);
    border-radius: 999px;
    object-fit: cover;
    box-shadow: 0 10px 20px rgba(12, 42, 68, .08);
}
.dashboard-user-pill a {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    color: var(--bsa-pink);
    font-size: 13px;
    font-weight: 850;
    text-decoration: none;
}
.dashboard-user-pill a span {
    color: inherit;
    font-weight: inherit;
}
.dashboard-user-pill a svg {
    width: 14px;
    height: 14px;
}
.dashboard-stat-grid,
.dashboard-grid {
    display: grid;
    gap: 20px;
}
.dashboard-stat-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 18px;
}
.dashboard-stat-grid--listings {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dashboard-stat-grid article,
.dashboard-card,
.dashboard-wallet-hero {
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 12px 30px rgba(12, 42, 68, .06);
}
.dashboard-stat-grid article {
    padding: 18px;
}
.dashboard-stat-grid span {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.dashboard-stat-grid strong {
    display: block;
    margin: 7px 0;
    color: var(--bsa-navy);
    font-size: 30px;
    line-height: 1;
}
.dashboard-stat-grid a {
    color: var(--bsa-pink);
    font-weight: 850;
}
.dashboard-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dashboard-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.dashboard-card {
    min-width: 0;
    padding: 18px;
}
.dashboard-card__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}
.dashboard-card h2,
.dashboard-card__head h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 16px;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.platform-leads-upgrade {
    display: grid;
    align-items: start;
    gap: 14px;
}
.platform-leads-upgrade > * {
    margin: 0;
}
.platform-leads-upgrade .platform-tag {
    justify-self: start;
}
.platform-leads-upgrade__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
    padding-top: 2px;
}
.dashboard-list-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}
.dashboard-list-search {
    position: relative;
    flex: 1 1 280px;
    min-width: 260px;
}
.dashboard-list-filter {
    flex: 0 0 160px;
    min-width: 0;
}
.dashboard-list-filter .select2-container,
.dashboard-list-filter .js-enhance-select {
    width: 100% !important;
    min-width: 0;
    max-width: 100%;
}
.select2-hidden-accessible,
.dashboard-list-filter .select2-hidden-accessible {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 1px !important;
    min-height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
.dashboard-list-filter select {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 46px;
    padding: 0 14px;
    overflow: hidden;
    border: 1px solid #c8d8e6;
    border-radius: 10px;
    background: linear-gradient(180deg, #ffffff, #f5f9fc);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 8px 18px rgba(18, 44, 90, .04);
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}
.dashboard-list-filter select:hover {
    border-color: #b4cbdd;
    background: linear-gradient(180deg, #ffffff, #f9fbfd);
}
.dashboard-list-filter select:focus {
    border-color: #ec6271;
    box-shadow: 0 0 0 4px rgba(236, 98, 113, .12), 0 14px 24px rgba(18, 44, 90, .08);
    outline: none;
}
.dashboard-list-filter .select2-container .select2-selection--single {
    min-height: 46px;
    border: 1px solid #c8d8e6;
    border-radius: 10px;
    background: linear-gradient(180deg, #ffffff, #f5f9fc);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 8px 18px rgba(18, 44, 90, .04);
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}
.dashboard-list-filter .select2-container--default .select2-selection--single .select2-selection__rendered {
    display: block;
    max-width: 100%;
    padding: 0 38px 0 14px;
    overflow: hidden;
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 600;
    line-height: 44px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dashboard-list-filter .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #778ea4;
}
.dashboard-list-filter .select2-container--default .select2-selection--single .select2-selection__arrow {
    right: 8px;
    height: 44px;
}
.dashboard-list-filter .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #5d748b transparent transparent transparent;
}
.dashboard-list-filter .select2-container--default.select2-container--open .select2-selection--single,
.dashboard-list-filter .select2-container--default .select2-selection--single:hover,
.dashboard-list-filter .select2-container--default .select2-selection--single:focus {
    border-color: #ec6271;
    box-shadow: 0 0 0 4px rgba(236, 98, 113, .12), 0 14px 24px rgba(18, 44, 90, .08);
    outline: none;
}
.select2-dropdown.dashboard-select-dropdown {
    border: 1px solid #c8d8e6;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 18px 34px rgba(12, 42, 68, .14);
}
.select2-dropdown.dashboard-select-dropdown .select2-results__option {
    padding: 10px 14px;
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 600;
}
.select2-dropdown.dashboard-select-dropdown .select2-results__option--highlighted.select2-results__option--selectable {
    background: #edf4fb;
    color: var(--bsa-navy);
}
.select2-dropdown.dashboard-select-dropdown .select2-results__option--selected {
    background: rgba(236, 98, 113, .1);
    color: var(--bsa-navy);
}
.js-search-field input[type="search"]::-webkit-search-cancel-button {
    display: none;
    appearance: none;
    -webkit-appearance: none;
}
.search-field-clear {
    position: absolute;
    top: 50%;
    right: 10px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #5d748b;
    cursor: pointer;
    line-height: 1;
    transform: translateY(-50%);
    transition: background .16s ease, color .16s ease, opacity .16s ease;
}
.search-field-clear:hover {
    background: rgba(18, 44, 90, .08);
    color: var(--bsa-navy);
}
.search-field-clear:focus-visible {
    outline: 2px solid rgba(236, 98, 113, .34);
    outline-offset: 1px;
}
.search-field-clear[hidden] {
    display: none;
}
.search-field-clear svg {
    width: 16px;
    height: 16px;
    pointer-events: none;
}
.dashboard-list-search .search-field-clear {
    right: 46px;
}
.dashboard-list-search input {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: 0 92px 0 16px;
    overflow: hidden;
    border: 1px solid #c8d8e6;
    border-radius: 10px;
    background: linear-gradient(180deg, #ffffff, #f5f9fc);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 8px 18px rgba(18, 44, 90, .04);
    color: var(--bsa-navy);
    font-size: 15px;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}
.dashboard-list-search__submit {
    position: absolute;
    top: 50%;
    right: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 0.25rem;
    background: transparent;
    color: #5d748b;
    cursor: pointer;
    transform: translateY(-50%);
}
.dashboard-list-search__submit svg {
    width: 17px;
    height: 17px;
}
.dashboard-list-search__submit:hover {
    background: rgba(18, 44, 90, .06);
    color: var(--bsa-navy);
}
.dashboard-list-search__submit:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(236, 98, 113, .18);
}
.dashboard-list-search input::placeholder {
    color: #778ea4;
    opacity: 1;
}
.dashboard-list-search input:hover {
    border-color: #b4cbdd;
    background: linear-gradient(180deg, #ffffff, #f9fbfd);
}
.dashboard-list-search input:focus {
    border-color: #ec6271;
    box-shadow: 0 0 0 4px rgba(236, 98, 113, .12), 0 14px 24px rgba(18, 44, 90, .08);
    outline: none;
}
.dashboard-list-pager {
    margin-top: 14px;
    justify-content: flex-end;
}
.dashboard-list,
.dashboard-feed,
.dashboard-action-grid {
    display: grid;
    gap: 10px;
}
.dashboard-list a,
.dashboard-feed div,
.dashboard-action-grid a {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 12px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.dashboard-list img,
.dashboard-listing-cell img {
    width: 60px;
    height: 40px;
    border-radius: 0.25rem;
    object-fit: cover;
    border: 1px solid #efefef;
}
.dashboard-list span,
.dashboard-feed span,
.dashboard-action-grid span,
.dashboard-listing-cell span {
    min-width: 0;
}
.dashboard-user-cell {
    display: grid;
    gap: 2px;
    min-width: 0;
}
.dashboard-user-cell strong,
.dashboard-user-cell small {
    display: block;
    min-width: 0;
}
.dashboard-user-cell strong {
    color: var(--bsa-navy);
    font-weight: 900;
}
.dashboard-user-cell small {
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}
.dashboard-list strong,
.dashboard-feed strong,
.dashboard-listing-cell strong {
    display: block;
    color: var(--bsa-navy);
    font-weight: 900;
}
.dashboard-list small,
.dashboard-feed span,
.dashboard-listing-cell small {
    display: block;
    margin-top: 2px;
    color: var(--bsa-muted);
    font-size: 11px;
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.dashboard-action-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dashboard-action-grid a {
    color: var(--bsa-navy);
    font-weight: 850;
}
.dashboard-action-grid svg {
    width: 19px;
    height: 19px;
    color: var(--bsa-pink);
}
.dashboard-table-wrap {
    overflow-x: auto;
}
.dashboard-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 760px;
}
.dashboard-stat-grid--listing-quality {
    margin-bottom: 16px;
}
.dashboard-quality-callout {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 16px;
    background: linear-gradient(135deg, #ffffff, #f8fbfd);
}
.dashboard-quality-callout h2 {
    margin: 4px 0 7px;
}
.dashboard-quality-callout p {
    max-width: 760px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.dashboard-quality-callout__kicker {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.dashboard-action-plan {
    margin-bottom: 16px;
}
.dashboard-action-plan .dashboard-card__head {
    align-items: flex-start;
}
.dashboard-action-plan__kicker {
    display: block;
    margin-bottom: 4px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.dashboard-action-plan__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.dashboard-action-plan__item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
    min-width: 0;
    padding: 14px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.dashboard-action-plan__rank {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 0.25rem;
    background: var(--bsa-navy);
    color: var(--bsa-white);
    font-weight: 900;
}
.dashboard-action-plan__body {
    display: grid;
    gap: 8px;
    min-width: 0;
}
.dashboard-action-plan__title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}
.dashboard-action-plan__title h3 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 14px;
    letter-spacing: .04em;
    text-transform: uppercase;
    line-height: 1.25;
}
.dashboard-action-plan__title span {
    flex: 0 0 auto;
    padding: 4px 8px;
    border-radius: 999px;
    background: #e9f4fb;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
}
.dashboard-action-plan__body p,
.dashboard-action-plan__body small {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.45;
}
.dashboard-action-plan__body small {
    font-size: 12px;
}
.dashboard-action-plan__links {
    display: grid;
    gap: 6px;
}
.dashboard-action-plan__links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-width: 0;
    padding: 8px 10px;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.dashboard-action-plan__links a span {
    flex: 0 0 auto;
    color: var(--bsa-muted);
    font-size: 12px;
}
.dashboard-action-plan__edit {
    width: fit-content;
    min-height: 34px;
    padding-inline: 12px;
}
.dashboard-media-plan {
    margin-bottom: 16px;
}
.dashboard-media-plan .dashboard-card__head {
    align-items: flex-start;
}
.dashboard-media-plan__summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}
.dashboard-media-plan__summary div {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.dashboard-media-plan__summary span {
    display: block;
    margin-bottom: 5px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.dashboard-media-plan__summary strong {
    display: block;
    color: var(--bsa-navy);
    font-size: 20px;
    line-height: 1.15;
    overflow-wrap: anywhere;
}
.dashboard-media-plan__list {
    display: grid;
    gap: 10px;
}
.dashboard-media-task {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #fff;
}
.dashboard-media-task__score {
    display: grid;
    place-items: center;
    min-height: 70px;
    padding: 8px;
    border-radius: 0.25rem;
    background: #eef6fb;
    color: var(--bsa-pink);
    text-align: center;
}
.dashboard-media-task__score--good {
    background: #eaf6ef;
    color: #157347;
}
.dashboard-media-task__score--warn {
    background: #fff6e8;
    color: #9a6410;
}
.dashboard-media-task__score--alert {
    background: #fff0f0;
    color: var(--bsa-red);
}
.dashboard-media-task__score strong {
    display: block;
    font-size: 20px;
    line-height: 1;
}
.dashboard-media-task__score span {
    font-size: 11px;
    font-weight: 900;
}
.dashboard-media-task__body {
    min-width: 0;
}
.dashboard-media-task__body h3 {
    margin: 0 0 5px;
    color: var(--bsa-navy);
    font-size: 14px;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.dashboard-media-task__body p,
.dashboard-media-plan__empty {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.45;
}
.dashboard-media-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}
.dashboard-media-tags span {
    padding: 4px 8px;
    border-radius: 999px;
    background: #e9f4fb;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
}
.dashboard-media-task__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    min-width: 0;
}
.dashboard-media-task__actions .btn {
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
}
.dashboard-media-mini {
    display: grid;
    gap: 4px;
    min-width: 170px;
}
.dashboard-media-mini strong {
    color: var(--bsa-navy);
    font-size: 14px;
}
.dashboard-media-mini span,
.dashboard-media-mini small {
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.35;
}
.dashboard-media-mini--good strong {
    color: #157347;
}
.dashboard-media-mini--warn strong {
    color: #9a6410;
}
.dashboard-media-mini--alert strong {
    color: var(--bsa-red);
}

.dashboard-table th {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.dashboard-listing-cell {
    display: flex;
    align-items: center;
    gap: 12px;
}
.dashboard-pill {
    display: inline-flex;
    min-height: 24px;
    align-items: center;
    padding: 0 9px;
    border-radius: 999px;
    background: #edf6fb;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
}
.dashboard-pill--unlisted {
    background: var(--color-surface-muted);
    color: var(--color-text-secondary);
}
.dashboard-pill--listed,
.dashboard-pill--approved,
.dashboard-pill--published {
    background: #e5f6ec;
    color: #157347;
}
.dashboard-pill--pending {
    background: var(--color-brand-ocean-soft);
    color: var(--color-brand-ocean);
}
.dashboard-pill--rejected,
.dashboard-pill--unpublished {
    background: #fdebed;
    color: #b42332;
}
.dashboard-quality-mini {
    display: grid;
    gap: 6px;
    min-width: 190px;
}
.dashboard-quality-mini__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
}
.dashboard-quality-mini__head strong {
    color: var(--bsa-navy);
    font-size: 18px;
    line-height: 1;
}
.dashboard-quality-mini__head span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
}
.dashboard-quality-meter {
    height: 7px;
    border-radius: 999px;
    background: #e7eef4;
    overflow: hidden;
}
.dashboard-quality-meter span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--bsa-pink);
}
.dashboard-quality-mini--good .dashboard-quality-meter span {
    background: #157347;
}
.dashboard-quality-mini--warn .dashboard-quality-meter span {
    background: #c78316;
}
.dashboard-quality-mini--alert .dashboard-quality-meter span {
    background: var(--bsa-red);
}
.dashboard-quality-mini small {
    max-width: 260px;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.35;
}
.dashboard-action-stack {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}
.btn--dashboard-action,
.dashboard-action-stack .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 26px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}
.dashboard-table .dashboard-action-stack {
    justify-content: flex-start;
}
.dashboard-table .btn--dashboard-action,
.dashboard-table .dashboard-action-stack .btn {
    min-height: 24px;
    padding: 0 7px;
    font-size: 12px;
}
.dashboard-plan-card {
    display: grid;
    gap: 12px;
}
.dashboard-section-head {
    margin: 18px 0 14px;
}
.dashboard-subscription-list {
    display: grid;
    gap: 12px;
}
.dashboard-subscription-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 16px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.dashboard-subscription-card h3 {
    margin: 8px 0 5px;
    color: var(--bsa-navy);
    font-size: 15px;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.dashboard-subscription-card p,
.dashboard-subscription-card small {
    display: block;
    margin: 0;
    color: var(--bsa-muted);
}
.dashboard-subscription-card__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.dashboard-plan-card strong,
.dashboard-wallet-hero strong {
    color: var(--bsa-navy);
    font-size: 34px;
    line-height: 1;
}
.dashboard-plan-card small {
    color: var(--bsa-muted);
    font-size: 15px;
}
.dashboard-wallet-hero {
    margin-bottom: 16px;
    padding: 22px;
    background: linear-gradient(135deg, #eaf5fb, #fff);
}
.dashboard-wallet-hero span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.dashboard-feed--messages div {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 12px;
}
.dashboard-feed--messages .dashboard-message-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 0.25rem;
    color: var(--bsa-navy);
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45);
}
.dashboard-message-badge svg {
    display: block;
    width: 18px;
    height: 18px;
}
.dashboard-message-badge--announcement {
    background: #e7f3ff;
    color: #176fa6;
}
.dashboard-message-badge--notification {
    background: #edf5ff;
    color: #285ea8;
}
.dashboard-message-badge--promotion {
    background: #f5edff;
    color: #7342a8;
}
.dashboard-message-badge--chat {
    background: #e9fbf4;
    color: #0b7a55;
}
.dashboard-message-badge--message {
    background: #fff1f3;
    color: #c54d5d;
}
.dashboard-message-badge--alert {
    background: #fff5de;
    color: #b77908;
}
.dashboard-message-badge--inquiry {
    background: #e9fbf4;
    color: #0b7a55;
}
.dashboard-feed--messages span {
    display: block;
    min-width: 0;
}
.dashboard-feed--messages .dashboard-message-thread,
.dashboard-message-thread-list .dashboard-message-thread {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 12px;
    border: 1px solid #d8e7f0;
    border-radius: var(--bsa-backend-panel-radius, 0.25rem);
    background: #f8fbfd;
    color: inherit;
    text-decoration: none;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.dashboard-feed--messages .dashboard-message-thread:hover,
.dashboard-message-thread-list .dashboard-message-thread:hover {
    border-color: #a9c7d9;
    background: #fff;
    box-shadow: 0 10px 24px rgba(12, 42, 68, .08);
    transform: translateY(-1px);
}
.dashboard-feed--messages .dashboard-message-thread:focus-visible,
.dashboard-message-thread-list .dashboard-message-thread:focus-visible {
    outline: 3px solid rgba(236, 98, 113, .22);
    outline-offset: 2px;
}
.dashboard-message-thread__copy {
    display: grid;
    gap: 3px;
    min-width: 0;
}
.dashboard-feed--messages .dashboard-message-thread__copy {
    display: grid;
}
.dashboard-message-thread__copy > strong,
.dashboard-message-thread__copy > small {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dashboard-message-thread__copy > strong {
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 900;
}
.dashboard-message-thread__copy > small {
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.35;
}
.dashboard-message-thread__copy > .dashboard-message-thread__context {
    color: #71869a;
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
}
.dashboard-message-thread__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    min-height: 24px;
    padding: 3px 7px;
    border-radius: 999px;
    background: var(--bsa-pink);
    color: #fff;
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}
.dashboard-message-inbox {
    margin-bottom: var(--bsa-backend-space-lg, 20px);
}
.dashboard-message-inbox__summary {
    flex: 0 0 auto;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
}
.dashboard-message-thread-list {
    display: grid;
    gap: var(--bsa-backend-space-md, 12px);
}
.dashboard-message-thread-list .dashboard-message-thread {
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    background: #fff;
}
.dashboard-message-thread-list .dashboard-message-thread.has-unseen {
    border-color: #efb8c0;
    background: linear-gradient(90deg, #fff8f9, #fff);
}
.dashboard-message-thread__meta {
    display: grid;
    justify-items: end;
    gap: 6px;
    min-width: 112px;
}
.dashboard-message-thread__meta time {
    color: #71869a;
    font-size: 11px;
    white-space: nowrap;
}
.dashboard-message-thread__arrow {
    width: 18px;
    height: 18px;
    color: #71869a;
}
.dashboard-message-conversation {
    position: fixed;
    inset: var(--support-thread-top, 72px) 0 0;
    z-index: 10020;
    overflow: hidden;
    background: #f4f7f9;
}
.dashboard-message-conversation__panel {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    width: 100%;
    height: 100%;
}
.dashboard-message-conversation__head {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 76px;
    padding: 12px 20px;
    border-bottom: 1px solid #d8e2ea;
    background: #fff;
    box-shadow: 0 4px 14px rgba(12, 42, 68, .04);
}
.dashboard-message-conversation__head > div {
    display: grid;
    gap: 2px;
    min-width: 0;
}
.dashboard-message-conversation__head h2,
.dashboard-message-conversation__head p {
    margin: 0;
}
.dashboard-message-conversation__head h2 {
    color: var(--bsa-navy);
    font-size: clamp(18px, 1.6vw, 23px);
    letter-spacing: -.02em;
    text-transform: none;
}
.dashboard-message-conversation__head p {
    color: var(--bsa-muted);
    font-size: 12px;
}
.dashboard-message-conversation__close {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    width: 40px;
    height: 40px;
    margin-left: auto;
    border: 1px solid #cad7e1;
    border-radius: var(--bsa-backend-control-radius, 0.25rem);
    background: #fff;
    color: var(--bsa-navy);
}
.dashboard-message-conversation__close:hover {
    border-color: #8fb3c9;
    background: #f2f7fa;
}
.dashboard-message-conversation__close:focus-visible {
    outline: 3px solid rgba(236, 98, 113, .22);
    outline-offset: 2px;
}
.dashboard-message-conversation__close svg {
    width: 20px;
    height: 20px;
}
.dashboard-message-conversation__body {
    min-height: 0;
    padding: 22px clamp(16px, 4vw, 56px);
    overflow: hidden;
}
.dashboard-chat-thread {
    display: grid;
    align-content: start;
    gap: 16px;
    width: min(920px, 100%);
    height: 100%;
    margin: 0 auto;
    padding: 4px 4px 28px;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.dashboard-chat-message {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
}
.dashboard-chat-message--mine {
    align-items: flex-end;
}
.dashboard-chat-message__author {
    padding: 0 6px;
    color: #71869a;
    font-size: 11px;
    font-weight: 850;
}
.dashboard-chat-message__bubble {
    width: fit-content;
    max-width: min(680px, 82%);
    padding: 12px 14px 9px;
    border: 1px solid #d8e2ea;
    border-radius: 14px 14px 14px 4px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(12, 42, 68, .06);
}
.dashboard-chat-message--mine .dashboard-chat-message__bubble {
    border-color: #173b61;
    border-radius: 14px 14px 4px 14px;
    background: var(--bsa-navy);
    color: #fff;
}
.dashboard-chat-message__bubble p {
    margin: 0;
    overflow-wrap: anywhere;
    font-size: 14px;
    line-height: 1.5;
}
.dashboard-chat-message__bubble time {
    display: block;
    margin-top: 6px;
    color: #71869a;
    font-size: 10px;
    text-align: right;
}
.dashboard-chat-message--mine .dashboard-chat-message__bubble time {
    color: rgba(255, 255, 255, .68);
}
@media (max-width: 700px) {
    .dashboard-message-thread-list .dashboard-message-thread {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }
    .dashboard-message-thread__meta {
        display: none;
    }
    .dashboard-message-conversation__head {
        min-height: 68px;
        padding: 10px 14px;
    }
    .dashboard-message-conversation__body {
        padding: 16px 10px;
    }
    .dashboard-chat-message__bubble {
        max-width: 90%;
    }
}
.dashboard-card__subtext {
    max-width: 720px;
    margin: 6px 0 0;
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.5;
}
.dashboard-recent-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: 16px;
}
.dashboard-recent-grid[hidden] {
    display: none;
}
.dashboard-recent-grid .listing-card {
    min-width: 0;
}
.dashboard-recent-grid .listing-card__media {
    min-height: 190px;
}
.dashboard-recent-card .dashboard-empty-message {
    margin-top: 16px;
}
.dashboard-lead-list {
    display: grid;
    gap: 12px;
}
.dashboard-lead-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
    gap: 20px;
    min-width: 0;
    padding: 16px;
    border: 1px solid #d8e7f0;
    border-left: 5px solid var(--bsa-pink);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.dashboard-lead-card--hot {
    border-left-color: var(--bsa-red);
}
.dashboard-lead-card--warm {
    border-left-color: #c78316;
}
.dashboard-lead-card__main,
.dashboard-lead-card__meta {
    min-width: 0;
}
.dashboard-lead-card__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.dashboard-lead-priority {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    background: #e8f3fa;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
}
.dashboard-lead-card--hot .dashboard-lead-priority {
    background: #fff0f0;
    color: var(--bsa-red);
}
.dashboard-lead-card--warm .dashboard-lead-priority {
    background: #fff7e8;
    color: #9a620e;
}
.dashboard-lead-card__head small,
.dashboard-lead-card__meta small {
    color: var(--bsa-muted);
    font-size: 12px;
}
.dashboard-lead-card h3 {
    margin: 10px 0 7px;
    color: var(--bsa-navy);
    font-size: 20px;
    line-height: 1.2;
}
.dashboard-lead-card p {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.dashboard-lead-signals {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 12px;
}
.dashboard-lead-signals span {
    display: inline-flex;
    min-width: 0;
    min-height: 24px;
    align-items: center;
    padding: 0 8px;
    border: 1px solid #d8e7f0;
    border-radius: 999px;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 850;
}
.dashboard-lead-details {
    margin-top: 12px;
}
.dashboard-lead-details summary {
    color: var(--bsa-pink);
    cursor: pointer;
    font-size: 13px;
    font-weight: 900;
}
.dashboard-lead-details p {
    margin-top: 8px;
    padding: 12px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.dashboard-reply-templates {
    min-width: 0;
    margin-top: 12px;
}
.dashboard-reply-templates summary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--bsa-pink);
    cursor: pointer;
    font-size: 13px;
    font-weight: 900;
}
.dashboard-reply-templates summary svg {
    width: 16px;
    height: 16px;
}
.dashboard-reply-template-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 10px;
}
.dashboard-reply-template {
    display: grid;
    align-content: start;
    gap: 8px;
    min-width: 0;
    min-height: 118px;
    padding: 11px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-text);
}
.dashboard-reply-template:hover {
    border-color: var(--bsa-pink);
    box-shadow: 0 8px 18px rgba(20, 87, 135, .08);
}
.dashboard-reply-template span {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 900;
}
.dashboard-reply-template span svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}
.dashboard-reply-template small {
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.35;
}
.dashboard-reply-template__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin-top: auto;
}
.dashboard-reply-template__actions .btn {
    min-height: 32px;
    padding-inline: 9px;
    font-size: 12px;
}
.dashboard-reply-template__actions .btn svg {
    width: 15px;
    height: 15px;
}
.dashboard-lead-card__meta {
    display: grid;
    align-content: start;
    gap: 10px;
    padding-left: 16px;
    border-left: 1px solid #d8e7f0;
}
.dashboard-lead-card__meta div {
    min-width: 0;
}
.dashboard-lead-card__meta span {
    display: block;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.dashboard-lead-card__meta strong {
    display: block;
    margin-top: 3px;
    color: var(--bsa-navy);
    line-height: 1.25;
    overflow-wrap: anywhere;
}
.dashboard-lead-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 4px;
}
.dashboard-lead-card__actions .btn:not(.btn--dashboard-action) {
    min-height: 30px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
}
.btn--dashboard-action svg,
.dashboard-action-stack .btn svg,
.dashboard-media-task__actions .btn svg,
.dashboard-lead-card__actions .btn svg,
.dashboard-followup-card__actions .btn svg {
    width: 14px;
    height: 14px;
}
.dashboard-followup-queue {
    display: grid;
    gap: 20px;
    margin-bottom: 18px;
}
.dashboard-card__notice {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    max-width: 100%;
    margin: 0;
    padding: 10px 12px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.35;
}
.dashboard-card__notice svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}
.dashboard-followup-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}
.dashboard-followup-card {
    display: grid;
    gap: 12px;
    min-width: 0;
    padding: 16px;
    border: 1px solid #d8e7f0;
    border-left: 5px solid var(--bsa-pink);
    border-radius: 0.25rem;
    background: linear-gradient(180deg, #fff, #f8fbfd);
}
.dashboard-followup-card--hot {
    border-left-color: var(--bsa-red);
}
.dashboard-followup-card--warm {
    border-left-color: #c78316;
}
.dashboard-followup-card__top,
.dashboard-followup-card__facts,
.dashboard-followup-card__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}
.dashboard-followup-card__top {
    justify-content: space-between;
}
.dashboard-followup-card__top span {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    background: #e8f3fa;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
}
.dashboard-followup-card--hot .dashboard-followup-card__top span {
    background: #fff0f0;
    color: var(--bsa-red);
}
.dashboard-followup-card--warm .dashboard-followup-card__top span {
    background: #fff7e8;
    color: #9a620e;
}
.dashboard-followup-card__top small {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
}
.dashboard-followup-card h3 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 19px;
    line-height: 1.2;
}
.dashboard-followup-card p {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.dashboard-followup-card__facts span {
    display: inline-flex;
    max-width: 100%;
    min-height: 24px;
    align-items: center;
    padding: 0 8px;
    border: 1px solid #d8e7f0;
    border-radius: 999px;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 850;
    overflow-wrap: anywhere;
}
.dashboard-followup-card__actions {
    padding-top: 2px;
}
.dashboard-empty-message--compact {
    min-height: 180px;
}
.dashboard-empty-message {
    display: grid;
    place-items: center;
    min-height: 260px;
    padding: 28px;
    border: 1px dashed #c9dbe8;
    border-radius: 0.25rem;
    background: #f8fbfd;
    text-align: center;
}
.dashboard-empty-message svg {
    width: 34px;
    height: 34px;
    color: var(--bsa-pink);
}
.dashboard-empty-message h2 {
    margin: 10px 0 8px;
    font-size: 16px;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.dashboard-empty-message p {
    max-width: 520px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}

.support-layout {
    display: grid;
    grid-template-columns: minmax(260px, 320px) minmax(420px, 1fr) minmax(300px, 360px);
    gap: 20px;
    align-items: start;
}
.support-layout--admin {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
}

.support-thread-list,
.support-side {
    position: static;
}

.support-panel-head {
    margin-bottom: 14px;
}

.support-thread-list__search .dashboard-list-search {
    flex: 1 1 auto;
}
.support-thread-list__search .btn {
    min-width: 108px;
    justify-content: center;
}
.support-panel-head h2,
.support-thread-panel__head h2,
.support-help-card h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 16px;
    letter-spacing: .05em;
    text-transform: uppercase;
    line-height: 1.2;
}
.support-panel-head p,
.support-thread-panel__head p,
.support-upload-note {
    margin: 4px 0 0;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.45;
}

.support-thread-link.is-active,
.support-thread-link:hover {
    border-color: rgba(23, 111, 166, .5);
    background: linear-gradient(180deg, #f8fbfd, #eef7fc);
    box-shadow: 0 12px 26px rgba(12, 42, 68, .08);
}
.support-thread-link__top,
.support-thread-link__meta,
.support-thread-kicker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
}
.support-thread-link strong {
    color: var(--bsa-navy);
    font-size: 16px;
    font-weight: 850;
    line-height: 1.35;
}
.support-thread-link span,
.support-thread-link small,
.support-thread-owner {
    min-width: 0;
    color: var(--bsa-muted);
    font-size: 12px;
    font-style: normal;
    line-height: 1.4;
}

.support-status--open {
    background: #e9f8f0;
    color: #157347;
}
.support-status--closed {
    background: #eef3f7;
    color: #536477;
}
.support-conversation,
.support-side {
    display: grid;
    gap: 20px;
    min-width: 0;
}

.support-thread-kicker {
    margin-bottom: 8px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
}

.support-section {
    display: grid;
    gap: 20px;
    padding: 18px;
    border: 1px solid #d8e7f0;
    border-radius: 10px;
    background: #fbfdff;
}

.support-section__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.support-section__head h3 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 15px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .04em;
}
.support-section__head span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
}
.support-message-list {
    display: grid;
    gap: 20px;
    padding: 2px 0;
}

.support-message__meta strong {
    color: var(--bsa-navy);
    font-weight: 900;
}
.support-message__meta span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
}

.support-attachments {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.support-attachment {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 10px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-weight: 850;
}
.support-attachment svg {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
}
.support-attachment span,
.support-attachment small {
    display: block;
    min-width: 0;
}
.support-attachment span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.support-attachment small {
    margin-top: 2px;
    color: var(--bsa-muted);
    font-size: 12px;
}
.support-attachment--image {
    display: grid;
    gap: 8px;
    padding: 8px;
}
.support-attachment--image img {
    width: 100%;
    height: 130px;
    border-radius: 0.25rem;
    object-fit: cover;
    background: var(--bsa-panel);
}

.support-new-ticket .dashboard-form {
    grid-template-columns: 1fr;
}
.support-prefill-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 14px;
    padding: 12px;
    border: 1px solid #b9d7e8;
    border-radius: 0.25rem;
    background: #eef7fc;
}
.support-prefill-note svg {
    flex: 0 0 auto;
    width: 19px;
    height: 19px;
    color: var(--bsa-pink);
}
.support-prefill-note strong,
.support-prefill-note small {
    display: block;
}
.support-prefill-note strong {
    color: var(--bsa-navy);
    font-weight: 900;
}
.support-prefill-note small {
    margin-top: 2px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.4;
}

.support-help-list {
    display: grid;
    gap: 10px;
}
.support-help-list div,
.support-empty-mini {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.support-help-list svg,
.support-empty-mini svg,
.support-empty-state svg {
    flex: 0 0 auto;
    width: 19px;
    height: 19px;
    color: var(--bsa-pink);
}
.support-help-list strong,
.support-empty-mini strong {
    display: block;
    color: var(--bsa-navy);
    font-weight: 900;
}
.support-help-list small,
.support-empty-mini span,
.support-empty-state p {
    display: block;
    margin-top: 2px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.4;
}
.support-empty-state {
    display: grid;
    gap: 10px;
    justify-items: start;
}

/* ==========================================================================
   BoatShowAvenue design-system implementation
   Source of truth: config/ui-design-legend.json
   Design language: Harbor Editorial
   ========================================================================== */

html {
    color-scheme: light;
    scroll-padding-top: calc(var(--layout-header-height) + var(--space-4));
    -webkit-text-size-adjust: 100%;
}

::selection {
    background: var(--color-brand-ocean-soft);
    color: var(--color-text-strong);
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
    outline: 2px solid var(--color-focus);
    outline-offset: 2px;
    box-shadow: var(--shadow-focus);
}

:where(button, [role="button"], input[type="button"], input[type="submit"], input[type="reset"]):not(:disabled) {
    cursor: pointer;
}

:where(button, input, select, textarea):disabled,
:where(.btn, .icon-btn).is-disabled {
    cursor: not-allowed;
    opacity: .52;
    transform: none;
    box-shadow: none;
}

:where(h1, h2, h3, h4, h5, h6) {
    color: var(--color-text-strong);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-heading);
    text-wrap: balance;
}

:where(h1, h2) {
    letter-spacing: var(--letter-spacing-display);
}

:where(p, li, dd) {
    overflow-wrap: break-word;
}

:where(p, li) > a:not(.btn) {
    color: var(--color-text-link);
    text-decoration-thickness: .08em;
    text-underline-offset: .18em;
}

:where(p, li) > a:not(.btn):hover,
:where(p, li) > a:not(.btn):focus-visible {
    text-decoration-line: underline;
}

.main-nav a {
    position: relative;
    display: inline-flex;
    align-items: center;
    text-align: center;
    min-height: var(--size-control-md);
    color: var(--color-text-primary);
    font-weight: var(--font-weight-semibold);
    transition:
        color var(--motion-duration-fast) var(--motion-ease-standard);
}

.main-nav a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 3px;
    left: 0;
    height: 2px;
    border-radius: var(--radius-round);
    background: var(--color-accent-coral);
    opacity: 0;
    transform: scaleX(.35);
    transition:
        opacity var(--motion-duration-fast) var(--motion-ease-standard),
        transform var(--motion-duration-base) var(--motion-ease-standard);
}

.main-nav a:hover::after,
.main-nav a.is-active::after {
    opacity: 1;
    transform: scaleX(1);
}

.btn:active {
    transform: translateY(0);
    box-shadow: var(--shadow-xs);
}

.btn-danger {
    border-color: var(--color-danger);
    background: var(--color-surface-canvas);
    color: var(--color-danger);
}

.btn-danger:hover {
    border-color: var(--color-danger);
    background: var(--color-danger-soft);
    color: var(--color-danger);
}

.icon-btn {
    min-width: var(--size-control-md);
    min-height: var(--size-control-md);
    border-color: var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    color: var(--color-brand-navy);
    transition:
        border-color var(--motion-duration-fast) var(--motion-ease-standard),
        background-color var(--motion-duration-fast) var(--motion-ease-standard),
        color var(--motion-duration-fast) var(--motion-ease-standard),
        transform var(--motion-duration-base) var(--motion-ease-standard);
}

.icon-btn:hover {
    border-color: var(--color-brand-ocean);
    background: var(--color-brand-ocean-soft);
    color: var(--color-brand-ocean-hover);
}

.section-head h1 {
    font-size: var(--font-size-h1);
}

.section-head h2 {
    font-size: var(--font-size-h2);
}

.hero-popover,
.filter-modal__panel,
.map-modal__panel,
.media-modal__panel,
.compare-modal__panel {
    border-color: var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-raised);
    box-shadow: var(--shadow-popover);
}

.field input,
.field select,
.field textarea,
.auth-form input,
.auth-form select,
.auth-form textarea,
.dashboard-form input,
.dashboard-form select,
.dashboard-form textarea,
.filter-input-grid input,
.filter-select {
    min-height: var(--size-control-md);
    border-color: var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
}

:where(
    .field input,
    .field select,
    .field textarea,
    .auth-form input,
    .auth-form select,
    .auth-form textarea,
    .dashboard-form input,
    .dashboard-form select,
    .dashboard-form textarea,
    .filter-input-grid input,
    .filter-select
):focus {
    border-color: var(--color-focus);
}

::placeholder {
    color: var(--color-text-tertiary);
    opacity: 1;
}

.listing-card,
.directory-card,
.type-tile,
.content-block,
.auth-panel,
.dashboard-card {
    border-color: var(--color-border-default);
}

.listing-card:hover {
    transform: translateY(var(--motion-lift));
    box-shadow: var(--shadow-card-hover);
}

.listing-card__media,
.directory-card,
.type-tile {
    border-radius: var(--radius-card);
}

.listing-card__overlay .listing-card__price,
.inventory-insights strong,
.hero-trust strong,
.dashboard-stat-grid strong {
    font-family: var(--font-family-numeric);
    font-variant-numeric: tabular-nums lining-nums;
}

.switch input:checked + span,
.pager .is-active,
.listing-cover__actions .btn--tour {
    border-color: var(--color-brand-ocean);
    background: var(--color-brand-ocean);
    color: var(--color-text-inverse);
}

.make-result.is-selected .make-result__check::after,
.dual-range__input::-webkit-slider-thumb,
.dual-range__input::-moz-range-thumb,
.dashboard-quality-meter span,
.inquiry-quality__meter span,
.checklist-meter span {
    background: var(--color-brand-ocean);
}

.inquiry-quality__checks span.is-complete,
.inquiry-quality__checks span.is-complete svg {
    color: var(--color-success);
}

.content-block,
.auth-panel,
.dashboard-card,
.dashboard-stat-grid article,
.support-section {
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
}

.auth-panel,
.dashboard-card,
.dashboard-stat-grid article {
    box-shadow: var(--shadow-card);
}

.notice--success,
.field-note--success {
    color: var(--color-success);
}

.notice--error,
.field-note--error {
    color: var(--color-danger);
}

.footer-grid,
.footer-bottom,
.homepage-section.seller-free-section .seller-free-callout {
    padding-inline: var(--layout-gutter);
}

.site-footer h3,
.brand--footer {
    color: var(--color-text-inverse);
}

.site-footer a {
    color: rgba(255, 255, 255, .84);
}

.site-footer a:hover,
.site-footer a:focus-visible {
    color: var(--color-brand-powder);
}

.site-footer p,
.footer-bottom {
    color: rgba(255, 255, 255, .68);
}

@media (max-width: 860px) {

    .main-nav a {
        width: 100%;
    }

    .main-nav a::after {
        right: auto;
        bottom: 7px;
        width: 32px;
    }
}

@media (max-width: 640px) {

    .listing-card:hover {
        transform: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto !important;
    }

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }

    .ticker__track {
        position: static;
        animation: none !important;
        transform: none !important;
    }

    .btn:hover,
    .listing-card:hover {
        transform: none;
    }
}

/* Backend spacing normalization */
.dashboard-shell.section--full {
    gap: var(--bsa-backend-space-xl);
    padding-top: var(--bsa-backend-space-xl);
    padding-bottom: var(--bsa-backend-space-xl);
}

.auth-page.auth-page--wide {
    _padding-top: var(--bsa-backend-space-xl);
}

.auth-page .auth-panel {
    padding: var(--bsa-backend-space-xl);
}

.auth-panel__intro,
.sell-form-panel__intro {
    margin-bottom: var(--bsa-backend-space-lg);
}

.auth-form,
.dashboard-form,
.dashboard-form__password-grid,
.sell-feature-rows,
.sell-array-rows {
    gap: var(--bsa-backend-space-md);
}

.sell-listing-form,
.dashboard-sidebar,
.dashboard-topbar,
.support-layout,
.support-conversation,
.support-side,
.support-thread-panel {
    gap: var(--bsa-backend-space-lg);
}

.support-layout--user {
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
}

.support-layout--user .support-side {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sell-edit-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto 12px;
    width: 100%;
    gap: var(--bsa-backend-space-md);
    margin-bottom: var(--bsa-backend-space-md);
}

.sell-form-panel,
.dashboard-stat-grid article,
.dashboard-card,
.dashboard-wallet-hero,
.support-overview article,
.support-thread-list,
.support-thread-panel,
.support-section {
    padding: var(--bsa-backend-space-lg);
}

.dashboard-topbar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: var(--bsa-backend-space-lg);
}

.dashboard-stat-grid,
.dashboard-grid,
.dashboard-action-plan__grid,
.dashboard-media-plan__list,
.dashboard-followup-grid,
.dashboard-recent-grid,
.support-overview {
    gap: var(--bsa-backend-space-lg);
}

.dashboard-stat-grid,
.dashboard-stat-grid--listing-quality,
.dashboard-quality-callout,
.dashboard-action-plan,
.dashboard-media-plan,
.dashboard-wallet-hero,
.dashboard-followup-queue {
    margin-bottom: var(--bsa-backend-space-lg);
}

.dashboard-card__head,
.dashboard-list-controls,
.support-panel-head,
.support-thread-panel__head {
    gap: var(--bsa-backend-space-md);
}

.dashboard-card__head,
.dashboard-list-controls,
.support-panel-head {
    margin-bottom: var(--bsa-backend-space-md);
}

.support-panel-head,
.support-thread-panel__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid var(--bsa-border);
    padding-bottom: var(--bsa-backend-space-md);
}

.dashboard-list,
.dashboard-feed,
.dashboard-action-grid,
.dashboard-subscription-list,
.dashboard-lead-list,
.dashboard-followup-card,
.dashboard-reply-template-grid,
.support-thread-list,
.support-thread-panel__body,
.support-section,
.support-message-list,
.support-help-card {
    gap: var(--bsa-backend-space-md);
}

.dashboard-list a,
.dashboard-feed div,
.dashboard-action-grid a,
.dashboard-subscription-card,
.dashboard-action-plan__item,
.dashboard-media-task,
.dashboard-lead-card,
.dashboard-reply-template,
.dashboard-followup-card,
.support-thread-link,
.support-message,
.support-prefill-note,
.support-help-list div,
.support-empty-mini {
    padding: var(--bsa-backend-space-md);
}

.dashboard-table th,
.dashboard-table td {
    border-bottom: 1px solid var(--bsa-border);
    text-align: left;
    vertical-align: middle;
    padding: var(--bsa-backend-space-md) var(--bsa-backend-space-sm);
}

.dashboard-user-pill {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: center;
    min-width: 180px;
    border: 1px solid var(--bsa-border);
    border-radius: var(--bsa-backend-panel-radius);
    background: var(--bsa-white);
    text-align: left;
    gap: var(--bsa-backend-space-xs);
    padding: var(--bsa-backend-space-md);
}

@media (max-width: 1180px) {
    .dashboard-shell.section--full {
        gap: var(--bsa-backend-space-lg);
        padding-left: var(--bsa-backend-space-xl);
        padding-right: var(--bsa-backend-space-xl);
    }

    .support-layout--user .support-side {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .dashboard-shell.section--full {
        padding: var(--bsa-backend-space-lg) 16px;
    }

    .auth-page.auth-page--wide {
        padding-top: var(--bsa-backend-space-lg);
    }

    .auth-page .auth-panel,
    .sell-form-panel {
        padding: var(--bsa-backend-space-lg);
    }
}

.market-route-section {
    background: #ffffff;
}
.market-route-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}
.market-route-card {
    display: grid;
    grid-template-rows: auto auto 1fr auto;
    gap: 12px;
    min-width: 0;
    min-height: 190px;
    padding: 20px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background:
        linear-gradient(160deg, rgba(23, 111, 166, .14), rgba(255, 255, 255, 0) 50%),
        #f8fbfd;
    color: var(--bsa-text);
    box-shadow: 0 10px 26px rgba(12, 42, 68, .07);
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
    overflow: hidden;
}
.market-route-card:hover {
    border-color: #9ec5dd;
    box-shadow: 0 15px 34px rgba(12, 42, 68, .11);
    transform: translateY(-2px);
}
.market-route-card .market-route-card__kicker {
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.market-route-card__title {
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.12;
}
.market-route-card__details {
    display: grid;
    align-content: start;
    gap: 10px;
}
.market-route-card__detail {
    display: grid;
    gap: 4px;
    padding: 12px 13px;
    border: 1px solid #d7e6ef;
    border-radius: 0.25rem;
    background: rgba(255, 255, 255, .78);
}
.market-route-card__detail span {
    min-width: 0;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .05em;
    line-height: 1.2;
    text-transform: uppercase;
}
.market-route-card__detail strong {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.45;
}
.market-route-card em {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    min-height: 30px;
    margin-top: 2px;
    color: var(--bsa-pink);
    font-style: normal;
    font-weight: 900;
}
.market-route-card em svg {
    width: 16px;
    height: 16px;
}
.recently-viewed-panel[hidden] {
    display: none;
}
.recently-viewed-panel {
    background: #f6fafc;
}
.recently-viewed-panel .section-head {
    align-items: center;
}
.recently-viewed-panel .section-head__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}
.recently-viewed-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}
.recently-viewed-grid .listing-card {
    min-width: 0;
}
.recently-viewed-panel--rail {
    display: grid;
    gap: 20px;
    padding: 18px;
    border: 1px solid rgba(12, 42, 68, .1);
    border-radius: 0.25rem;
    background: linear-gradient(180deg, #fff, #f8fbfd);
    box-shadow: 0 12px 26px rgba(12, 42, 68, .07);
}
.recently-viewed-panel--rail .recently-viewed-panel__head {
    display: grid;
    gap: 4px;
}
.recently-viewed-panel--rail .recently-viewed-panel__head span {
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.recently-viewed-panel--rail .recently-viewed-panel__head h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 18px;
    line-height: 1.2;
}
.recently-viewed-panel--rail .recently-viewed-panel__head p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.5;
}
.recently-viewed-panel--rail .recently-viewed-grid {
    grid-template-columns: 1fr;
    gap: 10px;
}
.recently-viewed-panel--rail .listing-card__media {
    min-height: 172px;
}
.recently-viewed-panel--rail .btn {
    width: 100%;
}
@media (max-width: 1320px) {
    .dashboard-shell {
        grid-template-columns: 1fr;
    }
    .dashboard-sidebar {
        position: static;
    }
    .dashboard-nav {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
    .dashboard-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .dashboard-action-plan__grid {
        grid-template-columns: 1fr;
    }
    .dashboard-media-plan__summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .dashboard-grid--3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .dashboard-recent-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .market-route-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .recently-viewed-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .support-layout {
        grid-template-columns: 1fr;
    }
    .support-layout--admin,
    .support-layout--user {
        grid-template-columns: 1fr;
    }
    .support-thread-list,
    .support-side {
        position: static;
    }
    .support-thread-list__items {
        max-height: none;
        overflow: visible;
        padding-right: 0;
    }
    .dashboard-nav a {
        min-height: 32px;
    }
}
@media (max-width: 760px) {
    .auth-panel {
        padding: 20px;
    }
    .sell-edit-toolbar {
        align-items: start;
        flex-direction: column;
    }
    .sell-edit-toolbar__id {
        margin-left: 0;
        text-align: left;
    }
    .auth-form--grid,
    .dashboard-form,
    .dashboard-grid--2,
    .dashboard-grid--3,
    .dashboard-stat-grid,
    .dashboard-recent-grid,
    .dashboard-action-grid {
        grid-template-columns: 1fr;
    }
    .phone-input-group {
        grid-template-columns: 132px minmax(0, 1fr);
        gap: 10px;
    }
    .dashboard-form__password-grid {
        grid-template-columns: 1fr;
    }
    .dashboard-list-controls {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }
    .dashboard-list-search,
    .dashboard-list-filter {
        width: 100%;
        min-width: 0;
    }
    .sell-form-tabs {
        border-radius: 10px;
    }
    .sell-form-tabs__button {
        width: 100%;
    }
    .sell-form-panel__intro-head,
    .sell-feature-editor__head,
    .sell-form-submit {
        flex-direction: column;
        align-items: stretch;
    }
    .media-upload-field__tiles {
        grid-template-columns: 1fr 1fr;
    }
    .unit-switch {
        width: 100%;
        justify-content: stretch;
    }
    .unit-switch__option {
        flex: 1 1 0;
    }
    .unit-switch__option span {
        width: 100%;
    }
    .market-route-grid {
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: minmax(280px, 84vw);
        gap: 20px;
        overflow-x: auto;
        padding: 2px 2px 10px;
        margin-inline: -2px;
        scroll-snap-type: x proximity;
        scrollbar-width: thin;
    }
    .market-route-card {
        min-height: 0;
        padding: 16px;
        scroll-snap-align: start;
    }
    .market-route-card__title {
        font-size: 20px;
    }
    .market-route-card__details {
        gap: 8px;
    }
    .market-route-card__detail {
        padding: 10px 11px;
    }
    .recently-viewed-panel:not(.recently-viewed-panel--rail) .recently-viewed-grid {
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: min(82vw, 320px);
        gap: 20px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-padding-inline: 2px;
        scroll-snap-type: x mandatory;
        scrollbar-width: thin;
        scrollbar-color: rgba(18, 78, 120, .42) transparent;
    }
    .recently-viewed-panel:not(.recently-viewed-panel--rail) .recently-viewed-grid .listing-card {
        min-width: 0;
        scroll-snap-align: start;
    }
    .recently-viewed-panel .section-head__actions {
        justify-content: stretch;
    }
    .recently-viewed-panel .section-head__actions .btn {
        width: 100%;
    }
    .account-type-options {
        grid-template-columns: 1fr;
    }
    .account-type-option__body {
        min-height: 0;
    }
    .dashboard-topbar {
        display: grid;
    }
    .dashboard-user-pill {
        width: 100%;
        text-align: left;
    }
    .dashboard-quality-callout {
        display: grid;
        align-items: stretch;
    }
    .dashboard-quality-callout .btn {
        width: 100%;
        justify-content: center;
    }
    .dashboard-action-plan .dashboard-card__head,
    .dashboard-action-plan__title {
        display: grid;
    }
    .dashboard-action-plan .dashboard-card__head .btn {
        width: 100%;
        justify-content: center;
    }
    .dashboard-action-plan__item {
        grid-template-columns: 1fr;
    }
    .dashboard-action-plan__rank {
        width: 28px;
        height: 28px;
    }
    .dashboard-media-plan .dashboard-card__head,
    .dashboard-media-task {
        display: grid;
    }
    .dashboard-media-plan .dashboard-card__head .btn,
    .dashboard-media-task .btn {
        width: auto;
        justify-content: flex-start;
    }
    .dashboard-media-plan__summary {
        grid-template-columns: 1fr;
    }
    .dashboard-media-task {
        grid-template-columns: 1fr;
    }
    .dashboard-media-task__score {
        place-items: start;
        min-height: auto;
        text-align: left;
    }
    .dashboard-lead-card {
        grid-template-columns: 1fr;
    }
    .dashboard-followup-grid {
        grid-template-columns: 1fr;
    }
    .dashboard-reply-template-grid {
        grid-template-columns: 1fr;
    }
    .dashboard-lead-card__meta {
        padding-left: 0;
        padding-top: 14px;
        border-left: 0;
        border-top: 1px solid #d8e7f0;
    }
    .dashboard-followup-card__actions .btn {
        width: auto;
        justify-content: flex-start;
    }
    .dashboard-lead-card__actions .btn {
        width: auto;
        justify-content: flex-start;
    }
    .dashboard-nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .support-overview {
        grid-template-columns: 1fr;
    }
    .support-panel-head,
    .support-thread-panel__head,
    .support-section__head {
        display: grid;
    }
    .dashboard-subscription-card {
        align-items: stretch;
        flex-direction: column;
    }
    .dashboard-subscription-card__actions {
        justify-content: stretch;
    }
    .dashboard-subscription-card__actions form,
    .dashboard-subscription-card__actions .btn {
        width: 100%;
    }
    .support-attachments {
        grid-template-columns: 1fr;
    }
    .support-message,
    .support-message--support {
        justify-self: stretch;
        max-width: 100%;
    }
}

* { box-sizing: border-box; }
body {
    font-size: var(--font-size-body);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-body);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    margin: 0;
    color: var(--bsa-text);
    background: linear-gradient(180deg, #ffffff 0%, var(--bsa-page) 100%);
    font-family: "Plus Jakarta Sans", "Segoe UI", Arial, sans-serif;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }

body.is-loading {
    overflow: hidden;
}

.site-loader {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: grid;
    place-items: center;
    padding: 24px;
    background: var(--bsa-white);
    opacity: 1;
    visibility: visible;
    transition: opacity .22s ease, visibility .22s ease;
}
.site-loader img {
    width: min(220px, 40vw);
    height: auto;
    filter: drop-shadow(0 14px 24px rgba(18, 44, 90, .12));
}
.site-loader.is-loaded {
    opacity: 0;
    visibility: hidden;
}

.ticker {
    position: relative;
    height: 30px;
    overflow: hidden;
    background: var(--bsa-navy);
    color: #dfeaf4;
    font-size: 13px;
}
.ticker__track {
    position: absolute;
    inset: 0 auto auto 0;
    display: flex;
    gap: 34px;
    width: max-content;
    animation: ticker 45s linear infinite;
    padding: 6px 0;
}
.ticker__track a { white-space: nowrap; }
@keyframes ticker { from { transform: translateX(0); } to { transform: translateX(-50%); } }

.site-header {
    padding-inline: clamp(1rem, 2.2vw, 2rem);
    border-bottom-color: var(--color-border-subtle);
    position: sticky;
    top: 0;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 72px;
    padding: 0 28px;
    background: rgba(255,255,255,.96);
    border-bottom: 1px solid var(--bsa-border);
    box-shadow: 0 10px 24px rgba(18, 44, 90, .05);
    backdrop-filter: blur(12px);
}
.brand {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    min-width: 0;
    color: var(--bsa-navy);
}
.brand__logo {
    max-height: var(--size-logo-header);
    display: block;
    width: auto;
    height: 46px;
    max-width: min(280px, 62vw);
}
.site-header__menu {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-width: 0;
}
.main-nav {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    gap: 2.5em;
    min-width: 0;
    font-weight: 600;
    font-size: 14px;
}
.main-nav a:hover, .main-nav a.is-active, .link-muted:hover {
    color: var(--bsa-pink);
}
.header-actions { display: flex; align-items: center; gap: 1.5em; }
.site-header .nav-toggle {
    display: none;
    align-items: center;
}
.nav-toggle svg {
    width: 18px;
    height: 18px;
}
.link-muted { color: var(--bsa-muted); font-weight: 600; }
.saved-link {
    min-width: var(--size-control-md);
    min-height: var(--size-control-md);
    justify-content: center;
    border-radius: var(--radius-control);
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--bsa-navy);
    font-weight: 800;
}
.saved-link svg {
    width: 18px;
    height: 18px;
}
.saved-link--mobile {
    display: none;
}
.compact-select { width: 86px; }

.btn:hover {
    border-color: var(--color-border-strong);
    box-shadow: 0 12px 22px rgba(18, 44, 90, .08);
}
.btn-primary:hover,
.btn-red:hover {
    box-shadow: 0 14px 24px rgba(236, 98, 113, .2);
}
.btn.is-disabled {
    pointer-events: none;
    opacity: .45;
}
.icon-btn {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    cursor: pointer;
}
.icon-btn svg, .btn svg, .listing-card__location svg, .listing-card__seller svg, .socials svg { width: 18px; height: 18px; }

.section {
    padding-inline: var(--layout-gutter);
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px;
}
.section--full {
    max-width: none;
    width: 100%;
    padding-left: 60px;
    padding-right: 60px;
}
.homepage-section.seller-free-section .seller-free-callout {
    max-width: none;
    padding-left: 60px;
    padding-right: 60px;
}
.home-listing-section {
    padding-bottom: 28px;
}
@media (max-width: 640px) {
    .home-listing-section .grid.listing-grid {
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: min(84vw, 336px);
        gap: 20px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-padding-inline: 2px;
        scroll-snap-type: x mandatory;
        scrollbar-width: thin;
        scrollbar-color: rgba(18, 78, 120, .42) transparent;
    }
    .home-listing-section .grid.listing-grid .listing-card {
        min-width: 0;
        scroll-snap-align: start;
    }
}
.section--tight { padding-top: 34px; padding-bottom: 34px; }
.section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}
.section-head > div {
    min-width: 0;
}
.section-head h1, .section-head h2 { margin: 0; color: var(--bsa-navy); font-size: 34px; line-height: 1.08; overflow-wrap: anywhere; }
.section-head p {
    line-height: var(--line-height-body);
    max-width: 680px;
    margin: 8px 0 0;
    color: var(--bsa-muted);
    overflow-wrap: anywhere;
}
.inventory-page {
    padding-top: 26px;
}
.inventory-page > .section-head {
    margin-bottom: 12px;
}

.hero {
    min-height: 20vh;
    display: grid;
    place-items: center;
    padding: 52px 24px;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--color-brand-navy);
}
.hero__video {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(90deg, rgba(8,35,62,.86), rgba(8,35,62,.6));
}
.hero__content { position: relative; z-index: 2; width: min(1200px, 100%); color: var(--bsa-white); }
.hero-copy {
    margin-bottom: 28px;
}
.hero-copy__text {
    padding: 1vw 4vw;
}
.hero h1 {
    color: var(--color-text-inverse);
    margin: 0 0 22px;
    font-size: clamp(34px, 5vw, 58px);
    line-height: 1.02;
    letter-spacing: 0;
    text-align: center;
}

.hero-copy p {
    color: rgba(255,255,255,.88);
    font-size: clamp(16px, 2vw, 20px);
    line-height: 1.6;
    text-align: center;
    margin: 0 10vw;
}
.event-hero__content {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    align-items: start;
    gap: 24px;
}
.event-hero__content h1 {
    margin: 0;
    max-width: 10ch;
}
.event-hero__meta {
    display: grid;
    gap: 12px;
    width: 100%;
    max-width: none;
}
.event-hero__meta-item {
    display: grid;
    gap: 6px;
    padding: 16px 18px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 10px;
    background: rgba(8, 24, 39, .42);
    box-shadow: 0 16px 30px rgba(5, 15, 26, .18);
    backdrop-filter: blur(10px);
}
.event-hero__meta-label {
    color: rgba(255,255,255,.72);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.event-hero__meta-item strong {
    color: var(--bsa-white);
    font-size: clamp(20px, 2.2vw, 28px);
    font-weight: 700;
    line-height: 1.16;
}
.hero-action-panel {
    position: relative;
    z-index: 4;
    isolation: isolate;
    display: grid;
    gap: 20px;
    margin-top: 22px;
    padding: 20px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(8,35,62,.78), rgba(8,35,62,.6));
    box-shadow: 0 18px 50px rgba(3, 16, 35, .24);
    backdrop-filter: blur(14px);
}
.hero-action-panel.hero-action-panel--modal-open {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.hero-quick-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 0;
}
.hero-quick-links__label {
    color: rgba(255,255,255,.76);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.hero-quick-links a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 0 15px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.09);
    color: var(--bsa-white);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: background .16s ease, border-color .16s ease, transform .16s ease;
}
.hero-quick-links a:hover {
    border-color: rgba(255,255,255,.38);
    background: rgba(255,255,255,.16);
}
.hero-quick-links a svg {
    width: 14px;
    height: 14px;
}
.seller-free-section {
    position: relative;
    padding: 0;
    background:
        radial-gradient(circle at 82% 26%, rgba(236, 98, 113, .12), transparent 18%),
        linear-gradient(135deg, rgba(255,248,249,.98) 0%, rgba(246,249,252,.98) 46%, rgba(240,244,248,.98) 100%);
    border-top: 1px solid rgba(18, 44, 90, .06);
    border-bottom: 1px solid rgba(18, 44, 90, .06);
}
.seller-free-callout {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(240px, 320px);
    align-items: center;
    gap: 22px 28px;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 38px 28px;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--bsa-navy);
    text-decoration: none;
    box-shadow: none;
    transition: background-color .16s ease;
}
.seller-free-callout::before {
    content: "";
    position: absolute;
    inset: 18px auto 18px 0;
    width: 5px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--bsa-red) 0%, rgba(236, 98, 113, .18) 100%);
    opacity: .95;
}
.seller-free-callout > * {
    position: relative;
    min-width: 0;
}
.seller-free-callout__body {
    display: grid;
    gap: 10px;
    max-width: 860px;
    padding-left: 22px;
}
.seller-free-callout__eyebrow {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.seller-free-callout:hover {
    background: rgba(255,255,255,.18);
}
.seller-free-callout__kicker {
    color: var(--bsa-red);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.seller-free-callout__badge {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid rgba(18, 44, 90, .08);
    background: rgba(255,255,255,.82);
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 850;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.55);
}
.seller-free-callout strong {
    display: block;
    color: var(--bsa-navy);
    font-size: clamp(26px, 2.4vw, 36px);
    line-height: 1.03;
    letter-spacing: 0;
}
.seller-free-callout__copy {
    color: var(--bsa-text);
    max-width: 720px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.55;
}
.seller-free-callout__benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 4px;
}
.seller-free-callout__benefits span {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    border: 1px solid rgba(18, 44, 90, .1);
    border-radius: 999px;
    background: rgba(255, 255, 255, .9);
    color: var(--bsa-red);
    font-size: 12px;
    font-weight: 800;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.45);
}
.seller-free-callout__aside {
    display: grid;
    gap: 10px;
    justify-items: start;
    align-self: stretch;
    width: 100%;
    padding: 18px 20px;
    border: 1px solid rgba(18, 44, 90, .09);
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.78) 100%);
    box-shadow: 0 18px 36px rgba(18, 44, 90, .08);
}
.seller-free-callout__aside-label {
    color: var(--bsa-red);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.seller-free-callout__aside-copy {
    color: var(--bsa-text);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.55;
}
.seller-free-callout__action {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    justify-content: center;
    align-self: end;
    width: 100%;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 0.25rem;
    border-color: var(--bsa-pink);
    background: var(--bsa-pink);
    color: var(--bsa-white);
    font-size: 15px;
    font-weight: 850;
    white-space: nowrap;
    box-shadow: 0 14px 24px rgba(236, 98, 113, .2);
}
.seller-free-callout__action svg {
    width: 17px;
    height: 17px;
}
.inventory-search-head {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 12px;
}
.inventory-search-head span {
    display: block;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.inventory-search-head strong {
    display: block;
    margin-top: 3px;
    color: var(--bsa-navy);
    font-size: 16px;
}
.inventory-sort {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.inventory-sort select {
    min-width: 210px;
    min-height: 42px;
    padding: 0 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 15px;
    font-weight: 650;
    letter-spacing: 0;
    text-transform: none;
}
.inventory-sort-row {
    display: flex;
    justify-content: flex-end;
    margin: 0 0 22px;
}
.inventory-sort--standalone {
    padding: 10px 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.hero-search__bar {
    display: grid;
    grid-template-columns: minmax(170px, 1.35fr) minmax(130px, .82fr) minmax(130px, .78fr) minmax(135px, .82fr) minmax(135px, .82fr) minmax(165px, .9fr) 72px;
    min-height: 72px;
    border-radius: 0.25rem;
    background: rgba(255,255,255,.98);
    box-shadow: 0 22px 45px rgba(8, 35, 62, .24), inset 0 1px 0 rgba(255,255,255,.8);
    overflow: visible;
}
.hero-search--compact .hero-search__bar {
    border-color: #c8d8e6;
    box-shadow: 0 14px 30px rgba(8, 35, 62, .12);
}
.hero-search__segment {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
    min-height: 72px;
    padding: 0 16px;
    border: 0;
    border-right: 1px solid #dbe5ee;
    background: rgba(255,255,255,.96);
    color: var(--bsa-navy);
    font-size: 18px;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    transition: background .18s ease, color .18s ease, box-shadow .18s ease;
    line-height: 1.3;
}
.hero-search__make {
    align-items: center;
    min-height: 72px;
    border-top-left-radius: 6px;
    border-bottom-left-radius: 6px;
}
.hero-search__segment:hover,
.hero-search__segment.is-open {
    background: linear-gradient(180deg, #fbfdff, #eef6fb);
    color: var(--bsa-pink);
    box-shadow: inset 0 -3px 0 var(--bsa-pink);
}
.hero-search__segment svg {
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
}
.make-select {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    min-width: 0;
    width: 100%;
    min-height: 0;
}
.make-kicker {
    display: none;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .05em;
    line-height: 1;
    text-transform: uppercase;
}
.hero-search__make.is-open .make-kicker,
.hero-search__make:focus-within .make-kicker,
.hero-search__make.has-query .make-kicker,
.make-select:has(.make-chip) .make-kicker {
    display: block;
}
.make-chips {
    display: none;
    align-items: center;
    flex-wrap: nowrap;
    gap: 6px;
    min-height: 0;
}
.make-chips:has(.make-chip) {
    display: flex;
}
.make-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: 130px;
    min-height: 28px;
    padding: 0 9px;
    border: 1px solid #c9dce9;
    border-radius: 999px;
    background: #f4f9fc;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 750;
}
.make-chip--more {
    border-color: transparent;
    background: transparent;
    color: var(--bsa-pink);
    padding: 0 2px;
}
.make-chip span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.make-chip button {
    border: 0;
    background: transparent;
    color: var(--bsa-muted);
    cursor: pointer;
    line-height: 1;
    padding: 0;
}
.hero-search__make input {
    flex: 0 0 auto;
    width: 100%;
    min-width: 100px;
    padding-right: 36px;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--bsa-navy);
    font-size: 18px;
}
.hero-search__make .search-field-clear {
    right: 0;
}
.hero-search__make .search-field-clear svg {
    width: 16px;
    height: 16px;
}
.hero-search__make input::placeholder,
.hero-popover input::placeholder {
    color: var(--bsa-muted);
    opacity: 1;
}
.hero-search__filters {
    justify-content: center;
}
.hero-search__submit {
    display: grid;
    place-items: center;
    justify-self: start;
    width: calc(100% + 2px);
    max-width: none;
    margin: 0;
    border: 0;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    cursor: pointer;
    background: var(--color-brand-ocean);
    color: var(--color-text-inverse);
}
.hero-search__submit:hover {
    background: var(--color-brand-ocean-hover);
}
.hero-search__submit svg {
    width: 28px;
    height: 28px;
}
.hero-search__submit-label {
    display: none;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
}
.hero-popover {
    position: absolute;
    z-index: 12;
    top: 84px;
    display: none;
    width: 400px;
    border: 1px solid #cfdde8;
    border-radius: 0.25rem;
    background: #f9fcfe;
    color: var(--bsa-text);
    box-shadow: 0 20px 45px rgba(8, 35, 62, .24);
    overflow: hidden;
    padding: 15px;
}
.hero-popover.is-open { display: block; }
#location-popover { width: 300px; padding: 14px 14px 8px; }
#class-popover { width: 380px; padding: 15px; }
.hero-popover--make {
    width: 390px;
}
.class-popover-grid {
    display: grid;
    gap: 8px;
}
.class-option-group {
    display: grid;
    gap: 4px;
}
.class-option-group > span {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.class-option-list {
    display: grid;
    max-height: 124px;
    overflow: auto;
    border: 1px solid #d8e4ee;
    border-radius: 0.25rem;
    background: #ffffff;
}
.class-option {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
    padding: 6px 8px;
    border-bottom: 1px solid #edf3f7;
    cursor: pointer;
}
.class-option:last-child {
    border-bottom: 0;
}
.class-option input {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--bsa-pink);
}
.class-option span {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}
.class-option:has(input:checked) {
    background: rgba(23, 111, 166, .09);
}
.class-option:has(input:checked) span {
    color: var(--bsa-pink);
}
.make-popover__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 18px 14px;
    border-bottom: 1px solid #e3ebf2;
    background:
        linear-gradient(135deg, rgba(23,111,166,.1), rgba(255,255,255,0) 58%),
        #ffffff;
}
.make-popover__head span {
    display: block;
    color: var(--bsa-pink);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.make-popover__head strong {
    display: block;
    margin-top: 3px;
    color: var(--bsa-navy);
    font-size: 17px;
}
.make-popover__head em {
    flex: 0 0 auto;
    padding: 5px 9px;
    border: 1px solid #d9e5ee;
    border-radius: 999px;
    color: var(--bsa-muted);
    background: #f5f9fc;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}
.make-selected-label {
    display: none;
    padding: 14px 18px 4px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}
.make-selected-label.is-visible {
    display: block;
}
.make-results {
    display: grid;
    gap: 8px;
    max-height: 390px;
    padding: 12px;
    overflow: auto;
}
.make-result {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 66px;
    padding: 8px;
    border: 1px solid transparent;
    border-radius: 0.25rem;
    background: transparent;
    color: var(--bsa-navy);
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.make-result--model {
    grid-template-columns: 30px 104px minmax(0, 1fr) 26px;
}
.make-result__thumb,
.make-result__logo {
    display: grid;
    place-items: center;
    width: 74px;
    height: 42px;
    border-radius: 0.25rem;
    background: linear-gradient(135deg, #edf5fa, #f9fcfe);
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 800;
    overflow: hidden;
}
.make-result__thumb {
    width: 104px;
    height: 54px;
    border: 1px solid #dbe5ee;
}
.make-result__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.make-result__branch::before {
    content: "";
    position: absolute;
    left: 12px;
    top: 0;
    width: 14px;
    height: 30px;
    border-left: 2px solid #b7c8d8;
    border-bottom: 2px solid #b7c8d8;
    border-bottom-left-radius: 8px;
}
.make-result__branch {
    position: relative;
    width: 24px;
    height: 44px;
    text-align: center;
    font-size: 0;
}
.make-result__name {
    display: block;
    overflow: hidden;
    color: var(--bsa-navy);
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.make-result__type {
    display: block;
    margin-top: 4px;
    color: var(--bsa-muted);
    font-size: 14px;
}
.make-result__check {
    position: relative;
    width: 22px;
    height: 22px;
    border: 2px solid #c9d6e2;
    border-radius: 50%;
    background: var(--bsa-white);
}
.make-result__check::after {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 50%;
    background: transparent;
}
.make-result:hover {
    border-color: #d7e8f2;
    background: #ffffff;
}
.make-result:hover .make-result__name {
    color: var(--bsa-pink);
}
.make-result.is-selected {
    border-color: rgba(23,111,166,.35);
    background: #eef7fc;
}
.make-result.is-selected .make-result__check {
    border-color: var(--bsa-pink);
}
.make-result.is-selected .make-result__check::after {
    background: var(--bsa-pink);
}
.make-empty {
    padding: 20px 18px;
    border: 1px dashed #cfdae4;
    border-radius: 0.25rem;
    color: var(--bsa-muted);
    background: #ffffff;
    font-weight: 650;
}
.make-popover__foot {
    display: grid;
    grid-template-columns: 1fr;
    border-top: 1px solid #e3ebf2;
    background: #ffffff;
}
.make-popover__foot .filter-link {
    min-height: 44px;
    margin: 0;
    padding: 0 18px;
}
.hero-popover__tabs {
    display: flex;
    align-items: center;
    gap: 28px;
    padding: 28px 16px 14px;
    border-bottom: 1px solid #eef0f4;
}
.hero-popover__tabs button {
    border: 0;
    background: transparent;
    color: #69778d;
    font-size: 24px;
    font-weight: 500;
    cursor: pointer;
}
.hero-popover__tabs button.is-active {
    color: var(--bsa-pink);
    text-decoration: underline;
    text-underline-offset: 14px;
    text-decoration-thickness: 2px;
}
.hero-popover__tabs span {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border: 1px solid #e1e5ec;
    border-radius: 50%;
    color: #738197;
}
.dual-range {
    --range-start: 0%;
    --range-end: 100%;
    position: relative;
    height: 44px;
}
.dual-range__track {
    position: absolute;
    left: 0;
    right: 0;
    top: 19px;
    height: 6px;
    border-radius: 999px;
    background:
        linear-gradient(
            to right,
            #dfe6ee 0%,
            #dfe6ee var(--range-start),
            var(--bsa-navy) var(--range-start),
            var(--bsa-pink) var(--range-end),
            #dfe6ee var(--range-end),
            #dfe6ee 100%
        );
}
.dual-range__input {
    position: absolute;
    inset: 0;
    width: 100%;
    margin: 0;
    background: transparent;
    pointer-events: none;
    appearance: none;
    -webkit-appearance: none;
}
.dual-range__input::-webkit-slider-runnable-track {
    height: 6px;
    background: transparent;
}
.dual-range__input::-moz-range-track {
    height: 6px;
    background: transparent;
}
.dual-range__input::-webkit-slider-thumb {
    width: 28px;
    height: 28px;
    margin-top: -11px;
    border: 5px solid var(--bsa-white);
    border-radius: 50%;
    background: var(--bsa-pink);
    box-shadow: 0 2px 12px rgba(8, 35, 62, .25);
    cursor: pointer;
    pointer-events: auto;
    appearance: none;
    -webkit-appearance: none;
}
.dual-range__input::-moz-range-thumb {
    width: 18px;
    height: 18px;
    border: 5px solid var(--bsa-white);
    border-radius: 50%;
    background: var(--bsa-pink);
    box-shadow: 0 2px 12px rgba(8, 35, 62, .25);
    cursor: pointer;
    pointer-events: auto;
}
.dual-range__input--min { z-index: 2; }
.dual-range__input--max { z-index: 3; }
.hero-scale {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    color: #657189;
    font-size: 12px;
}
.hero-range-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.hero-range-fields label {
    color: #7c8798;
    font-size: 13px;
}
.hero-range-fields input,
#hero-location-search {
    display: block;
    width: 100%;
    min-height: 50px;
    margin-top: 4px;
    padding: 10px 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 18px;
}
.hero-popover-search {
    position: relative;
}
.hero-popover-search #hero-location-search {
    margin-top: 0;
    padding-right: 48px;
}
.hero-clear {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 30px;
    border: 0;
    background: transparent;
    color: var(--bsa-pink);
    font-weight: 600;
    cursor: pointer;
    font-size: 14px;
}
.hero-clear:hover,
.hero-clear:focus,
.hero-clear:active {
    background: transparent;
}
.hero-popover .hero-clear {
    margin-top: 6px;
}
.hero-popover .hero-clear svg {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
}
.nearby-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    border: 0;
    background: transparent;
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}
.location-results {
    display: grid;
    max-height: 126px;
    margin-top: 8px;
    overflow: auto;
    border: 1px solid #d8e4ee;
    border-radius: 0.25rem;
    background: #ffffff;
}
.location-results button {
    min-height: 32px;
    padding: 6px 9px;
    border: 0;
    border-bottom: 1px solid #edf3f7;
    background: transparent;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 650;
    text-align: left;
    cursor: pointer;
}
.location-results button:last-child {
    border-bottom: 0;
}
.filter-modal {
    position: fixed;
    inset: 0;
    z-index: 9998;
    display: none;
    align-items: stretch;
    justify-content: stretch;
    padding: 0;
    background: rgba(8, 35, 62, .52);
}
.filter-modal.is-open { display: flex; }
body.filter-modal-open .site-header,
body.filter-modal-open .ticker,
body.filter-modal-open .listing-card__actions,
body.filter-modal-open .listing-card__media-bottom,
body.filter-modal-open .compare-tray {
    visibility: hidden;
    pointer-events: none;
}
.filter-modal__panel {
    width: 100%;
    max-width: none;
    height: 100vh;
    max-height: 100vh;
    min-height: 100vh;
    display: grid;
    grid-template-rows: auto 1fr auto;
    border-radius: 0;
    background: var(--bsa-white);
    color: #071027;
    overflow: hidden;
}
.filter-modal__head,
.filter-modal__foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #e4e7ec;
}
.filter-modal__head h2 {
    margin: 0;
    font-size: 28px;
    font-weight: 500;
}
.filter-modal__body {
    min-height: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    padding: 12px;
    overflow: auto;
}
.filter-modal__foot {
    border-top: 1px solid #e4e7ec;
    border-bottom: 0;
}
.filter-modal__foot .hero-clear {
    width: auto;
    min-height: 40px;
    padding: 0;
    border: 0;
}
.filter-modal__foot .btn {
    min-width: 148px;
    background: var(--bsa-red);
    border-color: var(--bsa-red);
}
.filter-box {
    padding: 24px;
    border: 1px solid #edf0f4;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.filter-box--wide {
    grid-column: 1 / -1;
}
.filter-box h3,
.filter-box--toggle > div {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 26px;
    color: var(--bsa-navy);
    font-size: 22px;
    font-weight: 500;
}
.filter-box--toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 22px;
}
.filter-box--toggle > div { margin: 0; }
.switch input,
.filter-cards input,
.filter-pills input { position: absolute; opacity: 0; pointer-events: none; }
.switch span {
    display: block;
    width: 36px;
    height: 20px;
    border-radius: 999px;
    background: #aeb8c3;
    position: relative;
}
.switch span::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--bsa-white);
    transition: .18s ease;
}
.switch input:checked + span { background: var(--bsa-pink); }
.switch input:checked + span::before { transform: translateX(16px); }
.filter-pills,
.filter-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.filter-pills--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.filter-cards--four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.filter-cards--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 16px;
}
.filter-pills label,
.filter-cards label {
    display: grid;
    align-content: center;
    min-height: 74px;
    padding: 12px;
    border: 1px solid #dbe1ea;
    border-radius: 0.25rem;
    cursor: pointer;
}
.filter-pills label {
    min-height: 40px;
    text-align: center;
}
.filter-cards label:has(input:checked),
.filter-pills label:has(input:checked) {
    border-color: var(--bsa-pink);
    box-shadow: inset 0 0 0 1px var(--bsa-pink);
    color: var(--bsa-pink);
}
.filter-cards strong {
    font-size: 18px;
}
.filter-cards span {
    margin-top: 5px;
}
.filter-input-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.filter-input-grid--single {
    grid-template-columns: 1fr;
}
.filter-input-grid input,
.filter-select,
.filter-search {
    width: 100%;
    min-height: 47px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 16px;
}
.filter-input-grid input,
.filter-select {
    padding: 0 14px;
}
.filter-search {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 14px;
    margin-bottom: 16px;
}
.filter-search svg {
    width: 20px;
    height: 20px;
    color: var(--bsa-muted);
}
.filter-search .search-field-clear svg {
    width: 16px;
    height: 16px;
    color: currentColor;
}
.filter-search input {
    width: 100%;
    padding: 0 36px 0 0;
    border: 0;
    outline: 0;
    color: var(--bsa-navy);
}
.filter-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    border: 0;
    background: transparent;
    color: var(--bsa-pink);
    font-weight: 700;
    cursor: pointer;
}
.filter-link svg {
    width: 18px;
    height: 18px;
}
.vessel-filter-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px;
}
.vessel-filter-columns h4 {
    margin: 0 0 18px;
    font-size: 18px;
    font-weight: 600;
}
.vessel-filter-columns label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 54px;
    border-bottom: 1px solid #edf0f4;
    font-weight: 600;
}
.vessel-filter-columns input {
    width: 20px;
    height: 20px;
    accent-color: var(--bsa-pink);
}
.search-panel {
    padding: 18px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 0.25rem;
    background: rgba(255,255,255,.96);
    color: var(--bsa-text);
}
.search-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.field { display: flex; flex-direction: column; gap: 7px; }
.field label { color: var(--bsa-muted); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.field input, .field select, .field textarea, .range-popover {
    width: 100%;
    min-height: 42px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    padding: 9px 11px;
}
.field textarea {
    min-height: 132px;
    resize: vertical;
}
.field small {
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.45;
}
.user-image-field__tiles {
    margin-bottom: 4px;
}
.phone-input-group {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 10px;
    align-items: stretch;
    text-transform: none;
}
.phone-input-group select,
.phone-input-group input {
    min-width: 0;
}
.phone-input-group select {
    width: 132px;
}
@media (max-width: 560px) {
    .phone-input-group {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .phone-input-group select {
        width: 100%;
    }
}
@media (max-width: 440px) {
    .media-upload-field__tiles {
        grid-template-columns: minmax(0, 1fr);
    }
}
.field--wide { grid-column: span 2; }
.field--button { justify-content: end; }
.range-popover { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.range-popover input[type="range"] { grid-column: 1 / -1; padding: 0; min-height: 22px; }
.listing-tools {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 190px 220px auto;
    gap: 12px;
    align-items: end;
    margin: -8px 0 22px;
    padding: 16px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-page);
}
.listing-tools .field span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}
.filter-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 20px;
}
.filter-summary span,
.filter-summary a {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 15px;
    border: 1px solid var(--bsa-border);
    border-radius: 999px;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 12px;
    letter-spacing: 0.5px;
}
.filter-summary a {
    border-color: var(--bsa-pink);
    color: var(--bsa-pink);
    font-weight: 800;
}
.saved-searches-panel {
    display: grid;
    gap: 20px;
    margin: 0 0 20px;
    padding: 18px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: linear-gradient(180deg, #fff, #f8fbfd);
}
.saved-searches-panel[hidden] {
    display: none;
}
.saved-searches-panel__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 20px;
    align-items: center;
}
.saved-searches-panel__head h2 {
    margin: 5px 0 6px;
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.2;
}
.saved-searches-panel__head p,
.saved-searches-empty {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.saved-searches-panel__count {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid #d6e5ee;
    border-radius: 999px;
    background: #eef7fc;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}
.saved-searches-panel__count strong {
    color: var(--bsa-navy);
}
.saved-search-watch-summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: stretch;
    min-width: 0;
}
.saved-search-watch-summary[hidden] {
    display: none;
}
.saved-search-watch-summary__cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    min-width: 0;
}
.saved-search-watch-summary__cards article {
    min-width: 0;
    padding: 10px 11px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.saved-search-watch-summary__cards span,
.saved-search-watch-summary__cards strong,
.saved-search-watch-summary__cards small {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.saved-search-watch-summary__cards span {
    color: var(--bsa-muted);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.saved-search-watch-summary__cards strong {
    margin-top: 4px;
    color: var(--bsa-navy);
    font-size: 18px;
    line-height: 1.15;
}
.saved-search-watch-summary__cards small {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 11px;
}
.saved-search-watch-summary .btn {
    align-self: stretch;
    min-height: 100%;
    white-space: nowrap;
}
.search-concierge-card {
    display: grid;
    gap: 20px;
    min-width: 0;
    padding: 18px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23,111,166,.10), rgba(255,255,255,0) 58%),
        #fff;
    box-shadow: 0 10px 24px rgba(12, 42, 68, .06);
}
.search-concierge-card__head {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
    min-width: 0;
}
.search-concierge-card__head > span {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.search-concierge-card__head h2 {
    margin: 4px 0 6px;
    color: var(--bsa-navy);
    font-size: 20px;
    line-height: 1.2;
}
.search-concierge-card__head p:last-child {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.5;
}
.search-concierge-card__facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
}
.search-concierge-card__facts div {
    min-width: 0;
    padding: 10px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.search-concierge-card__facts dt,
.search-concierge-card__facts dd {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.search-concierge-card__facts dt {
    color: var(--bsa-muted);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.search-concierge-card__facts dd {
    margin: 4px 0 0;
    color: var(--bsa-navy);
    font-size: 16px;
    font-weight: 900;
}
.search-concierge-card__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.search-concierge-card__actions .btn {
    min-width: 0;
    width: 100%;
}
.search-watch-guide {
    display: grid;
    gap: 20px;
    min-width: 0;
    margin: 0 0 18px;
    padding: 18px;
    border: 1px solid #d5e3ec;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(11,45,77,.08), rgba(255,255,255,0) 60%),
        #fff;
    box-shadow: 0 10px 24px rgba(12, 42, 68, .05);
}
.search-watch-guide__head {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
    min-width: 0;
}
.search-watch-guide__head > span {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
}
.search-watch-guide__head h2 {
    margin: 4px 0 6px;
    color: var(--bsa-navy);
    font-size: 20px;
    line-height: 1.2;
}
.search-watch-guide__head p:last-child {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.5;
}
.search-watch-guide__steps {
    display: grid;
    gap: 8px;
}
.search-watch-guide__steps div {
    display: grid;
    grid-template-columns: 26px minmax(0, 1fr);
    gap: 2px 9px;
    min-width: 0;
    padding: 10px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.search-watch-guide__steps svg,
.search-watch-guide__steps i {
    grid-row: span 2;
    width: 18px;
    height: 18px;
    margin-top: 1px;
    color: var(--bsa-pink);
}
.search-watch-guide__steps strong,
.search-watch-guide__steps span {
    min-width: 0;
}
.search-watch-guide__steps strong {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.2;
}
.search-watch-guide__steps span {
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.4;
}
.search-watch-value {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    min-width: 0;
}
.search-watch-value article {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 2px 8px;
    min-width: 0;
    padding: 10px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #fff;
}
.search-watch-value svg,
.search-watch-value i {
    grid-row: span 3;
    width: 18px;
    height: 18px;
    margin-top: 1px;
    color: var(--bsa-pink);
}
.search-watch-value span,
.search-watch-value strong,
.search-watch-value small {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}
.search-watch-value span,
.search-watch-value small {
    color: var(--bsa-muted);
}
.search-watch-value span {
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .06em;
    line-height: 1.1;
    text-transform: uppercase;
    white-space: nowrap;
}
.search-watch-value strong {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
}
.search-watch-value small {
    font-size: 11px;
    line-height: 1.35;
}
.search-watch-guide__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.search-watch-guide__actions .btn {
    min-width: 0;
    width: 100%;
}
.search-brief-output {
    display: grid;
    gap: 8px;
    min-width: 0;
    padding: 12px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.search-brief-output[hidden] {
    display: none;
}
.search-brief-output label {
    display: grid;
    gap: 6px;
    min-width: 0;
}
.search-brief-output span {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.search-brief-output textarea {
    width: 100%;
    min-height: 144px;
    resize: vertical;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-text);
    font-family: inherit;
    font-size: 13px;
    line-height: 1.45;
}
.search-brief-output p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.45;
}
@media (max-width: 520px) {
    .search-concierge-card__facts,
    .search-concierge-card__actions,
    .search-watch-value,
    .search-watch-guide__actions {
        grid-template-columns: 1fr;
    }
}
.price-watch-strip {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr);
    gap: 12px;
    align-items: stretch;
    min-width: 0;
    margin: 18px 0 14px;
    padding: 16px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(214, 59, 59, .10), rgba(255, 255, 255, 0) 52%),
        #fff;
    box-shadow: 0 12px 28px rgba(12, 42, 68, .07);
}
.price-watch-strip__head,
.price-watch-strip__facts,
.price-watch-strip__list,
.price-watch-strip__actions {
    min-width: 0;
}
.price-watch-strip__head {
    display: grid;
    gap: 6px;
}
.price-watch-strip__head > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid #f1c9c9;
    border-radius: 999px;
    background: #fff5f5;
    color: #a72828;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.price-watch-strip__head svg,
.price-watch-strip__head i {
    width: 14px;
    height: 14px;
}
.price-watch-strip__head h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.18;
}
.price-watch-strip__head p {
    max-width: 680px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.5;
}
.price-watch-strip__facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    grid-column: 1 / -1;
}
.price-watch-strip__facts div {
    min-width: 0;
    padding: 10px 11px;
    border: 1px solid #d9e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.price-watch-strip__facts span,
.price-watch-strip__facts strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.price-watch-strip__facts span {
    color: var(--bsa-muted);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.price-watch-strip__facts strong {
    margin-top: 4px;
    color: var(--bsa-navy);
    font-size: 18px;
    line-height: 1.15;
}
.price-watch-strip__list {
    display: grid;
    gap: 7px;
}
.price-watch-strip__list a {
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 10px 11px;
    border: 1px solid #d9e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-text);
}
.price-watch-strip__list a:hover {
    border-color: #b9d7e8;
    color: var(--bsa-pink);
}
.price-watch-strip__list strong,
.price-watch-strip__list span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.price-watch-strip__list strong {
    color: var(--bsa-navy);
    font-size: 13px;
}
.price-watch-strip__list span {
    color: var(--bsa-muted);
    font-size: 12px;
}
.price-watch-strip__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    grid-column: 1 / -1;
}
.inventory-control-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-width: 0;
    margin: 0 0 20px 0px;
    padding: 6px 10px;
    border: 1px solid #d7e6ef;
    border-radius: 0.25rem;
    background: rgba(255, 255, 255, .86);
}
.inventory-control-strip__saved {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}
.inventory-control-strip__label {
    display: grid;
    gap: 1px;
    min-width: 158px;
}
.inventory-control-strip__label strong {
    color: var(--bsa-navy);
    font-size: 13px;
    line-height: 1.15;
    white-space: nowrap;
}
.inventory-control-strip .btn {
    min-height: 32px;
    padding: 0 10px;
    font-size: 12px;
    white-space: nowrap;
}
.inventory-control-strip .btn svg {
    width: 15px;
    height: 15px;
}
.inventory-control-strip .saved-searches-empty {
    max-width: 180px;
    overflow: hidden;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.inventory-control-strip .saved-searches-dropdown {
    position: relative;
    flex: 0 0 auto;
}
.inventory-control-strip .saved-searches-dropdown[hidden] {
    display: none;
}
.inventory-control-strip .saved-searches-dropdown__toggle {
    gap: 7px;
}
.inventory-control-strip .saved-searches-dropdown__toggle strong {
    display: inline-grid;
    place-items: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: #eef7fc;
    color: var(--bsa-pink);
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
}
.inventory-control-strip .saved-searches-dropdown__toggle [data-lucide="chevron-down"] {
    transition: transform .16s ease;
}
.inventory-control-strip .saved-searches-dropdown.is-open .saved-searches-dropdown__toggle [data-lucide="chevron-down"] {
    transform: rotate(180deg);
}
.inventory-control-strip .saved-searches-list {
    position: absolute;
    top: calc(100% + 7px);
    left: 0;
    z-index: 50;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: min(360px, calc(100vw - 32px));
    min-width: min(320px, calc(100vw - 32px));
    max-height: 380px;
    gap: 8px;
    padding: 8px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 18px 42px rgba(12, 42, 68, .16);
    overflow: auto;
}
.inventory-control-strip .saved-searches-list[hidden] {
    display: none;
}
.inventory-control-strip .saved-search-item {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 7px;
    min-width: 0;
    max-width: none;
    min-height: 0;
    padding: 10px 12px 12px;
}
.inventory-control-strip .saved-search-item a {
    gap: 5px;
}
.inventory-control-strip .saved-search-item small,
.inventory-control-strip .saved-search-item em,
.inventory-control-strip .saved-search-item__change {
    display: none;
}
.inventory-control-strip .saved-search-item__media {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding-right: 34px;
    margin-bottom: 2px;
}
.inventory-control-strip .saved-search-item span {
    font-size: 9px;
}
.inventory-control-strip .saved-search-item strong {
    margin-top: 0;
    font-size: 13px;
}
.inventory-control-strip .saved-search-item .icon-btn {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 24px;
    height: 24px;
    min-height: 24px;
    border-color: rgba(11,45,77,.16);
    background: rgba(255,255,255,.92);
    box-shadow: 0 4px 12px rgba(12,42,68,.12);
}
.js-save-search.is-disabled {
    pointer-events: auto;
    border-color: #d7e6ef;
    background: #f8fbfd;
    color: var(--bsa-muted);
}
.inventory-control-strip__sort {
    flex: 0 0 auto;
    margin-left: auto;
}
.sort-form label {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.sort-form label > svg {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    color: var(--bsa-pink);
}
.sort-form select {
    min-width: 190px;
    height: 32px;
    padding: 0 34px 0 11px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 800;
}
.saved-searches-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.saved-search-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.saved-search-item.is-current {
    border-color: rgba(23,111,166,.42);
    background: #eef7fc;
}
.saved-search-item.has-market-change {
    border-color: rgba(214, 59, 59, .36);
    box-shadow: 0 10px 24px rgba(12, 42, 68, .08);
}
.saved-search-item a {
    display: grid;
    gap: 4px;
    min-width: 0;
}
.saved-search-item__media {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
    margin-bottom: 4px;
}
.saved-search-item__media img {
    width: 100%;
    aspect-ratio: 1.42 / 1;
    border-radius: 0.25rem;
    background: var(--bsa-panel);
    object-fit: cover;
}
.saved-search-item span,
.saved-search-item strong,
.saved-search-item small,
.saved-search-item em {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.saved-search-item span {
    color: var(--bsa-pink);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.saved-search-item strong {
    margin-top: 4px;
    color: var(--bsa-navy);
    font-size: 15px;
}
.saved-search-item small {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 12px;
}
.saved-search-item__facts {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 5px;
}
.saved-search-item__facts span,
.saved-search-item .saved-search-item__facts span {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    min-height: 22px;
    padding: 0 7px;
    border: 1px solid #d6e5ee;
    border-radius: 999px;
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0;
    line-height: 1;
    text-transform: none;
}
.saved-search-item__change-list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 7px;
}
.saved-search-item__change-list .saved-search-item__change,
.saved-search-item .saved-search-item__change {
    display: inline-grid;
    gap: 1px;
    max-width: 100%;
    min-height: 34px;
    padding: 5px 8px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
    letter-spacing: 0;
    line-height: 1;
    text-transform: none;
    white-space: normal;
}
.saved-search-item__change strong,
.saved-search-item__change small {
    display: block;
    overflow: hidden;
    color: inherit;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.saved-search-item__change strong {
    margin-top: 0;
    font-size: 12px;
}
.saved-search-item__change small {
    margin-top: 0;
    color: var(--bsa-muted);
    font-size: 10px;
    font-weight: 800;
}
.saved-search-item__change--up {
    border-color: rgba(23, 111, 166, .28);
    background: #eef7fc;
    color: var(--bsa-pink);
}
.saved-search-item__change--down {
    border-color: rgba(21, 115, 71, .26);
    background: #eef9f3;
    color: #157347;
}
.saved-search-item__change--neutral {
    border-color: #d6e5ee;
    background: #f8fbfd;
    color: var(--bsa-navy);
}
.saved-search-item em {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 11px;
    font-style: normal;
    line-height: 1.25;
}
.saved-searches-panel--market-watch {
    margin-bottom: 0;
}
.saved-searches-panel--market-watch .saved-searches-list {
    grid-template-columns: 1fr;
}
.saved-searches-panel--market-watch .saved-search-item {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
}
.saved-searches-panel--market-watch .saved-search-item .icon-btn {
    position: static;
    top: auto;
    right: auto;
    align-self: start;
    justify-self: end;
}
.js-save-search.is-active {
    border-color: rgba(23,111,166,.42);
    background: #eef7fc;
    color: var(--bsa-pink);
}
.detail-compare-button.is-active {
    border-color: rgba(23,111,166,.42);
    background: #eef7fc;
    color: var(--bsa-pink);
}
.related-searches {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: -6px 0 20px;
    padding: 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.related-searches span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.related-searches a {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid #cfe0eb;
    border-radius: 999px;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: bold;
}
.related-searches a:hover {
    border-color: var(--bsa-pink);
    color: var(--bsa-pink);
}
.market-pathways {
    display: grid;
    gap: 20px;
    margin: 0 0 22px;
    padding: 20px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 10px 26px rgba(12, 42, 68, .06);
}
.market-pathways__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 420px);
    gap: 20px;
    align-items: end;
}
.market-pathways__head h2 {
    margin: 5px 0 0;
    color: var(--bsa-navy);
    font-size: 24px;
    line-height: 1.15;
}
.market-pathways__head p {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.market-pathways__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.market-pathway-group {
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.market-pathway-group h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
    color: var(--bsa-navy);
    font-size: 16px;
    line-height: 1.2;
}
.market-pathway-group h3 svg {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
}
.market-pathway-list {
    display: grid;
    gap: 8px;
}
.market-pathway-list a {
    display: grid;
    min-width: 0;
    padding: 12px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.market-pathway-list a:hover {
    border-color: rgba(23, 111, 166, .45);
    background: #eef7fc;
}
.market-pathway-list strong,
.market-pathway-list span {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}
.market-pathway-list strong {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.25;
}
.market-pathway-list span {
    margin-top: 4px;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.35;
}
.inventory-intent-panel {
    display: grid;
    gap: 20px;
    margin: 20px 0 20px 0px;
    padding: 20px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23, 111, 166, .08), rgba(255, 255, 255, 0) 56%),
        var(--bsa-white);
    box-shadow: 0 12px 30px rgba(12, 42, 68, .06);
}
.inventory-intent-panel__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 420px);
    gap: 20px;
    align-items: end;
    margin-bottom: 10px;
}
.inventory-intent-panel__head h2 {
    margin: 5px 0 7px;
    color: var(--bsa-navy);
    font-size: 24px;
    line-height: 1.18;
}
.inventory-intent-panel__head p {
    max-width: 760px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.3;
    font-size: 14px;
}
.inventory-intent-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #f8fbfd;
    overflow: hidden;
}
.inventory-intent-stats div {
    min-width: 0;
    padding: 12px;
    border-right: 1px solid #dce8f0;
}
.inventory-intent-stats div:last-child {
    border-right: 0;
}
.inventory-intent-stats dt,
.inventory-intent-stats dd {
    display: block;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.inventory-intent-stats dt {
    color: var(--bsa-muted);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.inventory-intent-stats dd {
    margin-top: 4px;
    color: var(--bsa-navy);
    font-size: 17px;
    font-weight: 900;
}
.inventory-pathway-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}
.inventory-pathway-card {
    display: grid;
    align-content: start;
    gap: 13px;
    min-width: 0;
    padding: 15px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.inventory-pathway-card__title {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
}
.inventory-pathway-card__title > svg,
.inventory-pathway-card__title > i {
    width: 38px;
    height: 38px;
    padding: 9px;
    border: 1px solid #d6e5ee;
    border-radius: 0.25rem;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.inventory-pathway-card h3 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 17px;
    line-height: 1.2;
}
.inventory-pathway-card p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.45;
}
.inventory-pathway-card__links {
    display: grid;
    gap: 8px;
}
.inventory-pathway-card__links a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    min-height: 42px;
    padding: 9px 10px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.inventory-pathway-card__links a:hover {
    border-color: rgba(23, 111, 166, .45);
    background: #eef7fc;
}
.inventory-pathway-card__links span,
.inventory-pathway-card__links small {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.inventory-pathway-card__links span {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.inventory-pathway-card__links small {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 800;
}
.inventory-guide {
    display: grid;
    gap: 20px;
    margin-top: 20px;
    padding: 22px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: linear-gradient(135deg, #ffffff, #f8fbfd);
    box-shadow: 0 10px 26px rgba(12, 42, 68, .06);
}
.inventory-guide__head {
    display: grid;
    gap: 6px;
}
.inventory-guide__head h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 24px;
    line-height: 1.18;
}
.inventory-guide__head p {
    max-width: 820px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.6;
}
.inventory-guide__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.inventory-guide__grid article {
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.inventory-guide__grid h3 {
    margin: 0 0 8px;
    color: var(--bsa-navy);
    font-size: 16px;
    line-height: 1.25;
}
.inventory-guide__grid p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.55;
}
.inventory-empty-state {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 320px);
    gap: 24px;
    align-items: center;
    margin: 0 0 24px;
    padding: 28px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23,111,166,.08), rgba(255,255,255,0) 54%),
        var(--bsa-white);
}
.inventory-empty-state svg {
    width: 32px;
    height: 32px;
    margin-bottom: 12px;
    color: var(--bsa-pink);
}
.inventory-empty-state h2 {
    max-width: 720px;
    margin: 6px 0 10px;
    color: var(--bsa-navy);
    font-size: 28px;
    line-height: 1.12;
}
.inventory-empty-state p {
    max-width: 720px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.65;
}
.inventory-empty-state__actions {
    display: grid;
    gap: 10px;
}
.inventory-empty-state__actions .btn {
    width: 100%;
    justify-content: center;
}
.empty-search-recovery {
    display: grid;
    gap: 20px;
    margin: 0 0 24px;
    padding: 22px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 12px 30px rgba(12, 42, 68, .06);
}
.empty-search-recovery__head,
.empty-search-recovery__subhead {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}
.empty-search-recovery__head span {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.empty-search-recovery h2,
.empty-search-recovery h3 {
    margin: 0;
    color: var(--bsa-navy);
    line-height: 1.18;
}
.empty-search-recovery h2 {
    margin-top: 4px;
    font-size: 24px;
}
.empty-search-recovery h3 {
    font-size: 18px;
}
.empty-search-recovery__subhead p {
    max-width: 620px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.empty-search-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.empty-search-actions a {
    display: grid;
    gap: 5px;
    min-width: 0;
    padding: 14px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-text);
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}
.empty-search-actions a:hover {
    border-color: #a9c7db;
    background: #eef7fc;
    box-shadow: 0 10px 22px rgba(12, 42, 68, .07);
}
.empty-search-actions strong,
.empty-search-actions span {
    min-width: 0;
    overflow-wrap: anywhere;
}
.empty-search-actions strong {
    color: var(--bsa-navy);
    font-size: 15px;
}
.empty-search-actions span {
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.4;
}
.empty-search-recovery__listings {
    display: grid;
    gap: 20px;
}
.empty-search-concierge.search-concierge-card {
    margin: 0;
    border-color: #b9d7e8;
    background:
        linear-gradient(135deg, rgba(23,111,166,.12), rgba(255,255,255,0) 52%),
        linear-gradient(180deg, #ffffff, #f7fbfe);
}
.empty-search-concierge__facts dd {
    white-space: normal;
}
.empty-search-listing-grid {
    gap: 20px;
}
.empty-search-listing-grid .listing-card {
    min-width: 0;
}
.empty-search-listing-grid .listing-card__media {
    aspect-ratio: 1.45 / 1;
}

.grid {
    display: grid;
    gap: 20px;
}
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.section--full .grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.section-head__actions {
    display: flex;
    align-items: center;
    gap: 10px;
}
.explore-strip {
    display: grid;
    grid-template-columns: minmax(280px, .9fr) minmax(360px, 1.05fr) minmax(280px, .8fr);
    gap: 22px;
    align-items: center;
    margin-top: 28px;
    padding: 20px 22px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23, 111, 166, .08), rgba(255, 255, 255, 0) 42%),
        linear-gradient(180deg, #ffffff, #f8fbfd);
    box-shadow: 0 12px 30px rgba(12, 42, 68, .07);
}
.explore-strip__intro,
.explore-strip__actions {
    min-width: 0;
}
.explore-strip__intro {
    display: grid;
    gap: 6px;
}
.explore-strip__intro h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 30px;
    line-height: 1.08;
}
.explore-strip__intro p {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.48;
}
.explore-strip__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    min-width: 0;
    border: 1px solid #d9e8f1;
    border-radius: 0.25rem;
    background: rgba(255, 255, 255, .78);
    overflow: hidden;
}
.explore-strip__stats a {
    display: grid;
    align-content: center;
    gap: 4px;
    min-width: 0;
    min-height: 86px;
    padding: 14px;
    color: var(--bsa-text);
}
.explore-strip__stats a + a {
    border-left: 1px solid #d9e8f1;
}
.explore-strip__stats a > strong,
.explore-strip__stats a > span {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.explore-strip__stats a > strong {
    color: var(--bsa-navy);
    font-size: 23px;
    line-height: 1.05;
}
.explore-strip__stats a > span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.explore-strip__actions {
    display: grid;
    justify-items: end;
    gap: 12px;
}
.explore-strip__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}
.explore-strip__links a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 28px;
    padding: 0 15px;
    border: 1px solid #d7e6ef;
    border-radius: 999px;
    background: rgba(255, 255, 255, .76);
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 800;
}
.explore-strip__links svg {
    width: 14px;
    height: 14px;
    color: var(--bsa-pink);
}
.inventory-insights {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-bottom: 18px;
    border: 1px solid var(--bsa-border);
    background: var(--bsa-white);
}
.inventory-insights div {
    min-height: 86px;
    padding: 16px;
    border-right: 1px solid var(--bsa-border);
}
.inventory-insights div:last-child {
    border-right: 0;
}
.inventory-insights span {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.inventory-insights strong {
    display: block;
    margin-top: 7px;
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.15;
}
.hero-search--compact .inventory-insights--compact {
    margin: 8px 0 0;
    border-color: #dce8f0;
    background: rgba(255, 255, 255, .72);
    box-shadow: none;
}
.hero-search--compact .inventory-insights--compact div {
    min-height: 36px;
    padding: 6px 9px;
}
.hero-search--compact .inventory-insights--compact span {
    font-size: 9px;
    letter-spacing: 0.5px;
}
.hero-search--compact .inventory-insights--compact strong {
    margin-top: 2px;
    font-size: 12px;
    line-height: 1.1;
}
.bsa-card {
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    overflow: hidden;
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.listing-card__image,
.dealer-card__media,
.brand-card__media,
.event-card__media {
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.listing-card__image img,
.dealer-card__media img,
.brand-card__media img,
.event-card__media img {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 5px 8px;
    border-radius: 999px;
    color: var(--bsa-white);
    font-size: 12px;
    font-weight: 800;
}
.badge + .badge { left: auto; right: 12px; }
.badge-red {
    background: var(--bsa-red);
}
.badge-blue {
    background: var(--bsa-pink);
}
.badge-green {
    background: #157347;
}
.badge-navy {
    background: var(--bsa-navy);
}
.badge-icon {
    display: inline-grid;
    place-items: center;
    width: 32px;
    height: 32px;
    padding: 0;
}
.badge-icon svg {
    width: 18px;
    height: 18px;
}
.badge-icon--tour {
    height: 34px;
    min-height: 34px;
    border: 1px solid rgba(255,255,255,.42);
    border-radius: 0.25rem;
    background: rgba(9, 35, 58, .58);
    color: var(--bsa-white);
    backdrop-filter: blur(8px);
}
.badge-icon--tour svg {
    width: 18px;
    height: 18px;
    overflow: visible;
}
.badge-icon--tour text {
    fill: currentColor;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: 0;
}
.badge-icon--tour path,
.badge-icon--tour circle {
    fill: none;
    stroke: currentColor;
    stroke-width: 2.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.listing-card__media-bottom {
    position: absolute;
    inset: auto 12px 12px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.listing-card__body {
    padding: 15px 16px 16px;
}
.listing-card__title, .directory-card__title { color: var(--bsa-navy); font-size: 18px; font-weight: 800; line-height: 1.25; }
.listing-card__title {
    display: block;
}

.listing-card__price { margin-top: 6px; color: var(--bsa-text); font-size: 22px; font-weight: 800; }
.listing-card__price span {
    display: block;
    margin-top: 3px;
    color: var(--bsa-red);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .02em;
}
.listing-card__specs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin: 12px 0 0;
    background: var(--bsa-border);
    border: 1px solid var(--bsa-border);
}
.listing-card__specs div {
    min-width: 0;
    padding: 9px 8px;
    background: #f8fbfd;
}
.listing-card__specs dt {
    color: var(--bsa-muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.listing-card__specs dd {
    overflow: hidden;
    margin: 3px 0 0;
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.listing-card__meta, .directory-card__meta { margin-top: 8px; color: var(--bsa-muted); font-size: 14px; }
.listing-card__seller {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 11px;
    color: var(--bsa-pink);
    font-size: 14px;
    font-weight: 750;
}
.listing-card__compare {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    min-height: 38px;
    margin-top: 13px;
    border: 1px solid var(--bsa-border);
    background: var(--bsa-white);
    color: var(--bsa-pink);
    font-weight: 850;
}
.listing-card__compare svg {
    width: 16px;
    height: 16px;
}
.listing-card__compare.is-active {
    border-color: var(--bsa-pink);
    background: #eef7fc;
}
.listing-card__location {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    color: var(--bsa-white);
    font-size: 15px;
    font-weight: 800;
    text-shadow: 0 1px 2px rgba(0,0,0,.35);
}
.listing-card__location svg {
    flex: 0 0 auto;
}
.icon-btn--overlay {
    width: 40px;
    height: 40px;
    border-color: rgba(255,255,255,.45);
    background: rgba(10, 27, 44, .48);
    color: var(--bsa-white);
    backdrop-filter: blur(8px);
}
.icon-btn--overlay:hover,
.icon-btn--overlay.is-active {
    border-color: var(--bsa-white);
    background: rgba(214, 59, 59, .9);
}
.saved-empty {
    margin-bottom: 18px;
    padding: 22px;
    border: 1px solid var(--bsa-border);
    background: var(--bsa-white);
}
.saved-empty h2 {
    margin: 0 0 6px;
    color: var(--bsa-navy);
}
.saved-empty p {
    margin: 0;
    color: var(--bsa-muted);
}
.compare-tray {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 70;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 12px;
    width: auto;
    padding: 12px 28px;
    border: 1px solid #bfd3e1;
    border-right: 0;
    border-left: 0;
    border-bottom: 0;
    background: rgba(255,255,255,.96);
    box-shadow: 0 18px 40px rgba(8, 31, 52, .18);
    backdrop-filter: blur(10px);
}
.compare-tray[hidden] {
    display: none;
}
.compare-tray button {
    position: relative;
    z-index: 2;
    pointer-events: auto;
}
.compare-tray button svg,
.compare-tray button svg * {
    pointer-events: none;
}
.compare-tray__summary strong,
.compare-tray__summary span {
    display: block;
}
.compare-tray__summary strong {
    color: var(--bsa-navy);
}
.compare-tray__summary span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
}
.compare-tray__items {
    display: flex;
    gap: 8px;
    min-width: 0;
    overflow: auto;
}
.compare-item {
    display: flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 190px;
    min-width: 0;
    padding: 6px;
    border: 1px solid var(--bsa-border);
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-weight: 800;
    text-align: left;
}
.compare-item img {
    width: 42px;
    height: 32px;
    object-fit: cover;
}
.compare-item span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.compare-item svg {
    flex: 0 0 auto;
    width: 15px;
    height: 15px;
    margin-left: auto;
    color: var(--bsa-muted);
}
.compare-modal {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: none;
    padding: 26px;
    background: rgba(5, 20, 34, .72);
}
.compare-modal.is-open {
    display: grid;
    place-items: center;
}
.compare-modal__panel {
    width: min(1120px, 100%);
    max-height: 92vh;
    border: 1px solid var(--bsa-border);
    background: var(--bsa-white);
    overflow: hidden;
}
.compare-modal__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 20px;
    border-bottom: 1px solid var(--bsa-border);
}
.compare-modal__head h2 {
    margin: 0;
    color: var(--bsa-navy);
}
.compare-modal__body {
    max-height: calc(92vh - 74px);
    overflow: auto;
}
.compare-modal__tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 16px 20px;
    border-bottom: 1px solid var(--bsa-border);
    background: #f8fbfd;
}
.compare-modal__tools strong,
.compare-modal__tools span {
    display: block;
}
.compare-modal__tools strong {
    color: var(--bsa-navy);
}
.compare-modal__tools span {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
}
.compare-brief-output {
    padding: 16px 20px;
    border-bottom: 1px solid var(--bsa-border);
    background: #ffffff;
}
.compare-brief-output label {
    display: grid;
    gap: 8px;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.compare-brief-output textarea {
    width: 100%;
    min-height: 180px;
    resize: vertical;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    padding: 12px;
    color: var(--bsa-navy);
    background: #f8fbfd;
    font: 700 13px/1.5 "Inter", system-ui, sans-serif;
}
.compare-brief-output p {
    margin: 8px 0 0;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
}
.compare-table {
    width: 100%;
    min-width: 760px;
    table-layout: fixed;
    border-collapse: collapse;
}
.compare-table th,
.compare-table td {
    padding: 13px 14px;
    border-bottom: 1px solid var(--bsa-border);
    border-right: 1px solid var(--bsa-border);
    text-align: left;
    vertical-align: top;
}
.compare-table th {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.compare-table td {
    color: var(--bsa-navy);
    font-weight: 750;
}
.compare-table thead th {
    background: #f8fbfd;
}
.compare-table th:first-child {
    width: 128px;
}
.compare-table th:not(:first-child),
.compare-table td {
    width: calc((100% - 128px) / var(--compare-count, 4));
}
.compare-table thead a {
    display: grid;
    gap: 8px;
    color: var(--bsa-navy);
    font-size: 14px;
    letter-spacing: 0;
    text-transform: none;
}
.compare-table thead span {
    overflow-wrap: anywhere;
}
.compare-table thead img {
    width: 100%;
    height: 92px;
    object-fit: cover;
}

.panel-band { background: var(--bsa-page); border-block: 1px solid var(--bsa-border); }
.type-tile {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 82px;
    padding: 16px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    font-weight: 800;
    color: var(--bsa-navy);
}
.type-tile span { color: var(--bsa-muted); font-weight: 600; }
.panel-band--categories {
    background:
        radial-gradient(circle at top left, rgba(23,111,166,.1), rgba(23,111,166,0) 36%),
        var(--bsa-page);
}
.category-highlight-grid {
    gap: 20px;
}
.type-tile--featured {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    min-height: 150px;
    padding: 20px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,247,250,.96)),
        var(--bsa-white);
    box-shadow: 0 18px 34px rgba(11,45,77,.06);
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.type-tile--featured .type-tile__meta {
    margin-top: auto;
    padding-top: 15px;
}

.type-tile--featured:hover {
    transform: translateY(-2px);
    border-color: rgba(23,111,166,.32);
    box-shadow: 0 22px 38px rgba(11,45,77,.1);
}

.type-tile--featured strong {
    display: block;
    margin-top: 0;
    color: var(--bsa-navy);
    font-size: 26px;
    line-height: 1.05;
    letter-spacing: -.02em;
}
.type-tile .type-tile__description {
    display: block;
    margin-top: 15px;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.5;
}
.type-tile__meta {    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
    color: var(--bsa-muted);
    font-size: 14px;
    font-weight: 700;
}
.type-tile__meta svg {
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}
@media (max-width: 640px) {
    .type-tile--featured {
        min-height: 0;
    }
    .type-tile--featured strong {
        font-size: 22px;
    }
}
.feature-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.feature-row article { padding: 22px; background: var(--bsa-white); border: 1px solid var(--bsa-border); border-radius: 0.25rem; }
.feature-row__title { display: flex; gap: 10px; }
.feature-row__title svg { width: 22px; height: 22px; flex: 0 0 auto; color: var(--bsa-navy); }
.feature-row h3 { margin: 0; color: var(--bsa-navy); }
.feature-row article > p { margin-top: 12px; }
.feature-row p, .directory-card p, .brand-card p, .event-card p { color: var(--bsa-muted); line-height: 1.55; }

.dealer-directory-section,
.brand-directory-section,
.event-directory-section {
    display: grid;
    gap: 22px;
}
.brand-market-guide {
    display: grid;
    gap: 20px;
    padding: 18px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.brand-market-guide__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 430px);
    gap: 20px;
    align-items: end;
}
.brand-market-guide__head h2 {
    margin: 5px 0 0;
    color: var(--bsa-navy);
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.08;
}
.brand-market-guide__head p {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.brand-market-guide__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.brand-market-guide__grid article {
    min-width: 0;
    padding: 14px;
    border: 1px solid #dce7ef;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.brand-market-guide__grid h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 10px;
    color: var(--bsa-navy);
    font-size: 15px;
}
.brand-market-guide__grid h3 svg {
    width: 17px;
    height: 17px;
    color: var(--bsa-pink);
}
.brand-market-guide__links {
    display: grid;
    gap: 7px;
}
.brand-market-guide__links a {
    display: grid;
    gap: 3px;
    min-width: 0;
    padding: 10px;
    border: 1px solid #e4edf4;
    border-radius: 0.25rem;
    background: #fbfdff;
}
.brand-market-guide__links a:hover {
    border-color: #b9d4e6;
    background: #eef7fc;
}
.brand-market-guide__links strong,
.brand-market-guide__links span {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.brand-market-guide__links strong {
    color: var(--bsa-navy);
    font-size: 14px;
}
.brand-market-guide__links span {
    color: var(--bsa-muted);
    font-size: 12px;
}
.brand-market-guide__spotlight {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}
.brand-market-guide__spotlight a {
    min-width: 0;
    padding: 12px;
    border: 1px solid #dce7ef;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.brand-market-guide__spotlight span,
.brand-market-guide__spotlight strong,
.brand-market-guide__spotlight small {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.brand-market-guide__spotlight span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
}
.brand-market-guide__spotlight strong {
    margin-top: 4px;
    color: var(--bsa-navy);
    font-size: 18px;
}
.brand-market-guide__spotlight small {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 12px;
}
@media (max-width: 980px) {
    .brand-market-guide__head,
    .brand-market-guide__grid {
        grid-template-columns: 1fr;
    }
    .brand-market-guide__spotlight {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 560px) {
    .brand-market-guide {
        padding: 14px;
    }
    .brand-market-guide__spotlight {
        grid-template-columns: 1fr;
    }
}
.profile-hero {
    position: relative;
    display: grid;
    min-height: 380px;
    margin-bottom: 14px;
    border: 1px solid #b9d7e8;
    border-radius: 0.25rem;
    background-color: #071e35;
    background-position: center;
    background-size: cover;
    color: var(--bsa-white);
    overflow: hidden;
    box-shadow: 0 16px 38px rgba(5, 28, 48, .16);
}
.profile-hero__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(4, 20, 36, .94) 0%, rgba(5, 31, 53, .76) 48%, rgba(5, 31, 53, .34) 100%),
        linear-gradient(0deg, rgba(3, 14, 25, .72), rgba(3, 14, 25, .06) 58%);
}
.profile-hero__inner {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 20px;
    padding: 22px;
}
.profile-hero__breadcrumb {
    margin: 0;
    color: rgba(255, 255, 255, .72);
}
.profile-hero__breadcrumb a,
.profile-hero__breadcrumb span {
    color: inherit;
}
.profile-hero .listing-breadcrumb a,
.profile-hero .listing-breadcrumb span {
    color: rgba(255, 255, 255, .78);
}
.profile-hero .listing-breadcrumb a {
    font-weight: 850;
}
.profile-hero__breadcrumb a:hover {
    color: var(--bsa-white);
}
.profile-hero__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 420px);
    gap: 20px;
    align-items: end;
    min-height: 300px;
}
.profile-hero__copy {
    display: grid;
    gap: 20px;
    max-width: 960px;
}
.profile-hero__identity {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    min-width: 0;
}
.profile-hero__mark {
    display: grid;
    place-items: center;
    width: 88px;
    height: 88px;
    border: 1px solid rgba(255, 255, 255, .34);
    border-radius: 0.25rem;
    background: rgba(255, 255, 255, .94);
    color: var(--bsa-navy);
    overflow: hidden;
    box-shadow: 0 14px 28px rgba(0, 0, 0, .18);
}
.profile-hero__mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.profile-hero__mark span {
    padding: 6px;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: .08em;
    line-height: 1.05;
    text-align: center;
    overflow-wrap: anywhere;
}
.profile-hero h1 {
    margin: 0;
    color: var(--bsa-white);
    font-size: 38px;
    line-height: 1.06;
    overflow-wrap: anywhere;
    text-shadow: 0 2px 18px rgba(0, 0, 0, .28);
}
.profile-hero p {
    max-width: 780px;
    margin: 8px 0 0;
    color: rgba(255, 255, 255, .82);
    font-size: 16px;
    line-height: 1.55;
}
.profile-hero__facts,
.profile-hero__chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}
.profile-hero__facts span,
.profile-hero__facts a,
.profile-hero__chips a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 32px;
    max-width: 100%;
    padding: 0 11px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    color: var(--bsa-white);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    backdrop-filter: blur(10px);
}
.profile-hero__facts svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
}
.profile-hero__chips > span {
    color: rgba(255, 255, 255, .72);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.profile-hero__chips a:hover,
.profile-hero__facts a:hover {
    border-color: rgba(255, 255, 255, .5);
    background: rgba(255, 255, 255, .2);
}
.profile-hero__actions {
    justify-content: start;
    margin-top: 2px;
}
.profile-hero__actions .btn:not(.btn-primary) {
    border-color: rgba(255, 255, 255, .38);
    background: rgba(255, 255, 255, .96);
    color: var(--bsa-navy);
}
.profile-hero__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 0.25rem;
    background: rgba(255, 255, 255, .9);
    overflow: hidden;
    box-shadow: 0 18px 36px rgba(0, 0, 0, .2);
}
.profile-hero__stats div {
    display: grid;
    align-content: center;
    min-height: 92px;
    padding: 15px;
    border-right: 1px solid #d7e4ec;
    border-bottom: 1px solid #d7e4ec;
}
.profile-hero__stats div:nth-child(2n) {
    border-right: 0;
}
.profile-hero__stats div:nth-last-child(-n+2) {
    border-bottom: 0;
}
.profile-hero__stats span {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.profile-hero__stats strong {
    margin-top: 6px;
    color: var(--bsa-navy);
    font-size: 20px;
    line-height: 1.12;
    overflow-wrap: anywhere;
}
.dealer-profile-head {
    align-items: flex-start;
}
.brand-profile-head {
    align-items: flex-start;
}
.dealer-profile-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(320px, .7fr);
    gap: 20px;
    margin-bottom: 18px;
}
.brand-profile-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
    gap: 20px;
    margin-bottom: 18px;
}
.dealer-profile-card {
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    gap: 20px;
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23,111,166,.08), rgba(255,255,255,0) 48%),
        var(--bsa-white);
    box-shadow: 0 10px 28px rgba(12, 42, 68, .07);
}
.brand-profile-card {
    display: grid;
    grid-template-columns: minmax(220px, .85fr) minmax(0, 1fr);
    gap: 20px;
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23,111,166,.08), rgba(255,255,255,0) 48%),
        var(--bsa-white);
    box-shadow: 0 10px 28px rgba(12, 42, 68, .07);
}
.dealer-profile-card__media {
    display: grid;
    place-items: center;
    width: 118px;
    height: 118px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: linear-gradient(135deg, #f8fcff, #e7f1f7);
    color: var(--bsa-navy);
    overflow: hidden;
}
.brand-profile-card__media {
    display: grid;
    place-items: center;
    min-height: 220px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: linear-gradient(135deg, #f8fcff, #e7f1f7);
    color: var(--bsa-navy);
    overflow: hidden;
}
.dealer-profile-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.brand-profile-card__media img {
    width: 100%;
    height: 100%;
    min-height: 220px;
    object-fit: cover;
}
.dealer-profile-card__media span {
    font-size: 30px;
    font-weight: 900;
    letter-spacing: .08em;
}
.brand-profile-card__media span {
    font-size: 42px;
    font-weight: 900;
    letter-spacing: .08em;
}
.dealer-profile-card__body {
    display: grid;
    align-content: start;
    gap: 20px;
    min-width: 0;
}
.brand-profile-card__body {
    display: grid;
    align-content: center;
    gap: 20px;
    min-width: 0;
}
.dealer-profile-card__title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
.brand-profile-card__title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
.dealer-profile-card__title h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 24px;
    line-height: 1.15;
    overflow-wrap: anywhere;
}
.brand-profile-card__title h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 28px;
    line-height: 1.12;
    overflow-wrap: anywhere;
}
.dealer-profile-facts svg,
.dealer-discovery-row svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
}
.dealer-profile-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 16px;
}
.dealer-profile-facts span,
.dealer-profile-facts a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    color: var(--bsa-muted);
    font-size: 14px;
    font-weight: 750;
    line-height: 1.35;
}
.dealer-profile-facts a {
    color: var(--bsa-pink);
}
.dealer-specialties {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}
.dealer-specialties span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.dealer-specialties a {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid #cfe0eb;
    border-radius: 999px;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 750;
}
.dealer-specialties a:hover {
    border-color: var(--bsa-pink);
    color: var(--bsa-pink);
}
.dealer-market-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    overflow: hidden;
}
.dealer-market-grid div {
    display: grid;
    align-content: center;
    min-height: 92px;
    padding: 16px;
    border-right: 1px solid var(--bsa-border);
    border-bottom: 1px solid var(--bsa-border);
}
.dealer-market-grid div:nth-child(2n) {
    border-right: 0;
}
.dealer-market-grid div:nth-last-child(-n+2) {
    border-bottom: 0;
}
.dealer-market-grid span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.dealer-market-grid strong {
    margin-top: 6px;
    color: var(--bsa-navy);
    font-size: 20px;
    line-height: 1.15;
    overflow-wrap: anywhere;
}
.dealer-trust-panel {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}
.dealer-trust-panel article {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.dealer-trust-panel article > svg {
    width: 34px;
    height: 34px;
    padding: 8px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-pink);
}
.dealer-trust-panel h3 {
    margin: 0 0 5px;
    color: var(--bsa-navy);
    font-size: 15px;
    line-height: 1.25;
}
.dealer-trust-panel p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.45;
}
.dealer-discovery-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
}
.dealer-discovery-row span,
.dealer-discovery-row a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid #cfe0eb;
    border-radius: 999px;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 750;
}
.dealer-discovery-row a {
    color: var(--bsa-pink);
}
.dealer-contact-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 20px;
    align-items: stretch;
    margin: 8px 0 20px;
    padding: 16px;
    border: 1px solid #b9d7e8;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23,111,166,.08), rgba(255,255,255,0) 54%),
        var(--bsa-white);
    box-shadow: 0 12px 28px rgba(12, 42, 68, .08);
}
.dealer-contact-panel__main,
.dealer-contact-panel__side {
    min-width: 0;
}
.dealer-contact-panel__main {
    display: grid;
    gap: 20px;
}
.dealer-contact-panel .block-title-row {
    align-items: start;
    gap: 12px;
}
.dealer-contact-panel .block-title-row > div {
    min-width: 0;
}
.dealer-contact-panel .block-title-row span,
.dealer-contact-panel__side > span {
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.dealer-contact-panel h2 {
    margin: 3px 0 0;
    color: var(--bsa-navy);
    font-size: 24px;
    line-height: 1.14;
    overflow-wrap: anywhere;
}
.dealer-contact-panel__main > p,
.dealer-contact-panel__side > p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.55;
}
.dealer-contact-prompts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.dealer-contact-prompts span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    max-width: 100%;
    padding: 0 11px;
    border: 1px solid #cfe0eb;
    border-radius: 999px;
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
}
.dealer-contact-prompts svg,
.dealer-contact-actions svg,
.dealer-agent-mini-list svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
}
.dealer-contact-prompts svg {
    color: #1f9d68;
}
.dealer-contact-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.dealer-contact-steps article {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #fbfdff;
}
.dealer-contact-steps article > svg {
    width: 34px;
    height: 34px;
    padding: 8px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-pink);
}
.dealer-contact-steps h3 {
    margin: 0 0 5px;
    color: var(--bsa-navy);
    font-size: 15px;
    line-height: 1.22;
}
.dealer-contact-steps p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.45;
}
.dealer-contact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.dealer-contact-actions .btn {
    min-width: 0;
}
.dealer-contact-panel__side {
    display: grid;
    align-content: start;
    gap: 12px;
    padding: 14px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.dealer-contact-panel__side > strong {
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.12;
}
.seller-contact-form .inquiry-actions {
    display: flex;
    justify-content: flex-start;
}
.seller-contact-phone {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 46px;
    padding: 10px 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-pink);
    font-size: 17px;
    font-weight: 850;
}
.seller-contact-phone svg,
.seller-contact-panel__side p svg {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
}
.seller-contact-panel__side p {
    display: flex;
    align-items: center;
    gap: 7px;
}
.dealer-agent-mini-list {
    display: grid;
    gap: 8px;
}
.dealer-agent-mini-list a {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 9px;
    border: 1px solid #d8e6ef;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.dealer-agent-mini-list img,
.dealer-agent-mini-list a > span {
    width: 42px;
    height: 42px;
    border-radius: 0.25rem;
}
.dealer-agent-mini-list img {
    object-fit: cover;
}
.dealer-agent-mini-list a > span {
    display: grid;
    place-items: center;
    background: #e9f3f8;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 900;
}
.dealer-agent-mini-list b,
.dealer-agent-mini-list small {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}
.dealer-agent-mini-list b {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.2;
}
.dealer-agent-mini-list small {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.3;
}
.dealer-related-panel {
    display: grid;
    gap: 20px;
    margin: 24px 0;
    padding: 18px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: linear-gradient(180deg, #f8fcff, #fff);
    box-shadow: 0 14px 30px rgba(12, 42, 68, .07);
}
.dealer-related-panel > p {
    max-width: 780px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.dealer-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}
.dealer-related-card {
    display: grid;
    gap: 13px;
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.dealer-related-card__head {
    display: grid;
    gap: 5px;
}
.dealer-related-card__head > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: max-content;
    max-width: 100%;
    min-height: 26px;
    padding: 4px 8px;
    border-radius: 999px;
    background: #eef7fc;
    color: var(--bsa-pink);
    font-size: 11px;
    font-weight: 900;
    line-height: 1.2;
}
.dealer-related-card__head svg {
    width: 14px;
    height: 14px;
    flex: 0 0 auto;
}
.dealer-related-card__head strong,
.dealer-related-card__head small {
    min-width: 0;
    overflow-wrap: anywhere;
}
.dealer-related-card__head strong {
    color: var(--bsa-navy);
    font-size: 18px;
    line-height: 1.18;
}
.dealer-related-card__head small {
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.35;
}
.dealer-related-card__facts {
    display: grid;
    gap: 8px;
}
.dealer-related-card__facts span {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    min-width: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.35;
}
.dealer-related-card__facts svg {
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}
.dealer-related-card__reasons {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}
.dealer-related-card__reasons span {
    min-height: 25px;
    padding: 5px 8px;
    border: 1px solid #d8e7f0;
    border-radius: 999px;
    background: #fbfdff;
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 850;
    line-height: 1.2;
}
.dealer-related-card__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: auto;
}
.dealer-related-card__actions .btn {
    min-width: 0;
    min-height: 38px;
    padding-inline: 10px;
}
.seller-buyer-note {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    margin: 0 0 20px;
    padding: 15px 16px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23,111,166,.07), rgba(255,255,255,0) 58%),
        var(--bsa-white);
}
.seller-buyer-note > svg {
    width: 42px;
    height: 42px;
    padding: 10px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-pink);
}
.seller-buyer-note strong,
.seller-buyer-note span {
    display: block;
    min-width: 0;
}
.seller-buyer-note strong {
    color: var(--bsa-navy);
    font-size: 16px;
    line-height: 1.25;
}
.seller-buyer-note span {
    margin-top: 4px;
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.45;
}
.dealer-directory-head,
.brand-directory-head,
.event-directory-head {
    align-items: stretch;
}
.dealer-directory-stats,
.brand-directory-stats,
.event-directory-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(92px, 1fr));
    min-width: min(100%, 390px);
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    overflow: hidden;
}
.dealer-directory-stats div,
.brand-directory-stats div,
.event-directory-stats div {
    display: grid;
    align-content: center;
    min-height: 82px;
    padding: 14px;
    border-right: 1px solid var(--bsa-border);
}
.dealer-directory-stats div:last-child,
.brand-directory-stats div:last-child,
.event-directory-stats div:last-child {
    border-right: 0;
}
.dealer-directory-stats strong,
.brand-directory-stats strong,
.event-directory-stats strong {
    color: var(--bsa-navy);
    font-size: 24px;
    line-height: 1.1;
}
.dealer-directory-stats span,
.brand-directory-stats span,
.event-directory-stats span {
    margin-top: 5px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.dealer-search-panel {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) minmax(170px, auto) auto;
    gap: 12px;
    align-items: center;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 8px 24px rgba(12, 42, 68, .06);
}
.dealer-search-field {
    position: relative;
    display: block;
}
.dealer-search-field svg {
    position: absolute;
    left: 14px;
    top: 50%;
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
    transform: translateY(-50%);
    pointer-events: none;
}
.dealer-search-field input {
    width: 100%;
    min-height: 48px;
    padding: 11px 44px 11px 42px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-size: 15px;
    font-weight: 700;
}
.dealer-search-field input:focus {
    border-color: var(--bsa-pink);
    outline: 3px solid rgba(23, 111, 166, .14);
    background: var(--bsa-white);
}
.dealer-search-field__clear {
    position: absolute;
    right: 10px;
    top: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #5b748a;
    transform: translateY(-50%);
    transition: background .18s ease, color .18s ease, opacity .18s ease;
}
.dealer-search-field__clear:hover {
    background: rgba(12, 42, 68, .08);
    color: var(--bsa-navy);
}
.dealer-search-field__clear:focus-visible {
    outline: 2px solid rgba(23, 111, 166, .28);
    outline-offset: 1px;
}
.dealer-search-field__clear[hidden] {
    display: none;
}
.dealer-search-field__clear svg {
    width: 16px;
    height: 16px;
}
.dealer-sort-field {
    display: block;
    min-width: 0;
}
.dealer-sort-field select {
    width: 100%;
    min-height: 48px;
    padding: 11px 38px 11px 14px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 800;
}
.dealer-sort-field select:focus {
    border-color: var(--bsa-pink);
    outline: 3px solid rgba(23, 111, 166, .14);
    background: var(--bsa-white);
}
.dealer-search-count {
    color: var(--bsa-muted);
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
}
.dealer-search-count strong {
    color: var(--bsa-navy);
}
.brand-search-panel {
    grid-template-columns: minmax(240px, 1fr) auto;
}
.event-search-panel {
    grid-template-columns: minmax(240px, 1fr) auto;
}
.event-filter-row {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    grid-column: 1 / -1;
}
.event-directory-grid .js-event-card[hidden] {
    display: none;
}
.dealer-directory-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}
.directory-card { display: flex; gap: 20px; padding: 20px; }
.dealer-card {
    position: relative;
    display: grid;
    grid-template-columns: 68px minmax(0, 1fr);
    gap: 12px;
    min-height: 214px;
    padding: 16px;
    border-color: #cfe0eb;
    background:
        linear-gradient(135deg, rgba(23,111,166,.06), rgba(255,255,255,0) 42%),
        var(--bsa-white);
    box-shadow: 0 10px 26px rgba(12, 42, 68, .07);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease;
}
.dealer-card:hover {
    border-color: #a9c7db;
    box-shadow: 0 16px 34px rgba(12, 42, 68, .12);
    transform: translateY(-2px);
}
.dealer-card[hidden] {
    display: none;
}
.dealer-card__media {
    position: relative;
    display: grid;
    place-items: center;
    width: 68px;
    height: 68px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background-color: #f8fcff;
    color: var(--bsa-navy);
    overflow: hidden;
}
.dealer-card__media span {
    font-size: 21px;
    font-weight: 900;
    letter-spacing: .08em;
}
.dealer-card__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-height: 100%;
}
.dealer-card__topline {
    min-width: 0;
}
.dealer-card__title {
    display: block;
    overflow-wrap: anywhere;
}
.dealer-card p {
    display: -webkit-box;
    min-height: 44px;
    overflow: hidden;
    margin: 0;
    font-size: 14px;
    line-height: 1.52;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.dealer-card__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.dealer-card__fact {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    min-height: 34px;
    padding: 7px 8px;
    border: 1px solid #dbe8f1;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: #36536c;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
}
.dealer-card__fact span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dealer-card__fact strong {
    color: var(--bsa-navy);
    font-weight: 900;
}
.dealer-card__fact svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}
.dealer-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: auto;
    padding-top: 4px;
}
.dealer-card__actions .btn {
    min-height: 42px;
    padding-inline: 12px;
    font-size: 13px;
    white-space: nowrap;
}
.dealer-card__actions .btn:only-child {
    grid-column: 1 / -1;
}
.dealer-empty-state {
    display: grid;
    justify-items: center;
    gap: 8px;
    padding: 34px 18px;
    border: 1px dashed #cfe0eb;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-muted);
    text-align: center;
}
.dealer-empty-state[hidden] {
    display: none;
}
.dealer-empty-state svg {
    width: 28px;
    height: 28px;
    color: var(--bsa-pink);
}
.dealer-empty-state strong {
    color: var(--bsa-navy);
    font-size: 18px;
}
.agent-card {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 16px;
}
.agent-card img {
    width: 58px;
    height: 58px;
    border-radius: 0.25rem;
    object-fit: cover;
}
.agent-card h3 {
    margin: 0 0 4px;
    color: var(--bsa-navy);
    font-size: 17px;
}
.agent-card p {
    margin: 0 0 6px;
    color: var(--bsa-muted);
}
.agent-card__body {
    display: grid;
    gap: 8px;
    min-width: 0;
}
.agent-card a {
    color: var(--bsa-pink);
    font-size: 14px;
    font-weight: 700;
}
.agent-card__links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 2px;
}
.agent-card__links a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.agent-message-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--bsa-pink);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;
}
.agent-message-link:hover {
    color: var(--bsa-navy);
}
.agent-card__links svg,
.agent-message-link svg {
    width: 15px;
    height: 15px;
}
.agent-directory-card {
    align-items: flex-start;
}
.agent-directory-card img {
    width: 72px;
    height: 72px;
}
.agent-message-modal {
    position: fixed;
    inset: 0;
    z-index: 90;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(5, 20, 34, .72);
}
.agent-message-modal.is-open {
    display: flex;
}
.agent-message-modal__panel {
    width: min(620px, 100%);
    max-height: 92vh;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 28px 80px rgba(5, 20, 34, .28);
    overflow: auto;
}
.agent-message-modal__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 20px;
    border-bottom: 1px solid var(--bsa-border);
}
.agent-message-modal__head h2 {
    margin: 3px 0 0;
    color: var(--bsa-navy);
    font-size: 24px;
}
.agent-message-form {
    padding: 20px;
}
.agent-contact-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 16px;
}
.agent-contact-details div {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-muted);
    font-size: 14px;
    font-weight: 750;
    line-height: 1.35;
}
.agent-contact-details svg {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    color: var(--bsa-pink);
}
.agent-contact-details span,
.agent-contact-details a {
    min-width: 0;
    overflow-wrap: anywhere;
}
.agent-contact-details a {
    color: var(--bsa-pink);
}
.agent-contact-details a.is-disabled {
    pointer-events: none;
    color: var(--bsa-muted);
}
.seller-avatar {
    width: 88px;
    height: 88px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    object-fit: cover;
    background: var(--bsa-panel);
}
.directory-card__mark, .brand-logo {
    display: grid;
    place-items: center;
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
    border-radius: 0.25rem;
    background: var(--bsa-panel);
    color: var(--bsa-navy);
    font-weight: 800;
}
.brand-directory-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}
.brand-card {
    display: grid;
    grid-template-columns: 68px minmax(0, 1fr);
    gap: 12px;
    min-height: 214px;
    padding: 16px;
    border-color: #cfe0eb;
    background:
        linear-gradient(135deg, rgba(23,111,166,.06), rgba(255,255,255,0) 42%),
        var(--bsa-white);
    box-shadow: 0 10px 26px rgba(12, 42, 68, .07);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.brand-card:hover {
    border-color: #a9c7db;
    box-shadow: 0 16px 34px rgba(12, 42, 68, .12);
    transform: translateY(-2px);
}

.brand-card__media span {
    font-size: 21px;
    font-weight: 900;
    letter-spacing: .08em;
}
.brand-card__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.brand-card__title {
    display: block;
    overflow-wrap: anywhere;
}
.brand-card p {
    display: -webkit-box;
    min-height: 44px;
    overflow: hidden;
    margin: 0;
    font-size: 14px;
    line-height: 1.52;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.brand-card__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.brand-card__fact {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    min-height: 34px;
    padding: 7px 8px;
    border: 1px solid #dbe8f1;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: #36536c;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
}
.brand-card__fact--wide {
    grid-column: 1 / -1;
}
.brand-card__fact span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.brand-card__fact strong {
    color: var(--bsa-navy);
    font-weight: 900;
}
.brand-card__fact svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}
.brand-card__specialties {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.brand-card__specialties span {
    min-height: 24px;
    padding: 4px 8px;
    border: 1px solid #dbe8f1;
    border-radius: 999px;
    background: #f8fbfd;
    color: var(--bsa-pink);
    font-size: 11px;
    font-weight: 850;
}
.brand-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: auto;
    padding-top: 4px;
}
.brand-card__actions .btn {
    min-height: 42px;
    padding-inline: 12px;
    font-size: 13px;
    white-space: nowrap;
}
.brand-card__actions .btn:only-child {
    grid-column: 1 / -1;
}
.event-directory-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}
.event-card {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 12px;
    min-width: 0;
    min-height: 278px;
    padding: 16px;
    border-color: #cfe0eb;
    background:
        linear-gradient(135deg, rgba(23,111,166,.06), rgba(255,255,255,0) 42%),
        var(--bsa-white);
    box-shadow: 0 10px 26px rgba(12, 42, 68, .07);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.event-card:hover {
    border-color: #a9c7db;
    box-shadow: 0 16px 34px rgba(12, 42, 68, .12);
    transform: translateY(-2px);
}

/* Use the image itself so native lazy loading can defer offscreen event covers. */
.event-card__media img {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
}
.event-card__media img[hidden] {
    display: none;
}
.event-card__media span {
    font-size: 21px;
    font-weight: 900;
    letter-spacing: .08em;
}
.event-card__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.event-card__type {
    display: block;
    margin-bottom: 4px;
    color: var(--bsa-red);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.event-card__title {
    display: block;
    overflow-wrap: anywhere;
}
.event-card p {
    display: -webkit-box;
    min-height: 44px;
    overflow: hidden;
    margin: 0;
    font-size: 14px;
    line-height: 1.52;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.event-card__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.event-card__fact {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    min-height: 34px;
    padding: 7px 8px;
    border: 1px solid #dbe8f1;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: #36536c;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
}
.event-card__fact--wide {
    grid-column: 1 / -1;
}
.event-card__fact span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.event-card__fact strong {
    color: var(--bsa-navy);
    font-weight: 900;
}
.event-card__fact svg {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}
.event-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: auto;
    padding-top: 4px;
}
.event-card__actions .btn {
    min-width: 0;
    min-height: 42px;
    padding-inline: 12px;
    font-size: 13px;
    white-space: nowrap;
}
.event-card__actions .btn:only-child {
    grid-column: 1 / -1;
}
.brand-logo { margin-bottom: 12px; }
.listing-pager {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 28px;
}
.listing-pager + .price-watch-strip {
    margin-top: 18px;
}
.pager {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}
.pager a,
.pager span {
    display: inline-grid;
    place-items: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border: 1px solid #d4e0e9;
    border-radius: var(--bsa-backend-control-radius);
    color: var(--bsa-navy);
    background: #fff;
    font-weight: 800;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease, box-shadow .16s ease;
}
.pager a:hover {
    border-color: #b8cad7;
    background: #f7fbfe;
    box-shadow: 0 8px 18px rgba(18, 44, 90, .06);
}
.pager .is-active {
    border-color: var(--bsa-pink);
    background: var(--bsa-pink);
    color: var(--bsa-white);
    box-shadow: 0 12px 24px rgba(236, 98, 113, .18);
}
.pager__nav {
    min-width: 88px;
}
.pager__ellipsis {
    min-width: 22px;
    padding: 0 2px;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: var(--bsa-muted);
}
.pager .is-disabled {
    border-color: #e1e8ef;
    background: #f6f8fa;
    color: #9aaaba;
    pointer-events: none;
    box-shadow: none;
}
.pager svg {
    width: 16px;
    height: 16px;
}

.detail-hero { padding: 28px 24px 0; max-width: 1200px; margin: 0 auto; }

.listing-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
}
.listing-breadcrumb a {
    color: var(--bsa-pink);
}
.listing-breadcrumb span:last-child {
    color: var(--bsa-navy);
}
.detail-hero--full {
    max-width: none;
    width: 100%;
    padding-left: 28px;
    padding-right: 28px;
}
.media-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 12px;
}
.media-thumb {
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}
.media-strip img {
    width: 100%;
    aspect-ratio: 16 / 10;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    object-fit: cover;
    background: var(--bsa-panel);
}
.detail-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 18px; }
.cover { position: relative; border-radius: 0.25rem; overflow: hidden; max-height: 560px; }
.cover img { width: 100%; height: min(54vw, 560px); object-fit: cover; }
.cover .btn { position: absolute; right: 18px; bottom: 18px; }
.listing-cover__actions {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 10px;
}
.cover .listing-cover__actions .btn {
    position: static;
}
.listing-cover__actions .btn--tour {
    border-color: rgba(255,255,255,.75);
    background: var(--color-accent-coral);
    color: var(--bsa-white);
    box-shadow: 0 8px 24px rgba(5,20,34,.22);
    border: none;
}
.listing-cover__actions .btn--tour:hover {
    background: var(--color-accent-coral-hover);
}
.detail-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(320px, .9fr); gap: 28px; align-items: start; }
.content-block { padding: 24px; border: 1px solid var(--bsa-border); border-radius: 0.25rem; background: var(--bsa-white); margin-bottom: 18px; }
.content-block h1,
.content-block h2,
.side-card h2 {
    margin: 0 0 14px;
    color: var(--bsa-navy);
}
.content-block h2,
.side-card h2 {
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
}
.legal-page { max-width: 980px; }
.legal-page__content { padding: clamp(24px, 5vw, 56px); }
.legal-page__header { padding-bottom: 22px; border-bottom: 1px solid var(--bsa-border); }
.legal-page__header .eyebrow { margin: 0 0 8px; color: var(--bsa-pink); font-size: 12px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.legal-page__header h1 { margin: 0; }
.legal-page__body { color: var(--bsa-text); font-size: 16px; line-height: 1.75; }
.legal-page__body h2 { margin-top: 34px; font-size: 22px; }
.legal-page__body h3, .legal-page__body h4 { margin: 28px 0 10px; color: var(--bsa-navy); }
.legal-page__body p, .legal-page__body ul, .legal-page__body ol, .legal-page__body blockquote, .legal-page__body table { margin: 14px 0; }
.legal-page__body li + li { margin-top: 7px; }
.legal-page__body a { color: var(--bsa-pink); font-weight: 750; }
.legal-page__body table { width: 100%; border-collapse: collapse; }
.legal-page__body th, .legal-page__body td { padding: 10px; border: 1px solid var(--bsa-border); text-align: left; vertical-align: top; }
.settings-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; padding: 5px; border: 1px solid var(--bsa-border); border-radius: 0.25rem; background: var(--bsa-white); }
.settings-tabs a { display: inline-flex; align-items: center; gap: 7px; padding: 10px 16px; border-radius: 0.25rem; color: var(--bsa-muted); font-weight: 850; text-decoration: none; }
.settings-tabs a:hover, .settings-tabs a.is-active { background: var(--bsa-navy); color: var(--bsa-white); }
.settings-tabs svg { width: 17px; height: 17px; }
.settings-legal__head { align-items: flex-start; }
.settings-legal__head p { margin: 6px 0 0; color: var(--bsa-muted); }
.settings-legal__links { display: flex; flex-wrap: wrap; gap: 12px; }
.settings-legal__links a { color: var(--bsa-pink); font-size: 13px; font-weight: 850; }
.settings-legal-form textarea { min-height: 420px; resize: vertical; font-family: Consolas, Monaco, monospace; font-size: 13px; line-height: 1.55; }
.settings-legal-form .btn { justify-self: start; }
.settings-subscriptions { display: grid; gap: 18px; }
.settings-subscriptions .dashboard-card { margin: 0; }
.settings-subscriptions__intro { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; }
.settings-subscriptions__intro h2 { margin: 4px 0 8px; }
.settings-subscriptions__intro p, .settings-subscriptions .dashboard-card__head p { max-width: 800px; margin: 6px 0 0; color: var(--bsa-muted); }
.settings-subscriptions__eyebrow { color: var(--bsa-pink); font-size: 11px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.settings-subscriptions__state { min-width: 190px; padding: 13px 15px; border: 1px solid #efc5c5; border-radius: .25rem; background: #fff8f8; color: #943636; }
.settings-subscriptions__state.is-ready { border-color: #abd9c1; background: #f2fbf6; color: #17643a; }
.settings-subscriptions__state strong, .settings-subscriptions__state span { display: block; }
.settings-subscriptions__state span { margin-top: 3px; font-size: 12px; }
.settings-subscriptions__top-grid { align-items: stretch; }
.settings-readiness-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px 18px; }
.settings-readiness-list > div { display: grid; grid-template-columns: 10px minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 9px 0; border-bottom: 1px solid var(--bsa-border); }
.settings-readiness-list strong { color: var(--bsa-navy); font-size: 13px; }
.settings-readiness-list span:last-child { color: var(--bsa-muted); font-size: 11px; font-weight: 750; }
.settings-status-dot { width: 9px; height: 9px; border-radius: 50%; background: #cc5151; box-shadow: 0 0 0 3px #fbeaea; }
.settings-status-dot.is-ready { background: #2b9960; box-shadow: 0 0 0 3px #e0f4e8; }
.settings-provider-list { grid-template-columns: 1fr; }
.settings-provider-list > div { grid-template-columns: 10px minmax(0, 1fr) fit-content(50%); }
.settings-provider-list > div > span:last-child { text-align: right; overflow-wrap: anywhere; }
.settings-subscriptions__note { padding: 12px; border-radius: .25rem; background: var(--bsa-page); color: var(--bsa-muted); font-size: 13px; }
.settings-subscriptions__note code { color: var(--bsa-navy); font-weight: 800; }
.settings-worker-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.settings-worker-grid > div { padding: 10px; border: 1px solid var(--bsa-border); border-radius: .25rem; }
.settings-worker-grid strong, .settings-worker-grid span, .settings-worker-grid small { display: block; }
.settings-worker-grid strong { color: var(--bsa-navy); font-size: 12px; }
.settings-worker-grid span, .settings-worker-grid small { margin-top: 3px; color: var(--bsa-muted); font-size: 11px; overflow-wrap: anywhere; }
.settings-service-switches { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.settings-service-switches label, .settings-check { display: flex; align-items: flex-start; gap: 9px; }
.settings-service-switches label { padding: 12px; border: 1px solid var(--bsa-border); border-radius: .25rem; background: var(--bsa-page); }
.settings-service-switches input, .settings-check input { width: 17px; height: 17px; margin: 1px 0 0; accent-color: var(--bsa-pink); flex: 0 0 auto; }
.settings-service-switches strong, .settings-service-switches small { display: block; }
.settings-service-switches strong { color: var(--bsa-navy); font-size: 13px; }
.settings-service-switches small { margin-top: 3px; color: var(--bsa-muted); font-size: 11px; font-weight: 500; }
.settings-service-form .btn { justify-self: start; }
.settings-activation { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 20px; padding: 14px; border: 1px solid #e3c787; border-radius: .25rem; background: #fffaf0; }
.settings-activation strong, .settings-activation span { display: block; }
.settings-activation strong { color: var(--bsa-navy); }
.settings-activation span { margin-top: 3px; color: var(--bsa-muted); font-size: 13px; }
.settings-plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.settings-plan-card { min-width: 0; padding: 18px; border: 1px solid var(--bsa-border); border-radius: .4rem; }
.settings-plan-card legend { padding: 0 8px; color: var(--bsa-navy); font-size: 19px; font-weight: 900; }
.settings-plan-card > .field { margin-top: 14px; }
.settings-plan-card h3 { margin: 20px 0 9px; color: var(--bsa-navy); font-size: 13px; }
.settings-price-row, .settings-limit-grid, .settings-media-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 10px; }
.settings-media-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.settings-media-grid > div { min-width: 0; }
.settings-limit-seats { min-width: 0; }
.settings-limit-seats > .settings-check { margin-top: 8px; }
.settings-plan-card .field input { width: 100%; }
.settings-plan-card .field span, .settings-catalog-policy .field span { display: block; margin-bottom: 5px; color: var(--bsa-navy); font-size: 12px; font-weight: 800; }
.settings-plan-card .field input, .settings-catalog-policy .field input { min-height: 42px; padding: 9px 10px; border: 1px solid var(--bsa-border); border-radius: .25rem; background: var(--bsa-white); color: var(--bsa-text); }
.settings-stripe-amount { display: flex; align-items: center; width: 100%; min-height: 42px; padding: 9px 10px; border: 1px solid var(--bsa-border); border-radius: .25rem; background: var(--bsa-white); color: var(--bsa-text); font: inherit; cursor: default; }
.settings-check { color: var(--bsa-text); font-size: 12px; font-weight: 650; }
.settings-media-grid > div > .settings-check { margin-top: 8px; }
.settings-feature-list { display: grid; gap: 8px; }
.settings-catalog-policy { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 18px; padding: 16px; border: 1px solid var(--bsa-border); border-radius: .25rem; background: var(--bsa-page); }
.settings-publish-bar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 16px; }
.settings-publish-bar p { margin: 0; color: var(--bsa-muted); font-size: 13px; }
.settings-publish-bar strong { color: var(--bsa-navy); }
.settings-bindings-table td:first-child strong, .settings-bindings-table td:first-child span { display: block; }
.settings-bindings-table td:first-child span { color: var(--bsa-muted); font-size: 11px; }
.settings-bindings-table form { display: block; }
.settings-bindings-table input, .settings-portal-form input { min-height: var(--size-control-md); padding: 8px 10px; border: 1px solid var(--bsa-border); border-radius: .25rem; }
.settings-bound { color: #237c4d; font-size: 12px; font-weight: 850; }
.settings-portal-form { display: grid; gap: 7px; margin-top: 18px; }
.settings-portal-form .settings-portal-form__control { gap: 12px; }
.settings-portal-form__label { color: var(--bsa-navy); font-size: 12px; font-weight: 800; }
.settings-portal-form > small { color: var(--bsa-muted); font-size: 11px; }
@media (max-width: 1180px) {
    .settings-plan-grid { grid-template-columns: 1fr; }
    .settings-service-switches, .settings-catalog-policy { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
    .settings-tabs { flex-direction: column; }
    .settings-tabs a { justify-content: center; }
    .settings-subscriptions__intro, .settings-activation, .settings-publish-bar { flex-direction: column; align-items: stretch; }
    .settings-subscriptions__state { min-width: 0; }
    .settings-readiness-list, .settings-worker-grid, .settings-service-switches, .settings-catalog-policy, .settings-price-row, .settings-limit-grid { grid-template-columns: 1fr; }
    .settings-media-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .settings-bindings-table form { min-width: 210px; }
    .settings-bindings-table .dashboard-inline-control, .settings-portal-form .settings-portal-form__control { grid-template-columns: 1fr; }
}
@media (max-width: 430px) {
    .settings-media-grid { grid-template-columns: 1fr; }
}
.spec-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.spec { padding: 12px; background: var(--bsa-page); border: 1px solid var(--bsa-border); border-radius: 0.25rem; }
.spec strong { display: block; color: var(--bsa-navy); }
.spec span { color: var(--bsa-muted); font-size: 13px; }
.side-card { padding: 20px; border: 1px solid var(--bsa-border); border-radius: 0.25rem; background: var(--bsa-page); margin-bottom: 18px; }
.price-xl { color: var(--bsa-red); font-size: 30px; font-weight: 800; }
.loan-calc {
    align-items: end;
}
.loan-result {
    grid-column: 1 / -1;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-page);
}
.loan-result span {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}
.loan-result strong {
    display: block;
    margin-top: 4px;
    color: var(--bsa-navy);
    font-size: 24px;
}
.ownership-cost-card {
    background: linear-gradient(180deg, #fff, #f8fbfd);
}
.ownership-cost-card .block-title-row {
    align-items: center;
    margin-bottom: 10px;
}
.ownership-cost-card .block-title-row h2 {
    margin: 0;
}
.listing-finance-card .block-title-row p {
    margin: 6px 0 0;
    color: var(--bsa-muted);
    line-height: 1.5;
}
.listing-finance-stack {
    display: grid;
    gap: 20px;
}
.listing-finance-section h3 {
    margin: 0 0 12px;
    color: var(--bsa-navy);
    font-size: 18px;
}
.ownership-cost-card__copy,
.ownership-cost-note {
    color: var(--bsa-muted);
    line-height: 1.55;
}
.ownership-cost-card__copy {
    margin: 0 0 16px;
}
.ownership-cost-grid,
.ownership-output-grid {
    display: grid;
    gap: 12px;
}
.ownership-cost-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
}
.ownership-cost-grid label,
.ownership-output-grid div {
    min-width: 0;
    padding: 13px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.ownership-cost-grid span,
.ownership-output-grid span {
    display: block;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .06em;
    line-height: 1.25;
    text-transform: uppercase;
}
.ownership-cost-grid input {
    width: 100%;
    min-height: 36px;
    margin-top: 8px;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--bsa-navy);
    font-size: 19px;
    font-weight: 850;
}
.ownership-output-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.ownership-output-grid div:nth-child(-n+2) {
    background: var(--bsa-navy);
}
.ownership-output-grid div:nth-child(-n+2) span {
    color: rgba(255,255,255,.72);
}
.ownership-output-grid div:nth-child(-n+2) strong {
    color: var(--bsa-white);
    font-size: 26px;
}
.ownership-output-grid strong {
    display: block;
    margin-top: 5px;
    color: var(--bsa-navy);
    font-size: 20px;
    line-height: 1.12;
    overflow-wrap: anywhere;
}
.ownership-cost-note {
    display: block;
    margin-top: 12px;
    font-size: 12px;
}
.buyer-fit-card {
    background: linear-gradient(180deg, #fff, #f7fbfe);
}
.buyer-fit-card .block-title-row {
    align-items: start;
    margin-bottom: 16px;
}
.buyer-fit-card .block-title-row h2 {
    margin-bottom: 6px;
}
.buyer-fit-card .block-title-row p {
    max-width: 620px;
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.buyer-fit-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.buyer-fit-item {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    min-width: 0;
    min-height: 142px;
    padding: 14px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.buyer-fit-item__icon {
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #eef8fd;
    color: var(--bsa-pink);
}
.buyer-fit-item__icon svg {
    width: 20px;
    height: 20px;
}
.buyer-fit-item strong,
.buyer-fit-item p {
    overflow-wrap: anywhere;
}
.buyer-fit-item strong {
    display: block;
    color: var(--bsa-navy);
    font-size: 15px;
    font-weight: 900;
    line-height: 1.25;
}
.buyer-fit-item p {
    margin: 5px 0 10px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.5;
}
.buyer-fit-item .text-link {
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--bsa-pink);
    font-size: 13px;
    font-weight: 850;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;
}
.buyer-fit-item .text-link:hover {
    color: var(--bsa-navy);
}
.mini-list { display: grid; gap: 12px; }
.mini-list a { display: grid; grid-template-columns: 80px 1fr; gap: 12px; align-items: center; }
.mini-list img { width: 80px; height: 58px; object-fit: cover; border-radius: 0.25rem; }
.mini-list small { display: block; margin-top: 2px; color: var(--bsa-red); font-weight: 850; }
.seller-listings-block .block-title-row {
    align-items: center;
    margin-bottom: 16px;
}
.seller-listings-block .block-title-row h2 {
    margin: 0;
}
.seller-listings-block .block-title-row .btn {
    min-height: 36px;
    padding-inline: 12px;
    font-size: 13px;
}

.seller-listing-tiles .listing-card {
    min-width: 0;
    box-shadow: 0 8px 20px rgba(12, 42, 68, .07);
}

.seller-listing-tiles .badge {
    top: 8px;
    left: 8px;
}
.seller-listing-tiles .badge + .badge {
    right: 8px;
}
.seller-listing-tiles .listing-card__media-bottom {
    inset: auto 8px 8px;
}
.seller-listing-tiles .listing-card__location {
    font-size: 12px;
}
.seller-listing-tiles .listing-card__location:empty {
    display: none;
}

.seller-listing-tiles .listing-card__body {
    padding: 12px;
}
.seller-listing-tiles .listing-card__title {
    display: -webkit-box;
    min-height: 42px;
    overflow: hidden;
    font-size: 15px;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.seller-listing-tiles .listing-card__price {
    font-size: 17px;
}
.seller-listing-tiles .listing-card__specs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 10px;
}
.seller-listing-tiles .listing-card__specs div:nth-child(n+3),
.seller-listing-tiles .listing-card__seller,
.seller-listing-tiles .listing-card__compare {
    display: none;
}
.listing-hero {
    width: 100%;
    max-width: none;
    padding-left: 60px;
    padding-right: 60px;
    padding-top: 10px;
}
.detail-actions__group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.listing-cover {
    max-height: 620px;
    border: 1px solid var(--bsa-border);
}
.listing-cover__slides {
    position: relative;
    z-index: 0;
}
.listing-cover .listing-cover__slide {
    position: absolute;
    inset: 0;
    display: block;
    opacity: 0;
    transition: opacity 850ms ease-in-out;
    pointer-events: none;
}
.listing-cover .listing-cover__slide:first-child {
    position: relative;
}
.listing-cover .listing-cover__slide.is-active {
    opacity: 1;
}
.listing-cover__controls {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0;
    background: transparent;
}
.listing-cover__controls[hidden] {
    display: none;
}
.listing-cover__dots {
    display: flex;
}
.listing-cover__dot,
.listing-cover__playback {
    display: grid;
    place-items: center;
    width: 24px;
    height: 28px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
}
.listing-cover__dot::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .5);
    box-shadow: 0 1px 3px rgba(3, 14, 25, .35);
}
.listing-cover__dot:not(:disabled):hover::before {
    background: rgba(255, 255, 255, .85);
}
.listing-cover__dot.is-active::before {
    width: 7px;
    height: 7px;
    background: #fff;
}
.listing-cover__dot:disabled {
    opacity: .3;
    cursor: default;
}
.listing-cover__dot:focus-visible,
.listing-cover__playback:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -2px;
    border-radius: 3px;
}
.listing-cover__playback::before {
    content: '';
    width: 8px;
    height: 10px;
    border-left: 2px solid currentColor;
    border-right: 2px solid currentColor;
}
.listing-cover__playback.is-paused::before {
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-right: 0;
    border-left: 8px solid currentColor;
}
.listing-cover.has-slideshow .listing-cover__breadcrumb {
    right: 310px;
}
@media (max-width: 640px) {
    .listing-cover__controls {
        top: 10px;
        right: 10px;
    }
    .listing-cover.has-slideshow .listing-cover__breadcrumb {
        top: 50px;
        right: 14px;
    }
    .listing-cover.has-slideshow .listing-cover__slide {
        min-height: 260px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .listing-cover .listing-cover__slide {
        transition: none;
    }
}
.listing-cover__breadcrumb {
    position: absolute;
    top: 22px;
    left: 22px;
    z-index: 3;
    margin: 0;
    color: rgba(255, 255, 255, .72);
}
.listing-cover .listing-breadcrumb a,
.listing-cover .listing-breadcrumb span {
    color: rgba(255, 255, 255, .78);
}
.listing-cover .listing-breadcrumb a {
    font-weight: 850;
}
.listing-cover__breadcrumb a:hover {
    color: var(--bsa-white);
}
.cover__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(3, 14, 25, .68), rgba(3, 14, 25, 0) 28%),
        linear-gradient(0deg, rgba(5, 20, 34, .82), rgba(5, 20, 34, 0) 42%);
    pointer-events: none;
}
.cover__meta {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 2;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    max-width: calc(100% - 210px);
}
.cover__meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid rgba(255,255,255,.32);
    border-radius: 0.25rem;
    background: rgba(8,35,62,.62);
    color: var(--bsa-white);
    font-size: 13px;
    font-weight: 800;
    backdrop-filter: blur(8px);
}
.cover__meta svg {
    width: 16px;
    height: 16px;
}
.listing-section {
    width: 100%;
    max-width: none;
    padding-top: 34px;
    padding-left: 60px;
    padding-right: 60px;
}
.detail-grid--listing {
    grid-template-columns: minmax(0, 1fr) minmax(380px, 430px);
}
.listing-overview-card {
    display: grid;
    gap: 22px;
}
.listing-overview-head {
    min-width: 0;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--bsa-border);
}
.listing-overview-card h1 {
    margin-bottom: 10px;
    max-width: 820px;
    font-size: clamp(30px, 3.2vw, 42px);
    line-height: 1.08;
    overflow-wrap: anywhere;
}
.listing-overview-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px 24px;
    min-width: 0;
    margin: 0;
    color: var(--bsa-muted);
    font-size: 14px;
    font-weight: 650;
}
.listing-overview-meta div {
    display: flex;
    align-items: baseline;
    gap: 7px;
    min-width: 0;
}
.listing-overview-meta__id {
    margin-left: auto;
    text-align: right;
}
.listing-overview-meta dt {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.listing-overview-meta dd {
    margin: 0;
    color: var(--bsa-navy);
    font-weight: 800;
    overflow-wrap: anywhere;
}
.listing-price-block {
    flex: 0 0 230px;
    padding: 16px;
    border: 1px solid #c9dce9;
    border-radius: 0.25rem;
    background: linear-gradient(135deg, #f8fcff, #eef6fb);
}
.listing-price-block span {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.listing-price-block strong {
    display: block;
    margin-top: 5px;
    color: var(--bsa-red);
    font-size: 28px;
    line-height: 1.1;
}
.block-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 16px;
}
.block-title-row h2 {
    margin: 0;
}
.listing-overview-snapshot h2 {
    margin-bottom: 12px;
    font-size: 18px;
}
.snapshot-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(145px, 100%), 1fr));
    border-top: 1px solid var(--bsa-border);
    border-left: 1px solid var(--bsa-border);
    background: #f8fbfd;
}
.snapshot-item {
    display: grid;
    align-content: start;
    gap: 7px;
    min-height: 86px;
    padding: 14px 12px;
    border-right: 1px solid var(--bsa-border);
    border-bottom: 1px solid var(--bsa-border);
}
.snapshot-item__label {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
}
.snapshot-item__label svg {
    flex: 0 0 auto;
    width: 21px;
    height: 21px;
    color: var(--bsa-pink);
}
.snapshot-item__label span {
    display: block;
    min-width: 0;
    overflow: hidden;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.snapshot-item strong {
    display: block;
    min-width: 0;
    color: var(--bsa-navy);
    font-size: 17px;
    line-height: 1.2;
    overflow-wrap: anywhere;
}
.listing-spec-link {
    color: inherit;
    text-decoration: underline;
    text-decoration-color: rgba(0, 51, 91, .3);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.listing-spec-link:hover,
.listing-spec-link:focus-visible {
    color: var(--bsa-pink);
    text-decoration-color: currentColor;
}
.listing-activity-card {
    display: grid;
    gap: 20px;
    background: linear-gradient(180deg, #ffffff, #f8fbfd);
}
.listing-activity-card .block-title-row {
    align-items: flex-start;
    margin-bottom: 0;
}
.listing-activity-card .block-title-row p {
    max-width: 700px;
    margin: 6px 0 0;
    color: var(--bsa-muted);
    line-height: 1.5;
}
.listing-activity-signals {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.listing-activity-signals div,
.listing-activity-timeline div {
    min-width: 0;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.listing-activity-signals div {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
}
.listing-activity-signals svg {
    width: 38px;
    height: 38px;
    padding: 9px;
    border-radius: 0.25rem;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.listing-activity-signals strong,
.listing-activity-signals small {
    display: block;
    min-width: 0;
}
.listing-activity-signals strong {
    color: var(--bsa-navy);
    line-height: 1.2;
}
.listing-activity-signals small {
    margin-top: 4px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.4;
}
.listing-activity-empty {
    margin: 0;
    padding: 14px;
    border: 1px dashed #c9dbe8;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-muted);
    line-height: 1.5;
}
.listing-activity-timeline {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
}
.listing-activity-timeline div {
    padding: 12px;
}
.listing-activity-timeline dt {
    display: flex;
    align-items: center;
    gap: 7px;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.listing-activity-timeline dt svg {
    width: 15px;
    height: 15px;
    color: var(--bsa-pink);
}
.listing-activity-timeline dd {
    margin: 6px 0 0;
    color: var(--bsa-navy);
    font-weight: 900;
}
.showing-plan-card {
    display: grid;
    gap: 20px;
    background: linear-gradient(180deg, #ffffff, #f8fbfd);
}
.showing-plan-card .block-title-row {
    align-items: flex-start;
    margin-bottom: 0;
}
.showing-plan-card .block-title-row .btn {
    flex: 0 0 auto;
    min-width: 126px;
    white-space: nowrap;
}
.showing-plan-card .block-title-row p {
    max-width: 720px;
    margin: 6px 0 0;
    color: var(--bsa-muted);
    line-height: 1.5;
}
.showing-plan-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
    gap: 12px;
}
.showing-plan-item {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: flex-start;
    min-width: 0;
    min-height: 0;
    padding: 16px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.showing-plan-item__icon {
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 0.25rem;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.showing-plan-item__icon svg {
    width: 20px;
    height: 20px;
}
.showing-plan-item strong,
.showing-plan-item p {
    overflow-wrap: break-word;
}
.showing-plan-item strong {
    display: block;
    color: var(--bsa-navy);
    font-size: 16px;
    font-weight: 900;
    line-height: 1.2;
}
.showing-plan-item p {
    margin: 6px 0 12px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.5;
}
.showing-plan-item .text-link {
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--bsa-pink);
    font-size: 13px;
    font-weight: 850;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;
}
.showing-plan-item .text-link:hover {
    color: var(--bsa-navy);
}
.spec-grid--icons .spec {
    min-height: 116px;
}
.spec-grid--icons .spec svg {
    width: 22px;
    height: 22px;
    margin-bottom: 10px;
    color: var(--bsa-pink);
}
.spec-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
    gap: 1px;
    margin: 18px 0 0;
    border: 1px solid var(--bsa-border);
    background: var(--bsa-white);
    overflow: hidden;
}
.spec-list div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
    min-height: 48px;
    padding: 12px 14px;
    background: var(--bsa-white);
    box-shadow: 0 0 0 1px var(--bsa-border);
}
.spec-list > div:last-child:nth-child(odd) {
    grid-column: 1 / -1;
}
.spec-list dt {
    min-width: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 800;
    /* overflow-wrap: anywhere; */
}
.spec-list dd {
    min-width: 0;
    margin: 0;
    color: var(--bsa-navy);
    font-weight: 800;
    text-align: right;
    overflow-wrap: anywhere;
}
.listing-specifications__head {
    align-items: center;
}
.listing-specifications__head .unit-switch {
    justify-self: end;
}
.listing-spec-unit {
    margin-left: 4px;
    color: var(--bsa-muted);
    font-size: .9em;
    font-weight: 800;
    white-space: nowrap;
}

.listing-copy {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.7;
}
.market-context-card {
    background: linear-gradient(180deg, #fff, #f8fbfd);
}
.market-context-pill {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f6fbfe;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 850;
}
.market-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    margin: 18px 0 0;
    border: 1px solid var(--bsa-border);
    background: var(--bsa-border);
}
.market-stat-grid div {
    min-width: 0;
    padding: 14px;
    background: var(--bsa-white);
}
.market-stat-grid dt {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.market-stat-grid dd {
    margin: 6px 0 0;
    color: var(--bsa-navy);
    font-size: 18px;
    font-weight: 850;
    line-height: 1.2;
    overflow-wrap: anywhere;
}
.market-link-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}
.market-link-row a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid #d5e4ee;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-pink);
    font-size: 13px;
    font-weight: 850;
}
.market-link-row a:hover {
    border-color: var(--bsa-pink);
}
.listing-discovery-pathways {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}
.listing-discovery-pathway {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    min-width: 0;
    padding: 14px;
    border: 1px solid #d5e4ee;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-text);
}
.listing-discovery-pathway:hover {
    border-color: #b9d4e6;
    box-shadow: 0 12px 28px rgba(8, 35, 62, .08);
}
.listing-discovery-pathway__icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 0.25rem;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.listing-discovery-pathway__icon svg {
    width: 20px;
    height: 20px;
}
.listing-discovery-pathway strong,
.listing-discovery-pathway small {
    display: block;
    min-width: 0;
}
.listing-discovery-pathway strong {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}
.listing-discovery-pathway small {
    margin-top: 5px;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.45;
}
.listing-research-guide {
    display: grid;
    gap: 20px;
    margin-top: 14px;
    padding: 16px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.listing-research-guide__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}
.listing-research-guide__head span {
    display: block;
    color: var(--bsa-pink);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.listing-research-guide__head h3 {
    margin: 4px 0 0;
    color: var(--bsa-navy);
    font-size: 18px;
    line-height: 1.2;
}
.listing-research-guide__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
    gap: 12px;
}
.listing-research-group {
    display: grid;
    align-content: start;
    gap: 12px;
    min-width: 0;
    padding: 13px;
    border: 1px solid #dbe8f1;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.listing-research-group__title {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 20px;
}
.listing-research-group__icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 0.25rem;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.listing-research-group__icon svg {
    width: 20px;
    height: 20px;
}
.listing-research-group__title strong,
.listing-research-group__title p {
    display: block;
    min-width: 0;
    overflow-wrap: break-word;
}
.listing-research-group__title strong {
    color: var(--bsa-navy);
    font-size: 15px;
    font-weight: 900;
    line-height: 1.25;
}
.listing-research-group__title p {
    margin: 4px 0 0;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.45;
}
.listing-research-links {
    display: grid;
    gap: 8px;
}
.listing-research-links a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 9px 10px;
    border: 1px solid #e1edf4;
    border-radius: 0.25rem;
    background: #fbfdff;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
    line-height: 1.25;
}
.listing-research-links a:hover {
    border-color: var(--bsa-pink);
    color: var(--bsa-pink);
}
.listing-research-links span,
.listing-research-links small {
    min-width: 0;
    overflow-wrap: break-word;
}
.listing-research-links small {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 750;
    text-align: right;
    white-space: nowrap;
}
.representative-inventory-card {
    container-name: representative-inventory;
    container-type: inline-size;
    background: linear-gradient(180deg, #fff, #f8fbfd);
}
.representative-inventory-card .block-title-row {
    align-items: flex-start;
}
.representative-inventory-card .block-title-row p {
    max-width: 760px;
    margin: 7px 0 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.representative-inventory-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}
.representative-inventory-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    margin: 18px 0 0;
    border: 1px solid var(--bsa-border);
    background: var(--bsa-border);
}
.representative-inventory-stats div {
    min-width: 0;
    padding: 14px;
    background: var(--bsa-white);
}
.representative-inventory-stats dt,
.representative-inventory-stats dd {
    margin: 0;
}
.representative-inventory-stats dt {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.representative-inventory-stats dd {
    margin-top: 6px;
    color: var(--bsa-navy);
    font-size: 18px;
    font-weight: 850;
    line-height: 1.2;
    overflow-wrap: anywhere;
}
.representative-inventory-types {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}
.representative-inventory-types a {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 2px 10px;
    align-items: center;
    min-width: 0;
    padding: 12px;
    border: 1px solid #d5e4ee;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-text);
}
.representative-inventory-types a:hover {
    border-color: #b9d4e6;
    box-shadow: 0 10px 24px rgba(8, 35, 62, .07);
}
.representative-inventory-types svg {
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
}
.representative-inventory-types a > i,
.representative-inventory-types a > svg {
    display: grid;
    place-items: center;
    grid-row: 1 / span 2;
    width: 34px;
    height: 34px;
    border-radius: 0.25rem;
    background: #eef7fc;
}
.representative-inventory-types span,
.representative-inventory-types small {
    display: block;
    min-width: 0;
}
.representative-inventory-types span {
    grid-column: 2;
    color: var(--bsa-navy);
    font-weight: 850;
    line-height: 1.25;
    overflow-wrap: anywhere;
}
.representative-inventory-types small {
    display: flex;
    grid-column: 2;
    align-items: baseline;
    gap: 4px;
    margin-top: 0;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.3;
    white-space: nowrap;
}
.representative-inventory-types small strong {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.representative-inventory-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 18px;
}
.market-match-list {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}
.market-match {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    padding: 10px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.market-match:hover {
    border-color: #b9d4e6;
    box-shadow: var(--bsa-shadow);
}
.market-match img {
    width: 112px;
    height: 76px;
    border-radius: 0.25rem;
    object-fit: cover;
    background: var(--bsa-panel);
}
.market-match strong,
.market-match small,
.market-match em {
    display: block;
}
.market-match strong {
    color: var(--bsa-navy);
    line-height: 1.3;
}
.market-match small {
    margin-top: 5px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.35;
}
.market-match em {
    margin-top: 7px;
    color: #176fa6;
    font-size: 12px;
    font-style: normal;
    font-weight: 850;
    line-height: 1.35;
}
.buyer-faq-card {
    background: var(--bsa-white);
}
.buyer-faq-list {
    display: grid;
    gap: 10px;
}
.buyer-faq-item {
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
    overflow: hidden;
}
.buyer-faq-item summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 56px;
    padding: 15px 16px;
    color: var(--bsa-navy);
    font-weight: 900;
    line-height: 1.35;
    cursor: pointer;
    list-style: none;
}
.buyer-faq-item summary::-webkit-details-marker {
    display: none;
}
.buyer-faq-item summary span {
    min-width: 0;
}
.buyer-faq-item summary svg {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
    transition: transform .18s ease;
}
.buyer-faq-item[open] summary {
    border-bottom: 1px solid var(--bsa-border);
    background: #fff;
}
.buyer-faq-item[open] summary svg {
    transform: rotate(180deg);
}
.buyer-faq-item__body {
    display: grid;
    gap: 12px;
    padding: 15px 16px 16px;
}
.buyer-faq-item__body p {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.65;
}
.buyer-faq-item__body .text-link {
    justify-self: start;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
}
.media-count,
.secure-note {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
}
.text-link {
    display: inline-flex;
    align-items: center;
    color: var(--bsa-pink);
    font-size: 14px;
    font-weight: 850;
}
.text-link--below {
    margin-top: 14px;
}
.secure-note svg {
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}
.feature-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--bsa-border);
    list-style: none;
}
.feature-list li {
    position: relative;
    min-height: 42px;
    padding: 12px 12px 12px 28px;
    border-bottom: 1px solid var(--bsa-border);
    color: var(--bsa-navy);
    font-weight: 700;
    line-height: 1.45;
}
.feature-list li::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 18px;
    width: 6px;
    height: 6px;
    background: var(--bsa-pink);
}
.feature-card-grid {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.feature-card {
    padding: 16px;
    border: 1px solid #dbe8f1;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.feature-card h3 {
    margin: 0 0 8px;
    font-size: 1rem;
    color: var(--bsa-navy);
}
.feature-card p {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
    white-space: pre-line;
}
.listing-resource-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}
.listing-resource-list a,
.listing-resource-list button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-pink);
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}
.listing-resource-list a:hover,
.listing-resource-list button:hover {
    border-color: #b6d0e2;
    background: #f7fbfd;
}
.listing-resource-list svg {
    width: 17px;
    height: 17px;
}
.listing-media-section {
    scroll-margin-top: 96px;
}
.listing-media-filters {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
    padding: 12px;
    border: 1px solid #dbe8f1;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.listing-media-filters__label {
    margin-right: 2px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.listing-media-filter {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 0 11px;
    border: 1px solid var(--bsa-border);
    border-radius: 999px;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}
.listing-media-filter:hover,
.listing-media-filter:focus-visible {
    border-color: #9fc3da;
    background: #eef7fc;
}
.listing-media-filter.is-active,
.listing-media-filter[aria-pressed="true"] {
    border-color: var(--color-brand-ocean);
    background: var(--color-brand-ocean);
    color: var(--bsa-white);
}
.listing-media-filter svg {
    width: 16px;
    height: 16px;
}
.listing-media-filter > span {
    display: inline-grid;
    place-items: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 999px;
    background: #e8f2f8;
    color: var(--bsa-navy);
    font-size: 11px;
}
.listing-media-filter.is-active > span,
.listing-media-filter[aria-pressed="true"] > span {
    background: rgba(255,255,255,.9);
}
.listing-media-filters small {
    margin-left: auto;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 700;
}
.listing-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 210px), 1fr));
    gap: 20px;
    margin-top: 16px;
}
.listing-media-card {
    position: relative;
    display: block;
    min-width: 0;
    aspect-ratio: 16 / 10;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #eaf3f8;
    color: var(--bsa-navy);
    font: inherit;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}
.listing-media-card:hover,
.listing-media-card:focus-visible {
    border-color: #9fc3da;
    box-shadow: 0 12px 26px rgba(12, 42, 68, .1);
}
.listing-media-card[hidden] {
    display: none;
}
.listing-media-card__visual {
    position: relative;
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #eaf3f8;
}
.listing-media-card__visual img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}
.listing-media-card__type-icon {
    position: absolute;
    top: 9px;
    left: 9px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    /*border: 1px solid rgba(255,255,255,.72); */
    border-radius: 0.25rem;
    background: rgba(7, 31, 56, .82);
    color: var(--bsa-white);
    box-shadow: 0 4px 12px rgba(0,0,0,.2);
    backdrop-filter: blur(6px);
}
.listing-media-card__type-icon svg {
    width: 16px;
    height: 16px;
}
.listing-media-card[data-media-type="tour"] .listing-media-card__visual::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(3, 20, 34, .3);
    pointer-events: none;
}
.listing-media-card[data-media-type="tour"] .listing-media-card__type-icon {
    top: 50%;
    left: 50%;
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 148px;
    height: 56px;
    padding: 0 16px;
    gap: 8px;
    border-color: rgba(255, 255, 255, .82);
    border-radius: var(--radius-control);
    background: rgba(5, 27, 46, .64);
    transform: translate(-50%, -50%);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .28);
    backdrop-filter: blur(4px);
    white-space: nowrap;
}
.listing-media-card[data-media-type="tour"] .listing-media-card__type-icon svg {
    width: 26px;
    height: 26px;
    flex: 0 0 auto;
    stroke-width: 1.8;
}
.listing-media-card[data-media-type="tour"] .listing-media-card__type-label {
    font-size: 16px;
}
.listing-map {
    display: block;
    width: 100%;
    height: 290px;
    margin-top: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
}
.listing-map-shell {
    margin-top: 14px;
}
.listing-map-shell .listing-map {
    margin-top: 0;
}
.listing-map-placeholder {
    display: grid;
    place-items: center;
    background: #f5f9fc;
}
.listing-map-placeholder > div {
    display: grid;
    justify-items: center;
    gap: 8px;
    color: var(--bsa-muted);
    text-align: center;
}
.listing-map-placeholder svg {
    width: 24px;
    height: 24px;
    color: var(--bsa-pink);
}
.listing-map-placeholder strong {
    color: var(--bsa-navy);
}
.listing-map-placeholder.is-error {
    background: #fff8f8;
}
.location-map-actions {
    margin-top: 12px;
}
.listing-location-card {
    background: var(--bsa-white);
}
.listing-aside {
    min-width: 0;
}
.contact-card {
    padding: 0;
    background: var(--bsa-white);
    overflow: hidden;
    scroll-margin-top: 88px;
}
.contact-card__price {
    padding: 20px 20px 18px;
    border-bottom: 1px solid var(--bsa-border);
    background: linear-gradient(135deg, #f8fcff, #edf5fa);
}
.contact-card__price span {
    display: block;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.contact-card__price strong {
    display: block;
    margin-top: 5px;
    color: var(--bsa-red);
    font-size: 30px;
    line-height: 1.1;
    white-space: nowrap;
}
.contact-card__price strong > .listing-price-currency {
    display: inline;
    margin: 0;
    color: inherit;
    font-size: max(10px, .64em);
    line-height: 1;
    vertical-align: .08em;
}
.contact-card__price small {
    display: block;
    margin-top: 7px;
    color: var(--bsa-red);
    font-size: 13px;
    font-weight: 850;
}
.contact-card__price .contact-card__price-request {
    width: 100%;
    margin-top: 14px;
    color: var(--bsa-white);
}
.contact-card__body {
    padding: 18px 20px 20px;
}

.contact-card__head {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e5eef5;
}
.contact-card__head img,
.contact-avatar-fallback {
    width: 58px;
    height: 58px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-navy);
    color: var(--bsa-white);
    object-fit: cover;
}
.contact-avatar-fallback {
    display: grid;
    place-items: center;
    font-weight: 850;
    letter-spacing: .08em;
}
.contact-card__avatar-link,
.contact-card__avatar-static {
    display: block;
    width: 58px;
    height: 58px;
    border-radius: 0.25rem;
}
.contact-card__avatar-link:hover img,
.contact-card__avatar-link:hover .contact-avatar-fallback {
    border-color: var(--bsa-pink);
}
.contact-card__avatar-link:focus-visible,
.contact-card__name-link:focus-visible {
    outline: 3px solid rgba(213, 61, 92, .24);
    outline-offset: 3px;
}
.contact-card__head h2 {
    margin: 3px 0 4px;
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.12;
}
.contact-card__name-link {
    color: inherit;
}
.contact-card__name-link:hover {
    color: var(--bsa-pink);
}
.contact-card__head p {
    margin: 0;
    color: var(--bsa-muted);
}
.contact-card__phone {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--bsa-pink);
    font-size: 14px;
    font-weight: 750;
    line-height: 1.3;
}
.contact-card__phone svg {
    flex: 0 0 auto;
    width: 15px;
    height: 15px;
}
.contact-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.contact-card__actions .btn {
    flex: 1 1 132px;
    min-width: 0;
    min-height: 44px;
    font-size: 16px;
}
.contact-card__form {
    scroll-margin-top: 96px;
    gap: 12px;
}
.contact-card__form textarea {
    min-height: 112px;
}
.contact-card__form .inquiry-status:empty {
    min-height: 0;
}
.contact-primary {
    min-height: 50px;
}
.contact-call {
    background: #f9fcfe;
}
.contact-inventory-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    margin-top: 12px;
    border-top: 1px solid #e5eef5;
    color: var(--bsa-pink);
    font-weight: 850;
}
.contact-inventory-link svg {
    width: 17px;
    height: 17px;
}
.broker-trust-card {
    display: grid;
    gap: 20px;
    background: var(--bsa-white);
}
.broker-trust-card .block-title-row {
    margin-bottom: 0;
}
.broker-trust-card__summary {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.55;
    font-size: 14px;
}
.broker-trust-list {
    display: grid;
    gap: 10px;
}
.broker-trust-list div {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 10px;
    min-width: 0;
    padding: 12px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.broker-trust-list svg {
    width: 20px;
    height: 20px;
    color: var(--bsa-pink);
}
.broker-trust-list strong,
.broker-trust-list small {
    display: block;
    min-width: 0;
}
.broker-trust-list strong {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.25;
}
.broker-trust-list small {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.42;
    overflow-wrap: anywhere;
}
.broker-trust-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.broker-trust-actions--single {
    grid-template-columns: 1fr;
}
.broker-trust-actions .btn {
    min-width: 0;
    padding: 0 12px;
    line-height: 1.1;
}
.buyer-checklist-card {
    background: linear-gradient(180deg, #fff, #f8fbfd);
}
.buyer-checklist-progress {
    display: inline-flex;
    align-items: center;
    gap: .35em;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #fff;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
}
.buyer-checklist-meter {
    height: 8px;
    margin: 18px 0;
    border-radius: 999px;
    background: #dbe8f1;
    overflow: hidden;
}
.buyer-checklist-meter span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--bsa-pink), #27a7d8);
    transition: width .18s ease;
}
.buyer-checklist-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.buyer-checklist-item {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 11px;
    align-items: start;
    min-height: 112px;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    cursor: pointer;
}
.buyer-checklist-item:hover,
.buyer-checklist-item:has(input:checked) {
    border-color: #b9d4e6;
    box-shadow: 0 14px 30px rgba(8,35,62,.08);
}
.buyer-checklist-item input {
    width: 18px;
    height: 18px;
    margin: 2px 0 0;
    accent-color: var(--bsa-pink);
}
.buyer-checklist-item strong,
.buyer-checklist-item small {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}
.buyer-checklist-item strong {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.3;
}
.buyer-checklist-item small {
    margin-top: 6px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.45;
}
.buyer-checklist-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}
.document-bundle-card {
    background: linear-gradient(180deg, #ffffff, #f7fbfd);
}
.document-bundle-status {
    display: inline-flex;
    align-items: center;
    max-width: 360px;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #fff;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 850;
    line-height: 1.25;
}
.document-bundle-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}
.document-bundle-item {
    display: grid;
    grid-template-columns: 20px 38px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    min-height: 126px;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    cursor: pointer;
}
.document-bundle-item:hover,
.document-bundle-item:has(input:checked) {
    border-color: #b9d4e6;
    box-shadow: 0 14px 30px rgba(8,35,62,.08);
}
.document-bundle-item input {
    width: 18px;
    height: 18px;
    margin: 9px 0 0;
    accent-color: var(--bsa-pink);
}
.document-bundle-item__icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid #d7e6ef;
    border-radius: 0.25rem;
    background: #f6fbfe;
    color: var(--bsa-pink);
}
.document-bundle-item__icon svg {
    width: 18px;
    height: 18px;
}
.document-bundle-item strong,
.document-bundle-item small {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}
.document-bundle-item strong {
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.3;
}
.document-bundle-item small {
    margin-top: 6px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.45;
}
.document-bundle-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}
.document-request-card {
    display: grid;
    gap: 20px;
    background: linear-gradient(180deg, #fff, #f8fbfd);
}
.document-request-card__head {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}
.document-request-card__head > span {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 0.25rem;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.document-request-card__head svg {
    width: 20px;
    height: 20px;
}
.document-request-card h2,
.document-request-card p {
    margin: 0;
}
.document-request-card p {
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.55;
}
.document-request-card__chips {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.document-request-card__chips label {
    min-width: 0;
}
.document-request-card__chips input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.document-request-card__chips span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 7px 9px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #fff;
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 850;
    line-height: 1.2;
    text-align: center;
    cursor: pointer;
}
.document-request-card__chips input:checked + span,
.document-request-card__chips span:hover {
    border-color: #b9d4e6;
    background: #f1f8fc;
    color: var(--bsa-pink);
}
.document-request-card .btn {
    width: 100%;
}
.confidence-card {
    background: var(--bsa-white);
    display: grid;
    gap: 20px;
}
.confidence-card .block-title-row {
    margin-bottom: 8px;
}
.confidence-score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f6fbfe;
    color: var(--bsa-pink);
    font-size: 13px;
    font-weight: 850;
}
.confidence-meter {
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: #e7eef4;
}
.confidence-meter span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--bsa-pink), #22a07a);
}
.confidence-summary {
    margin: 8px 0 10px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.35;
}
.confidence-signal-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}
.confidence-signal {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    gap: 7px;
    align-items: center;
    min-height: 42px;
    padding: 8px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #fbfdff;
}
.confidence-signal svg {
    width: 16px;
    height: 16px;
    margin: 0 auto;
    color: var(--bsa-muted);
}
.confidence-signal.is-complete svg {
    color: #16805f;
}
.confidence-signal.is-missing {
    background: #fffafa;
}
.confidence-signal.is-missing svg {
    color: var(--bsa-red);
}
.confidence-signal span {
    display: block;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.confidence-questions {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--bsa-border);
}
.confidence-questions summary {
    cursor: pointer;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
    line-height: 1.3;
}
.confidence-questions ul {
    display: grid;
    gap: 7px;
    margin: 8px 0 0;
    padding-left: 18px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.45;
}
.watch-card {
    display: grid;
    gap: 20px;
    background: linear-gradient(135deg, #ffffff 0%, #f6fbfe 100%);
}
.watch-card__head {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}
.watch-card__icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-red);
}
.watch-card__icon svg {
    width: 20px;
    height: 20px;
}
.watch-card h2,
.watch-card p,
.watch-card dl {
    margin: 0;
}
.watch-card h2 {
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.2;
}
.watch-card p {
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.55;
}
.watch-card__note {
    padding: 11px 12px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f8fcff;
    color: var(--bsa-navy);
    font-weight: 800;
}
.watch-card__note.is-down {
    border-color: rgba(22, 128, 95, .32);
    background: #f1faf6;
    color: #12664d;
}
.watch-card__note.is-up {
    border-color: rgba(214, 59, 59, .28);
    background: #fff7f7;
    color: #9b2d2d;
}
.watch-card__facts {
    display: grid;
    gap: 8px;
}
.watch-card__facts div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-top: 1px solid var(--bsa-border);
}
.watch-card__facts dt,
.watch-card__facts dd {
    min-width: 0;
    margin: 0;
    font-size: 13px;
    line-height: 1.35;
}
.watch-card__facts dt {
    color: var(--bsa-muted);
    font-weight: 750;
}
.watch-card__facts dd {
    color: var(--bsa-navy);
    font-weight: 850;
    text-align: right;
    overflow-wrap: anywhere;
}
.watch-card__alert-meta {
    display: grid;
    gap: 4px;
    padding: 12px 14px;
    border: 1px solid #d8e7f0;
    border-radius: 0.25rem;
    background: #f7fbfd;
}
.watch-card__alert-meta[hidden] {
    display: none;
}
.watch-card__alert-meta strong {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.watch-card__alert-meta span {
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.5;
}
.watch-card__form,
.watch-card__login {
    display: grid;
    gap: 12px;
}
.watch-card__field {
    display: grid;
    gap: 6px;
}
.watch-card__field span {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.watch-card__field input {
    width: 100%;
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #fff;
    color: var(--bsa-navy);
    font: inherit;
    font-size: 15px;
}
.watch-card__field input:focus {
    outline: 2px solid rgba(23, 111, 166, .18);
    border-color: #6ea7ca;
}
.watch-card__helper {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.5;
}
.watch-card .inquiry-status {
    margin-top: -2px;
}
.watch-card__alert-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.watch-card__alert-actions .btn {
    min-width: 0;
    width: 100%;
    justify-content: center;
}
.watch-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.watch-card__actions .btn {
    width: 100%;
    justify-content: center;
}
@media (max-width: 520px) {
    .watch-card__alert-actions {
        display: grid;
        grid-template-columns: 1fr;
    }
    .watch-card__actions {
        grid-template-columns: 1fr;
    }
}
.buyer-packet-card {
    background: linear-gradient(180deg, #fff, #f8fbfd);
    display: grid;
    gap: 20px;
}
.buyer-packet-card__head {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}
.buyer-packet-card__head > span {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 0.25rem;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.buyer-packet-card__head svg {
    width: 20px;
    height: 20px;
}
.buyer-packet-card h2 {
    margin-bottom: 0px;
}
.buyer-packet-card p {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.55;
}
.buyer-packet-card__facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin: 0;
    border: 1px solid var(--bsa-border);
    background: var(--bsa-border);
}
.buyer-packet-card__facts div {
    min-width: 0;
    padding: 11px;
    background: var(--bsa-white);
}
.buyer-packet-card__facts span {
    display: block;
    color: var(--bsa-muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .06em;
    line-height: 1.2;
    text-transform: uppercase;
}
.buyer-packet-card__facts strong {
    display: block;
    margin-top: 4px;
    color: var(--bsa-navy);
    font-size: 18px;
    line-height: 1.15;
    overflow-wrap: anywhere;
}
.buyer-packet-card .btn {
    width: 100%;
}
.buyer-packet-card__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.listing-brief-output {
    margin-top: 12px;
}
.print-packet-card {
    display: none;
}
.ai-valuation-card {
    background: var(--bsa-white);
}
.ai-provider-pill {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f6fbfe;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 850;
}
.ai-valuation-copy {
    margin: 0 0 14px;
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.55;
}
.ai-valuation-button {
    width: 100%;
    min-height: 48px;
}
.ai-valuation-button.is-loading {
    cursor: progress;
    opacity: .72;
}
.ai-valuation-button .ai-valuation-spinner {
    width: 17px;
    height: 17px;
    border-width: 2px;
    border-color: rgba(255, 255, 255, .42);
    border-top-color: #fff;
    flex: 0 0 17px;
}
.ai-valuation-status {
    min-height: 20px;
    margin: 12px 0 0;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.4;
}
.ai-valuation-status:empty {
    display: none;
}
.ai-valuation-status.is-success {
    color: #176fa6;
}
.ai-valuation-status.is-error {
    color: var(--bsa-red);
}
.ai-valuation-result {
    display: grid;
    gap: 20px;
    margin-top: 16px;
}
.ai-valuation-result[hidden] {
    display: none;
}
.ai-valuation-headline {
    padding: 12px 14px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f8fcff;
    color: var(--bsa-navy);
    font-weight: 850;
    line-height: 1.35;
}
.ai-valuation-result section {
    display: grid;
    gap: 8px;
    padding-top: 13px;
    border-top: 1px solid #e5eef5;
}
.ai-valuation-result h3 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.25;
}
.ai-valuation-result p,
.ai-valuation-result ul {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.55;
}
.ai-valuation-result ul {
    display: grid;
    gap: 7px;
    padding-left: 18px;
}
.ai-offer-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
}
.ai-offer-grid div {
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.ai-offer-grid dt {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.ai-offer-grid dd {
    margin: 4px 0 0;
    color: var(--bsa-navy);
    font-size: 15px;
    font-weight: 850;
    overflow-wrap: anywhere;
}
.inquiry-card {
    background: var(--bsa-white);
}
.inquiry-form {
    display: grid;
    gap: 20px;
}
.inquiry-form label {
    display: grid;
    gap: 6px;
}
.inquiry-form label > span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.inquiry-form input,
.inquiry-form select,
.inquiry-form textarea {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
}
.inquiry-form textarea {
    min-height: 128px;
    resize: vertical;
    line-height: 1.5;
}
.inquiry-quality {
    display: grid;
    gap: 10px;
    padding: 12px;
    border: 1px solid #d8e8f1;
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.inquiry-quality__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
.inquiry-quality__head strong,
.inquiry-quality__head > span {
    display: block;
    color: var(--bsa-navy);
    font-weight: 900;
    line-height: 1.2;
}
.inquiry-quality__head > span {
    min-width: 40px;
    text-align: right;
}
.inquiry-quality__meter {
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: var(--bsa-panel);
}
.inquiry-quality__meter span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: var(--bsa-pink);
    transition: width .18s ease;
}
.inquiry-quality__checks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.inquiry-quality__checks span {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 850;
    line-height: 1.3;
}
.inquiry-quality__checks svg {
    flex: 0 0 auto;
    width: 15px;
    height: 15px;
    color: #95a8bb;
}
.inquiry-quality__checks span.is-complete {
    color: var(--bsa-pink);
}
.inquiry-quality__checks span.is-complete svg {
    color: var(--bsa-pink);
}
.inquiry-intent {
    display: grid;
    gap: 10px;
    padding: 12px;
    border: 1px solid #d8e8f1;
    border-radius: 0.25rem;
    background: #f7fbfe;
}
.inquiry-intent > span {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.inquiry-intent__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.inquiry-intent__button {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    min-height: 42px;
    padding: 9px 10px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.25;
    text-align: left;
    cursor: pointer;
}
.inquiry-intent__button svg {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    color: var(--bsa-pink);
}
.inquiry-intent__button span {
    min-width: 0;
}
.inquiry-intent__button:hover,
.inquiry-intent__button.is-active {
    border-color: rgba(23,111,166,.42);
    background: #eef7fc;
    color: var(--bsa-pink);
}
.inquiry-expectation {
    display: grid;
    gap: 12px;
    padding: 13px;
    border: 1px solid #d8e8f1;
    border-radius: 0.25rem;
    background: linear-gradient(180deg, #f8fcff, #fff);
    margin-bottom: 16px;
}
.inquiry-expectation p {
    color: var(--bsa-muted);
    font-size: 14px;
    line-height: 1.55;
    margin: 0;
}
.inquiry-expectation h3 {
    color: var(--bsa-navy);
    margin: 0px;
}

.inquiry-stage {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 12px;
    border: 1px solid #d8e8f1;
    border-radius: 0.25rem;
    background: #fbfdff;
}
.inquiry-stage legend {
    padding: 0 4px;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.inquiry-stage__grid {
    display: grid;
    gap: 8px;
}
.inquiry-stage label {
    display: block;
    cursor: pointer;
}
.inquiry-stage input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.inquiry-stage label > span {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    gap: 3px 9px;
    min-height: 52px;
    padding: 10px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
}
.inquiry-stage svg {
    grid-row: span 2;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    color: var(--bsa-pink);
}
.inquiry-stage strong {
    font-size: 13px;
    line-height: 1.2;
}
.inquiry-stage small {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
}
.inquiry-stage input:checked + span {
    border-color: rgba(23,111,166,.5);
    background: #eef7fc;
    box-shadow: inset 3px 0 0 var(--bsa-pink);
}
.inquiry-stage input:focus-visible + span {
    outline: 2px solid rgba(23,111,166,.55);
    outline-offset: 2px;
}
.owner-recipient-note {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 12px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f6fbfe;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.4;
}
.owner-recipient-note svg {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
}
.inquiry-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.inquiry-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}
.inquiry-next-steps {
    display: grid;
    gap: 8px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.45;
}
.inquiry-next-steps div {
    display: flex;
    gap: 8px;
}
.inquiry-next-steps strong {
    display: block;
    margin-bottom: 2px;
    color: var(--bsa-navy);
    font-size: 13px;
    line-height: 1.25;
}
.inquiry-next-steps small {
    display: block;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}
.inquiry-next-steps svg {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    color: var(--bsa-pink);
}
.inquiry-status {
    min-height: 20px;
    margin: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.4;
}
.inquiry-status.is-success {
    color: #176fa6;
}
.inquiry-status.is-error {
    color: var(--bsa-red);
}
.inquiry-confirmation {
    display: grid;
    gap: 12px;
    padding: 14px;
    border: 1px solid #b9d7e8;
    border-radius: 0.25rem;
    background: #f4fbff;
    box-shadow: 0 10px 24px rgba(12, 42, 68, .06);
}
.inquiry-confirmation[hidden] {
    display: none;
}
.inquiry-confirmation__head {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
}
.inquiry-confirmation__head > span {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 0.25rem;
    background: var(--bsa-pink);
    color: var(--bsa-white);
}
.inquiry-confirmation__head svg {
    width: 20px;
    height: 20px;
}
.inquiry-confirmation__head strong,
.inquiry-confirmation__head small {
    display: block;
    min-width: 0;
}
.inquiry-confirmation__head strong {
    color: var(--bsa-navy);
    font-size: 16px;
    line-height: 1.25;
}
.inquiry-confirmation__head small {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.4;
}
.inquiry-confirmation__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.inquiry-confirmation__facts div {
    min-width: 0;
    padding: 10px;
    border: 1px solid #d6e7f1;
    border-radius: 0.25rem;
    background: var(--bsa-white);
}
.inquiry-confirmation__facts span,
.inquiry-confirmation__facts strong {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}
.inquiry-confirmation__facts span {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.inquiry-confirmation__facts strong {
    margin-top: 4px;
    color: var(--bsa-navy);
    font-size: 14px;
    line-height: 1.25;
}
.inquiry-confirmation__steps {
    display: grid;
    gap: 8px;
}
.inquiry-confirmation__steps span {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 8px;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.4;
}
.inquiry-confirmation__steps svg {
    width: 16px;
    height: 16px;
    margin-top: 1px;
    color: var(--bsa-pink);
}
.inquiry-confirmation__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.inquiry-confirmation__actions .btn {
    min-width: 0;
    min-height: 38px;
    padding-inline: 10px;
}
.inquiry-form .btn.is-loading {
    cursor: progress;
    opacity: .72;
}
.contact-note {
    margin: 0;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.5;
}
.representative-card p {
    color: var(--bsa-muted);
    line-height: 1.55;
}
.representative-list {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}
.representative-row {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-height: 58px;
}
.agent-preview-card .block-title-row {
    margin-bottom: 10px;
}
.agent-preview-card .representative-row {
    grid-template-columns: 46px minmax(0, 1fr) 38px;
}
.agent-preview-card .representative-row .icon-btn {
    width: 34px;
    height: 34px;
}
.representative-row img,
.representative-row > span {
    width: 46px;
    height: 46px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    object-fit: cover;
}
.representative-row > span {
    display: grid;
    place-items: center;
    background: var(--bsa-panel);
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}
.representative-row strong,
.representative-row small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.representative-row small {
    color: var(--bsa-muted);
}
.sidebar-listing-tiles {
    display: grid;
    gap: 12px;
}
.listing-aside .sidebar-listing-tiles .listing-card {
    min-width: 0;
    border: 1px solid rgba(216, 225, 234, .9);
    background: var(--bsa-white);
    box-shadow: 0 10px 24px rgba(12, 42, 68, .08);
}
.listing-aside .sidebar-listing-tiles .listing-card__media {
    min-height: 168px;
    aspect-ratio: 1.55 / 1;
}
.listing-aside .sidebar-listing-tiles .listing-card__overlay {
    right: 12px;
    bottom: 12px;
    left: 12px;
}
.listing-aside .sidebar-listing-tiles .listing-card__overlay .listing-card__title {
    font-size: 14px;
    line-height: 1.18;
}
.listing-aside .sidebar-listing-tiles .listing-card__overlay .listing-card__price {
    font-size: 20px;
}
.listing-aside .sidebar-listing-tiles .listing-card__trust {
    margin-top: 7px;
}
.listing-aside .sidebar-listing-tiles .listing-card__trust small {
    display: none;
}
.listing-aside .sidebar-listing-tiles .listing-card__actions {
    top: 8px;
    right: 8px;
    gap: 5px;
}
.listing-aside .sidebar-listing-tiles .listing-card__actions .icon-btn--overlay,
.listing-aside .sidebar-listing-tiles .listing-card__compare.icon-btn--overlay {
    width: 28px;
    height: 28px;
    min-width: 28px;
    min-height: 28px;
}
.listing-aside .sidebar-listing-tiles .listing-card__badges {
    top: 8px;
    left: 8px;
    max-width: calc(100% - 112px);
}
.listing-aside .sidebar-listing-tiles .listing-card__signal {
    min-height: 22px;
    font-size: 10px;
}
.listing-aside .sidebar-listing-tiles .listing-card__readiness {
    gap: 4px;
}
.listing-aside .sidebar-listing-tiles .listing-card__readiness span {
    min-height: 20px;
    padding: 3px 6px;
    font-size: 9px;
}
.recent-item {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 11px;
    align-items: center;
    min-height: 66px;
    padding: 8px;
    border: 1px solid var(--bsa-border);
    background: #f8fbfd;
}
.recent-item img {
    width: 78px;
    height: 50px;
    object-fit: cover;
}
.recent-item strong,
.recent-item small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.recent-item strong {
    color: var(--bsa-navy);
    font-size: 14px;
}
.recent-item small {
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 700;
}
.mobile-contact-bar {
    display: none;
}
.media-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: none;
    background: #061827;
    overscroll-behavior: contain;
}
.media-modal.is-open {
    display: block;
}
.media-modal__panel {
    position: relative;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    max-height: none;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: hidden;
}
.media-modal__panel > .icon-btn {
    position: absolute;
    top: calc(12px + env(safe-area-inset-top));
    right: calc(12px + env(safe-area-inset-right));
    z-index: 3;
    border-color: rgba(255, 255, 255, .42);
    background: rgba(255, 255, 255, .08);
    color: var(--bsa-white);
}
.media-modal__panel > .icon-btn:hover {
    background: rgba(255, 255, 255, .16);
}
.media-modal__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: calc(18px + env(safe-area-inset-top)) calc(72px + env(safe-area-inset-right)) 12px calc(20px + env(safe-area-inset-left));
    color: var(--bsa-white);
}
.media-modal__head span,
.media-modal__head small {
    display: block;
    color: rgba(255,255,255,.72);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.media-modal__head strong {
    display: block;
    margin-top: 3px;
    font-size: 18px;
    line-height: 1.2;
}
.media-modal__head small {
    flex: 0 0 auto;
    padding-top: 3px;
    text-align: right;
}
.media-modal__stage {
    position: relative;
    display: grid;
    place-items: center;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}
.media-modal__stage img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center center;
    justify-self: center;
    align-self: center;
}
.media-modal__nav {
    position: absolute;
    top: 50%;
    z-index: 2;
    transform: translateY(-50%);
    background: rgba(6, 24, 39, .72);
    color: var(--bsa-white);
    backdrop-filter: blur(8px);
}
.media-modal__nav--prev {
    left: 14px;
}
.media-modal__nav--next {
    right: 14px;
}
.media-modal__thumbs {
    display: flex;
    gap: 8px;
    overflow: auto;
    padding: 10px calc(20px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(20px + env(safe-area-inset-left));
    background: #061827;
    scrollbar-color: rgba(255, 255, 255, .35) transparent;
}
.media-modal__thumbs button {
    flex: 0 0 96px;
    padding: 0;
    border: 2px solid transparent;
    border-radius: 0.25rem;
    background: transparent;
    cursor: pointer;
    overflow: hidden;
}
.media-modal__thumbs button.is-active {
    border-color: var(--bsa-pink);
    box-shadow: 0 0 0 2px rgba(255,255,255,.82);
}
.media-modal__thumbs img {
    width: 96px;
    height: 64px;
    object-fit: cover;
}
.tour-modal {
    position: fixed;
    inset: 0;
    z-index: 100;
    display: none;
    background: #061827;
}
.tour-modal.is-open {
    display: block;
}
body.is-tour-open {
    overflow: hidden;
}
.tour-modal__panel {
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    background: var(--bsa-white);
}
.tour-modal__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 72px;
    padding: 0 28px;
    border-bottom: 1px solid var(--bsa-border);
    background: var(--bsa-white);
}
.tour-modal__identity {
    display: flex;
    align-items: center;
    gap: 24px;
    min-width: 0;
}
.tour-modal__brand {
    flex: 0 0 auto;
}
.tour-modal__title {
    min-width: 0;
    padding-left: 24px;
    border-left: 1px solid var(--bsa-border);
}
.tour-modal__title span,
.tour-modal__title strong {
    display: block;
}
.tour-modal__title span {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.tour-modal__title strong {
    margin-top: 3px;
    color: var(--bsa-navy);
    font-size: 17px;
    line-height: 1.2;
}
.tour-modal__close {
    flex: 0 0 auto;
    border-color: var(--bsa-navy);
    background: var(--bsa-navy);
    color: var(--bsa-white);
}
.tour-modal__stage {
    min-height: 0;
    background: #061827;
}
.tour-modal__stage iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #061827;
}
body.is-map-open {
    overflow: hidden;
}
.map-modal {
    position: fixed;
    inset: 0;
    z-index: 65;
    display: none;
    padding: 0;
    background: transparent;
}
.map-modal.is-open {
    display: block;
}
.map-modal__panel {
    position: relative;
    width: 100%;
    height: 100%;
    display: grid;
    grid-template-rows: minmax(0, 1fr);
    gap: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: hidden;
}
.map-modal__panel > .icon-btn {
    position: absolute;
    top: calc(12px + env(safe-area-inset-top));
    right: calc(12px + env(safe-area-inset-right));
    z-index: 3;
}
.map-modal__head {
    display: none;
}
.map-modal__head span,
.map-modal__head small {
    display: block;
    color: rgba(255,255,255,.72);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.map-modal__head strong {
    display: block;
    margin-top: 3px;
    font-size: 18px;
    line-height: 1.2;
}
.map-modal__head small {
    max-width: min(48vw, 48ch);
    padding-top: 3px;
    text-align: right;
}
.map-modal__stage {
    min-height: 0;
    width: 100%;
    height: 100%;
    border-radius: 0;
    background: #061827;
    overflow: hidden;
}
.map-modal__stage iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}
.map-modal__loading {
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    width: 100%;
    height: 100%;
    padding: 32px;
    color: var(--bsa-white);
    text-align: center;
}
.map-modal__loading span {
    color: rgba(255,255,255,.72);
    max-width: 40ch;
}
.toast {
    position: fixed;
    top: 88px;
    left: 50%;
    z-index: 80;
    max-width: min(360px, calc(100vw - 36px));
    padding: 12px 14px;
    border-radius: 0.25rem;
    background: var(--bsa-navy);
    color: var(--bsa-white);
    box-shadow: 0 16px 34px rgba(8, 35, 62, .28);
    font-weight: 700;
    opacity: 0;
    pointer-events: none;
    text-align: center;
    transform: translate(-50%, -12px);
    transition: opacity .22s ease, transform .22s ease;
}
.toast.is-visible {
    opacity: 1;
    transform: translate(-50%, 0);
}
.site-footer {
    background: var(--bsa-navy);
    color: #dfeaf4;
}
.footer-grid { width: 100%; padding: 48px 60px; display: grid; grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr)); gap: 28px; }
.brand--footer {
    color: var(--bsa-white);
    width: fit-content;
    margin-top: -15px;
}
.brand--footer .brand__logo {
    height: 50px;
    max-height: none;
    margin: 10px 0px 10px 0px;
}
.footer-grid > div:first-child p {
    max-width: 82%;
}
.site-footer h3 {
    margin: 0 0 12px;
    color: var(--bsa-white);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.site-footer a:not(.brand) { display: block; margin: 8px 0; color: #dfeaf4; }
.site-footer p { color: #b7c8d8; line-height: 1.6; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.15); padding: 16px 60px; text-align: center; color: #b7c8d8; }
.socials { display: flex; gap: 10px; margin-top: 14px; }
.site-footer .socials a { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; margin: 8px 0; border: 1px solid rgba(255,255,255,.25); border-radius: 0.25rem; line-height: 0; }
.site-footer .js-enhance-select,
.site-footer .select2-container {
    width: 124px !important;
    max-width: 100%;
}
.site-footer .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 10px;
    padding-right: 28px;
    color: var(--bsa-navy);
}

.select2-container .select2-selection--single, .select2-container .select2-selection--multiple {
    min-height: 42px;
    border-color: var(--bsa-border);
    border-radius: 0.25rem;
}
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 40px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 40px; }

select[multiple].select2-hidden-accessible + .select2-container {
    width: 100% !important;
    min-width: 0;
}
.select2-container--default .select2-selection--multiple {
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: default;
}
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default.select2-container--open .select2-selection--multiple {
    border: 0;
    box-shadow: none;
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    display: flex;
    order: 1;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    position: relative;
    order: 1;
    display: flex;
    align-items: center;
    float: none;
    width: 100%;
    max-width: 100%;
    min-height: 40px;
    margin: 0;
    padding: 8px 44px 8px 12px;
    border: 1px solid #c8d8e6;
    border-radius: 0.25rem;
    background: #f5f9fc;
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    position: absolute;
    top: 0;
    right: 0;
    left: auto;
    display: grid;
    place-items: center;
    width: 38px;
    height: 100%;
    padding: 0;
    border: 0;
    border-left: 1px solid #c8d8e6;
    border-radius: 0 5px 5px 0;
    background: transparent;
    color: var(--bsa-muted);
    font-size: 18px;
    line-height: 1;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove > span {
    display: block;
    transform: translateY(-2px);
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus {
    background: #e5eef5;
    color: #b42332;
}
.select2-container--default .select2-selection--multiple .select2-search--inline {
    position: relative;
    order: -1 !important;
    display: block;
    flex: none;
    float: none;
    width: 100%;
    min-width: 0;
    margin: 0;
}
.select2-container--default .select2-selection--multiple textarea.select2-search__field {
    width: 100% !important;
    height: 44px;
    min-height: 44px;
    margin: 0;
    padding: 10px 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: none;
    color: var(--bsa-text);
    font-family: inherit;
    font-size: 14px;
    line-height: 22px;
    resize: none;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}
.select2-container--default .select2-selection--multiple textarea.select2-search__field:hover {
    border-color: #aebfce;
}
.select2-container--default .select2-selection--multiple textarea.select2-search__field:focus {
    border-color: var(--color-focus);
    box-shadow: 0 0 0 3px rgba(12, 45, 85, .12);
    outline: 0;
}
.select2-container--default .select2-selection--multiple textarea.select2-search__field::placeholder {
    color: var(--color-text-tertiary);
    opacity: 1;
}
.select2-dropdown.bsa-multi-select-dropdown {
    margin-top: 4px;
    border: 1px solid #c8d8e6;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 16px 34px rgba(8, 35, 62, .16);
    overflow: hidden;
}
.select2-dropdown.bsa-multi-select-dropdown .select2-results {
    padding: 4px;
}
.select2-dropdown.bsa-multi-select-dropdown .select2-results__options {
    max-height: 260px;
}
.select2-dropdown.bsa-multi-select-dropdown .select2-results__option {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 9px 10px;
    border-radius: 4px;
    color: var(--bsa-text);
    font-size: 14px;
    line-height: 1.35;
}
.select2-dropdown.bsa-multi-select-dropdown .select2-results__option--highlighted.select2-results__option--selectable {
    background: var(--bsa-navy);
    color: var(--bsa-white);
}
.select2-dropdown.bsa-multi-select-dropdown .select2-results__option--selected {
    background: #edf4f8;
    color: var(--bsa-navy);
    font-weight: 700;
}
.select2-dropdown.bsa-multi-select-dropdown .select2-results__option--selected::after {
    content: '\2713';
    margin-left: auto;
    padding-left: 12px;
    font-weight: 900;
}
.select2-dropdown.bsa-multi-select-dropdown .select2-results__message {
    color: var(--bsa-muted);
}

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
    border-bottom-left-radius: 0.375rem;
    border-bottom-right-radius: 0.375rem;
}

@media (max-width: 1180px) {
    .footer-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .footer-grid > div:first-child {
        grid-column: 1 / -1;
    }
    .footer-grid > div:first-child p {
        max-width: 680px;
    }
    .listing-hero,
    .listing-section {
        padding-left: 32px;
        padding-right: 32px;
    }
    .grid-4,
    .section--full .grid-4 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .dealer-directory-grid,
    .brand-directory-grid,
    .event-directory-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .inventory-insights {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .explore-strip {
        grid-template-columns: minmax(0, 1fr) minmax(340px, .9fr);
    }
    .explore-strip__actions {
        grid-column: 1 / -1;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        justify-items: stretch;
    }
    .explore-strip__links {
        justify-content: flex-start;
    }
    .market-pathways__grid {
        grid-template-columns: 1fr;
    }
    .showing-plan-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .inventory-pathway-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .inventory-guide__grid {
        grid-template-columns: 1fr;
    }
    .inventory-insights div {
        border-bottom: 1px solid var(--bsa-border);
    }
}

@media (max-width: 860px) {
    .site-header {
        align-items: center;
        flex-wrap: nowrap;
        gap: 10px;
        padding: 16px;
    }
    .brand {
        flex: 1 1 auto;
        min-width: 0;
    }
    .brand__logo {
        height: 48px;
    }
    .site-header .nav-toggle {
        display: inline-flex;
        flex: 0 0 auto;
        min-height: 44px;
        border-color: var(--color-brand-ocean);
        background: transparent;
        color: var(--color-brand-ocean);
        box-shadow: none;
    }
    .site-header .nav-toggle:hover {
        border-color: var(--color-brand-ocean-hover);
        background: transparent;
        color: var(--color-brand-ocean-hover);
        box-shadow: none;
    }
    .site-header > .saved-link--mobile {
        display: inline-flex;
        flex: 0 0 auto;
        background: var(--color-surface-canvas);
    }
    .site-header__menu {
        border-top-color: var(--color-border-subtle);
        background: var(--color-surface-canvas);
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        z-index: 2;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        max-height: calc(100dvh - 72px);
        margin: 0;
        padding: 14px 16px 18px;
        border-top: 1px solid var(--bsa-border);
        border-bottom: 1px solid var(--bsa-border);
        box-shadow: 0 18px 34px rgba(7, 31, 56, .16);
        overflow-y: auto;
        overscroll-behavior: contain;
    }
    .site-header.is-menu-open .site-header__menu {
        display: flex;
    }
    .main-nav,
    .header-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
        align-items: stretch;
        gap: 10px;
    }
    .main-nav a,
    .header-actions a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 46px;
        padding: 0 14px;
        border: 1px solid var(--bsa-border);
        border-radius: 0.25rem;
        background: #f8fbfd;
    }
    .main-nav a.is-active {
        border-color: rgba(23, 111, 166, .28);
        background: #eef7fc;
    }
    .header-actions .btn.btn-primary {
        min-height: 50px;
        border-color: var(--color-accent-coral);
        background: var(--color-accent-coral);
        color: var(--color-text-inverse);
    }
    .header-actions .btn.btn-primary:hover {
        border-color: var(--color-accent-coral-hover);
        background: var(--color-accent-coral-hover);
    }
    .header-actions .saved-link--desktop {
        display: none;
    }
    .header-actions .header-dashboard-button {
        grid-column: 1 / -1;
    }
    body.is-mobile-menu-open {
        overflow: hidden;
    }
    .seller-free-callout {
        grid-template-columns: 1fr;
        align-items: start;
        width: 100%;
    }
    .seller-free-callout__action {
        grid-column: 1;
        width: fit-content;
    }
    .grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .media-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .section--full .grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .search-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .listing-tools { grid-template-columns: 1fr 1fr; }
    .field--wide { grid-column: span 1; }
    .detail-grid, .feature-row, .detail-grid--listing { grid-template-columns: 1fr; }
    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .footer-grid > div:first-child p {
        max-width: 100%;
    }
    .site-footer a:not(.brand) {
        display: flex;
        align-items: center;
        min-height: 44px;
        margin: 0;
    }
    .site-footer .socials a {
        min-width: 44px;
        min-height: 44px;
    }
    .seller-listing-tiles {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .dealer-directory-head,
    .brand-directory-head,
    .event-directory-head {
        display: grid;
    }
    .dealer-profile-panel,
    .brand-profile-panel,
    .dealer-trust-panel,
    .dealer-contact-panel {
        grid-template-columns: 1fr;
    }
    .dealer-contact-steps {
        grid-template-columns: 1fr;
    }
    .profile-hero {
        min-height: 0;
    }
    .profile-hero__content {
        grid-template-columns: 1fr;
        min-height: 0;
    }
    .profile-hero__stats {
        max-width: 640px;
    }
    .dealer-profile-card__title,
    .brand-profile-card__title {
        flex-direction: column;
    }
    .dealer-directory-grid,
    .brand-directory-grid,
    .event-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .dealer-search-panel {
        grid-template-columns: 1fr auto;
    }
    .event-search-panel {
        grid-template-columns: 1fr auto;
    }
    .event-filter-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .dealer-sort-field {
        min-width: 170px;
    }
    .dealer-search-count {
        grid-column: 1 / -1;
    }

    .inventory-insights {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .inventory-intent-panel__head {
        grid-template-columns: 1fr;
        align-items: start;
    }
    .market-pathways__head {
        grid-template-columns: 1fr;
        align-items: start;
    }
    .compare-tray {
        grid-template-columns: 1fr auto;
    }
    .compare-tray__items {
        grid-column: 1 / -1;
        order: 3;
    }
    .listing-price-block {
        width: 100%;
        flex-basis: auto;
    }
    .listing-research-guide__grid {
        grid-template-columns: 1fr;
    }
    .market-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .spec-list,
    .feature-list,
    .inquiry-grid {
        grid-template-columns: 1fr;
    }
    .inquiry-confirmation__facts,
    .inquiry-confirmation__actions {
        grid-template-columns: 1fr;
    }
    .hero-search__bar {
        grid-template-columns: 1fr 1fr;
        min-height: auto;
    }
    .hero-search__segment {
        min-height: 58px;
        font-size: 16px;
    }
    .hero-search__make,
    .hero-search__filters {
        grid-column: span 2;
    }
    .hero-search__submit {
        grid-column: span 2;
        min-height: 50px;
    }
    .hero-popover {
        left: 0 !important;
        right: 0;
        top: 100%;
        width: 100% !important;
        margin-top: 8px;
    }
    .hero-search--compact .hero-popover {
        top: 100%;
    }
    .inventory-search-head {
        align-items: stretch;
        flex-direction: column;
    }
    .inventory-sort {
        align-items: stretch;
        flex-direction: column;
        gap: 6px;
    }
    .inventory-sort select {
        width: 100%;
    }
    .inventory-sort-row {
        justify-content: stretch;
    }
    .filter-pills,
    .filter-cards,
    .vessel-filter-columns,
    .filter-modal__body,
    .filter-input-grid,
    .hero-range-fields {
        grid-template-columns: 1fr;
    }
    .hero-copy {
        margin-bottom: 22px;
    }
    .hero-cta .btn {
        min-width: 0;
    }
    .hero-trust {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .grid-4, .grid-3, .grid-2, .spec-grid, .search-grid { grid-template-columns: 1fr; }
    .seller-listing-tiles {
        grid-template-columns: 1fr;
    }
    .representative-inventory-card .block-title-row,
    .representative-inventory-actions {
        display: grid;
        grid-template-columns: 1fr;
    }
    .representative-inventory-actions .btn {
        width: 100%;
        justify-content: center;
    }
    .representative-inventory-stats,
    .representative-inventory-types {
        grid-template-columns: 1fr;
    }
    .inventory-pathway-cards,
    .inventory-intent-stats {
        grid-template-columns: 1fr;
    }
    .inventory-intent-stats div {
        border-right: 0;
        border-bottom: 1px solid #dce8f0;
    }
    .inventory-intent-stats div:last-child {
        border-bottom: 0;
    }
    .inventory-pathway-card__links a {
        grid-template-columns: 1fr;
        gap: 2px;
        align-items: start;
    }
    .inventory-pathway-card__links span,
    .inventory-pathway-card__links small {
        white-space: normal;
    }
    .seller-listings-block .block-title-row {
        align-items: stretch;
        flex-direction: column;
    }
    .seller-listings-block .block-title-row .btn {
        width: 100%;
    }
    .buyer-faq-item summary,
    .buyer-faq-item__body {
        padding-inline: 12px;
    }
    .buyer-faq-item summary {
        align-items: flex-start;
        min-height: 52px;
    }
    .site-header {
        padding: 14px 16px;
    }
    .brand {
        flex-basis: auto;
    }
    .brand__logo {
        height: 44px;
    }

    .header-actions {
        gap: 10px;
    }
    .main-nav a,
    .header-actions a,
    .listing-overview-meta dd {
        overflow-wrap: anywhere;
    }
    .listing-overview-meta {
        display: grid;
        justify-content: stretch;
    }
    .listing-overview-meta div {
        display: grid;
        gap: 3px;
    }
    .listing-overview-meta__id {
        margin-left: 0;
        text-align: left;
    }
    .detail-hero,
    .listing-section {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }
    .detail-hero,
    .listing-section,
    .detail-grid--listing,
    .content-block,
    .listing-overview-card,
    .listing-overview-head {
        max-width: 100%;
        min-width: 0;
    }
    .listing-overview-card h1 {
        max-width: 100%;
        font-size: 28px;
        line-height: 1.12;
        word-break: break-word;
    }

    .listing-activity-card .block-title-row {
        align-items: stretch;
        flex-direction: column;
    }
    .showing-plan-card .block-title-row {
        align-items: stretch;
        flex-direction: column;
    }
    .listing-activity-card .block-title-row .btn,
    .showing-plan-card .block-title-row .btn {
        width: 100%;
    }
    .listing-activity-signals,
    .listing-activity-timeline,
    .showing-plan-grid {
        grid-template-columns: 1fr;
    }
    .dealer-directory-grid,
    .brand-directory-grid,
    .event-directory-grid,
    .dealer-search-panel,
    .event-search-panel,
    .dealer-card__actions {
        grid-template-columns: 1fr;
    }
    .event-filter-row {
        grid-template-columns: 1fr;
    }
    .dealer-sort-field {
        min-width: 0;
        width: 100%;
    }
    .dealer-card__media {
        width: 64px;
        height: 64px;
        aspect-ratio: auto;
    }
    .dealer-card {
        grid-template-columns: 64px minmax(0, 1fr);
        min-height: auto;
        padding: 14px;
    }
    .dealer-card__facts {
        grid-template-columns: 1fr;
    }
    .brand-card {
        grid-template-columns: 64px minmax(0, 1fr);
        min-height: auto;
        gap: 12px;
        padding: 14px;
    }

    .brand-card__facts,
    .brand-card__actions {
        grid-template-columns: 1fr;
    }
    .brand-card__actions .btn {
        width: 100%;
    }
    .brand-card__fact--wide {
        grid-column: auto;
    }
    .event-card {
        grid-template-columns: 76px minmax(0, 1fr);
        min-height: auto;
        gap: 12px;
        padding: 14px;
    }
    .event-card__media {
        width: 76px;
        height: 64px;
        aspect-ratio: auto;
    }
    .event-card__facts,
    .event-card__actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .event-card__actions .btn {
        width: auto;
        padding-inline: 8px;
    }
    .dealer-profile-head .detail-actions__group,
    .brand-profile-head .detail-actions__group {
        grid-template-columns: 1fr;
    }
    .dealer-contact-panel {
        padding: 12px;
    }
    .dealer-contact-panel .block-title-row,
    .dealer-contact-actions {
        align-items: stretch;
        flex-direction: column;
    }
    .dealer-contact-panel .btn,
    .dealer-contact-actions .btn {
        width: 100%;
    }
    .dealer-related-panel {
        margin: 18px 0;
        padding: 12px;
    }
    .dealer-related-panel .block-title-row,
    .dealer-related-card__actions {
        align-items: stretch;
        grid-template-columns: 1fr;
    }
    .dealer-related-panel .block-title-row {
        flex-direction: column;
    }
    .dealer-related-panel .btn,
    .dealer-related-card__actions .btn {
        width: 100%;
    }
    .dealer-related-grid {
        grid-template-columns: 1fr;
    }
    .dealer-related-card__head > span,
    .dealer-related-card__reasons span {
        border-radius: 0.25rem;
    }
    .dealer-contact-panel h2 {
        font-size: 21px;
    }
    .dealer-contact-prompts {
        display: grid;
        grid-template-columns: 1fr;
    }
    .dealer-contact-prompts span {
        min-height: 38px;
        border-radius: 0.25rem;
    }
    .profile-hero {
        margin-inline: -4px;
    }
    .profile-hero__inner {
        gap: 12px;
        padding: 14px;
    }
    .profile-hero__breadcrumb {
        font-size: 13px;
    }
    .listing-cover__breadcrumb {
        top: 14px;
        left: 14px;
        right: 14px;
        font-size: 13px;
    }
    .profile-hero__identity {
        grid-template-columns: 64px minmax(0, 1fr);
        gap: 12px;
    }
    .profile-hero__mark {
        width: 64px;
        height: 64px;
    }
    .profile-hero__mark span {
        font-size: 17px;
    }
    .profile-hero h1 {
        font-size: 28px;
        line-height: 1.1;
    }
    .profile-hero p {
        font-size: 14px;
        line-height: 1.45;
        margin-top: 5px;
    }
    .profile-hero__facts span,
    .profile-hero__facts a,
    .profile-hero__chips a {
        min-height: 30px;
        font-size: 12px;
    }
    .profile-hero__actions {
        grid-template-columns: 1fr;
    }
    .profile-hero__actions .btn {
        width: 100%;
    }
    .profile-hero__stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .profile-hero__stats div {
        min-height: 78px;
        padding: 12px;
        border-right: 1px solid #d7e4ec;
        border-bottom: 1px solid #d7e4ec;
    }
    .profile-hero__stats div:nth-child(2n) {
        border-right: 0;
    }
    .profile-hero__stats div:nth-last-child(-n+2) {
        border-bottom: 0;
    }
    .profile-hero__stats div:last-child {
        border-bottom: 0;
    }
    .profile-hero__stats strong {
        font-size: 18px;
    }
    .dealer-profile-card,
    .brand-profile-card {
        grid-template-columns: 1fr;
    }
    .dealer-profile-card__media {
        width: min(160px, 100%);
        height: auto;
        aspect-ratio: 1 / 1;
    }
    .brand-profile-card__media,
    .brand-profile-card__media img {
        min-height: 180px;
    }
    .dealer-profile-facts,
    .dealer-market-grid {
        grid-template-columns: 1fr;
    }
    .dealer-market-grid div,
    .dealer-market-grid div:nth-child(2n),
    .dealer-market-grid div:nth-last-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid var(--bsa-border);
    }
    .dealer-market-grid div:last-child {
        border-bottom: 0;
    }

    .dealer-specialties {
        display: grid;
        grid-template-columns: 1fr;
        align-items: stretch;
    }
    .dealer-specialties span {
        grid-column: 1 / -1;
    }
    .dealer-specialties a {
        max-width: 100%;
        white-space: normal;
        text-align: center;
        justify-content: center;
        min-width: 0;
    }
    .seller-buyer-note {
        grid-template-columns: 1fr;
        align-items: start;
    }
    .seller-buyer-note > svg {
        width: 38px;
        height: 38px;
    }
    .inventory-insights {
        grid-template-columns: 1fr;
    }
    .inventory-insights div {
        border-right: 0;
    }
    .related-searches {
        align-items: stretch;
    }
    .saved-searches-panel__head,
    .saved-searches-list {
        grid-template-columns: 1fr;
    }
    .saved-searches-panel__head .btn {
        width: 100%;
        justify-content: center;
    }
    .related-searches span {
        flex-basis: 100%;
    }
    .related-searches a {
        flex: 1 1 150px;
        justify-content: center;
        text-align: center;
    }
    .market-pathways {
        padding: 16px;
    }
    .market-pathways__head h2 {
        font-size: 21px;
    }
    .inventory-guide {
        padding: 16px;
    }
    .inventory-guide__head h2 {
        font-size: 21px;
    }
    .inventory-empty-state {
        grid-template-columns: 1fr;
        padding: 22px;
    }
    .inventory-empty-state h2 {
        font-size: 24px;
    }
    .empty-search-recovery {
        padding: 18px;
    }
    .empty-search-recovery__head,
    .empty-search-recovery__subhead {
        display: grid;
        grid-template-columns: 1fr;
    }
    .empty-search-recovery__head .btn {
        width: 100%;
        justify-content: center;
    }
    .empty-search-actions,
    .empty-search-listing-grid {
        grid-template-columns: 1fr;
    }
    .section-head__actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }
    .section-head,
    .section-head > div,
    .section-head__actions {
        max-width: calc(100vw - 32px);
    }

    .explore-strip {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 22px;
        padding: 16px;
    }
    .explore-strip__intro h2 {
        font-size: 28px;
    }
    .explore-strip__stats {
        grid-template-columns: 1fr;
    }
    .explore-strip__stats a {
        min-height: 70px;
    }
    .explore-strip__stats a + a {
        border-left: 0;
        border-top: 1px solid #d9e8f1;
    }
    .explore-strip__actions {
        grid-template-columns: 1fr;
        justify-items: stretch;
    }
    .explore-strip__links {
        justify-content: flex-start;
    }
    .explore-strip__links a,
    .explore-strip__actions .btn {
        width: 100%;
    }
    .explore-strip__links a {
        justify-content: center;
    }
    .section-head h1,
    .section-head h2 {
        font-size: 30px;
        word-break: break-word;
    }
    .section-head p {
        word-break: break-word;
    }
    .section-head__actions .btn {
    width: 100%;
    min-width: 0;
    padding-inline: 10px;
    font-size: 14px;
}
    .compare-tray {
        bottom: 0;
        left: 0;
        right: 0;
        grid-template-columns: 1fr auto;
        width: auto;
        padding: 10px 16px;
    }
    .compare-tray > .btn {
        grid-column: 1 / -1;
        width: 100%;
    }
    .compare-item {
        flex-basis: 170px;
    }
    .compare-modal {
        padding: 12px;
    }
    .compare-modal__tools {
        align-items: stretch;
        flex-direction: column;
    }
    .compare-modal__tools .btn {
        width: 100%;
    }
    .compare-tray.compare-tray--compact-mobile {
        left: auto;
        right: 12px;
        bottom: max(12px, env(safe-area-inset-bottom) + 8px);
        width: fit-content;
        max-width: calc(100vw - 24px);
        grid-template-columns: minmax(0, auto) auto auto;
        gap: 8px;
        padding: 8px 10px;
        border: 1px solid rgba(191, 211, 225, .95);
        border-radius: 999px;
        box-shadow: 0 14px 28px rgba(8, 31, 52, .18);
    }
    body.has-compare-tray {
        padding-bottom: calc(var(--compare-tray-height, 0px) + 18px);
    }
    .compare-tray.compare-tray--compact-mobile .compare-tray__summary {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-width: 0;
        white-space: nowrap;
    }
    .compare-tray.compare-tray--compact-mobile .compare-tray__items {
        display: none;
    }
    .compare-tray.compare-tray--compact-mobile > .btn {
        grid-column: auto;
        width: auto;
        min-height: 36px;
        padding-inline: 12px;
        font-size: 12px;
        white-space: nowrap;
    }
    .compare-tray.compare-tray--compact-mobile .compare-tray__summary strong,
    .compare-tray.compare-tray--compact-mobile .compare-tray__summary span {
        display: inline;
    }
    .compare-tray.compare-tray--compact-mobile .compare-tray__summary strong {
        font-size: 12px;
        line-height: 1.1;
    }
    .compare-tray.compare-tray--compact-mobile .compare-tray__summary span {
        font-size: 11px;
        line-height: 1.2;
    }
    .compare-tray.compare-tray--compact-mobile .js-clear-compare {
        width: 36px;
        min-width: 36px;
        min-height: 36px;
    }
    .compare-tray.compare-tray--compact-mobile.compare-tray--hero-docked {
        left: 50%;
        right: auto;
        bottom: 10px;
        width: min(calc(100vw - 28px), 292px);
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: 8px;
        padding: 8px 10px;
        transform: translateX(-50%);
        border-radius: 999px;
        box-shadow: 0 14px 28px rgba(8, 31, 52, .22);
    }
    .compare-tray.compare-tray--compact-mobile.compare-tray--hero-docked .compare-tray__summary {
        display: grid;
        gap: 0;
        min-width: 0;
    }
    .compare-tray.compare-tray--compact-mobile.compare-tray--hero-docked .compare-tray__summary strong {
        font-size: 13px;
        line-height: 1.05;
    }
    .compare-tray.compare-tray--compact-mobile.compare-tray--hero-docked .compare-tray__summary span {
        font-size: 10px;
        line-height: 1.1;
    }
    .compare-tray.compare-tray--compact-mobile.compare-tray--hero-docked > .btn {
        min-height: 36px;
        padding-inline: 12px;
        font-size: 12px;
    }
    .compare-tray.compare-tray--compact-mobile.compare-tray--hero-docked .js-clear-compare {
        width: 36px;
        min-width: 36px;
        min-height: 36px;
    }
    .broker-trust-actions,
    .buyer-checklist-grid,
    .document-bundle-grid,
    .document-request-card__chips,
    .buyer-fit-grid,
    .spec-list,
    .feature-list,
    .listing-discovery-pathways,
    .listing-research-guide__grid,
    .market-stat-grid {
        grid-template-columns: 1fr;
    }
    .listing-research-guide__head {
        display: grid;
        grid-template-columns: 1fr;
    }
    .listing-research-guide__head .btn {
        width: 100%;
        justify-content: center;
    }
    .listing-research-links a {
        grid-template-columns: 1fr;
        align-items: flex-start;
    }
    .listing-research-links small {
        text-align: left;
    }
    .market-match {
        grid-template-columns: 1fr;
    }
    .market-match img {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
    }
    .buyer-checklist-actions .btn {
        width: 100%;
    }
    .buyer-packet-card__actions {
        grid-template-columns: 1fr;
    }
    .document-bundle-actions .btn {
        width: 100%;
    }
    .document-bundle-status {
        max-width: 100%;
    }
    .document-bundle-item {
        grid-template-columns: 20px 38px minmax(0, 1fr);
        min-height: 0;
    }
    .ticker {
        display: none;
    }
    .section--full .grid-4 { grid-template-columns: 1fr; }
    .media-strip { grid-template-columns: 1fr; }
    .listing-pager { align-items: stretch; flex-direction: column; }
    .listing-pager .btn { width: 100%; }
    .listing-tools { grid-template-columns: 1fr; }
    .pager { justify-content: center; }
    .section { padding: 36px 16px; }
    .listing-hero,
    .listing-section {
        padding-left: 16px;
        padding-right: 16px;
    }
    .section-head {
    align-items: start;
    display: block;
}

    .hero__content,
    .hero-copy {
        width: 100%;
        max-width: calc(100vw - 32px);
        min-width: 0;
    }
    .hero-copy {
        margin-bottom: 16px;
    }

    .event-hero__content {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .event-hero__content h1 {
        max-width: 100%;
    }
    .event-hero__meta {
        max-width: 100%;
        gap: 10px;
    }
    .event-hero__meta-item {
        padding: 14px 16px;
        border-radius: 10px;
    }

    .hero-quick-links::-webkit-scrollbar {
        display: none;
    }
    .hero-quick-links__label {
        flex: 0 0 auto;
        min-height: 34px;
        display: inline-flex;
        align-items: center;
    }

    .seller-free-callout {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 12px;
        width: 100%;
        margin: 0;
        padding: 24px 16px 20px;
    }
    .seller-free-callout::before {
        inset: 14px auto 14px 0;
        width: 3px;
    }
    .seller-free-callout__body {
        gap: 7px;
        padding-left: 14px;
    }
    .seller-free-callout__eyebrow {
        gap: 8px;
    }
    .seller-free-callout__kicker {
        font-size: 11px;
    }
    .seller-free-callout__badge {
        min-height: 24px;
        padding-inline: 9px;
        font-size: 11px;
    }
    .seller-free-callout strong {
        font-size: clamp(20px, 6.5vw, 24px);
        line-height: 1.08;
    }
    .seller-free-callout__copy {
        max-width: none;
        font-size: 13px;
        line-height: 1.45;
    }
    .seller-free-callout__benefits {
        display: none;
    }
    .seller-free-callout__aside {
        gap: 8px;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }
    .seller-free-callout__aside-copy {
        display: none;
    }
    .seller-free-callout__aside-label {
        display: none;
    }
    .seller-free-callout__action {
        width: 100%;
        min-height: 44px;
        margin-top: 2px;
        padding-inline: 14px;
        justify-content: center;
    }

    .hero-cta .btn {
        width: 100%;
    }

    .hero-trust::-webkit-scrollbar {
        display: none;
    }

    .hero-trust strong {
        font-size: 20px;
    }
    .hero-trust span {
        margin-top: 4px;
        font-size: 11px;
        line-height: 1.35;
    }
    .hero-search__bar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1px;
    }

    .hero-action-panel {
        gap: 20px;
        margin-top: 16px;
        padding: 14px;
        border-radius: 10px;
        background: linear-gradient(180deg, rgba(8,35,62,.84), rgba(8,35,62,.68));
    }
    .hero-search__segment,
    .hero-search__make {
        min-height: 52px;
        font-size: 15px;
    }
    .hero-search__make input {
        font-size: 15px;
    }
    .hero-search__submit {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        min-height: 52px;
        grid-column: 1 / -1;
        gap: 4px;
        padding-block: 10px;
    }
    .hero-search__make {
        grid-column: 1 / -1;
    }
    .hero-search__segment:not(.hero-search__make),
    .hero-search__submit {
        padding-inline: 14px;
    }
    .hero-search__submit-label {
        display: block;
        text-align: center;
    }
    .hero-search__segment span {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .detail-actions { align-items: stretch; flex-direction: column; }
    .detail-actions__group {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
    .listing-hero > .detail-actions {
        display: grid;
        grid-template-columns: repeat(5, minmax(44px, 1fr));
        align-items: center;
        gap: 8px;
    }
    .listing-hero > .detail-actions > .detail-actions__group {
        display: contents;
    }
    .listing-hero > .detail-actions .btn {
        width: 100%;
        min-width: 44px;
        min-height: 44px;
        padding: 0;
    }
    .listing-hero > .detail-actions .listing-action__label {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }
    .feature-card-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .agents-page-head .detail-actions__group {
        grid-template-columns: 1fr;
    }
    .agent-contact-details {
        grid-template-columns: 1fr;
    }
    .agent-message-modal {
        padding: 12px;
    }
    .agent-message-form,
    .agent-message-modal__head {
        padding: 16px;
    }
    .cover__meta {
        left: 12px;
        right: 12px;
        bottom: 72px;
        max-width: none;
    }
    .listing-cover .btn {
        left: 12px;
        right: 12px;
        width: auto;
    }
    .listing-cover__actions {
        left: 12px;
        right: 12px;
        bottom: 12px;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .listing-cover__actions .btn:only-child {
        grid-column: 1 / -1;
    }
    .listing-cover .listing-cover__actions .btn {
        left: auto;
        right: auto;
        width: 100%;
        min-height: 44px;
        padding-inline: 10px;
        font-size: 14px;
        line-height: 1.2;
        white-space: nowrap;
    }
    .tour-modal__head {
        min-height: 80px;
        padding: 16px;
    }
    .tour-modal__identity {
        gap: 0;
    }
    .tour-modal__brand .brand__logo {
        height: 48px;
        max-width: min(220px, 55vw);
    }
    .tour-modal__title {
        display: none;
    }
    .block-title-row,
    .contact-methods,
    .ownership-cost-grid,
    .ownership-output-grid,
    .inquiry-quality__checks,
    .inquiry-intent__grid,
    .inquiry-actions {
        grid-template-columns: 1fr;
        align-items: stretch;
    }
    .ai-offer-grid {
        grid-template-columns: 1fr;
    }
    .block-title-row {
        display: grid;
    }
    .mobile-contact-bar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 80;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
        gap: 1px;
        padding: 8px;
        border-top: 1px solid var(--bsa-border);
        background: rgba(255,255,255,.96);
        backdrop-filter: blur(12px);
    }
    .mobile-contact-bar a,
    .mobile-contact-bar button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-height: 42px;
        border: 1px solid var(--bsa-border);
        border-radius: 0.25rem;
        background: var(--bsa-white);
        color: var(--bsa-navy);
        font-size: 13px;
        font-weight: 850;
    }
    .mobile-contact-bar svg {
        width: 16px;
        height: 16px;
    }
    .main-nav {
    font-size: 13px;
    gap: 12px;
}
}

.dealer-card,
.brand-card,
.event-card {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-height: 392px;
    padding: 0;
    overflow: hidden;
}
.dealer-card__media,
.brand-card__media,
.event-card__media {
    width: 100%;
    height: 154px;
    min-height: 154px;
    max-width: none;
    border: 0;
    border-bottom: 1px solid #cfe0eb;
    border-radius: 0;
    background-color: #f8fcff;
}
.brand-card__media {
    position: relative;
    display: grid;
    place-items: center;
    width: 68px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    color: var(--bsa-navy);
    overflow: hidden;
    height: 172px;
    min-height: 172px;
    background-color: #f8fbfd;
}
.event-card__media {
    position: relative;
    display: grid;
    place-items: center;
    width: 100%;
    max-width: none;
    border: 0;
    border-bottom: 1px solid #cfe0eb;
    border-radius: 0;
    background-color: #f8fbfd;
    color: var(--bsa-navy);
    overflow: hidden;
    height: 154px;
    min-height: 154px;
}
.dealer-card__media span,
.brand-card__media span,
.event-card__media span {
    font-size: 38px;
    font-weight: 900;
    letter-spacing: .08em;
}
.dealer-card__body,
.brand-card__body,
.event-card__body {
    flex: 1;
    padding: 16px;
}
.dealer-card__title,
.brand-card__title,
.event-card__title {
    font-size: 20px;
    line-height: 1.18;
}
.dealer-card__facts,
.brand-card__facts,
.event-card__facts {
    margin-top: 2px;
}
.dealer-card__actions,
.brand-card__actions,
.event-card__actions {
    padding-top: 10px;
}

@media (max-width: 640px) {
    .dealer-card,
    .brand-card,
    .event-card {
        min-height: auto;
        padding: 0;
    }
    .dealer-card__media,
    .brand-card__media,
    .event-card__media {
        width: 100%;
        height: 142px;
        min-height: 142px;
        aspect-ratio: auto;
    }
    .brand-card__media {
    width: 64px;
    height: 156px;
    min-height: 156px;
}
    .dealer-card__body,
    .brand-card__body,
    .event-card__body {
        padding: 14px;
    }
}

.dealer-directory-grid,
.brand-directory-grid,
.event-directory-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 20px;
    align-items: start;
}
.event-directory-grid {
    align-items: stretch;
}
.event-directory-grid > .js-event-card {
    display: flex;
    min-width: 0;
}
.event-directory-grid > .js-event-card > .event-card {
    flex: 1 1 auto;
    width: 100%;
}
.event-directory-grid .event-card__facts {
    margin-top: auto;
}
.event-directory-grid .event-card__actions {
    margin-top: 0;
}
.dealer-directory-grid .dealer-card,
.brand-directory-grid .brand-card {
    min-height: 0;
    align-self: start;
}
.dealer-directory-grid .dealer-card__media,
.brand-directory-grid .brand-card__media {
    height: 132px;
    min-height: 132px;
}
.dealer-directory-grid .dealer-card__body,
.brand-directory-grid .brand-card__body {
    flex: 0 0 auto;
    display: grid;
    gap: 9px;
    min-height: 0;
    padding: 14px;
}
.dealer-directory-grid .dealer-card p,
.brand-directory-grid .brand-card p {
    min-height: 0;
}
.dealer-directory-grid .dealer-card__fact--location,
.brand-directory-grid .brand-card__fact--wide {
    grid-column: auto;
}
.dealer-directory-grid .dealer-card__actions,
.brand-directory-grid .brand-card__actions {
    grid-template-columns: 1fr;
    margin-top: 0;
    padding-top: 6px;
}
.dealer-directory-grid .dealer-card__actions .btn,
.brand-directory-grid .brand-card__actions .btn {
    width: 100%;
    min-height: 38px;
    padding-inline: 10px;
}

@media (max-width: 1919px) {
    .dealer-directory-grid,
    .event-directory-grid,
    .brand-directory-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
@media (max-width: 1500px) {
    .dealer-directory-grid,
    .event-directory-grid,
    .brand-directory-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 1180px) {
    .dealer-directory-grid,
    .event-directory-grid,
    .brand-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .dealer-directory-grid,
    .event-directory-grid,
    .brand-directory-grid {
        grid-template-columns: 1fr;
    }
}

.grid.listing-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.grid.listing-grid.representative-inventory-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.representative-inventory-grid > .listing-card:nth-child(n + 5) {
    display: none;
}
@media (min-width: 1800px) {
    .grid.listing-grid.representative-inventory-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .representative-inventory-grid > .listing-card:nth-child(n + 5) {
        display: block;
    }
}
.seller-listing-tiles {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 1180px) {
    .grid.listing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .grid.listing-grid.representative-inventory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 860px) {
    .grid.listing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .section-head__actions {
    margin-top: 14px;
    flex-wrap: wrap;
    width: 100%;
    max-width: 100%;
}
    .section-head__actions .btn {
        flex: 1 1 140px;
        min-width: 0;
    }
}
@media (max-width: 640px) {
    .grid.listing-grid,
    .seller-listing-tiles {
        grid-template-columns: 1fr;
    }
}

.resources-dashboard,
.tool-page {
    display: grid;
    gap: 24px;
}
.resources-dashboard__head,
.tool-page__head {
    align-items: flex-start;
}
.resource-metric-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(78px, 1fr));
    min-width: min(100%, 520px);
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    overflow: hidden;
}
.resource-metric-strip div {
    padding: 14px 16px;
    border-right: 1px solid var(--bsa-border);
}
.resource-metric-strip div:last-child {
    border-right: 0;
}
.resource-metric-strip strong {
    display: block;
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.1;
}
.resource-metric-strip span {
    display: block;
    margin-top: 5px;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.resource-tool-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}
.resource-tool-card {
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: 20px;
    min-height: 300px;
    padding: 22px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background:
        linear-gradient(145deg, rgba(23,111,166,.08), rgba(255,255,255,0) 48%),
        var(--bsa-white);
    box-shadow: 0 10px 26px rgba(12, 42, 68, .07);
}
.resource-tool-card__icon {
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    border-radius: 0.25rem;
    background: var(--bsa-navy);
    color: var(--bsa-white);
}
.resource-tool-card__icon svg {
    width: 24px;
    height: 24px;
}
.resource-tool-card h2,
.resource-context-panel h2,
.tool-panel h2,
.tool-side-card h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.18;
}
.resource-tool-card p,
.resource-context-panel p,
.tool-panel p,
.tool-side-card p {
    margin: 8px 0 0;
    color: var(--bsa-muted);
    line-height: 1.6;
}
.resource-tool-card__meta {
    display: block;
    margin-top: 14px;
    color: var(--bsa-pink);
    font-size: 12px;
    font-weight: 850;
    line-height: 1.45;
}
.resource-context-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
    gap: 20px;
}
.resource-context-panel,
.tool-panel,
.tool-side-card {
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 8px 22px rgba(12, 42, 68, .06);
}
.resource-context-panel,
.tool-panel {
    padding: 20px;
}
.resource-context-panel__title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}
.resource-context-panel__title svg {
    width: 22px;
    height: 22px;
    color: var(--bsa-pink);
}
.resource-mini-list,
.resource-event-stack,
.loan-price-list,
.planner-dealer-list,
.tool-link-list {
    display: grid;
    gap: 10px;
}
.resource-mini-list a,
.loan-price-list button {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-width: 0;
    min-height: 70px;
    padding: 8px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    color: var(--bsa-navy);
    text-align: left;
}
.loan-price-list button {
    width: 100%;
    cursor: pointer;
}
.resource-mini-list img,
.loan-price-list img {
    width: 84px;
    height: 58px;
    border-radius: 0.25rem;
    object-fit: cover;
}
.resource-mini-list strong,
.loan-price-list strong,
.resource-event-stack strong,
.planner-event-list strong,
.planner-dealer-list strong {
    display: block;
    overflow-wrap: anywhere;
}
.resource-mini-list small,
.loan-price-list small,
.resource-event-stack span,
.planner-event-list span,
.planner-brand-grid small,
.planner-dealer-list small {
    display: block;
    margin-top: 3px;
    color: var(--bsa-muted);
    font-size: 13px;
    line-height: 1.35;
}
.resource-event-stack a,
.planner-event-list a,
.planner-dealer-list a,
.tool-link-list a {
    display: grid;
    gap: 4px;
    min-width: 0;
    padding: 13px 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
}
.tool-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    gap: 20px;
    align-items: start;
}
.tool-sidebar {
    display: grid;
    gap: 20px;
}
.tool-side-card {
    padding: 18px;
}
.tool-side-card--accent {
    background: #f8fbfd;
}
.tool-panel__title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}
.tool-result-xl {
    min-width: 210px;
    padding: 16px;
    border: 1px solid #bfd5e5;
    border-radius: 0.25rem;
    background: var(--bsa-navy);
    color: var(--bsa-white);
}
.tool-result-xl span,
.loan-output-grid span,
.tool-stat-list span {
    display: block;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.tool-result-xl strong {
    display: block;
    margin-top: 5px;
    font-size: 30px;
    line-height: 1.1;
}
.loan-input-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}
.loan-output-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}
.loan-output-grid div,
.tool-stat-list div {
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-page);
}
.loan-output-grid span,
.tool-stat-list span {
    color: var(--bsa-muted);
}
.loan-output-grid strong,
.tool-stat-list strong {
    display: block;
    margin-top: 5px;
    color: var(--bsa-navy);
    font-size: 20px;
    line-height: 1.15;
}
.tool-stat-list {
    display: grid;
    gap: 10px;
}
.planner-selector {
    display: grid;
    grid-template-columns: minmax(260px, 520px) auto;
    gap: 12px;
    align-items: end;
    max-width: 720px;
}
.field > span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 800;
}
.planner-event-panel {
    display: grid;
    grid-template-columns: minmax(320px, .8fr) minmax(0, 1.2fr);
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(12, 42, 68, .07);
}
.planner-event-panel__media {
    min-height: 360px;
    background: var(--bsa-panel);
}
.planner-event-panel__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.planner-event-panel__body {
    display: grid;
    align-content: center;
    gap: 20px;
    padding: 26px;
}
.planner-event-panel__body h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 30px;
    line-height: 1.12;
}
.planner-event-panel__body p {
    margin: 0;
    color: var(--bsa-muted);
    line-height: 1.65;
}
.planner-fact-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
}
.planner-fact-grid div {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-page);
}
.planner-fact-grid svg {
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
}
.planner-fact-grid span {
    display: block;
    margin-top: 8px;
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.planner-fact-grid strong {
    display: block;
    margin-top: 4px;
    color: var(--bsa-navy);
    line-height: 1.2;
    overflow-wrap: anywhere;
}
.planner-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.planner-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}
.planner-brand-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.planner-brand-grid a {
    display: grid;
    min-width: 0;
    gap: 7px;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
}
.planner-brand-grid span {
    display: grid;
    place-items: center;
    width: 48px;
    height: 42px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: var(--bsa-white);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
}
.planner-dealer-list a,
.tool-link-list a {
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: center;
}
.planner-dealer-list svg,
.tool-link-list svg {
    width: 20px;
    height: 20px;
    color: var(--bsa-pink);
}
.planner-event-list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}
.planner-event-list a.is-active {
    border-color: #9ec5dd;
    background: #eef7fc;
}
.tool-empty-state {
    display: grid;
    place-items: center;
    gap: 8px;
    min-height: 220px;
    padding: 28px;
    border: 1px dashed #bfd5e5;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-muted);
    text-align: center;
}
.tool-empty-state svg {
    width: 34px;
    height: 34px;
    color: var(--bsa-pink);
}
.tool-empty-state strong {
    color: var(--bsa-navy);
    font-size: 20px;
}
.checklist-section-stack {
    display: grid;
    gap: 20px;
}
.checklist-section .tool-panel__title h2 {
    display: flex;
    align-items: center;
    gap: 9px;
}
.checklist-section .tool-panel__title svg {
    width: 21px;
    height: 21px;
    color: var(--bsa-pink);
}
.checklist-items {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.checklist-item {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    min-width: 0;
    padding: 13px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-weight: 750;
    line-height: 1.45;
    cursor: pointer;
}
.checklist-item input {
    width: 20px;
    height: 20px;
    margin: 1px 0 0;
    accent-color: var(--bsa-pink);
}
.checklist-progress-card {
    display: grid;
    gap: 20px;
}
.checklist-progress-card > strong {
    color: var(--bsa-navy);
    font-size: 46px;
    line-height: 1;
}
.checklist-meter {
    height: 10px;
    border-radius: 999px;
    background: var(--bsa-panel);
    overflow: hidden;
}
.checklist-meter span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: var(--bsa-pink);
    transition: width .2s ease;
}

@media (max-width: 1180px) {
    .resource-tool-grid,
    .planner-event-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .resource-context-grid,
    .tool-layout,
    .planner-event-panel,
    .planner-grid {
        grid-template-columns: 1fr;
    }
    .planner-event-panel__media {
        min-height: 300px;
    }
    .planner-fact-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 860px) {
    .resource-metric-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .resource-metric-strip div:nth-child(2) {
        border-right: 0;
    }
    .resource-metric-strip div:nth-child(-n+2) {
        border-bottom: 1px solid var(--bsa-border);
    }
    .resource-tool-grid,
    .loan-output-grid,
    .checklist-items {
        grid-template-columns: 1fr;
    }
    .loan-input-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .tool-panel__title {
        display: grid;
    }
    .tool-result-xl {
        min-width: 0;
    }
    .planner-brand-grid,
    .planner-fact-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .resources-dashboard,
    .tool-page {
        gap: 20px;
    }
    .resource-metric-strip,
    .resource-tool-grid,
    .resource-context-grid,
    .loan-input-grid,
    .planner-selector,
    .planner-brand-grid,
    .planner-fact-grid,
    .planner-event-list {
        grid-template-columns: 1fr;
    }
    .resource-metric-strip div,
    .resource-metric-strip div:nth-child(2) {
        border-right: 0;
    }
    .resource-metric-strip div:not(:last-child) {
        border-bottom: 1px solid var(--bsa-border);
    }
    .resource-tool-card,
    .resource-context-panel,
    .tool-panel,
    .tool-side-card {
        padding: 16px;
    }
    .planner-event-panel__media {
        min-height: 220px;
    }
    .planner-event-panel__body {
        padding: 18px;
    }
    .planner-event-panel__body h2 {
        font-size: 24px;
    }
    .tool-result-xl strong {
        font-size: 26px;
    }
}

.listing-card {
    overflow: hidden;
    transition: transform var(--motion-duration-slow) var(--motion-ease-standard),
        box-shadow var(--motion-duration-slow) var(--motion-ease-standard);
    display: block;
    border-radius: 0.25rem;
    box-shadow: 0 8px 22px rgba(12, 42, 68, .08);
}
.listing-card__media {
    position: relative;
    background: var(--bsa-panel);
    overflow: hidden;
    aspect-ratio: 1.42 / 1;
    min-height: 164px;
    border-radius: 0.25rem;
}
.listing-card__image {
    position: absolute;
    inset: 0;
    display: block;
}
.listing-card__media::after {
    content: "";
    position: absolute;
    pointer-events: none;
    inset: 0;
    height: auto;
    background: linear-gradient(
        180deg,
        rgba(4, 16, 28, .12) 0%,
        rgba(4, 16, 28, 0) 26%,
        rgba(4, 16, 28, 0) 52%,
        rgba(4, 16, 28, .28) 72%,
        rgba(4, 16, 28, .84) 100%
    );
}
.listing-card .badge {
    z-index: 3;
}
.listing-card .badge + .badge {
    top: 52px;
    right: auto;
    left: 12px;
}
.listing-card__actions {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 4;
    display: flex;
    gap: 6px;
    flex: 0 0 auto;
}

.listing-card__actions .icon-btn--overlay svg,
.listing-card__compare.icon-btn--overlay svg {
    width: 16px;
    height: 16px;
}
.listing-card__actions .icon-btn--overlay.is-active,
.listing-card__compare.icon-btn--overlay.is-active {
    border-color: rgba(255,255,255,.78);
    background: var(--bsa-pink);
    color: var(--bsa-white);
}
.listing-card__overlay {
    position: absolute;
    right: 14px;
    bottom: 12px;
    left: 14px;
    z-index: 3;
    min-width: 0;
    color: var(--bsa-white);
    text-shadow: 0 1px 3px rgba(0,0,0,.42);
    pointer-events: none;
}
.listing-card__sponsored {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    min-height: 22px;
    margin-bottom: 7px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    text-shadow: none;
    text-transform: uppercase;
}
.listing-card__overlay .listing-card__title {
    display: -webkit-box;
    overflow: hidden;
    color: var(--bsa-white);
    font-size: 15px;
    font-weight: 750;
    line-height: 1.18;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.listing-card__overlay .listing-card__price {
    margin-top: 3px;
    color: var(--bsa-white);
    font-size: 22px;
    font-weight: 900;
    line-height: 1.04;
}
.listing-card__overlay .listing-card__price span {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    min-height: 20px;
    margin-top: 5px;
    padding: 0 7px;
    border-radius: 999px;
    background: rgba(214, 59, 59, .95);
    color: var(--bsa-white);
    font-size: 11px;
    font-weight: 900;
    text-shadow: none;
}
.listing-card__trust {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    max-width: 100%;
    margin-top: 7px;
    border-radius: 0.25rem;
    color: var(--bsa-white);
    font-size: 11px;
    font-weight: 900;
    line-height: 1.15;
    text-shadow: none;
    /* backdrop-filter: blur(8px);
    padding: 3px 8px;
    min-height: 24px; */
}
.listing-card__trust svg {
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
    color: #aee3ff;
}
.listing-card__trust span,
.listing-card__trust small {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.listing-card__trust small {
    color: rgba(255,255,255,.82);
    font-size: 10px;
    font-weight: 800;
}
.listing-card__meta-line {
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    margin-top: 5px;
    color: var(--bsa-white);
    font-size: 11px;
    font-weight: 850;
    line-height: 1.2;
}
.listing-card__condition {
    flex: 0 0 auto;
    color: var(--bsa-white);
    font-weight: 900;
}
.listing-card__meta-dot {
    flex: 0 0 auto;
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: rgba(255,255,255,.86);
    box-shadow: 0 1px 2px rgba(0,0,0,.28);
}
.listing-card__overlay .listing-card__seller,
.listing-card__overlay .listing-card__location {
    display: block;
    min-width: 0;
    margin: 0;
    color: var(--bsa-white);
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-shadow: inherit;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.listing-card__overlay .listing-card__seller {
    flex: 0 1 auto;
}
.listing-card__overlay .listing-card__location {
    flex: 1 1 auto;
}
.listing-card__readiness {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    max-width: 100%;
    margin-top: 7px;
}
.listing-card__readiness span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    max-width: 100%;
    min-height: 22px;
    padding: 3px 7px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 0.25rem;
    background: rgba(255,255,255,.14);
    color: var(--bsa-white);
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    text-shadow: none;
    backdrop-filter: blur(8px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.listing-card__readiness svg {
    flex: 0 0 auto;
    width: 13px;
    height: 13px;
    color: #aee3ff;
}
.listing-card__media-bottom,
.listing-card__body,
.listing-card__specs {
    display: none;
}
.seller-listing-tiles .listing-card__media {
    aspect-ratio: 1.42 / 1;
    min-height: 154px;
}
.seller-listing-tiles .listing-card__actions {
    display: flex;
}
.seller-listing-tiles .listing-card__overlay .listing-card__title {
    min-height: 0;
    font-size: 14px;
    line-height: 1.18;
}
.seller-listing-tiles .listing-card__overlay .listing-card__price {
    font-size: 19px;
}
.seller-listing-tiles .listing-card__overlay .listing-card__seller,
.seller-listing-tiles .listing-card__overlay .listing-card__location {
    display: block;
}

@media (max-width: 1180px) {
    .listing-card__media {
        min-height: 172px;
    }
}

@media (max-width: 640px) {
    .listing-card__media,
    .seller-listing-tiles .listing-card__media {
        aspect-ratio: 1.65 / 1;
        min-height: 210px;
    }
    .listing-card__overlay .listing-card__title {
        font-size: 16px;
    }
    .listing-card__overlay .listing-card__price {
        font-size: 24px;
    }
    .listing-card__trust {
        min-height: 26px;
        font-size: 12px;
    }
    .listing-card__trust small {
        font-size: 11px;
    }
    .listing-card__meta-line {
        font-size: 12px;
    }
    .listing-card__readiness span {
        min-height: 24px;
        font-size: 11px;
    }
}

.listing-card__badges .badge,
.listing-card .listing-card__badges .badge + .badge {
    position: static;
    inset: auto;
}
.listing-card__signal {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    min-height: 24px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-shadow: 0 6px 16px rgba(4, 16, 28, .18);
}
.listing-card__signal.badge-icon--tour {
    justify-content: center;
    gap: 6px;
    width: auto;
    min-width: 34px;
    max-width: none;
    height: 34px;
    padding: 0 10px;
}
.badge-gold {
    background: #c89b2f;
    color: #071e35;
    text-shadow: none;
}

.section.section--full.boats-page {
    padding-inline: clamp(16px, 3.125vw, 60px);
}

.boats-layout {
    display: grid;
    grid-template-columns: clamp(280px, 32%, 560px) minmax(0, 1fr);
    gap: 22px;
    align-items: start;
}

.brand-directory-layout {
    display: grid;
    grid-template-columns: minmax(300px, 1fr) minmax(0, 3fr);
    gap: 22px;
    align-items: start;
}

.boats-layout__main {
    order: 2;
    min-width: 0;
}

.brand-directory-layout__main {
    order: 2;
    min-width: 0;
    display: grid;
    gap: 20px;
    container: brands-main / inline-size;
}

.boats-layout__rail {
    order: 1;
    display: grid;
    gap: 20px;
    min-width: 0;
}

.brand-directory-layout__rail {
    order: 1;
    display: grid;
    gap: 20px;
    min-width: 0;
}

/* Use the available results width, including sparse and empty-search grids.
   Reserve unfilled columns so a small result set keeps the same tile size. */
.boats-layout__main .grid.listing-grid {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr));
}

.boats-layout__main .listing-grid > .listing-card {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    justify-self: stretch;
}

.boats-layout__main .listing-card__media {
    width: 100%;
    max-width: 100%;
}

.boats-layout__main .inventory-control-strip,
.boats-layout__main .inventory-control-strip__saved {
    flex-wrap: wrap;
}

.brand-directory-layout__main .brand-directory-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (min-width: 1601px) {
    .brand-directory-layout {
        grid-template-columns: minmax(620px, 1fr) minmax(0, 2.35fr);
    }

    .boats-layout__rail .recently-viewed-panel--rail .recently-viewed-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .boats-layout__rail .recently-viewed-panel--rail .listing-card__media {
        min-height: 176px;
    }
}

.boats-layout__rail .hero-search--compact {
    margin: 0;
    padding: 14px;
}

.boats-layout__rail .inventory-search-head {
    margin-bottom: 10px;
}

.boats-layout__rail .inventory-search-head span {
    font-size: 11px;
}

.boats-layout__rail .inventory-search-head strong {
    font-size: 14px;
    line-height: 1.25;
}

.boats-layout__rail .hero-search__bar {
    grid-template-columns: 1fr;
    min-height: 0;
    border-color: #c8d8e6;
    border-radius: 0.25rem;
    box-shadow: none;
}

.boats-layout__rail .hero-search__segment,
.boats-layout__rail .hero-search__make {
    min-height: 46px;
    padding: 0 12px;
    border-right: 0;
    border-bottom: 1px solid #dbe5ee;
    border-radius: 0;
    font-size: 14px;
}

.boats-layout__rail .hero-search__make input {
    font-size: 14px;
}

.boats-layout__rail .hero-search__filters {
    justify-content: space-between;
}

.boats-layout__rail .hero-search__submit {
    min-height: 46px;
    border-radius: 0 0 6px 6px;
}

.boats-layout__rail .hero-search__submit svg {
    width: 22px;
    height: 22px;
}

.boats-layout__rail .hero-popover,
.boats-layout__rail #location-popover {
    width: 100%;
}

.boats-layout__rail .hero-search--compact .inventory-insights--compact {
    grid-template-columns: 1fr;
}

.boats-layout__rail .hero-search--compact .inventory-insights--compact div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 0;
    padding: 5px 10px;
    border-right: 0;
    border-bottom: 1px solid #dce8f0;
}

.boats-layout__rail .hero-search--compact .inventory-insights--compact div:last-child {
    border-bottom: 0;
}

.boats-layout__rail .hero-search--compact .inventory-insights--compact strong {
    margin-top: 0;
    text-align: right;
}

.boats-layout__rail .saved-searches-panel,
.boats-layout__rail .search-watch-guide,
.boats-layout__rail .related-searches,
.boats-layout__rail .market-pathways,
.boats-layout__rail .inventory-guide,
.boats-layout__rail .ad-slot {
    margin: 0;
}

.inventory-rail-jumps {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.inventory-rail-jumps a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid #d6e5ee;
    border-radius: 999px;
    background: #f8fbfd;
    color: #36536c;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.2;
    transition: border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}

.inventory-rail-jumps a:hover {
    border-color: rgba(23, 111, 166, .42);
    background: #eef7fc;
    color: var(--bsa-pink);
    box-shadow: 0 8px 18px rgba(23, 111, 166, .08);
}

.inventory-rail-jumps svg,
.inventory-rail-jumps i {
    width: 14px;
    height: 14px;
    color: var(--bsa-pink);
}

.boats-layout__rail .related-searches {
    align-items: center;
    gap: 6px;
    padding: 10px;
}

.boats-layout__rail .related-searches span {
    flex: 0 0 auto;
    margin-right: 2px;
    font-size: 10px;
    letter-spacing: .05em;
    padding-left: 5px;
}

.boats-layout__rail .related-searches a {
    flex: 0 1 auto;
    min-height: 24px;
    max-width: 100%;
    padding: 0 8px;
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
}

.boats-layout__rail .market-pathways {
    gap: 10px;
    padding: 14px;
}

.boats-layout__rail .inventory-guide {
    gap: 12px;
    padding: 14px;
    box-shadow: none;
}

.boats-layout__rail .inventory-guide__head h2 {
    font-size: 18px;
    line-height: 1.25;
}

.boats-layout__rail .inventory-guide__head p {
    font-size: 13px;
    line-height: 1.5;
}

.boats-layout__rail .inventory-guide__grid {
    grid-template-columns: 1fr;
    gap: 8px;
}

.boats-layout__rail .inventory-guide__grid article {
    padding: 10px 12px;
}

.boats-layout__rail .inventory-guide__grid h3 {
    font-size: 14px;
}

.boats-layout__rail .inventory-guide__grid p {
    font-size: 13px;
    line-height: 1.45;
}

.boats-layout__rail .saved-searches-panel__head,
.boats-layout__rail .search-watch-guide__head,
.boats-layout__rail .market-pathways__head {
    grid-template-columns: 1fr;
    gap: 6px;
}

.boats-layout__rail .saved-searches-panel__head h2,
.boats-layout__rail .search-watch-guide__head h2,
.boats-layout__rail .market-pathways__head h2 {
    font-size: 18px;
}

.boats-layout__rail .saved-searches-panel__head p,
.boats-layout__rail .search-watch-guide__head p,
.boats-layout__rail .market-pathways__head p,
.boats-layout__rail .saved-searches-empty {
    font-size: 13px;
    line-height: 1.5;
}

.boats-layout__rail .saved-searches-panel__head .btn {
    width: 100%;
}

.boats-layout__rail .search-watch-guide {
    padding: 14px;
}

.boats-layout__rail .search-watch-guide__steps div {
    padding: 9px 10px;
}

.boats-layout__rail .search-watch-value {
    grid-template-columns: 1fr;
}

.boats-layout__rail .search-watch-value article {
    padding: 9px 10px;
}

.boats-layout__rail .search-watch-guide__actions {
    grid-template-columns: 1fr;
}

.boats-layout__rail .saved-search-watch-summary {
    grid-template-columns: 1fr;
}

.boats-layout__rail .saved-search-watch-summary__cards {
    grid-template-columns: 1fr;
    gap: 6px;
}

.boats-layout__rail .saved-search-watch-summary .btn {
    min-height: 38px;
    width: 100%;
}

.brand-directory-layout__rail .brand-market-guide {
    margin: 0;
    padding: 14px;
    gap: 12px;
}

.brand-directory-layout__rail .brand-market-guide__head {
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: start;
}

.brand-directory-layout__rail .brand-market-guide__head h2 {
    font-size: 24px;
    line-height: 1.14;
}

.brand-directory-layout__rail .brand-market-guide__head p {
    font-size: 13px;
    line-height: 1.5;
}

.brand-directory-layout__rail .brand-market-guide__grid,
.brand-directory-layout__rail .brand-market-guide__spotlight {
    grid-template-columns: 1fr;
}

.brand-directory-layout__rail .brand-market-guide__grid article,
.brand-directory-layout__rail .brand-market-guide__spotlight a {
    padding: 12px;
}

.brand-directory-layout__rail .brand-market-guide__links a {
    padding: 9px 10px;
}

.boats-layout__rail .market-pathways__head p {
    display: none;
}

.boats-layout__rail .saved-searches-list,
.boats-layout__rail .market-pathways__grid {
    grid-template-columns: 1fr;
    gap: 8px;
}

.boats-layout__rail .saved-search-item {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
}

.boats-layout__rail .saved-search-item .icon-btn {
    position: static;
    top: auto;
    right: auto;
    justify-self: end;
    align-self: start;
}

.boats-layout__rail .market-pathway-group {
    padding: 10px 12px;
}

.boats-layout__rail .market-pathway-group h3 {
    margin-bottom: 6px;
    font-size: 15px;
}

.boats-layout__rail .market-pathway-group h3 svg {
    width: 16px;
    height: 16px;
}

.boats-layout__rail .market-pathway-list {
    gap: 0;
}

.boats-layout__rail .market-pathway-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 6px 0;
    border: 0;
    border-top: 1px solid #d8e7f0;
    border-radius: 0;
    background: transparent;
}

.boats-layout__rail .market-pathway-list a:hover {
    background: transparent;
    color: var(--bsa-pink);
}

.boats-layout__rail .market-pathway-list strong {
    font-size: 13px;
    line-height: 1.2;
}

.boats-layout__rail .market-pathway-list span {
    flex: 0 0 auto;
    margin-top: 0;
    font-size: 11px;
    line-height: 1.2;
    white-space: nowrap;
}

@media (min-width: 2400px) {
    .brand-directory-layout__main .brand-directory-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (min-width: 3600px) {
    .brand-directory-layout__main .brand-directory-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
}

@media (max-width: 1500px) {
    .brand-directory-layout__main .brand-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1180px) {
    .brand-directory-layout {
        grid-template-columns: minmax(280px, .82fr) minmax(0, 2fr);
    }

    .inventory-control-strip {
        align-items: stretch;
    }

    .inventory-control-strip__saved {
        flex-wrap: wrap;
    }

    .boats-layout__rail {
        position: static;
        align-items: start;
    }

    .brand-directory-layout__main .brand-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .boats-layout {
        grid-template-columns: 1fr;
    }

    .brand-directory-layout {
        grid-template-columns: 1fr;
    }

    .boats-layout__rail {
        grid-template-columns: 1fr;
    }

    .brand-directory-layout__rail {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .inventory-control-strip {
        display: grid;
        grid-template-columns: 1fr;
        padding: 10px;
    }

    .price-watch-strip {
        grid-template-columns: 1fr;
        padding: 12px;
    }

    .price-watch-strip__head h2 {
        font-size: 19px;
    }

    .price-watch-strip__facts {
        grid-template-columns: 1fr;
    }

    .price-watch-strip__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .price-watch-strip__actions .btn {
        justify-content: center;
        width: 100%;
    }

    .inventory-control-strip__saved {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .inventory-control-strip__label,
    .inventory-control-strip .saved-searches-empty,
    .inventory-control-strip .saved-searches-dropdown,
    .inventory-control-strip__sort,
    .sort-form select {
        width: 100%;
        max-width: none;
    }

    .inventory-control-strip__label,
    .inventory-control-strip .saved-searches-empty,
    .inventory-control-strip .saved-searches-dropdown {
        grid-column: 1 / -1;
    }

    .inventory-control-strip .saved-searches-list {
        right: 0;
        left: 0;
        width: 100%;
        max-height: 340px;
    }

    .inventory-control-strip .btn {
        justify-content: center;
        width: 100%;
        min-height: 44px;
    }

    .sort-form select {
        height: 44px;
    }

    .sort-form label {
        justify-content: space-between;
    }

    .boats-layout__rail {
        grid-template-columns: 1fr;
    }

    .inventory-rail-jumps {
        gap: 6px;
    }

    .inventory-rail-jumps a {
        justify-content: center;
        min-width: calc(50% - 3px);
        min-height: 44px;
    }
}

@media (max-width: 560px) {
    .brand-directory-layout__main .brand-directory-grid {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 981px) {
    @container brands-main (max-width: 980px) {
        .brand-directory-layout__main .brand-directory-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    @container brands-main (max-width: 620px) {
        .brand-directory-layout__main .brand-directory-grid {
            grid-template-columns: 1fr;
        }
    }
}

.ad-slot {
    display: grid;
    gap: 7px;
    min-width: 0;
    margin: 18px 0;
    padding: 18px;
    border: 1px solid #b9d7e8;
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23,111,166,.12), rgba(255,255,255,0) 54%),
        #f8fbfd;
    color: var(--bsa-navy);
    box-shadow: 0 10px 24px rgba(12, 42, 68, .06);
}
.ad-slot--box {
    margin: 0 0 18px;
}
.ad-slot__label {
    width: fit-content;
    min-height: 24px;
    padding: 4px 8px;
    border-radius: 999px;
    background: var(--bsa-navy);
    color: var(--bsa-white);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.ad-slot strong {
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.15;
}
.ad-slot em {
    max-width: 760px;
    color: var(--bsa-muted);
    font-style: normal;
    line-height: 1.5;
}
.ad-slot__cta {
    color: var(--bsa-pink);
    font-weight: 900;
}

.advertise-page {
    display: grid;
    gap: 22px;
}
.advertise-head {
    align-items: flex-start;
}
.wallet-balance-card {
    min-width: 260px;
    padding: 18px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-navy);
    color: var(--bsa-white);
}
.wallet-balance-card span,
.wallet-balance-card small {
    display: block;
    color: rgba(255,255,255,.78);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.wallet-balance-card strong {
    display: block;
    margin: 5px 0;
    font-size: 38px;
    line-height: 1;
}
.notice {
    padding: 13px 16px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-weight: 800;
    margin-bottom: 20px;
}
.notice--success {
    border-color: #b9d7e8;
    background: #eef7fc;
    color: var(--bsa-pink);
}
.notice--error {
    border-color: #f0b9b9;
    background: #fff6f6;
    color: var(--bsa-red);
}
.dashboard-editor-shell .notice {
    margin-bottom: 20px;
}
.monetization-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}
.monetization-history {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}
.monetization-panel {
    min-width: 0;
    padding: 20px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: var(--bsa-white);
    box-shadow: 0 8px 22px rgba(12, 42, 68, .06);
}
.monetization-panel h2 {
    margin: 0;
    color: var(--bsa-navy);
    font-size: 22px;
    line-height: 1.18;
}
.monetization-panel p {
    margin: 8px 0 0;
    color: var(--bsa-muted);
    line-height: 1.55;
}
.monetization-panel__head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}
.monetization-panel__head > svg,
.monetization-panel__head > i svg {
    width: 24px;
    height: 24px;
    color: var(--bsa-pink);
}
.credit-package-grid,
.campaign-form,
.campaign-list {
    display: grid;
    gap: 12px;
}
.credit-package-card {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.credit-package-card span {
    color: var(--bsa-muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.credit-package-card strong {
    color: var(--bsa-navy);
    font-size: 26px;
    line-height: 1.1;
}
.credit-package-card p {
    margin: 0;
}
.campaign-form__row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.campaign-list div {
    padding: 12px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background: #f8fbfd;
}
.campaign-list strong,
.campaign-list span {
    display: block;
}
.campaign-list strong {
    color: var(--bsa-navy);
}
.campaign-list span {
    margin-top: 4px;
    color: var(--bsa-muted);
    font-size: 13px;
}

@media (max-width: 1180px) {
    .monetization-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 860px) {
    .monetization-history,
    .campaign-form__row {
        grid-template-columns: 1fr;
    }
    .wallet-balance-card {
        width: 100%;
    }
    .dashboard-list-controls {
        flex-wrap: wrap;
    }
    .dashboard-list-search {
        flex-basis: 100%;
    }
    .dashboard-list-filter {
        flex: 1 1 calc(50% - 5px);
    }
    .dashboard-list-controls .btn {
        width: 100%;
    }
    .dashboard-list-pager {
        justify-content: center;
    }
}

.dealer-card.directory-card--visual,
.brand-card.directory-card--visual {
    position: relative;
    display: grid;
    min-height: 0;
    aspect-ratio: 4 / 3;
    padding: 0;
    border-color: #cfe0eb;
    background-color: #08243a;
    background-image:
        radial-gradient(circle at 18% 12%, rgba(255,255,255,.18), transparent 28%),
        linear-gradient(135deg, #0c9aa6, #11385d 58%, #061827);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    box-shadow: 0 8px 22px rgba(12, 42, 68, .08);
    overflow: hidden;
}

.brand-card.directory-card--visual {
    min-height: 0;
}

.dealer-card.directory-card--visual::before,
.brand-card.directory-card--visual::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(170deg, rgba(5, 22, 35, 0.5) 0%, rgba(5, 22, 35, 0) 55%),
        linear-gradient(180deg, rgba(5, 22, 35, 0) 60%, rgba(5, 22, 35, 0.9) 100%);
    pointer-events: none;
}

.dealer-card.directory-card--visual:hover,
.brand-card.directory-card--visual:hover {
    border-color: #a9c7db;
    box-shadow: 0 16px 34px rgba(12, 42, 68, .12);
    transform: translateY(-2px);
}

.dealer-card.directory-card--visual[hidden],
.brand-card.directory-card--visual[hidden] {
    display: none;
}

.directory-card--visual .dealer-card__media,
.directory-card--visual .brand-card__media {
    z-index: 2;
    display: block;
    width: 100%;
    height: auto;
    min-height: 182px;
    aspect-ratio: 1.42 / 1;
    border: 0;
    border-radius: 0;
    background-position: center;
    background-size: cover;
    color: var(--bsa-white);
    overflow: hidden;
    position: absolute;
    inset: 0;
    border-bottom: 0;
    background-color: transparent;
    background-image: none !important;
}

.directory-card--visual .dealer-card__media,
.directory-card--visual .brand-card__media,
.directory-card--visual .dealer-card__media img,
.directory-card--visual .brand-card__media img {
    height: 100%;
    min-height: 0;
    aspect-ratio: auto;
}

.directory-card--visual .brand-card__media {
    background-color: transparent;
    background-image: none !important;
}

.directory-card--visual .directory-card__initials {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: grid;
    place-items: center;
    font-size: 48px;
    font-weight: 900;
    letter-spacing: .08em;
}

.directory-card--visual .directory-card__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: fit-content;
    max-width: calc(100% - 24px);
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid rgba(255,255,255,.3);
    border-radius: 999px;
    background: rgba(7, 30, 53, .62);
    color: var(--bsa-white);
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    text-shadow: none;
    backdrop-filter: blur(8px);
}

.directory-card--visual .directory-card__badge svg {
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
    color: #aee3ff;
}

.directory-card--visual .dealer-card__media .directory-card__overlay,
.directory-card--visual .brand-card__media .directory-card__overlay {
    top: 14px;
    right: 14px;
    bottom: auto;
    left: 14px;
}

.directory-card--visual .directory-card__overlay {
    position: absolute;
    right: 14px;
    bottom: 11px;
    left: 14px;
    z-index: 3;
    display: grid;
    gap: 4px;
    min-width: 0;
    color: var(--bsa-white);
    text-shadow: 0 1px 3px rgba(0,0,0,.42);
}

.directory-card--visual .directory-card__overlay .directory-card__title {
    display: -webkit-box;
    overflow: hidden;
    color: var(--bsa-white);
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.2;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    letter-spacing: 0;
}

.directory-card--visual .directory-card__meta-line {
    display: flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    color: rgba(255,255,255,.92);
    font-size: 11px;
    font-weight: 850;
    line-height: 1.2;
}

.directory-card--visual .directory-card__meta-line svg {
    flex: 0 0 auto;
    width: 13px;
    height: 13px;
    color: #aee3ff;
}

.directory-card--visual .directory-card__meta-text {
    min-width: 0;
    overflow: hidden;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: 0;
    line-height: inherit;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.directory-card--visual .dealer-card__body,
.directory-card--visual .brand-card__body {
    flex: 1;
    flex-direction: column;
    position: absolute;
    right: 14px;
    bottom: 12px;
    left: 14px;
    z-index: 4;
    display: grid;
    gap: 8px;
    min-height: 0;
    padding: 0;
    color: var(--bsa-white);
    text-shadow: 0 1px 3px rgba(0,0,0,.42);
}

.directory-card--visual .dealer-card__body p,
.directory-card--visual .brand-card__body p {
    min-height: 42px;
    display: none;
}

.directory-card--visual .dealer-card__facts,
.directory-card--visual .brand-card__facts {
    margin-top: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: center;
    justify-content: start;
}

.directory-card--visual .dealer-card__fact--location,
.directory-card--visual .brand-card__fact--location {
    display: none;
}

.directory-card--visual .dealer-card__fact,
.directory-card--visual .brand-card__fact {
    min-height: 22px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(255,255,255,.92);
    font-size: 11px;
    font-weight: 900;
    text-shadow: none;
    backdrop-filter: none;
}

.directory-card--visual .dealer-card__fact strong,
.directory-card--visual .brand-card__fact strong {
    color: var(--bsa-white);
}

.directory-card--visual .dealer-card__fact svg,
.directory-card--visual .brand-card__fact svg {
    width: 15px;
    height: 15px;
    color: #aee3ff;
}

.directory-card--visual .dealer-card__actions,
.directory-card--visual .brand-card__actions {
    margin-top: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding-top: 0;
}

.directory-card--visual .dealer-card__actions .btn,
.directory-card--visual .brand-card__actions .btn {
    min-height: 36px;
    padding-inline: 10px;
    border-color: #fff;
    border-radius: 0.25rem;
    background: transparent;
    color: var(--bsa-white);
    font-size: 12px;
    text-shadow: none;
    backdrop-filter: blur(8px);
}

.directory-card--visual .dealer-card__actions .btn svg,
.directory-card--visual .brand-card__actions .btn svg {
    width: 15px;
    height: 15px;
}

.directory-card--visual .dealer-card__actions .btn-primary,
.directory-card--visual .brand-card__actions .btn-primary {
    border-color: #fff;
    background: transparent;
}

.dealer-directory-grid .dealer-card.directory-card--visual .directory-card__overlay {
    top: 12px;
    right: 12px;
    left: 12px;
    gap: 3px;
}

.dealer-directory-grid .dealer-card.directory-card--visual .directory-card__title {
    font-size: 1.05rem;
    line-height: 1.16;
}

.dealer-directory-grid .dealer-card.directory-card--visual .directory-card__meta-line {
    overflow: hidden;
    font-size: 0.65rem;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-top:5px;
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__body {
    right: 12px;
    bottom: 10px;
    left: 12px;
    gap: 8px;
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__facts {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__actions {
    gap: 6px;
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__fact {
    min-height: 24px;
    padding: 0 8px;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 999px;
    background: rgba(7, 30, 53, .58);
    color: var(--bsa-white);
    font-size: 10px;
    font-weight: 850;
    text-shadow: none;
    backdrop-filter: blur(8px);
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__fact strong {
    color: var(--bsa-white);
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__fact svg {
    width: 13px;
    height: 13px;
    color: #aee3ff;
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__fact--location,
.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__fact--media {
    display: none;
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__actions .btn {
    min-height: 34px;
    padding-inline: 8px;
    font-size: 11px;
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__actions .btn:only-child {
    grid-column: 1 / -1;
}

.dealer-directory-grid .dealer-card.directory-card--visual .dealer-card__actions .btn svg {
    width: 14px;
    height: 14px;
}

.brand-directory-grid .brand-card.directory-card--visual {
    min-height: 0;
}

.brand-directory-grid .brand-card.directory-card--visual .brand-card__media {
    height: 100%;
    min-height: 0;
}

@media (max-width: 640px) {
    .directory-card--visual .dealer-card__actions .btn,
    .directory-card--visual .brand-card__actions .btn,
    .event-card__actions .btn,
    .hero-quick-links a {
        min-height: 44px;
    }
    .hero {
    padding: 32px 16px;
    padding-top: 24px;
    padding-bottom: 20px;
}
    .compare-tray.compare-tray--compact-mobile.compare-tray--hero-hidden {
        display: none;
    }
    .hero h1 {
    max-width: 100%;
    margin-bottom: 12px;
    font-size: clamp(22px, 8.4vw, 32px);
    line-height: 1.05;
    text-wrap: balance;
}
    .hero-copy p {
    max-width: 100%;
    font-size: 14px;
    line-height: 1.45;
}
    .event-hero__meta-item strong {
    font-size: 17px;
}
    .hero-quick-links {
    gap: 8px;
    scrollbar-width: none;
    flex-wrap: nowrap;
    margin-right: -14px;
    margin-top: 12px;
    padding-right: 14px;
    overflow-x: auto;
}
    .hero-quick-links a {
    flex: 0 0 auto;
    min-height: 44px;
    padding-inline: 12px;
    font-size: 12px;
    max-width: 100%;
}
    .hero-copy > .hero-search {
    margin-top: 14px;
}
    .hero-cta {
    display: grid;
    grid-template-columns: 1fr;
    margin-top: 14px;
}
    .hero-trust {
    display: flex;
    gap: 10px;
    padding-bottom: 4px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    margin-top: 14px;
}
    .hero-trust div {
    flex: 0 0 168px;
    min-height: 0;
    padding: 12px 14px;
    scroll-snap-align: start;
    flex-basis: 156px;
}
    .home-listing-section .explore-strip__stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .home-listing-section .explore-strip__stats a {
        min-height: 82px;
        padding: 12px 8px;
    }
    .home-listing-section .explore-strip__stats a + a {
        border-top: 0;
        border-left: 1px solid #d9e8f1;
    }
    .home-listing-section .explore-strip__stats a > strong {
        font-size: clamp(14px, 4vw, 18px);
        letter-spacing: -.02em;
    }
    .home-listing-section .explore-strip__stats a > span {
        font-size: 10px;
    }
    .home-listing-section .explore-strip__links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }
    .home-listing-section .explore-strip__links a {
        min-width: 0;
        min-height: 40px;
        padding: 6px 8px;
        line-height: 1.25;
        text-align: center;
    }
    .panel-band--categories .category-highlight-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
    .panel-band--categories .type-tile--featured {
        min-height: 132px;
        padding: 14px;
    }

    .panel-band--categories .type-tile--featured strong {
        margin-top: 0;
        font-size: 19px;
        line-height: 1.1;
    }
    .panel-band--categories .type-tile .type-tile__description {
    display: block;
    margin: 10px 0;
    color: var(--bsa-muted);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.5;
}
.type-tile__meta {        gap: 5px;
        margin-top: 12px;
        font-size: 12px;
    }
    .homepage-section .feature-row {
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: minmax(260px, 84%);
        gap: 20px;
        padding-bottom: 8px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }
    .homepage-section .feature-row::-webkit-scrollbar {
        display: none;
    }
    .homepage-section .feature-row article {
        scroll-snap-align: start;
    }

    .directory-card--visual .dealer-card__media,
    .directory-card--visual .brand-card__media,
    .brand-directory-grid .brand-card.directory-card--visual .brand-card__media {
        width: 100%;
        height: auto;
        min-height: 190px;
        aspect-ratio: 1.65 / 1;
    }

    .dealer-card.directory-card--visual,
    .brand-card.directory-card--visual {
    min-height: auto;
    grid-template-columns: none;
    padding: 0;
    aspect-ratio: 4 / 3;
}

    .directory-card--visual .dealer-card__media,
    .directory-card--visual .brand-card__media {
        height: 100%;
        min-height: 0;
        aspect-ratio: auto;
    }

    .directory-card--visual .dealer-card__facts,
    .directory-card--visual .brand-card__facts,
    .directory-card--visual .dealer-card__actions,
    .directory-card--visual .brand-card__actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .directory-card--visual .dealer-card__facts,
    .directory-card--visual .brand-card__facts {
        gap: 10px;
    }

    .directory-card--visual .directory-card__overlay .directory-card__title {
        font-size: 18px;
    }
}

@media (max-width: 760px) {
    .grid.listing-grid,
    .seller-listing-tiles {
        grid-template-columns: 1fr;
    }
    .grid.listing-grid.representative-inventory-grid {
        grid-template-columns: 1fr;
    }
    .representative-inventory-grid > .listing-card:nth-child(n + 3) {
        display: none;
    }
    .map-modal__panel {
        height: 100%;
    }
    .media-modal {
        padding: 0;
    }
    .media-modal__head {
        display: grid;
        gap: 5px;
        padding-right: calc(64px + env(safe-area-inset-right));
    }
    .media-modal__head small {
        padding-top: 0;
        text-align: left;
    }
    .media-modal__stage {
        min-height: 0;
    }
    .media-modal__nav {
        width: 38px;
        height: 38px;
    }
    .media-modal__nav--prev {
        left: 8px;
    }
    .media-modal__nav--next {
        right: 8px;
    }
    .media-modal__thumbs button,
    .media-modal__thumbs img {
        width: 82px;
    }
    .media-modal__thumbs button {
        flex-basis: 82px;
    }
    .media-modal__thumbs img {
        height: 56px;
    }
    .section--full,
    .homepage-section.seller-free-section .seller-free-callout,
    .footer-grid,
    .footer-bottom {
        padding-left: 16px;
        padding-right: 16px;
    }
}

@media print {
    @page {
        margin: .45in;
    }
    body {
        background: #fff;
        color: #111827;
        font-size: 10pt;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    .ticker,
    .site-header,
    .site-footer,
    .detail-hero,
    .detail-actions,
    .cover,
    .media-strip,
    .listing-aside,
    .mobile-contact-bar,
    .map-modal,
    .media-modal,
    .compare-tray,
    .compare-modal,
    .toast {
        display: none !important;
    }
    .detail-hero,
    .listing-section,
    .section {
        padding: 0 !important;
    }
    .detail-grid--listing {
        display: block;
    }
    .detail-grid--listing > div > .content-block {
        display: none;
    }
    .detail-grid--listing > div > .listing-overview-card {
        display: none;
    }
    .detail-grid--listing > div > .print-packet-card {
        display: block;
    }
    .content-block,
    .snapshot-item {
        border-color: #cfd8df;
        box-shadow: none !important;
    }
    .content-block {
        margin-bottom: 12px;
        padding: 16px;
        break-inside: avoid;
    }
    .content-block.print-packet-card {
        margin: 0;
        padding: 0;
        border: 0;
        break-inside: auto;
    }
    .listing-overview-card h1 {
        font-size: 26px;
    }
    .snapshot-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .snapshot-item {
        background: #fff;
    }
    .print-packet-card {
        page-break-before: auto;
        color: #111827;
        line-height: 1.42;
    }
    .print-packet-card__head {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        padding-bottom: 12px;
        border-bottom: 1px solid #cfd8df;
    }
    .print-packet-card__head span,
    .print-packet-card__head small,
    .print-packet-card dt,
    .print-packet-card__foot {
        color: #4b5563;
    }
    .print-packet-card__head span,
    .print-packet-card dt {
        font-size: 11px;
        font-weight: 800;
        letter-spacing: .05em;
        text-transform: uppercase;
    }
    .print-packet-card h2,
    .print-packet-card h3 {
        margin: 0;
        color: #111827;
    }
    .print-packet-card h2 {
        margin-top: 4px;
        font-size: 24px;
        line-height: 1.16;
    }
    .print-packet-card h3 {
        margin-bottom: 9px;
        font-size: 15px;
    }
    .print-packet-card__head strong {
        display: block;
        color: #991b1b;
        font-size: 20px;
        text-align: right;
    }
    .print-packet-card__head small {
        display: block;
        margin-top: 4px;
        font-size: 12px;
        text-align: right;
    }
    .print-packet-card__summary {
        display: block;
        margin-top: 14px;
    }
    .print-packet-card__summary.has-image {
        display: grid;
        grid-template-columns: 230px minmax(0, 1fr);
        gap: 20px;
        align-items: start;
    }
    .print-packet-card__summary img {
        width: 230px;
        height: 154px;
        object-fit: cover;
        border: 1px solid #cfd8df;
        border-radius: 0.25rem;
    }
    .print-packet-card__summary p {
        margin: 0 0 12px;
        line-height: 1.5;
    }
    .print-packet-card dl {
        display: grid;
        gap: 0;
        margin: 0;
        border: 1px solid #cfd8df;
    }
    .print-packet-card dl div {
        display: grid;
        grid-template-columns: 125px minmax(0, 1fr);
        gap: 10px;
        padding: 7px 9px;
        border-bottom: 1px solid #e5e7eb;
        break-inside: avoid;
    }
    .print-packet-card dl div:last-child {
        border-bottom: 0;
    }
    .print-packet-card dd {
        margin: 0;
        font-weight: 700;
        overflow-wrap: anywhere;
    }
    .print-packet-card__grid {
        display: grid;
        grid-template-columns: 1.15fr .85fr;
        gap: 20px;
        margin-top: 16px;
    }
    .print-packet-card ul {
        margin: 0;
        padding-left: 18px;
        line-height: 1.45;
    }
    .print-packet-card li {
        margin-bottom: 6px;
        break-inside: avoid;
    }
    .print-packet-card__section {
        margin-top: 16px;
        padding-top: 13px;
        border-top: 2px solid #dbe4ea;
    }
    .print-packet-card__section h3,
    .print-packet-card__grid h3,
    .print-packet-card__comparables h3,
    .print-packet-card__contact h3 {
        break-after: avoid;
    }
    .print-packet-card__section-head {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 20px;
    }
    .print-packet-card__section-head small {
        color: #4b5563;
        font-size: 10px;
    }
    .print-packet-card__identity {
        margin-top: 10px !important;
    }
    .print-packet-card__identity div {
        grid-template-columns: 105px minmax(0, 1fr) !important;
        padding: 5px 7px !important;
    }
    .print-packet-card__gallery {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
        break-inside: avoid;
    }
    .print-packet-card__gallery img {
        display: block;
        width: 100%;
        height: 120px;
        object-fit: cover;
        border: 1px solid #cfd8df;
        border-radius: 4px;
    }
    .print-packet-card__specs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        border: 0 !important;
        gap: 5px 10px !important;
    }
    .print-packet-card__specs div {
        grid-template-columns: 105px minmax(0, 1fr) !important;
        padding: 6px 8px !important;
        border: 1px solid #dbe4ea !important;
        border-radius: 3px;
    }
    .print-packet-card__feature-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px 18px;
    }
    .print-packet-card__feature-grid > div {
        break-inside: avoid;
    }
    .print-packet-card__feature-grid strong {
        display: block;
        margin-bottom: 2px;
        color: #111827;
    }
    .print-packet-card__feature-grid p {
        margin: 0;
        color: #374151;
        font-size: 9.5pt;
        line-height: 1.4;
    }
    .print-packet-card__columns {
        columns: 2;
        column-gap: 30px;
    }
    .print-packet-card__media-facts {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 7px;
        margin-bottom: 10px;
    }
    .print-packet-card__media-facts div {
        padding: 8px;
        border: 1px solid #dbe4ea;
        border-radius: 4px;
        background: #f4f8fa;
        text-align: center;
    }
    .print-packet-card__media-facts span,
    .print-packet-card__media-facts strong {
        display: block;
    }
    .print-packet-card__media-facts span {
        color: #4b5563;
        font-size: 9px;
        font-weight: 800;
        letter-spacing: .05em;
        text-transform: uppercase;
    }
    .print-packet-card__media-facts strong {
        margin-top: 2px;
        color: #111827;
        font-size: 13px;
    }
    .print-packet-card__checklist,
    .print-packet-card__due-diligence {
        padding-left: 20px;
    }
    .print-packet-card__notice,
    .print-packet-card__questions,
    .print-packet-card__inquiry {
        padding: 10px 12px;
        border: 1px solid #c8d8e3;
        border-left: 4px solid #0f6c9d;
        border-radius: 4px;
        background: #f4f8fa;
    }
    .print-packet-card__notice {
        margin: 0;
    }
    .print-packet-card__checklist li,
    .print-packet-card__due-diligence li {
        padding-left: 2px;
    }
    .print-packet-card__checklist strong,
    .print-packet-card__checklist span,
    .print-packet-card__due-diligence strong,
    .print-packet-card__due-diligence span {
        display: block;
    }
    .print-packet-card__checklist span,
    .print-packet-card__due-diligence span {
        margin-top: 1px;
        color: #4b5563;
        font-size: 9pt;
        line-height: 1.35;
    }
    .print-packet-card__questions {
        break-inside: avoid;
    }
    .print-packet-card__questions ul {
        margin-top: 0;
    }
    .print-packet-card__comparables {
        margin-top: 16px;
        padding-top: 12px;
        border-top: 1px solid #cfd8df;
    }
    .print-packet-card__contact {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        margin-top: 16px;
        padding-top: 13px;
        border-top: 2px solid #dbe4ea;
        break-inside: avoid;
    }
    .print-packet-card__contact p {
        margin: 0 0 5px;
    }
    .print-packet-card__inquiry > strong {
        display: block;
        margin-bottom: 3px;
        color: #111827;
    }
    .print-packet-card__inquiry p {
        margin: 0;
        color: #374151;
        line-height: 1.4;
    }
    .print-packet-card__foot {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        margin-top: 16px;
        padding-top: 10px;
        border-top: 1px solid #cfd8df;
        font-size: 11px;
        break-inside: avoid;
    }
    .print-packet-card__foot span:last-child {
        max-width: 68%;
        text-align: right;
    }
    a {
        color: #111827;
        text-decoration: none;
    }
}

@container representative-inventory (max-width: 520px) {
    .representative-inventory-card .block-title-row {
        display: grid;
        grid-template-columns: 1fr;
    }
    .representative-inventory-actions {
        justify-content: flex-start;
    }
    .representative-inventory-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .representative-inventory-types,
    .grid.listing-grid.representative-inventory-grid {
        grid-template-columns: 1fr;
    }
    .representative-inventory-grid > .listing-card:nth-child(n + 3) {
        display: none;
    }
}

/* Backend radius normalization */
.auth-page--wide .auth-panel,
.dashboard-stat-grid article,
.dashboard-card,
.dashboard-wallet-hero,
.dashboard-list a,
.dashboard-feed div,
.dashboard-action-grid a,
.dashboard-subscription-card,
.dashboard-quality-callout,
.dashboard-action-plan__item,
.dashboard-media-task,
.dashboard-media-task__score,
.dashboard-lead-card,
.dashboard-lead-details p,
.dashboard-reply-template,
.dashboard-card__notice,
.dashboard-followup-card,
.dashboard-empty-message,
.support-overview article,
.support-thread-link,
.support-section,
.support-message,
.support-attachment,
.support-prefill-note,
.support-help-list div,
.support-empty-mini,
.auth-page--wide .media-upload-tile,
.notice {
    border-radius: var(--bsa-backend-panel-radius);
}

.auth-page--wide .btn,
.dashboard-card .btn,
.dashboard-stat-grid .btn,
.dashboard-wallet-hero .btn,
.dashboard-list-search input,
.dashboard-list-filter select,
.dashboard-list-filter .select2-container .select2-selection--single,
.auth-page--wide .field input,
.auth-page--wide .field select,
.auth-page--wide .field textarea,
.auth-page--wide .range-popover,
.auth-page--wide .phone-input-group select,
.auth-page--wide .phone-input-group input,
.dashboard-card .field input,
.dashboard-card .field select,
.dashboard-card .field textarea,
.dashboard-card .range-popover,
.dashboard-card .phone-input-group select,
.dashboard-card .phone-input-group input,
.dashboard-list-search__submit,
.pager a,
.pager span,
.dashboard-pill,
.support-status,
.dashboard-lead-priority,
.dashboard-lead-signals span,
.dashboard-followup-card__top span,
.dashboard-followup-card__facts span,
.dashboard-media-tags span,
.btn--dashboard-action,
.dashboard-action-stack .btn {
    border-radius: var(--bsa-backend-control-radius);
}

/* Keep inline fields and actions aligned by their shared parent row. */
.dashboard-inline-control {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: stretch;
    gap: 8px;
    width: 100%;
}
.dashboard-inline-control > :is(input, select, .btn) {
    align-self: stretch;
    height: auto;
    min-height: var(--size-control-md);
    margin: 0;
}

/* Match dashboard single-line fields to the shared button height. */
.dashboard-shell input:where(:not([type="hidden"], [type="checkbox"], [type="radio"], [type="file"], [type="range"], [type="color"])),
.dashboard-shell select:where(:not([multiple])) {
    min-height: var(--size-control-md);
}

/* Keep every back-end editor field on the same typography contract. */
.auth-page--wide .field input,
.auth-page--wide .field select,
.auth-page--wide .field textarea,
.dashboard-card .field input,
.dashboard-card .field select,
.dashboard-card .field textarea,
.auth-page--wide .select2-container--default .select2-selection__rendered,
.dashboard-card .select2-container--default .select2-selection__rendered {
    font-family: var(--font-family-sans);
    font-size: var(--font-size-body);
    font-weight: var(--font-weight-medium);
}

.auth-page--wide .field select.phone-country-code-select {
    font-size: 1.0625rem;
}

/* Public listing price format: $ 4,900,000 USD */
.listing-price-currency {
    display: inline;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font-size: max(10px, .64em);
    font-weight: 700;
    line-height: 1;
    letter-spacing: .055em;
    vertical-align: .08em;
    white-space: nowrap;
}
.listing-card__overlay .listing-card__price > .listing-price-currency {
    display: inline;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font-size: max(10px, .64em);
    line-height: 1;
}

/* Support center: focused inbox with full-screen ticket workflows */
body.support-dialog-open {
    overflow: hidden;
}

body.support-thread-open .site-header {
    z-index: 10040;
}

.support-console {
    display: grid;
    gap: 20px;
}

.support-overview {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    display: flex;
    gap: 0;
    overflow: hidden;
    border: 1px solid #d7e2eb;
    border-radius: 0.25rem;
    background: #fff;
    box-shadow: 0 8px 22px rgba(12, 42, 68, .045);
}

.support-overview article {
    min-width: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 10px;
    flex: 1 1 0;
    padding: 18px 20px;
    border: 0;
    border-right: 1px solid #e3eaf0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
}

.support-overview article:last-child {
    border-right: 0;
}

.support-overview span {
    display: block;
    font-weight: 900;
    text-transform: uppercase;
    align-self: end;
    color: #5d6d7f;
    font-size: 12px;
    letter-spacing: .035em;
}

.support-overview strong {
    display: block;
    line-height: 1;
    grid-row: 1 / 3;
    margin: 0;
    color: #0c2a44;
    font-size: 28px;
}

.support-overview small {
    display: block;
    color: #758495;
    font-size: 12px;
}

.support-layout,
.support-layout--admin,
.support-layout--user {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
}

.support-thread-list {
    display: grid;
    gap: 0;
    width: 100%;
    padding: 0;
    overflow: hidden;
    border-color: #d7e2eb;
    border-radius: 0.25rem;
    background: #fff;
    box-shadow: 0 10px 28px rgba(12, 42, 68, .055);
}

.support-thread-list .support-panel-head {
    align-items: center;
    margin: 0;
    padding: 20px 22px 16px;
    border-bottom: 0;
}

.support-thread-list .support-panel-head h2 {
    color: #0c2a44;
    font-size: 18px;
    letter-spacing: 0;
    text-transform: none;
}

.support-thread-list .support-panel-head p {
    margin-top: 5px;
    color: #66778a;
}

.support-thread-list__search {
    padding: 0 22px 18px;
}

.support-thread-list__search .dashboard-list-controls {
    margin-bottom: 0;
    align-items: center;
}

.support-thread-list__search .dashboard-list-search input {
    min-height: 44px;
    border-color: #ccd9e3;
    background: #fff;
    font-size: 14px;
}

.support-thread-list__columns {
    display: grid;
    grid-template-columns: 150px minmax(280px, 1fr) 190px;
    gap: 20px;
    padding: 11px 22px;
    border-top: 1px solid #e3eaf0;
    border-bottom: 1px solid #e3eaf0;
    background: #f7f9fb;
    color: #6c7b8b;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.support-layout--admin .support-thread-list__columns {
    grid-template-columns: 150px minmax(280px, 1fr) 190px minmax(130px, 180px);
}

.support-thread-list__items {
    padding-right: 4px;
    overflow-y: auto;
    display: grid;
    gap: 0;
    max-height: none;
    padding: 0;
    overflow: visible;
}

.support-thread-link {
    position: relative;
    display: grid;
    grid-template-columns: 150px minmax(280px, 1fr) 190px;
    gap: 20px;
    align-items: center;
    min-height: 92px;
    padding: 16px 52px 16px 22px;
    border: 0;
    border-bottom: 1px solid #e3eaf0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    transition: background-color .16s ease, box-shadow .16s ease;
}

.support-layout--admin .support-thread-link {
    grid-template-columns: 150px minmax(280px, 1fr) 190px minmax(130px, 180px);
}

.support-thread-link::after {
    position: absolute;
    right: 22px;
    top: 50%;
    width: 9px;
    height: 9px;
    border-top: 1.8px solid #718095;
    border-right: 1.8px solid #718095;
    content: "";
    transform: translateY(-50%) rotate(45deg);
}

.support-thread-link:last-child {
    border-bottom: 0;
}

.support-thread-link:hover,
.support-thread-link.is-active {
    border-color: #e3eaf0;
    background: #f6f9fc;
    box-shadow: inset 3px 0 0 #176fa6;
}

.support-thread-link__top {
    align-content: center;
    align-self: stretch;
    gap: 8px;
}

.support-thread-link > strong {
    grid-column: 2;
    align-self: end;
    color: #0c2a44;
    font-size: 15px;
    font-weight: 850;
}

.support-thread-link > span:not(.support-thread-link__top):not(.support-thread-link__meta) {
    grid-column: 2;
    align-self: start;
    overflow: hidden;
    color: #66778a;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.support-thread-link__meta {
    grid-column: 3;
    grid-row: 1 / span 3;
    align-content: center;
    color: #506174;
    font-size: 13px;
}

.support-thread-owner {
    grid-column: 4;
    grid-row: 1 / span 3;
    align-self: center;
    color: #0c2a44;
    font-size: 13px;
    font-weight: 800;
}

.support-status {
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    font-style: normal;
    font-weight: 950;
    line-height: 1;
    min-height: 24px;
    padding: 0 9px;
    border-radius: 0.25rem;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.support-empty-mini {
    margin: 24px;
}

.support-thread-list > .pager {
    margin: 0;
    padding: 16px 22px;
    border-top: 1px solid #e3eaf0;
    background: #fff;
}

.support-dialog-close {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 1px solid #cad7e1;
    border-radius: 0.25rem;
    background: #fff;
    color: #0c2a44;
    cursor: pointer;
}

.support-dialog-close:hover {
    border-color: #8fb3c9;
    background: #f2f7fa;
}

.support-dialog-close svg {
    width: 20px;
    height: 20px;
}

.support-conversation {
    position: fixed;
    inset: var(--support-thread-top, 72px) 0 0;
    z-index: 10020;
    display: block;
    min-width: 0;
    overflow: hidden;
    background: #f4f7f9;
}

.support-thread-panel {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: #f4f7f9;
    box-shadow: none;
}

.support-thread-panel__head {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    min-height: 76px;
    padding: 10px 20px;
    border-bottom: 1px solid #d8e2ea;
    background: #fff;
    box-shadow: 0 4px 14px rgba(12, 42, 68, .04);
}

.support-thread-panel__head > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto;
    flex: 1 1 auto;
    min-width: 0;
}

.support-thread-panel__head > .support-dialog-close {
    order: 2;
    margin-left: auto;
}

.support-thread-panel__head h2 {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    color: #0c2a44;
    font-size: clamp(18px, 1.6vw, 23px);
    letter-spacing: -.02em;
    text-transform: none;
}

.support-thread-panel__head p {
    grid-column: 1;
    grid-row: 2;
    margin: 1px 0 0;
    font-size: 12px;
}

.support-thread-ticket-meta {
    display: flex;
    grid-column: 1;
    grid-row: 2;
    align-items: center;
    gap: 7px;
    min-width: 0;
}

.support-thread-ticket-meta p {
    margin: 0;
}

.support-thread-panel__body {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 0;
    min-height: 0;
    overflow: hidden;
}

.support-thread-panel__body > .support-section:first-child {
    min-height: 0;
    padding: 16px max(20px, calc((100vw - 1120px) / 2));
    overflow-y: auto;
    border: 0;
    border-radius: 0;
    background: #f4f7f9;
}

.support-thread-panel__body > .support-section:first-child .support-section__head {
    display: none;
}

.support-thread-panel__body .support-message-list {
    width: 100%;
    max-width: 1120px;
    min-height: 100%;
    margin: 0 auto;
    padding: 0;
    align-content: end;
}

.support-message {
    display: grid;
    border: 1px solid var(--bsa-border);
    gap: 8px;
    max-width: min(760px, 72%);
    padding: 12px 14px;
    border-color: #d6e1e9;
    border-radius: 0.25rem;
    background: #fff;
    box-shadow: 0 5px 15px rgba(12, 42, 68, .045);
}

.support-message--support {
    justify-self: start;
    border-color: #bfd7e6;
    background: #edf6fb;
}

.support-message--user {
    justify-self: end;
    border-color: #dfe7ee;
    background: #fff;
}

.support-message p {
    margin: 0;
    color: var(--bsa-text);
    font-size: 14px;
    line-height: 1.65;
}

.support-message__meta {
    display: grid;
    grid-template-columns: auto auto;
    align-items: baseline;
    justify-content: start;
    gap: 8px;
}

.support-section--reply {
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1120px);
    justify-content: center;
    gap: 0;
    max-height: none;
    padding: 12px 20px;
    overflow: visible;
    border: 0;
    border-top: 1px solid #d8e2ea;
    border-radius: 0;
    background: #fff;
    box-shadow: 0 -5px 18px rgba(12, 42, 68, .04);
}

.support-section--reply .support-section__head,
.support-section--reply .support-reply-form {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}

.support-section--reply .support-section__head {
    display: none;
}

.support-section--reply .support-section__head h3 {
    font-size: 13px;
}

.support-section--reply textarea {
    height: 64px;
    min-height: 64px;
    max-height: 120px;
    resize: vertical;
}

.support-reply-form {
    padding-top: 0;
    border-top: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 8px 12px;
}

.support-reply-form > .field:first-of-type {
    grid-column: 1 / -1;
}

.support-reply-form > .field:first-of-type > span {
    display: none;
}

.support-reply-form > .field:nth-of-type(2),
.support-reply-form > .support-upload-note {
    grid-column: 1;
}

.support-reply-form > .field:nth-of-type(2) {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 10px;
}

.support-reply-form > .field:nth-of-type(2) > span {
    white-space: nowrap;
}

.support-reply-form > .support-upload-note {
    display: none;
}

.support-reply-form > .btn {
    grid-column: 2;
    grid-row: 2;
    align-self: end;
    min-height: 42px;
}

.support-side.js-support-new-ticket-dialog {
    position: fixed;
    inset: 0;
    z-index: 10030;
    display: none;
    grid-template-columns: minmax(0, 760px) minmax(240px, 300px);
    align-items: start;
    justify-content: center;
    gap: 20px;
    padding: clamp(24px, 5vw, 72px) 24px;
    overflow-y: auto;
    background: rgba(9, 28, 45, .58);
    backdrop-filter: blur(5px);
}

.support-side.js-support-new-ticket-dialog.is-open {
    display: grid;
}

.support-side .support-new-ticket,
.support-side .support-help-card {
    margin: 0;
    border-radius: 0.25rem;
    background: #fff;
    box-shadow: 0 26px 70px rgba(6, 25, 40, .25);
}

.support-new-ticket {
    padding: 24px;
}

.support-new-ticket .support-panel-head {
    flex-direction: row-reverse;
    align-items: flex-start;
    margin-bottom: 18px;
}

.support-new-ticket .support-panel-head > div {
    flex: 1 1 auto;
}

.support-new-ticket .support-panel-head h2 {
    color: #0c2a44;
    font-size: 24px;
    letter-spacing: -.02em;
    text-transform: none;
}

.support-help-card {
    display: grid;
    gap: 20px;
    padding: 20px;
}

@media (max-width: 900px) {
    .support-thread-list__columns {
        display: none;
    }

    .support-thread-link,
    .support-layout--admin .support-thread-link {
        grid-template-columns: 120px minmax(0, 1fr);
        gap: 10px 16px;
        min-height: 100px;
        padding: 15px 48px 15px 18px;
    }

    .support-thread-link > strong,
    .support-thread-link > span:not(.support-thread-link__top):not(.support-thread-link__meta) {
        grid-column: 2;
    }

    .support-thread-link__meta {
        grid-column: 1;
        grid-row: auto;
    }

    .support-thread-owner {
        grid-column: 2;
        grid-row: auto;
    }

    .support-side.js-support-new-ticket-dialog {
        grid-template-columns: minmax(0, 760px);
    }
}

@media (max-width: 680px) {
    .support-overview {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .support-overview article {
        display: block;
        padding: 14px 12px;
        text-align: center;
    }

    .support-overview strong {
        margin-bottom: 5px;
        font-size: 24px;
    }

    .support-overview small {
        display: none;
    }

    .support-thread-list .support-panel-head {
        padding: 18px 16px 14px;
    }

    .support-thread-list__search {
        padding: 0 16px 16px;
    }

    .support-thread-link,
    .support-layout--admin .support-thread-link {
        grid-template-columns: 1fr;
        gap: 6px;
        padding: 15px 42px 15px 16px;
    }

    .support-thread-link__top,
    .support-thread-link > strong,
    .support-thread-link > span:not(.support-thread-link__top):not(.support-thread-link__meta),
    .support-thread-link__meta,
    .support-thread-owner {
        grid-column: 1;
        grid-row: auto;
    }

    .support-thread-link > strong {
        align-self: auto;
    }

    .support-thread-link > span:not(.support-thread-link__top):not(.support-thread-link__meta) {
        display: none;
    }

    .support-thread-panel__head {
        min-height: 72px;
        padding: 9px 12px;
    }

    .support-thread-kicker > span:not(.support-status) {
        display: none;
    }

    .support-thread-panel__body > .support-section:first-child {
        padding: 12px;
    }

    .support-message {
        max-width: 92%;
    }

    .support-message__meta {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .support-section--reply {
        max-height: none;
        padding: 10px 12px;
        overflow: visible;
    }

    .support-section--reply .support-section__head,
    .support-section--reply .support-upload-note {
        display: none;
    }

    .support-reply-form {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .support-reply-form > .field,
    .support-reply-form > .support-upload-note,
    .support-reply-form > .btn {
        grid-column: 1;
        grid-row: auto;
    }

    .support-reply-form textarea {
        min-height: 64px;
    }

    .support-reply-form > .btn {
        width: 100%;
    }

    .support-side.js-support-new-ticket-dialog {
        display: none;
        grid-template-columns: 1fr;
        padding: 0;
        background: #f4f7f9;
        backdrop-filter: none;
    }

    .support-side.js-support-new-ticket-dialog.is-open {
        display: grid;
    }

    .support-side .support-new-ticket {
        min-height: 100dvh;
        padding: 18px 16px;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .support-side .support-help-card {
        display: none;
    }
}

@media (prefers-reduced-motion: no-preference) {
    .support-conversation.is-open,

/* Dashboard collection filters */
.dashboard-filter-box {
    display: grid;
    gap: 13px;
    margin: 0 0 16px;
    padding: 14px;
    border: 1px solid #d5e2eb;
    border-radius: var(--bsa-backend-panel-radius);
    background: linear-gradient(145deg, #f8fbfd 0%, #f3f7fa 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
}

.dashboard-filter-box__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.dashboard-filter-box__head > div {
    display: flex;
    align-items: baseline;
    gap: 9px;
    min-width: 0;
}

.dashboard-filter-box__head strong {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 900;
}

.dashboard-filter-box__head strong svg {
    width: 16px;
    height: 16px;
    color: var(--bsa-pink);
}

.dashboard-filter-box__head span {
    color: #71869a;
    font-size: 12px;
    font-weight: 650;
}

.dashboard-filter-box__clear {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    color: #49647d;
    font-size: 12px;
    font-weight: 850;
}

.dashboard-filter-box__clear:hover {
    color: var(--bsa-pink);
}

.dashboard-filter-box__clear svg {
    width: 14px;
    height: 14px;
}

.dashboard-filter-box__grid {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: 10px;
    min-width: 0;
}

.dashboard-filter-field {
    display: grid;
    flex: 1 1 155px;
    gap: 6px;
    min-width: 0;
}

.dashboard-filter-field--search {
    flex: 2 1 310px;
}

.dashboard-filter-field--user {
    flex: 1.6 1 250px;
}

.dashboard-filter-field > span:first-child {
    color: #526b82;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .055em;
    line-height: 1;
    text-transform: uppercase;
}

.dashboard-filter-box .dashboard-list-search {
    display: block;
    width: 100%;
    min-width: 0;
}

.dashboard-filter-box .dashboard-list-filter {
    flex-basis: 155px;
}

.dashboard-filter-box .dashboard-list-search input,
.dashboard-filter-box .dashboard-list-filter select,
.dashboard-filter-box .dashboard-list-filter .select2-container .select2-selection--single {
    min-height: 44px;
}

.dashboard-filter-box .dashboard-list-filter .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 42px;
}

.dashboard-filter-box .dashboard-list-filter .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 42px;
}

.dashboard-filter-box--compact {
    margin-bottom: 0;
}

@media (max-width: 760px) {
    .dashboard-filter-box {
        padding: 12px;
    }

    .dashboard-filter-box__head {
        align-items: flex-start;
    }

    .dashboard-filter-box__head > div {
        display: grid;
        gap: 3px;
    }

    .dashboard-filter-box__grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .dashboard-filter-field,
    .dashboard-filter-field--search,
    .dashboard-filter-field--user,
    .dashboard-filter-box .dashboard-list-filter {
        width: 100%;
    }
}
    .support-side.js-support-new-ticket-dialog.is-open > * {
        animation: support-dialog-enter .18s ease-out both;
    }
}

@keyframes support-dialog-enter {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Sell landing page */
.sell-landing {
    overflow: hidden;
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
}
.sell-landing h1,
.sell-landing h2,
.sell-landing h3,
.sell-landing p {
    margin-top: 0;
}
.sell-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(500px, 1.12fr);
    align-items: center;
    gap: clamp(42px, 6vw, 96px);
    width: min(100%, 1380px);
    min-height: min(680px, calc(100vh - 96px));
    margin: 0 auto;
    padding: clamp(54px, 7vw, 96px) var(--layout-gutter) clamp(64px, 8vw, 112px);
}
.sell-hero::after {
    content: "";
    position: absolute;
    top: 7%;
    right: -12%;
    z-index: 0;
    width: min(680px, 52vw);
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 35%, rgba(169, 221, 243, .34), rgba(230, 243, 249, .16) 58%, transparent 70%);
    pointer-events: none;
}
.sell-hero__copy,
.sell-hero__visual {
    position: relative;
    z-index: 1;
    min-width: 0;
}
.sell-hero__copy h1 {
    max-width: 680px;
    margin-bottom: 28px;
    color: var(--color-brand-deep);
    font-size: clamp(3.25rem, 6.7vw, 6.7rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.065em;
    line-height: .94;
}
.sell-hero__copy h1 span {
    color: var(--color-brand-ocean);
}
.sell-hero__copy > p:not(.sell-hero__assurance) {
    max-width: 580px;
    margin-bottom: 30px;
    color: var(--color-text-secondary);
    font-size: clamp(1.05rem, 1.5vw, 1.32rem);
    line-height: 1.62;
}
.sell-hero__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
    padding-bottom: 22px;
}
.sell-landing .sell-cta {
    min-height: 54px;
    padding-inline: 24px;
    border-color: var(--color-accent-coral);
    background: var(--color-accent-coral);
    color: var(--color-surface-canvas);
    font-size: 15px;
    font-weight: var(--font-weight-bold);
    box-shadow: 0 14px 34px rgba(231, 95, 115, .22);
}
.sell-landing .sell-cta:hover {
    border-color: var(--color-accent-coral-hover);
    background: var(--color-accent-coral-hover);
}
.sell-cta--primary {
    min-width: 220px;
}
.sell-hero__text-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    color: var(--color-brand-ocean);
    font-size: 15px;
    font-weight: var(--font-weight-bold);
    text-decoration: none;
}
.sell-hero__text-link:hover {
    color: var(--color-brand-ocean-hover);
}
.sell-hero__text-link svg,
.sell-hero__assurance svg {
    width: 18px;
    height: 18px;
}
.sell-hero__assurance {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    color: var(--color-text-secondary);
    font-size: 13px;
}
.sell-hero__assurance svg {
    flex: 0 0 auto;
    color: var(--color-success);
}
.sell-hero__visual {
    min-height: 500px;
}
.sell-offer {
    position: absolute;
    top: 0;
    right: 7%;
    z-index: 2;
    display: grid;
    justify-items: center;
    line-height: 1;
}
.sell-offer__label {
    margin-bottom: 2px;
    color: var(--color-accent-coral);
    font-size: clamp(.85rem, 1.3vw, 1.05rem);
    font-weight: var(--font-weight-bold);
    letter-spacing: .01em;
}
.sell-offer strong {
    display: flex;
    align-items: flex-start;
    color: var(--color-brand-ocean);
    font-size: clamp(7.4rem, 13vw, 12rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.09em;
}
.sell-offer strong span {
    margin: .15em -.02em 0 0;
    font-size: .38em;
    letter-spacing: -.04em;
}
.sell-offer__caption {
    margin-top: -8px;
    color: var(--color-brand-ocean);
    font-size: clamp(1.25rem, 2vw, 1.65rem);
    font-weight: var(--font-weight-bold);
}
.sell-listing-preview {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 3;
    width: min(100%, 650px);
    overflow: hidden;
    border: 1px solid rgba(159, 178, 192, .42);
    border-radius: 10px;
    background: var(--color-surface-canvas);
    box-shadow: 0 28px 70px rgba(7, 31, 56, .2);
}
.sell-listing-preview__media {
    position: relative;
    height: 265px;
    overflow: hidden;
    background: var(--color-brand-ocean-soft);
}
.sell-listing-preview__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.sell-listing-preview__media > span {
    position: absolute;
    right: 14px;
    bottom: 14px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 12px;
    border-radius: var(--radius-round);
    background: rgba(7, 31, 56, .88);
    color: var(--color-surface-canvas);
    font-size: 12px;
    font-weight: var(--font-weight-bold);
    backdrop-filter: blur(8px);
}
.sell-listing-preview__media > span svg {
    width: 15px;
    height: 15px;
}
.sell-listing-preview__media--empty,
.sell-product-preview__image--empty {
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, var(--color-brand-ocean-soft), var(--color-surface-canvas));
    color: var(--color-brand-ocean);
}
.sell-listing-preview__media--empty > svg,
.sell-product-preview__image--empty > svg {
    width: 92px;
    height: 92px;
    opacity: .55;
}
.sell-listing-preview__body {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 20px 12px;
}
.sell-listing-preview__body h2 {
    margin-bottom: 5px;
    color: var(--color-text-strong);
    font-size: 1.05rem;
    letter-spacing: -.02em;
}
.sell-listing-preview__body p {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 0;
    color: var(--color-text-secondary);
    font-size: 12px;
}
.sell-listing-preview__body p svg {
    width: 14px;
    height: 14px;
}
.sell-listing-preview__body > strong {
    flex: 0 0 auto;
    color: var(--color-text-strong);
    font-size: 1rem;
}
.sell-listing-preview__actions {
    display: flex;
    gap: 8px;
    padding: 0 20px 18px;
}
.sell-listing-preview__actions span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-control);
    color: var(--color-text-secondary);
    font-size: 11px;
    font-weight: var(--font-weight-semibold);
}
.sell-listing-preview__actions svg {
    width: 14px;
    height: 14px;
}
.sell-value-rail {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    background: var(--color-brand-deep);
    color: var(--color-surface-canvas);
}
.sell-value-rail > div {
    display: flex;
    align-items: center;
    gap: 20px;
    min-width: 0;
    padding: 28px clamp(20px, 3vw, 42px);
    border-right: 1px solid rgba(255, 255, 255, .14);
}
.sell-value-rail > div:last-child {
    border-right: 0;
}
.sell-value-rail > div > svg {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    color: var(--color-brand-powder);
}
.sell-value-rail span {
    min-width: 0;
    color: rgba(255, 255, 255, .7);
    font-size: 12px;
    line-height: 1.45;
}
.sell-value-rail strong {
    display: block;
    margin-bottom: 3px;
    color: var(--color-surface-canvas);
    font-size: 14px;
}
.sell-feature-story,
.sell-control-story,
.sell-how {
    width: min(100%, 1380px);
    margin: 0 auto;
    padding: clamp(76px, 9vw, 126px) var(--layout-gutter);
}
.sell-feature-story__intro {
    max-width: 640px;
    margin-bottom: clamp(32px, 2vw, 62px);
}
.sell-feature-story__intro h2,
.sell-conversation-story h2,
.sell-control-story h2,
.sell-how h2 {
    margin-bottom: 15px;
    color: var(--color-brand-deep);
    font-size: clamp(2.2rem, 4.4vw, 4rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.05em;
    line-height: 1.02;
}
.sell-feature-story__intro p,
.sell-conversation-story__copy > p,
.sell-control-story > div:first-child > p,
.sell-how__intro p {
    margin-bottom: 0;
    color: var(--color-text-secondary);
    font-size: 1.05rem;
    line-height: 1.65;
}
.sell-feature-story__layout {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(500px, 1.15fr);
    align-items: center;
    gap: clamp(48px, 7vw, 100px);
}
.sell-feature-list {
    display: grid;
    gap: 26px;
}
.sell-feature-list article {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 17px;
}
.sell-feature-list article > svg {
    width: 32px;
    height: 32px;
    color: var(--color-brand-ocean);
    stroke-width: 1.7;
}
.sell-feature-list h3 {
    margin-bottom: 5px;
    color: var(--color-text-strong);
    font-size: 1rem;
    letter-spacing: -.015em;
}
.sell-feature-list p {
    margin-bottom: 0;
    color: var(--color-text-secondary);
    font-size: 13px;
    line-height: 1.55;
}
.sell-product-preview {
    overflow: hidden;
    border: 1px solid var(--color-border-subtle);
    border-radius: 10px;
    background: var(--color-surface-canvas);
    box-shadow: 0 30px 70px rgba(7, 31, 56, .13);
}
.sell-product-preview__bar {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 42px;
    padding: 0 16px;
    border-bottom: 1px solid var(--color-border-subtle);
    background: var(--color-surface-page);
}
.sell-product-preview__bar > span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--color-border-strong);
}
.sell-product-preview__bar strong {
    margin-left: 8px;
    color: var(--color-text-secondary);
    font-size: 11px;
}
.sell-product-preview__image {
    height: 330px;
    overflow: hidden;
}
.sell-product-preview__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.sell-product-preview__summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    background: var(--color-border-subtle);
}
.sell-product-preview__summary div {
    min-width: 0;
    padding: 18px;
    background: var(--color-surface-canvas);
}
.sell-product-preview__summary span,
.sell-product-preview__summary strong {
    display: block;
}
.sell-product-preview__summary span {
    margin-bottom: 4px;
    color: var(--color-brand-ocean);
    font-size: 10px;
    font-weight: var(--font-weight-bold);
    letter-spacing: .06em;
    text-transform: uppercase;
}
.sell-product-preview__summary strong {
    color: var(--color-text-strong);
    font-size: 13px;
}
.sell-conversation-story {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, .9fr);
    align-items: center;
    gap: clamp(50px, 8vw, 110px);
    padding: clamp(76px, 9vw, 126px) max(var(--layout-gutter), calc((100vw - 1380px) / 2 + var(--layout-gutter)));
    background: linear-gradient(120deg, var(--color-brand-ocean-soft), #f7fbfd 68%);
}
.sell-conversation-story__copy > p {
    max-width: 620px;
    margin-bottom: 38px;
}
.sell-feature-list--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 30px;
}
.sell-feature-list--compact article {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 12px;
}
.sell-feature-list--compact article > svg {
    width: 27px;
    height: 27px;
}
.sell-inbox-preview {
    padding: 26px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 10px;
    background: var(--color-brand-deep);
    color: var(--color-surface-canvas);
    box-shadow: 0 30px 70px rgba(7, 31, 56, .22);
}
.sell-inbox-preview__head,
.sell-inbox-preview__head > div {
    display: flex;
    align-items: center;
}
.sell-inbox-preview__head {
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}
.sell-inbox-preview__head > div {
    gap: 12px;
}
.sell-inbox-preview__head svg {
    width: 26px;
    height: 26px;
    color: var(--color-brand-powder);
}
.sell-inbox-preview__head span {
    color: rgba(255, 255, 255, .65);
    font-size: 11px;
}
.sell-inbox-preview__head strong {
    display: block;
    margin-bottom: 2px;
    color: var(--color-surface-canvas);
    font-size: 15px;
}
.sell-inbox-preview__status {
    padding: 6px 9px;
    border-radius: var(--radius-round);
    background: rgba(24, 121, 78, .2);
    color: #8ee4bc !important;
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
}
.sell-inbox-preview__item {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 5px 16px;
    padding: 17px 18px;
    border-top: 1px solid rgba(255, 255, 255, .11);
}
.sell-inbox-preview__item::before {
    content: "";
    position: absolute;
    top: 22px;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--color-brand-ocean);
}
.sell-inbox-preview__item.is-priority::before {
    background: var(--color-accent-coral);
}
.sell-inbox-preview__item > span,
.sell-inbox-preview__item > strong {
    grid-column: 1;
}
.sell-inbox-preview__item > span {
    color: var(--color-brand-powder);
    font-size: 10px;
    font-weight: var(--font-weight-bold);
    letter-spacing: .05em;
    text-transform: uppercase;
}
.sell-inbox-preview__item > strong {
    color: var(--color-surface-canvas);
    font-size: 13px;
}
.sell-inbox-preview__item > small {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    color: rgba(255, 255, 255, .58);
    font-size: 10px;
}
.sell-inbox-preview__foot {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 18px 0 0;
    color: rgba(255, 255, 255, .66);
    font-size: 11px;
    line-height: 1.5;
}
.sell-inbox-preview__foot svg {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    color: var(--color-accent-coral);
}
.sell-control-story {
    display: grid;
    grid-template-columns: minmax(260px, .65fr) minmax(0, 1.35fr);
    align-items: start;
    gap: clamp(46px, 8vw, 110px);
}
.sell-control-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px 42px;
}
.sell-control-list article {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 20px;
}
.sell-control-list svg {
    width: 30px;
    height: 30px;
    color: var(--color-brand-ocean);
    stroke-width: 1.7;
}
.sell-control-list span {
    color: var(--color-text-secondary);
    font-size: 13px;
    line-height: 1.55;
}
.sell-control-list strong {
    display: block;
    margin-bottom: 5px;
    color: var(--color-text-strong);
    font-size: 15px;
}
.sell-how {
    padding-top: 0;
}
.sell-how__intro {
    max-width: 720px;
    margin: 0 auto 52px;
    text-align: center;
}
.sell-how ol {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}
.sell-how li {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 20px;
    padding: 0 26px;
    text-align: center;
}
.sell-how li:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 25px;
    left: calc(50% + 36px);
    width: calc(100% - 72px);
    height: 1px;
    background: var(--color-border-default);
}
.sell-how li > span {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: var(--color-brand-ocean);
    color: var(--color-surface-canvas);
    font-size: 18px;
    font-weight: var(--font-weight-extrabold);
    box-shadow: 0 0 0 8px var(--color-surface-canvas);
}
.sell-how li strong {
    color: var(--color-text-strong);
    font-size: 16px;
}
.sell-how li p {
    max-width: 290px;
    margin: 7px auto 0;
    color: var(--color-text-secondary);
    font-size: 13px;
    line-height: 1.55;
}
.sell-how__cta {
    display: grid;
    justify-items: center;
    gap: 7px;
    margin-top: 62px;
    padding: 38px var(--layout-gutter);
    border-radius: 10px;
    background: var(--color-brand-deep);
    color: var(--color-surface-canvas);
    text-align: center;
}
.sell-how__cta > strong {
    font-size: clamp(1.4rem, 2.5vw, 2rem);
}
.sell-how__cta > span {
    margin-bottom: 12px;
    color: rgba(255, 255, 255, .68);
    font-size: 13px;
}
#seller-features {
    scroll-margin-top: 30px;
}

@media (max-width: 1080px) {
    .sell-hero {
        grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
        gap: 36px;
    }
    .sell-hero__visual {
        min-height: 450px;
    }
    .sell-listing-preview__media {
        height: 230px;
    }
    .sell-feature-story__layout {
        grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
        gap: 46px;
    }
    .sell-value-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .sell-value-rail > div:nth-child(2) {
        border-right: 0;
    }
    .sell-value-rail > div:nth-child(-n + 2) {
        border-bottom: 1px solid rgba(255, 255, 255, .14);
    }
}
@media (max-width: 860px) {
    .sell-hero {
        grid-template-columns: 1fr;
        min-height: 0;
        padding-top: 58px;
    }
    .sell-hero__copy {
        max-width: 720px;
    }
    .sell-hero__visual {
        min-height: 540px;
    }
    .sell-offer {
        right: auto;
        left: 4%;
    }
    .sell-listing-preview {
        right: 0;
        width: min(84%, 620px);
    }
    .sell-feature-story__layout,
    .sell-conversation-story,
    .sell-control-story {
        grid-template-columns: 1fr;
    }
    .sell-product-preview {
        width: min(100%, 680px);
        margin: 0 auto;
    }
    .sell-conversation-story {
        padding-inline: var(--layout-gutter);
    }
    .sell-control-story > div:first-child {
        max-width: 620px;
    }
}
@media (max-width: 620px) {
    .sell-hero {
        gap: 30px;
        padding: 42px 20px 54px;
    }
    .sell-hero::after {
        top: 30%;
        right: -60%;
        width: 130vw;
    }
    .sell-hero__copy h1 {
        margin-bottom: 20px;
        font-size: clamp(3.25rem, 17vw, 4.5rem);
        letter-spacing: -.06em;
    }
    .sell-hero__copy > p:not(.sell-hero__assurance) {
        margin-bottom: 24px;
        font-size: 1rem;
    }
    .sell-hero__actions {
        display: grid;
        gap: 8px;
        padding-bottom: 16px;
    }
    .sell-landing .sell-cta--primary {
        width: 100%;
        min-height: 56px;
    }
    .sell-hero__text-link {
        justify-content: center;
    }
    .sell-hero__assurance {
        align-items: flex-start;
    }
    .sell-hero__visual {
        min-height: 470px;
    }
    .sell-offer {
        left: 0;
    }
    .sell-offer strong {
        font-size: clamp(7rem, 40vw, 9.5rem);
    }
    .sell-listing-preview {
        width: 92%;
    }
    .sell-listing-preview__media {
        height: 190px;
    }
    .sell-listing-preview__body {
        display: grid;
        gap: 8px;
        padding: 14px 15px 10px;
    }
    .sell-listing-preview__actions {
        padding: 0 15px 15px;
    }
    .sell-listing-preview__actions span {
        padding-inline: 8px;
    }
    .sell-value-rail {
        grid-template-columns: 1fr;
    }
    .sell-value-rail > div {
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .14);
        padding: 22px 24px;
    }
    .sell-value-rail > div:last-child {
        border-bottom: 0;
    }
    .sell-feature-story,
    .sell-control-story,
    .sell-how,
    .sell-conversation-story {
        padding: 68px 20px;
    }
    .sell-feature-story__intro {
        margin-bottom: 38px;
    }
    .sell-feature-story__intro h2,
    .sell-conversation-story h2,
    .sell-control-story h2,
    .sell-how h2 {
        font-size: clamp(2.25rem, 12vw, 3.25rem);
    }
    .sell-feature-story__layout {
        grid-template-columns: 1fr;
        gap: 44px;
    }
    .sell-feature-list article {
        grid-template-columns: 38px minmax(0, 1fr);
        gap: 12px;
    }
    .sell-product-preview__image {
        height: 220px;
    }
    .sell-product-preview__summary {
        grid-template-columns: 1fr;
    }
    .sell-feature-list--compact,
    .sell-control-list {
        grid-template-columns: 1fr;
    }
    .sell-inbox-preview {
        padding: 20px 16px;
    }
    .sell-inbox-preview__item {
        grid-template-columns: 1fr;
        padding-right: 8px;
    }
    .sell-inbox-preview__item > small {
        grid-column: 1;
        grid-row: auto;
    }
    .sell-how ol {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .sell-how li {
        grid-template-columns: 50px minmax(0, 1fr);
        justify-items: start;
        align-items: start;
        gap: 20px;
        padding: 0;
        text-align: left;
    }
    .sell-how li:not(:last-child)::after {
        top: 50px;
        bottom: -32px;
        left: 25px;
        width: 1px;
        height: auto;
    }
    .sell-how li > div {
        padding-top: 3px;
    }
    .sell-how li p {
        margin-left: 0;
    }
    .sell-how__cta {
        margin-top: 48px;
        padding: 32px 20px;
    }
    .sell-how__cta .sell-cta {
        width: 100%;
    }
}
@media (prefers-reduced-motion: no-preference) {
    .sell-listing-preview,
    .sell-product-preview,
    .sell-inbox-preview {
        transition: transform var(--motion-duration-slow) var(--motion-ease-standard), box-shadow var(--motion-duration-slow) var(--motion-ease-standard);
    }
    .sell-listing-preview:hover,
    .sell-product-preview:hover,
    .sell-inbox-preview:hover {
        transform: translateY(-4px);
    }
}

.sell-how__actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.sell-landing .sell-cta--signin {
    border-color: rgba(255, 255, 255, .64);
    background: transparent;
    color: var(--color-surface-canvas);
    box-shadow: none;
}
.sell-landing .sell-cta--signin:hover {
    border-color: var(--color-surface-canvas);
    background: var(--color-surface-canvas);
    color: var(--color-brand-deep);
}
@media (max-width: 620px) {
    .sell-how__actions {
        display: grid;
        width: 100%;
    }
}

.sell-conversation-story__cta {
    display: flex;
    margin-top: 36px;
}
@media (max-width: 620px) {
    .sell-conversation-story__cta .sell-cta {
        width: 100%;
    }
}

/* Optional media-services bridge on the Sell page */
.sell-media-services {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(420px, .85fr);
    align-items: center;
    gap: clamp(42px, 7vw, 92px);
    width: min(calc(100% - (var(--layout-gutter) * 2)), 1300px);
    margin: 0 auto clamp(76px, 9vw, 126px);
    padding: clamp(38px, 5vw, 64px);
    border: 1px solid var(--color-border-subtle);
    border-radius: 10px;
    background: linear-gradient(120deg, var(--color-brand-ocean-soft), var(--color-surface-canvas) 72%);
}
.sell-media-services__copy {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 22px;
}
.sell-media-services__copy > svg {
    width: 44px;
    height: 44px;
    color: var(--color-brand-ocean);
    stroke-width: 1.6;
}
.sell-media-services__copy h2 {
    margin-bottom: 14px;
    color: var(--color-brand-deep);
    font-size: clamp(2rem, 3.6vw, 3.35rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.045em;
    line-height: 1.04;
}
.sell-media-services__copy p {
    max-width: 690px;
    margin-bottom: 24px;
    color: var(--color-text-secondary);
    font-size: 15px;
    line-height: 1.65;
}
.sell-media-services__options {
    display: grid;
    border-left: 1px solid var(--color-border-default);
}
.sell-media-services__options > div {
    padding: 22px 0 22px 34px;
}
.sell-media-services__options > div + div {
    border-top: 1px solid var(--color-border-default);
}
.sell-media-services__options span,
.sell-media-services__options strong,
.sell-media-services__options small {
    display: block;
}
.sell-media-services__options span {
    margin-bottom: 6px;
    color: var(--color-brand-ocean);
    font-size: 11px;
    font-weight: var(--font-weight-bold);
    letter-spacing: .08em;
    text-transform: uppercase;
}
.sell-media-services__options strong {
    margin-bottom: 5px;
    color: var(--color-text-strong);
    font-size: 17px;
}
.sell-media-services__options small {
    color: var(--color-text-secondary);
    font-size: 12px;
    line-height: 1.5;
}

/* Virtual tour and photography services */
.listing-media-services {
    overflow: hidden;
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
}
.listing-media-services h1,
.listing-media-services h2,
.listing-media-services h3,
.listing-media-services h4,
.listing-media-services p {
    margin-top: 0;
}
.listing-media-services__hero {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(520px, 1.12fr);
    align-items: center;
    gap: clamp(42px, 6vw, 92px);
    width: min(100%, 1380px);
    min-height: min(760px, calc(100vh - 92px));
    margin: 0 auto;
    padding: clamp(58px, 7vw, 96px) var(--layout-gutter) clamp(66px, 8vw, 108px);
}
.listing-media-services__hero-copy {
    min-width: 0;
}
.listing-media-services__hero h1 {
    max-width: 680px;
    margin-bottom: 28px;
    color: var(--color-brand-deep);
    font-size: clamp(3.35rem, 6.5vw, 6.2rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.065em;
    line-height: .96;
}
.listing-media-services__hero h1 span,
.listing-media-options__intro h2 span,
.listing-media-process h2 span,
.listing-media-faq h2 span,
.listing-media-final-cta h2 span {
    color: var(--color-brand-ocean);
}
.listing-media-services__hero-copy > p:not(.listing-media-services__assurance) {
    max-width: 650px;
    margin-bottom: 30px;
    color: var(--color-text-secondary);
    font-size: clamp(1.05rem, 1.5vw, 1.28rem);
    line-height: 1.65;
}
.listing-media-services__hero-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
    margin-bottom: 22px;
}
.listing-media-services .listing-media-services__primary-cta {
    min-height: 56px;
    padding-inline: 25px;
    border-color: var(--color-accent-coral);
    background: var(--color-accent-coral);
    color: var(--color-surface-canvas);
    font-size: 15px;
    font-weight: var(--font-weight-bold);
    box-shadow: 0 14px 34px rgba(231, 95, 115, .22);
}
.listing-media-services .listing-media-services__primary-cta:hover {
    border-color: var(--color-accent-coral-hover);
    background: var(--color-accent-coral-hover);
}
.listing-media-services__text-link,
.listing-media-final-cta__link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 44px;
    color: var(--color-brand-ocean);
    font-size: 15px;
    font-weight: var(--font-weight-bold);
    text-decoration: none;
}
.listing-media-services__text-link:hover,
.listing-media-final-cta__link:hover {
    color: var(--color-brand-ocean-hover);
}
.listing-media-services__text-link svg,
.listing-media-final-cta__link svg {
    width: 18px;
    height: 18px;
}
.listing-media-services__assurance {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 0;
    color: var(--color-text-secondary);
    font-size: 13px;
}
.listing-media-services__assurance svg {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    color: var(--color-success);
}
.listing-media-services__hero-media {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    border-radius: 10px;
    background: var(--color-brand-ocean-soft);
    box-shadow: 0 28px 70px rgba(7, 31, 56, .18);
}
.listing-media-services__hero-media img {
    display: block;
    width: 100%;
    min-height: 520px;
    aspect-ratio: 1.15 / 1;
    object-fit: cover;
    object-position: 53% center;
}
.listing-media-options {
    padding: clamp(78px, 9vw, 126px) max(var(--layout-gutter), calc((100vw - 1380px) / 2 + var(--layout-gutter)));
    background: linear-gradient(180deg, var(--color-brand-ocean-soft), var(--color-surface-canvas) 88%);
    scroll-margin-top: 24px;
}
.listing-media-options__intro {
    max-width: 1040px;
    margin: 0 auto clamp(40px, 5vw, 64px);
    text-align: center;
}
.listing-media-options__intro h2,
.listing-media-process h2,
.listing-media-faq h2,
.listing-media-final-cta h2 {
    margin-bottom: 16px;
    color: var(--color-brand-deep);
    font-size: clamp(2.35rem, 4.8vw, 4.35rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.055em;
    line-height: 1.02;
}
.listing-media-options__intro p {
    margin-bottom: 0;
    color: var(--color-text-secondary);
    font-size: 1.05rem;
    line-height: 1.65;
}
.listing-media-options__comparison {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid var(--color-border-default);
    border-radius: 10px;
    background: var(--color-border-default);
    margin-bottom: 20px;
}
.listing-media-option {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 690px;
    flex-direction: column;
    padding: clamp(34px, 4vw, 54px);
    background: var(--color-surface-canvas);
}
.listing-media-option--full {
    overflow: hidden;
    background: linear-gradient(145deg, var(--color-surface-canvas), var(--color-brand-ocean-soft));
}
.listing-media-option__media {
    position: absolute;
    top: 0;
    right: 0;
    width: 70%;
    height: 330px;
    overflow: hidden;
    pointer-events: none;
    -webkit-mask-image:
        linear-gradient(90deg, transparent 0, transparent 42%, #000 82%),
        linear-gradient(180deg, #000 0, #000 28%, transparent 88%);
    -webkit-mask-composite: source-in;
    mask-image:
        linear-gradient(90deg, transparent 0, transparent 42%, #000 82%),
        linear-gradient(180deg, #000 0, #000 28%, transparent 88%);
    mask-composite: intersect;
}

/* Storefront product, cart, and Stripe checkout. */
.cart-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-width: var(--size-control-md);
    min-height: var(--size-control-md);
    border-radius: var(--radius-control);
    color: var(--color-brand-navy);
    font-weight: var(--font-weight-bold);
    text-decoration: none;
}

.cart-link:hover,
.cart-link:focus-visible {
    color: var(--color-accent-coral);
}

.cart-link svg {
    width: 20px;
    height: 20px;
}

.cart-link--mobile {
    display: none;
}

.shop-card__link {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 100%;
    color: inherit;
    text-decoration: none;
}

.shop-card__link:focus-visible {
    outline: 3px solid var(--color-focus);
    outline-offset: -3px;
}

.shop-card__link .shop-card__body {
    width: 100%;
}

.shop-card__link .shop-card__action {
    display: block;
    margin-top: auto;
}

.store-not-found,
.cart-empty,
.checkout-result {
    display: grid;
    justify-items: center;
    min-height: 420px;
    align-content: center;
    gap: 14px;
    text-align: center;
}

.store-not-found > svg,
.cart-empty > span,
.checkout-result__icon {
    display: grid;
    place-items: center;
    width: 78px;
    height: 78px;
    border-radius: 50%;
    background: var(--color-brand-ocean-soft);
    color: var(--color-brand-navy);
}

.store-not-found > svg {
    padding: 20px;
}

.cart-empty svg,
.checkout-result__icon svg {
    width: 36px;
    height: 36px;
}

.store-not-found h1,
.store-not-found p,
.cart-empty h2,
.cart-empty p,
.checkout-result h1,
.checkout-result p {
    margin: 0;
}

.store-not-found h1,
.cart-empty h2,
.checkout-result h1 {
    color: var(--color-brand-navy);
}

.store-not-found p,
.cart-empty p,
.checkout-result p {
    max-width: 620px;
    color: var(--color-text-secondary);
    line-height: 1.6;
}

.checkout-result > strong {
    color: var(--color-brand-navy);
}

.checkout-result > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 10px;
}

.store-notice {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 24px;
}

.store-notice > svg {
    flex: 0 0 19px;
    width: 19px;
    height: 19px;
}

.store-notice > a {
    margin-left: auto;
    color: inherit;
    font-weight: var(--font-weight-semibold);
}

.store-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    color: var(--color-text-secondary);
    font-size: .875rem;
}

.store-breadcrumb a {
    color: var(--color-brand-ocean);
    text-decoration: none;
}

.store-breadcrumb svg {
    width: 15px;
    height: 15px;
}

.store-product {
    padding-top: 18px;
}

.product-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(400px, .94fr);
    gap: clamp(34px, 4.5vw, 68px);
    align-items: start;
}

.product-gallery__stage {
    display: grid;
    place-items: center;
    min-height: clamp(380px, 43vw, 560px);
    overflow: hidden;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background:
        radial-gradient(circle at 50% 50%, rgba(197, 221, 250, .5), rgba(246, 250, 255, 0) 38%),
        var(--color-surface-page);
}

.product-gallery__stage > img {
    width: 100%;
    height: 100%;
    max-height: 560px;
    object-fit: cover;
}

.store-product-placeholder {
    display: grid;
    place-items: center;
    width: min(270px, 55%);
    aspect-ratio: 1;
    border-radius: 50%;
    background: rgba(218, 234, 252, .65);
    color: var(--color-brand-navy);
}

.store-product-placeholder svg {
    width: 52%;
    height: 52%;
    stroke-width: 1.3;
}

.product-gallery__thumbs {
    display: flex;
    gap: 10px;
    margin-top: 12px;
    overflow-x: auto;
}

.product-gallery__thumbs button {
    flex: 0 0 76px;
    width: 76px;
    height: 66px;
    padding: 4px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    cursor: pointer;
}

.product-gallery__thumbs button.is-active {
    border-color: var(--color-brand-ocean);
    box-shadow: 0 0 0 2px rgba(23, 111, 166, .12);
}

.product-gallery__thumbs img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-purchase {
    padding-top: 2px;
}

.product-purchase h1 {
    margin: 0;
    color: var(--color-brand-navy);
    font-size: clamp(2rem, 3.4vw, 3rem);
    letter-spacing: var(--letter-spacing-display);
    line-height: 1.08;
}

.product-purchase__price {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin: 12px 0 8px;
    color: var(--color-brand-navy);
    font-size: clamp(1.5rem, 2.4vw, 2rem);
    font-variant-numeric: tabular-nums;    
}

.product-purchase__price small {
    font-weight: var(--font-weight-semibold);
    font-size: clamp(1rem, 1.3vw, 1.5rem);
}

.product-purchase__summary {
    margin: 0 0 18px;
    color: var(--color-text-secondary);
    line-height: 1.65;
}

.product-buy-form {
    display: grid;
    grid-template-columns: minmax(150px, .34fr) minmax(240px, 1fr);
    gap: 16px;
}

.product-buy-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.product-buy-actions > .btn {
    width: 100%;
    min-height: 52px;
    justify-content: center;
}

.quantity-control {
    display: grid;
    grid-template-columns: 48px minmax(48px, 1fr) 48px;
    min-height: 52px;
    overflow: hidden;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
}

.quantity-control button,
.quantity-control output,
.quantity-control input {
    display: grid;
    place-items: center;
    min-width: 0;
    min-height: 50px;
    border: 0;
    background: transparent;
    color: var(--color-brand-navy);
    font: inherit;
    font-weight: var(--font-weight-bold);
    text-align: center;
}

.quantity-control button {
    padding: 0;
    cursor: pointer;
}

.quantity-control button:hover:not(:disabled),
.quantity-control button:focus-visible {
    background: var(--color-brand-ocean-soft);
}

.quantity-control button:disabled {
    cursor: not-allowed;
    opacity: .35;
}

.quantity-control > form:first-child button {
    border-right: 1px solid var(--color-border-default);
}

.quantity-control > form:last-child button {
    border-left: 1px solid var(--color-border-default);
}

.quantity-control input {
    width: 100%;
    appearance: textfield;
}

.quantity-control input::-webkit-inner-spin-button,
.quantity-control input::-webkit-outer-spin-button {
    margin: 0;
    appearance: none;
}

.quantity-control svg {
    width: 18px;
    height: 18px;
}

.product-view-cart {
    display: inline-block;
    margin-top: 10px;
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
}

.product-list-section {
    margin-top: 14px;
    padding: 22px 24px 24px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
}

.product-section-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.product-section-heading__icon {
    display: grid;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 50%;
    background: var(--color-brand-ocean-soft);
    color: var(--color-brand-navy);
}

.product-list-section--contents .product-section-heading__icon {
    background: var(--color-accent-coral-soft);
    color: var(--color-accent-coral);
}

.product-section-heading__icon svg {
    width: 22px;
    height: 22px;
    stroke-width: 1.8;
}

.product-list-section h2,
.related-products h2 {
    margin: 0 0 10px;
    color: var(--color-brand-navy);
    font-size: 1.12rem;
}

.product-list-section h2 {
    margin-bottom: 3px;
}

.product-section-heading p {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: .875rem;
    line-height: 1.45;
}

.product-list-section ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-list-section li {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    min-height: 58px;
    padding: 12px 14px;
    border: 1px solid var(--color-border-subtle);
    border-radius: var(--radius-control);
    background: var(--color-surface-page);
    color: var(--color-text-secondary);
    line-height: 1.45;
}

.product-list-section__item-icon {
    display: grid;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 50%;
    background: var(--color-surface-canvas);
    color: var(--color-brand-navy);
}

.product-list-section--contents .product-list-section__item-icon {
    color: var(--color-accent-coral);
}

.product-list-section__item-icon svg {
    width: 17px;
    height: 17px;
    stroke-width: 2;
}

.product-payment-methods {
    margin-top: 22px;
    padding: 16px 18px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
}

.product-payment-methods h2 {
    margin: 0 0 12px;
    color: var(--color-text-secondary);
    font-size: .72rem;
    font-weight: var(--font-weight-semibold);
    letter-spacing: .16em;
    text-transform: uppercase;
}

.product-payment-methods ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.payment-mark {
    display: grid;
    place-items: center;
    width: 42px;
    height: 26px;
    overflow: hidden;
    border: 1px solid rgba(6, 48, 88, .16);
    border-radius: 4px;
    background: #fff;
    font-family: Arial, sans-serif;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: -.04em;
    line-height: .78;
}

.payment-mark--visa {
    background: #1634a5;
    color: #fff;
    font-size: .7rem;
    font-style: italic;
}

.payment-mark--mastercard span {
    position: relative;
    width: 26px;
    height: 16px;
}

.payment-mark--mastercard span::before,
.payment-mark--mastercard span::after {
    position: absolute;
    top: 0;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    content: "";
}

.payment-mark--mastercard span::before {
    left: 0;
    background: #e31b23;
}

.payment-mark--mastercard span::after {
    right: 0;
    background: rgba(246, 158, 0, .9);
}

.payment-mark--amex {
    background: #1976a9;
    color: #fff;
    font-size: .64rem;
}

.payment-mark--discover {
    border-bottom: 4px solid #f58220;
    color: #172536;
    font-size: .5rem;
}

.payment-mark--jcb {
    background: #0878be;
    color: #fff;
    font-size: .75rem;
}

.payment-mark--diners {
    border: 2px solid #1b75bb;
    color: #1b75bb;
    font-size: .9rem;
}

.product-payment-methods + .product-delivery {
    margin-top: 12px;
}

.product-delivery {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 22px;
    padding: 16px 18px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
}

.product-delivery > svg {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    color: var(--color-brand-navy);
    stroke-width: 1.45;
}

.product-delivery span,
.product-delivery strong,
.product-delivery small {
    display: block;
}

.product-delivery strong {
    color: var(--color-brand-navy);
}

.product-delivery small {
    margin-top: 4px;
    color: var(--color-text-secondary);
    line-height: 1.45;
}

.product-details {
    margin-top: 28px;
    padding: 22px 24px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
}

.product-details h2 {
    margin: 0 0 3px;
    color: var(--color-brand-navy);
    font-size: 1.15rem;
}

.product-details__body {
    color: var(--color-text-secondary);
    line-height: 1.7;
}

.related-products {
    margin-top: 14px;
    padding: 22px 24px 24px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
}

.related-products__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--layout-grid-gap);
}

.related-product {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 18px;
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--color-brand-ocean);
    border-radius: var(--radius-control);
    background: var(--color-surface-page);
    transition: border-color var(--motion-duration-fast) var(--motion-ease-standard), box-shadow var(--motion-duration-base) var(--motion-ease-standard);
}

.related-product:only-child {
    grid-column: 1 / -1;
}

.related-product:hover {
    border-color: var(--color-brand-ocean);
    box-shadow: var(--shadow-card);
}

.related-product__main {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}

.related-product__media,
.checkout-summary__media {
    display: grid;
    place-items: center;
    flex: 0 0 62px;
    width: 62px;
    height: 62px;
    overflow: hidden;
    border-radius: 50%;
    background: var(--color-brand-ocean-soft);
    color: var(--color-brand-navy);
}

.related-product__media {
    flex-basis: 88px;
    width: 88px;
    height: 88px;
    border: 1px solid var(--color-border-subtle);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
}

.related-product__media img,
.checkout-summary__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.related-product__media img {
    object-fit: contain;
}

.related-product__media svg,
.checkout-summary__media svg {
    width: 30px;
    height: 30px;
}

.related-product__body,
.related-product__main strong {
    display: block;
    min-width: 0;
}

.related-product__main strong {
    color: var(--color-brand-navy);
    font-size: 1.05rem;
    line-height: 1.35;
}

.related-product__brief {
    display: -webkit-box;
    margin-top: 5px;
    overflow: hidden;
    color: var(--color-text-secondary);
    font-size: .875rem;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.related-product__purchase {
    display: grid;
    align-content: start;
    justify-items: start;
    gap: 16px;
    min-width: 142px;
}

.related-product__price {
    color: var(--color-brand-navy);
    font-weight: var(--font-weight-bold);
    line-height: 1.35;
    white-space: nowrap;
}

.related-product form .btn {
    min-width: 142px;
    min-height: 44px;
    justify-content: center;
}

.cart-intro {
    margin-bottom: 30px;
}

.cart-intro h1,
.checkout-intro h1 {
    margin: 0;
    color: var(--color-brand-navy);
    font-size: clamp(2.2rem, 4vw, 3.4rem);
    letter-spacing: var(--letter-spacing-display);
    line-height: 1.08;
}

.cart-intro p,
.checkout-intro p {
    margin: 10px 0 0;
    color: var(--color-text-secondary);
    font-size: 1.05rem;
}

.cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.9fr) minmax(330px, .82fr);
    gap: clamp(32px, 4vw, 58px);
    align-items: start;
}

.cart-items {
    min-width: 0;
}

.cart-item {
    display: grid;
    grid-template-columns: 120px minmax(180px, 1fr) 142px 100px;
    gap: 30px;
    align-items: center;
    min-height: 150px;
    padding: 18px 0;
    border-bottom: 1px solid var(--color-border-default);
}

.cart-item:first-child {
    padding-top: 0;
}

.cart-item__media {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-page);
    color: var(--color-brand-navy);
}

.cart-item__media svg {
    width: 54px;
    height: 54px;
    stroke-width: 1.35;
}

.cart-item__product h2 {
    margin: 0 0 6px;
    font-size: 1.5rem;
}

.cart-item__product h2 a {
    color: var(--color-brand-navy);
    text-decoration: none;
}

.cart-item__category {
    display: block;
    margin-bottom: 5px;
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.2;
    text-decoration: none;
    color: var(--color-text-secondary);
}

.cart-item__brief {
    display: -webkit-box;
    margin: 0 0 9px;
    overflow: hidden;
    color: var(--color-text-secondary);
    font-size: .83rem;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.cart-item__product > strong,
.cart-item__product > strong small,
.cart-item__subtotal strong,
.cart-item__subtotal strong small {
    color: var(--color-brand-navy);
}

.cart-item__subtotal strong {
    font-size: 1.15rem;
}


.cart-item__product small,
.cart-item__subtotal small {
    font-size: .67em;
}

.cart-item__quantity > form {
    text-align:center;
}

.cart-item__quantity > span,
.cart-item__subtotal > span {
    display: block;
    margin-bottom: 5px;
    color: var(--color-text-secondary);
    font-size: .84rem;
}

.cart-item__quantity .quantity-control {
    grid-template-columns: 44px 48px 44px;
    width: max-content;
    min-height: 46px;
}

.cart-item__quantity .quantity-control form {
    display: contents;
}

.cart-item__quantity .quantity-control button,
.cart-item__quantity .quantity-control output {
    width: 44px;
    min-height: 44px;
}

.cart-item__quantity .quantity-control output {
    width: 48px;
}

.cart-item__remove button {
    border: 0;
    background: transparent;
    color: var(--color-accent-coral);
    font: inherit;
    font-size: .75rem;
    cursor: pointer;
}

.cart-item__remove button:hover,
.cart-item__remove button:focus-visible {
    text-decoration: underline;
}

.cart-continue {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 22px;
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
}

.cart-continue svg {
    width: 18px;
    height: 18px;
}

.cart-summary,
.checkout-summary,
.checkout-panel {
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
}

.cart-summary {
    position: sticky;
    top: 116px;
    padding: 30px;
}

.cart-summary h2 {
    margin: 0 0 10px;
    color: var(--color-brand-navy);
    font-size: 1.55rem;
}

.cart-summary dl,
.checkout-summary dl {
    margin: 0;
}

.cart-summary dl > div,
.checkout-summary dl > div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    padding: 17px 0;
    border-bottom: 1px solid var(--color-border-default);
}

.cart-summary dt,
.cart-summary dd,
.checkout-summary dt,
.checkout-summary dd {
    margin: 0;
}

.cart-summary dd,
.checkout-summary dd {
    color: var(--color-brand-navy);
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.cart-summary__total,
.checkout-summary__total {
    border-bottom: 0 !important;
    color: var(--color-brand-navy);
    font-size: 1.15rem;
    font-weight: var(--font-weight-bold);
}

.cart-summary__total dd,
.checkout-summary__total dd {
    font-size: 1.45rem;
}

.cart-summary small,
.checkout-summary small {
    font-size: .68em;
}

.cart-summary > .btn,
.checkout-summary > .btn {
    width: 100%;
    min-height: 52px;
    justify-content: center;
}

.cart-summary > p {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 20px 0 0;
    color: var(--color-text-secondary);
    font-size: .8rem;
}

.cart-summary > p svg {
    width: 17px;
    height: 17px;
    color: var(--color-brand-navy);
}

.cart-help {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 88px;
    margin-top: 40px;
    padding: 16px 24px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: linear-gradient(90deg, var(--color-brand-ocean-soft), var(--color-surface-canvas) 55%);
}

.cart-help > span,
.cart-help > a {
    display: flex;
    align-items: center;
    gap: 14px;
}

.cart-help > span > svg {
    width: 42px;
    height: 42px;
    padding: 9px;
    border-radius: 50%;
    background: rgba(187, 216, 251, .65);
    color: var(--color-brand-navy);
}

.cart-help > a {
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
}

.cart-help > a svg {
    width: 18px;
    height: 18px;
}

.store-checkout {
    padding-top: 20px;
}

.checkout-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
}

.checkout-back svg {
    width: 17px;
    height: 17px;
}

.checkout-intro {
    margin-bottom: 10px;
}

.checkout-intro h1 {
    font-size: clamp(2rem, 3.4vw, 2.85rem);
}

.checkout-intro p {
    font-size: .975rem;
}

.checkout-error-list {
    display: grid;
    gap: 8px;
    margin: 20px 0;
}

.checkout-error-list .notice {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.checkout-error-list .notice > svg {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
}

.checkout-error-list a {
    flex: 1 1 auto;
    color: inherit;
}

.checkout-error-list button {
    display: grid;
    place-items: center;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.checkout-error-list button svg {
    width: 16px;
    height: 16px;
}

.checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(360px, .82fr);
    gap: clamp(34px, 4vw, 54px);
    align-items: start;
}

.checkout-fields {
    display: grid;
    gap: 18px;
}

.checkout-panel {
    padding: 24px;
}

.checkout-panel h2 {
    margin: 0 0 16px;
    color: var(--color-brand-navy);
    font-size: 1.18rem;
}

.checkout-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 20px;
}

.checkout-field--full {
    grid-column: 1 / -1;
}

.checkout-panel .field > span:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.checkout-panel .field-required,
.checkout-panel .field-optional {
    font-size: .625rem;
    font-style: normal;
    font-weight: var(--font-weight-bold);
    letter-spacing: .045em;
    text-transform: uppercase;
}

.checkout-panel .field-required {
    color: var(--color-danger);
}

.checkout-panel .field-optional {
    color: var(--color-text-secondary);
}

.checkout-panel input,
.checkout-panel select {
    width: 100%;
}

.checkout-panel [aria-invalid="true"],
.checkout-terms input[aria-invalid="true"] {
    border-color: var(--color-danger);
    outline: 2px solid color-mix(in srgb, var(--color-danger) 14%, transparent);
}

.checkout-digital {
    display: flex;
    align-items: center;
    gap: 18px;
    background: var(--color-brand-ocean-soft);
}

.checkout-digital > svg {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    color: var(--color-brand-navy);
}

.checkout-digital h2,
.checkout-digital p {
    margin: 0;
}

.checkout-digital p {
    margin-top: 4px;
    color: var(--color-text-secondary);
}

.checkout-terms {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: var(--color-text-primary);
    line-height: 1.5;
}

.checkout-terms input {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin: 1px 0 0;
}

.checkout-terms a {
    color: var(--color-brand-ocean);
}

.checkout-terms em {
    color: var(--color-danger);
    font-size: .7rem;
    font-style: normal;
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
}

.checkout-summary {
    position: sticky;
    top: 116px;
    padding: 22px;
}

.checkout-summary__items {
    display: grid;
}

.checkout-summary__item {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 10px 0 18px;
    border-bottom: 1px solid var(--color-border-default);
}

.checkout-summary__item + .checkout-summary__item {
    padding-top: 18px;
}

.checkout-summary__media {
    width: 54px;
    height: 54px;
}

.checkout-summary__media svg {
    width: 27px;
    height: 27px;
}

.checkout-summary__item > span:nth-child(2),
.checkout-summary__item > span:nth-child(2) strong,
.checkout-summary__item > span:nth-child(2) small {
    display: block;
    min-width: 0;
}

.checkout-summary__item > span:nth-child(2) strong {
    overflow: hidden;
    color: var(--color-brand-navy);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.checkout-summary__item > span:nth-child(2) small {
    margin-top: 4px;
    color: var(--color-text-secondary);
}

.checkout-summary__item > strong {
    color: var(--color-brand-navy);
    text-align: right;
    white-space: nowrap;
}

.checkout-stripe-note {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 18px;
    padding: 16px;
    border-radius: var(--radius-panel);
    background: var(--color-brand-ocean-soft);
}

.checkout-stripe-note > svg {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    padding: 8px;
    border: 1px solid rgba(23, 111, 166, .25);
    border-radius: 50%;
    color: var(--color-brand-navy);
}

.checkout-stripe-note span,
.checkout-stripe-note strong,
.checkout-stripe-note small {
    display: block;
}

.checkout-stripe-note strong {
    color: var(--color-brand-navy);
}

.checkout-stripe-note small {
    margin-top: 4px;
    color: var(--color-text-secondary);
    line-height: 1.45;
}

@media (max-width: 1160px) {
    .cart-item {
        grid-template-columns: 130px minmax(160px, 1fr) 132px 100px;
        gap: 20px;
    }

}

@media (max-width: 980px) {
    .product-layout,
    .cart-layout,
    .checkout-layout {
        grid-template-columns: 1fr;
    }

    .product-purchase {
        padding-top: 0;
    }

    .related-products__grid {
        grid-template-columns: 1fr;
    }

    .cart-summary,
    .checkout-summary {
        position: static;
    }

    .cart-item {
        grid-template-columns: 100px minmax(180px, 1fr) 142px 100px;
        gap: 15px;
    }

    .checkout-summary {
        grid-row: 1;
    }
}

@media (max-width: 860px) {
    .site-header > .cart-link--mobile {
        display: inline-flex;
        flex: 0 0 auto;
        background: var(--color-surface-canvas);
    }

    .header-actions .cart-link--desktop {
        display: none;
    }
}

@media (max-width: 760px) {
    .store-product {
        padding-top: 12px;
    }

    .product-layout {
        gap: 28px;
    }

    .product-gallery__stage {
        min-height: 330px;
    }

    .product-buy-form,
    .product-list-section ul,
    .checkout-field-grid {
        grid-template-columns: 1fr;
    }

    .checkout-field--full {
        grid-column: auto;
    }

    .cart-item {
        grid-template-columns: 110px minmax(0, 1fr);
        align-items: start;
    }

    .cart-item__quantity,
    .cart-item__subtotal,
    .cart-item__remove {
        grid-column: 2;
    }

    .cart-item__quantity,
    .cart-item__subtotal {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
    }

    .cart-item__quantity > span,
    .cart-item__subtotal > span {
        margin: 0;
    }

    .cart-item__remove {
        justify-self: start;
    }
}

@media (max-width: 520px) {
    .site-header {
        gap: 6px;
        padding: 12px;
    }

    .site-header .brand__logo {
        max-width: 126px;
        height: 40px;
    }

    .site-header > .cart-link--mobile,
    .site-header > .saved-link--mobile {
        min-width: 44px;
        min-height: 44px;
    }

    .site-header .nav-toggle {
        min-height: 44px;
        padding-inline: 10px;
    }

    .product-gallery__stage {
        min-height: 280px;
    }

    .product-buy-form {
        gap: 10px;
    }

    .product-details,
    .product-list-section,
    .related-products {
        padding: 18px;
    }

    .product-section-heading {
        align-items: flex-start;
    }

    .related-product {
        grid-template-columns: 1fr;
    }

    .related-product__purchase,
    .related-product__purchase form,
    .related-product form .btn {
        width: 100%;
    }

    .cart-summary,
    .checkout-panel,
    .checkout-summary {
        padding: 18px;
    }

    .related-product {
        padding: 14px;
    }

    .cart-item {
        grid-template-columns: 86px minmax(0, 1fr);
        gap: 12px;
    }

    .cart-item__quantity {
        align-items: flex-start;
        flex-direction: column;
    }

    .cart-help {
        align-items: flex-start;
        flex-direction: column;
    }

    .checkout-summary__item {
        grid-template-columns: 46px minmax(0, 1fr);
    }

    .checkout-summary__media {
        width: 46px;
        height: 46px;
    }

    .checkout-summary__item > strong {
        grid-column: 2;
        justify-self: start;
        text-align: left;
    }
}
.listing-media-option__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.listing-media-option__label {
    position: relative;
    z-index: 1;
    margin-bottom: 12px;
    color: var(--color-brand-ocean);
    font-size: 12px;
    font-weight: var(--font-weight-bold);
    letter-spacing: .08em;
    text-transform: uppercase;
}
.listing-media-option h3 {
    position: relative;
    z-index: 1;
    max-width: 76%;
    margin-bottom: 16px;
    color: var(--color-brand-deep);
    font-size: clamp(2rem, 3.4vw, 3.3rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.045em;
    line-height: 1.04;
}
.listing-media-option__price {
    position: relative;
    z-index: 1;
    display: grid;
    justify-items: start;
    margin-bottom: 20px;
}
.listing-media-option__price strong {
    color: var(--color-brand-ocean);
    font-size: clamp(3.65rem, 6vw, 5.4rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.065em;
    line-height: .95;
}
.listing-media-option__price strong span {
    display: inline-block;
    margin-right: 2px;
    font-size: .66em;
    transform: translateY(-.04em);
}
.listing-media-option__price small {
    margin-top: 7px;
    color: var(--color-text-secondary);
    font-size: 13px;
}
.listing-media-option__price--quote strong {
    color: var(--color-accent-coral);
    font-size: clamp(2.25rem, 4vw, 3.8rem);
}
.listing-media-option__description {
    position: relative;
    z-index: 1;
    max-width: 580px;
    margin-bottom: 28px;
    color: var(--color-text-primary);
    font-size: 15px;
    line-height: 1.65;
}
.listing-media-option h4 {
    margin: 0 0 4px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--color-border-default);
    color: var(--color-text-strong);
    font-size: 14px;
}
.listing-media-option__inventory,
.listing-media-option__inclusions {
    margin: 0 0 18px;
    padding: 0;
    list-style: none;
}
.listing-media-option__inventory li,
.listing-media-option__inclusions li {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    min-height: 54px;
    border-bottom: 1px solid var(--color-border-default);
    color: var(--color-text-primary);
    font-size: 14px;
    line-height: 1.45;
}
.listing-media-option__inventory svg,
.listing-media-option__inclusions svg {
    width: 24px;
    height: 24px;
    color: var(--color-brand-ocean);
    stroke-width: 1.8;
}
.listing-media-option__inventory strong {
    color: var(--color-text-strong);
}
.listing-media-option__process,
.listing-media-option__note {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    align-items: start;
    gap: 10px;
    margin-bottom: 14px;
    color: var(--color-text-secondary);
    font-size: 12px;
    line-height: 1.55;
}
.listing-media-option__process svg,
.listing-media-option__note svg {
    width: 19px;
    height: 19px;
    color: var(--color-brand-ocean);
}
.listing-media-option__note {
    margin-top: auto;
}
.listing-media-option .listing-media-option__cta {
    align-self: flex-start;
    min-height: 54px;
    margin-top: 6px;
    padding-inline: 23px;
    border-color: var(--color-brand-ocean);
    background: var(--color-brand-ocean);
    color: var(--color-surface-canvas);
    font-size: 14px;
    font-weight: var(--font-weight-bold);
    box-shadow: 0 12px 28px rgba(31, 126, 177, .18);
}
.listing-media-option--full .listing-media-option__cta {
    border-color: var(--color-accent-coral);
    background: var(--color-accent-coral);
    box-shadow: 0 12px 28px rgba(231, 95, 115, .2);
}
.listing-media-option .listing-media-option__cta:hover {
    border-color: var(--color-brand-ocean-hover);
    background: var(--color-brand-ocean-hover);
}
.listing-media-option--full .listing-media-option__cta:hover {
    border-color: var(--color-accent-coral-hover);
    background: var(--color-accent-coral-hover);
}
.listing-media-options__help {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 26px 0 0;
    color: var(--color-text-strong);
    font-size: 15px;
    font-weight: var(--font-weight-bold);
}
.listing-media-options__help svg {
    width: 23px;
    height: 23px;
    color: var(--color-brand-ocean);
}
.listing-media-options__help a {
    color: var(--color-brand-ocean);
}
.listing-media-process {
    padding: clamp(78px, 9vw, 126px) max(var(--layout-gutter), calc((100vw - 1380px) / 2 + var(--layout-gutter)));
    background: var(--color-brand-deep);
    color: var(--color-surface-canvas);
}
.listing-media-process__inner {
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(520px, 1.22fr);
    align-items: center;
    gap: clamp(54px, 8vw, 118px);
}
.listing-media-process h2 {
    color: var(--color-surface-canvas);
}
.listing-media-process__copy > p {
    max-width: 650px;
    margin-bottom: 38px;
    color: rgba(255, 255, 255, .68);
    font-size: 1rem;
    line-height: 1.65;
}
.listing-media-process ol {
    margin: 0;
    padding: 0;
    list-style: none;
}
.listing-media-process li {
    position: relative;
    display: grid;
    grid-template-columns: 36px 42px minmax(0, 1fr);
    gap: 14px;
    padding: 0 0 28px;
}
.listing-media-process li:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 34px;
    bottom: 0;
    left: 17px;
    width: 1px;
    background: rgba(255, 255, 255, .22);
}
.listing-media-process li > span {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--color-brand-ocean);
    color: var(--color-surface-canvas);
    font-size: 13px;
    font-weight: var(--font-weight-extrabold);
}
.listing-media-process li > svg {
    width: 30px;
    height: 30px;
    color: var(--color-brand-powder);
    stroke-width: 1.6;
}
.listing-media-process li h3 {
    margin-bottom: 5px;
    color: var(--color-surface-canvas);
    font-size: 17px;
}
.listing-media-process li p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, .64);
    font-size: 13px;
    line-height: 1.55;
}
.listing-media-tour-preview {
    position: relative;
    min-width: 0;
    margin-bottom: 26px;
    overflow: hidden;
    border: 6px solid #101923;
    border-radius: 16px;
    background: #101923;
    box-shadow: 0 32px 80px rgba(0, 0, 0, .34);
}
.listing-media-tour-preview::after {
    content: "";
    position: absolute;
    right: 18%;
    bottom: -24px;
    left: 18%;
    height: 24px;
    border-radius: 0 0 50% 50%;
    background: #263442;
}
.listing-media-tour-preview__bar {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 50px;
    padding: 8px 14px;
    background: var(--color-surface-canvas);
    color: var(--color-text-strong);
}
.listing-media-tour-preview__bar img {
    width: 70px;
    height: 30px;
    object-fit: contain;
}
.listing-media-tour-preview__bar strong {
    overflow: hidden;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.listing-media-tour-preview__bar span {
    margin-left: auto;
    color: var(--color-brand-ocean);
    font-size: 12px;
    font-weight: var(--font-weight-bold);
}
.listing-media-tour-preview__body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 360px;
}
.listing-media-tour-preview__image {
    position: relative;
    min-width: 0;
    overflow: hidden;
    background: var(--color-brand-deep);
}
.listing-media-tour-preview__image > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.listing-media-tour-preview__image > span {
    position: absolute;
    top: 50%;
    left: 50%;
    display: grid;
    place-items: center;
    width: 94px;
    height: 94px;
    border: 2px solid rgba(255, 255, 255, .9);
    border-radius: 50%;
    background: rgba(7, 31, 56, .54);
    color: var(--color-surface-canvas);
    font-size: 15px;
    font-weight: var(--font-weight-extrabold);
    transform: translate(-50%, -50%);
    backdrop-filter: blur(7px);
}
.listing-media-tour-preview__image > span svg {
    width: 31px;
    height: 31px;
}
.listing-media-tour-preview__rail {
    display: grid;
    gap: 7px;
    width: 88px;
    padding: 8px;
    background: #172638;
}
.listing-media-tour-preview__rail img {
    width: 100%;
    min-height: 0;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 5px;
    object-fit: cover;
}
.listing-media-tour-preview__toolbar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 26px;
    min-height: 42px;
    color: rgba(255, 255, 255, .82);
}
.listing-media-tour-preview__toolbar svg {
    width: 17px;
    height: 17px;
}
.listing-media-process__delivery {
    display: flex;
    align-items: center;
    gap: 11px;
    max-width: 1380px;
    margin: 46px auto 0;
    color: rgba(255, 255, 255, .82);
    font-size: 14px;
}
.listing-media-process__delivery svg {
    flex: 0 0 auto;
    width: 24px;
    height: 24px;
    color: var(--color-accent-coral);
}
.listing-media-faq {
    padding: clamp(78px, 9vw, 126px) max(var(--layout-gutter), calc((100vw - 1380px) / 2 + var(--layout-gutter)));
    background: var(--color-surface-canvas);
}
.listing-media-faq__inner {
    position: relative;
    min-height: 580px;
}
.listing-media-faq__inner::after {
    content: "?";
    position: absolute;
    top: -70px;
    right: 5%;
    z-index: 0;
    color: var(--color-brand-ocean-soft);
    font-size: clamp(18rem, 36vw, 34rem);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.08em;
    line-height: 1;
    pointer-events: none;
}
.listing-media-faq h2 {
    position: relative;
    z-index: 1;
    max-width: 650px;
    margin-bottom: 34px;
}
.listing-media-faq__list {
    position: relative;
    z-index: 1;
    max-width: 760px;
    counter-reset: service-faq;
}
.listing-media-faq details {
    border-bottom: 1px solid var(--color-border-default);
    counter-increment: service-faq;
}
.listing-media-faq summary {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 24px;
    align-items: center;
    gap: 16px;
    min-height: 74px;
    color: var(--color-text-strong);
    font-size: 17px;
    font-weight: var(--font-weight-bold);
    list-style: none;
    cursor: pointer;
}
.listing-media-faq summary::-webkit-details-marker {
    display: none;
}
.listing-media-faq summary::before {
    content: counter(service-faq);
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--color-brand-ocean);
    color: var(--color-surface-canvas);
    font-size: 13px;
}
.listing-media-faq summary::after {
    content: "+";
    color: var(--color-brand-ocean);
    font-size: 29px;
    font-weight: var(--font-weight-regular);
    line-height: 1;
}
.listing-media-faq details[open] summary::after {
    content: "−";
}
.listing-media-faq summary:focus-visible {
    outline: 2px solid var(--color-brand-ocean);
    outline-offset: 4px;
}
.listing-media-faq details p {
    margin: 0 0 16px 52px;
    padding: 18px 20px;
    border-radius: 7px;
    background: var(--color-brand-ocean-soft);
    color: var(--color-text-secondary);
    font-size: 14px;
    line-height: 1.65;
}
.listing-media-final-cta {
    padding: clamp(62px, 7vw, 94px) max(var(--layout-gutter), calc((100vw - 1380px) / 2 + var(--layout-gutter)));
    background: var(--color-brand-deep);
    color: var(--color-surface-canvas);
}
.listing-media-final-cta > div {
    max-width: 1080px;
}
.listing-media-final-cta h2 {
    color: var(--color-surface-canvas);
}
.listing-media-final-cta > div > p {
    margin-bottom: 28px;
    color: rgba(255, 255, 255, .7);
    font-size: 1.05rem;
    line-height: 1.65;
}
.listing-media-final-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 24px;
    margin-bottom: 24px;
}
.listing-media-final-cta__link {
    color: var(--color-brand-powder);
}
.listing-media-final-cta__link:hover {
    color: var(--color-surface-canvas);
}
.listing-media-final-cta small {
    display: flex;
    align-items: center;
    gap: 9px;
    color: rgba(255, 255, 255, .7);
    font-size: 12px;
}
.listing-media-final-cta small svg {
    width: 18px;
    height: 18px;
    color: var(--color-brand-ocean);
}

@media (min-width: 861px) and (max-width: 1300px) {
    .listing-media-services__hero {
        min-height: calc(100vh - 102px);
        padding-top: 38px;
        padding-bottom: 40px;
    }
    .listing-media-services__hero h1 {
        margin-bottom: 20px;
        font-size: clamp(3.35rem, 5.25vw, 4.35rem);
    }
    .listing-media-services__hero-copy > p:not(.listing-media-services__assurance) {
        margin-bottom: 22px;
        font-size: 1rem;
    }
    .listing-media-services__hero-actions {
        margin-bottom: 16px;
    }
    .listing-media-services__hero-media img {
        min-height: 450px;
    }
}

@media (max-width: 1080px) {
    .sell-media-services {
        grid-template-columns: 1fr;
    }
    .sell-media-services__options {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        border-top: 1px solid var(--color-border-default);
        border-left: 0;
    }
    .sell-media-services__options > div {
        padding: 24px 26px 0 0;
    }
    .sell-media-services__options > div + div {
        padding-left: 26px;
        border-top: 0;
        border-left: 1px solid var(--color-border-default);
    }
    .listing-media-services__hero {
        grid-template-columns: minmax(0, .9fr) minmax(440px, 1.1fr);
        gap: 38px;
    }
    .listing-media-services__hero-media img {
        min-height: 460px;
    }
    .listing-media-process__inner {
        grid-template-columns: minmax(0, .85fr) minmax(450px, 1.15fr);
        gap: 46px;
    }
    .listing-media-tour-preview__body {
        min-height: 310px;
    }
}

@media (max-width: 860px) {
    .listing-media-services__hero,
    .listing-media-process__inner {
        grid-template-columns: 1fr;
    }
    .listing-media-services__hero {
        min-height: 0;
        padding-top: 58px;
    }
    .listing-media-services__hero-copy {
        max-width: 760px;
    }
    .listing-media-services__hero-media {
        width: min(100%, 760px);
        margin: 0 auto;
    }
    .listing-media-options__comparison {
        grid-template-columns: 1fr;
    }
    .listing-media-option {
        min-height: 0;
    }
    .listing-media-process__copy {
        max-width: 720px;
    }
    .listing-media-tour-preview {
        width: min(100%, 760px);
        margin-inline: auto;
    }
}

@media (max-width: 620px) {
    .sell-media-services {
        width: calc(100% - 40px);
        margin-bottom: 68px;
        padding: 30px 24px;
    }
    .sell-media-services__copy {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    .sell-media-services__copy h2 {
        font-size: clamp(2.2rem, 11vw, 3rem);
    }
    .sell-media-services__copy .sell-cta {
        width: 100%;
    }
    .sell-media-services__options {
        grid-template-columns: 1fr;
    }
    .sell-media-services__options > div,
    .sell-media-services__options > div + div {
        padding: 21px 0;
        border-left: 0;
    }
    .sell-media-services__options > div + div {
        border-top: 1px solid var(--color-border-default);
    }
    .listing-media-services__hero {
        gap: 34px;
        padding: 42px 20px 58px;
    }
    .listing-media-services__hero h1 {
        margin-bottom: 21px;
        font-size: clamp(3.15rem, 16vw, 4.45rem);
    }
    .listing-media-services__hero-copy > p:not(.listing-media-services__assurance) {
        margin-bottom: 24px;
        font-size: 1rem;
    }
    .listing-media-services__hero-actions {
        display: grid;
        gap: 9px;
    }
    .listing-media-services .listing-media-services__primary-cta {
        width: 100%;
    }
    .listing-media-services__text-link {
        justify-content: center;
    }
    .listing-media-services__assurance {
        align-items: flex-start;
    }
    .listing-media-services__hero-media img {
        min-height: 360px;
        aspect-ratio: .94 / 1;
        object-position: 50% center;
    }
    .listing-media-options,
    .listing-media-process,
    .listing-media-faq,
    .listing-media-final-cta {
        padding: 68px 20px;
    }
    .listing-media-options__intro {
        margin-bottom: 36px;
        text-align: left;
    }
    .listing-media-options__intro h2,
    .listing-media-process h2,
    .listing-media-faq h2,
    .listing-media-final-cta h2 {
        font-size: clamp(2.35rem, 12vw, 3.35rem);
    }
    .listing-media-option {
        padding: 30px 24px;
    }
    .listing-media-option__media {
        position: relative;
        width: calc(100% + 48px);
        height: 185px;
        margin: -30px -24px 28px;
        mask-image: none;
    }
    .listing-media-option h3 {
        max-width: none;
        font-size: 2.25rem;
    }
    .listing-media-option__price strong {
        font-size: 4rem;
    }
    .listing-media-option__price--quote strong {
        font-size: 2.55rem;
    }
    .listing-media-option .listing-media-option__cta {
        width: 100%;
    }
    .listing-media-options__help {
        align-items: flex-start;
        text-align: left;
    }
    .listing-media-process li {
        grid-template-columns: 34px minmax(0, 1fr);
    }
    .listing-media-process li > svg {
        display: none;
    }
    .listing-media-tour-preview {
        border-width: 4px;
        border-radius: 12px;
    }
    .listing-media-tour-preview__bar {
        min-height: 44px;
        gap: 8px;
        padding: 7px 9px;
    }
    .listing-media-tour-preview__bar img {
        width: 54px;
    }
    .listing-media-tour-preview__bar strong {
        font-size: 10px;
    }
    .listing-media-tour-preview__body {
        grid-template-columns: 1fr;
        min-height: 260px;
    }
    .listing-media-tour-preview__rail {
        display: none;
    }
    .listing-media-tour-preview__image > span {
        width: 78px;
        height: 78px;
    }
    .listing-media-process__delivery {
        align-items: flex-start;
        margin-top: 36px;
    }
    .listing-media-faq__inner {
        min-height: 0;
    }
    .listing-media-faq__inner::after {
        display: none;
    }
    .listing-media-faq summary {
        grid-template-columns: 32px minmax(0, 1fr) 20px;
        gap: 11px;
        min-height: 68px;
        font-size: 15px;
    }
    .listing-media-faq summary::before {
        width: 30px;
        height: 30px;
    }
    .listing-media-faq details p {
        margin-left: 0;
    }
    .listing-media-final-cta__actions {
        display: grid;
        gap: 12px;
    }
    .listing-media-final-cta__link {
        justify-content: center;
    }
}

/*
 * Portable UX component layer
 * Configuration: config/ui-design-legend.json
 * Optional project override: config/ux.project.json
 *
 * The `ux-*` primitives are intentionally content- and framework-independent.
 * Project components may compose these classes or consume the same tokens.
 */

.sr-only,
.ux-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.ux-stack {
    display: grid;
    gap: var(--space-4);
}

.ux-stack--sm {
    gap: var(--space-2);
}

.ux-stack--lg {
    gap: var(--space-6);
}

.ux-cluster {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3);
}

.ux-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
    gap: var(--layout-grid-gap);
}

.ux-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    min-width: var(--size-control-md);
    min-height: var(--size-control-md);
    padding: 0 var(--space-4);
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
    font: var(--font-weight-bold) var(--font-size-body-sm) / var(--line-height-compact) var(--font-family-sans);
    text-decoration: none;
    box-shadow: var(--shadow-xs);
    transition:
        transform var(--motion-duration-base) var(--motion-ease-standard),
        box-shadow var(--motion-duration-base) var(--motion-ease-standard),
        border-color var(--motion-duration-fast) var(--motion-ease-standard),
        background-color var(--motion-duration-fast) var(--motion-ease-standard),
        color var(--motion-duration-fast) var(--motion-ease-standard);
}

.ux-button:hover,
.ux-button.is-hovered {
    border-color: var(--color-border-strong);
    transform: translateY(var(--motion-lift));
    box-shadow: var(--shadow-card);
}

.ux-button:active,
.ux-button.is-active {
    transform: translateY(0);
    box-shadow: var(--shadow-xs);
}

.ux-button.is-focused {
    outline: 2px solid var(--color-focus);
    outline-offset: 2px;
    box-shadow: var(--shadow-focus);
}

.ux-button--primary {
    border-color: var(--color-brand-ocean);
    background: var(--color-brand-ocean);
    color: var(--color-text-inverse);
}

.ux-button--primary:hover,
.ux-button--primary.is-hovered {
    border-color: var(--color-brand-ocean-hover);
    background: var(--color-brand-ocean-hover);
}

.ux-button--quiet {
    border-color: transparent;
    background: transparent;
    color: var(--color-text-link);
    box-shadow: none;
}

.ux-button--coral {
    border-color: var(--color-accent-coral);
    background: var(--color-accent-coral);
    color: var(--color-text-inverse);
}

.ux-button--danger {
    border-color: var(--color-danger);
    background: var(--color-surface-canvas);
    color: var(--color-danger);
}

.ux-button--large {
    min-height: var(--size-control-lg);
    padding-inline: var(--space-5);
}

.ux-button--icon {
    width: var(--size-control-md);
    padding: 0;
}

.ux-button svg {
    width: var(--size-icon-md);
    height: var(--size-icon-md);
}

.ux-button[disabled],
.ux-button[aria-disabled="true"],
.ux-button.is-disabled {
    border-color: var(--color-border-subtle);
    background: var(--color-surface-muted);
    color: var(--color-text-tertiary);
    cursor: not-allowed;
    opacity: .68;
    transform: none;
    box-shadow: none;
}

.ux-link {
    color: var(--color-text-link);
    font-weight: var(--font-weight-semibold);
    text-decoration-line: underline;
    text-decoration-thickness: .08em;
    text-underline-offset: .2em;
}

.ux-link:hover {
    color: var(--color-brand-ocean-hover);
    text-decoration-thickness: .12em;
}

.ux-field {
    display: grid;
    gap: var(--space-2);
    min-width: 0;
}

.ux-field > label,
.ux-field__label {
    color: var(--color-text-strong);
    font-size: var(--font-size-body-sm);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-compact);
}

.ux-field__required {
    color: var(--color-danger);
}

.ux-input,
.ux-select,
.ux-textarea {
    width: 100%;
    min-height: var(--size-control-md);
    padding: var(--space-3);
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
    font: var(--font-weight-medium) var(--font-size-body) / var(--line-height-compact) var(--font-family-sans);
    transition:
        border-color var(--motion-duration-fast) var(--motion-ease-standard),
        box-shadow var(--motion-duration-fast) var(--motion-ease-standard),
        background-color var(--motion-duration-fast) var(--motion-ease-standard);
}

.ux-textarea {
    min-height: 8rem;
    line-height: var(--line-height-body);
    resize: vertical;
}

.ux-input:hover,
.ux-select:hover,
.ux-textarea:hover {
    border-color: var(--color-border-strong);
}

.ux-input:focus,
.ux-select:focus,
.ux-textarea:focus {
    border-color: var(--color-focus);
}

.ux-field__help,
.ux-field__message {
    margin: 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-caption);
    line-height: 1.5;
}

.ux-field.is-error :is(.ux-input, .ux-select, .ux-textarea),
:is(.ux-input, .ux-select, .ux-textarea)[aria-invalid="true"] {
    border-color: var(--color-danger);
    background: var(--color-danger-soft);
}

.ux-field.is-error .ux-field__message {
    color: var(--color-danger);
}

.ux-field.is-success :is(.ux-input, .ux-select, .ux-textarea) {
    border-color: var(--color-success);
}

.ux-field.is-success .ux-field__message {
    color: var(--color-success);
}

.ux-choice {
    position: relative;
    display: flex;
    align-items: center;
    gap: var(--space-3);
    min-height: var(--size-control-md);
    width: fit-content;
    max-width: 100%;
    color: var(--color-text-primary);
    cursor: pointer;
}

.ux-choice input {
    flex: 0 0 auto;
    width: 1.25rem;
    height: 1.25rem;
    margin: 0;
    accent-color: var(--color-brand-ocean);
}

.ux-choice input:disabled + span {
    color: var(--color-text-tertiary);
}

.ux-card {
    min-width: 0;
    overflow: hidden;
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-card);
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
    box-shadow: var(--shadow-card);
}

.ux-card--interactive {
    transition:
        transform var(--motion-duration-base) var(--motion-ease-standard),
        border-color var(--motion-duration-fast) var(--motion-ease-standard),
        box-shadow var(--motion-duration-base) var(--motion-ease-standard);
}

.ux-card--interactive:hover,
.ux-card--interactive:focus-within,
.ux-card--interactive.is-hovered {
    border-color: var(--color-brand-ocean);
    transform: translateY(var(--motion-lift));
    box-shadow: var(--shadow-card-hover);
}

.ux-card.is-selected {
    border-width: var(--border-width-strong);
    border-color: var(--color-brand-ocean);
    background: var(--color-brand-ocean-soft);
}

.ux-card__media {
    aspect-ratio: 16 / 9;
    background: var(--color-surface-muted);
    object-fit: cover;
}

.ux-card__body,
.ux-card__footer {
    padding: var(--space-5);
}

.ux-card__body > :first-child,
.ux-card__footer > :first-child {
    margin-top: 0;
}

.ux-card__body > :last-child,
.ux-card__footer > :last-child {
    margin-bottom: 0;
}

.ux-card__footer {
    border-top: var(--border-width) solid var(--color-border-subtle);
}

.ux-table-wrap {
    max-width: 100%;
    overflow-x: auto;
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-card);
    background: var(--color-surface-canvas);
}

.ux-table {
    width: 100%;
    border-collapse: collapse;
    color: var(--color-text-primary);
    font-size: var(--font-size-body-sm);
}

.ux-table th,
.ux-table td {
    padding: var(--space-3) var(--space-4);
    border-bottom: var(--border-width) solid var(--color-border-subtle);
    text-align: left;
    vertical-align: middle;
}

.ux-table th {
    background: var(--color-surface-subtle);
    color: var(--color-text-strong);
    font-weight: var(--font-weight-bold);
}

.ux-table tbody tr:hover {
    background: var(--color-brand-ocean-soft);
}

.ux-table tr:last-child td {
    border-bottom: 0;
}

.ux-table .is-numeric {
    font-variant-numeric: tabular-nums;
    text-align: right;
}

.ux-nav,
.ux-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-1);
    padding: var(--space-1);
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-card);
    background: var(--color-surface-subtle);
}

.ux-nav a,
.ux-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--size-control-md);
    padding: 0 var(--space-4);
    border: 0;
    border-radius: var(--radius-control);
    background: transparent;
    color: var(--color-text-secondary);
    font-weight: var(--font-weight-bold);
    text-decoration: none;
}

.ux-nav a:hover,
.ux-tab:hover {
    background: var(--color-surface-canvas);
    color: var(--color-text-strong);
}

.ux-nav a[aria-current="page"],
.ux-tab[aria-selected="true"],
.ux-tab.is-selected {
    background: var(--color-surface-canvas);
    color: var(--color-text-strong);
    box-shadow: var(--shadow-xs);
}

.ux-tab[aria-selected="true"] {
    box-shadow: inset 0 -2px 0 var(--color-accent-coral), var(--shadow-xs);
}

.ux-tab-panel[hidden] {
    display: none;
}

.ux-alert {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: var(--space-3);
    padding: var(--space-4);
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-card);
    background: var(--color-info-soft);
    color: var(--color-text-primary);
}

.ux-alert > svg {
    width: var(--size-icon-lg);
    height: var(--size-icon-lg);
    color: var(--color-info);
}

.ux-alert strong {
    display: block;
    margin-bottom: var(--space-1);
    color: var(--color-text-strong);
}

.ux-alert p {
    margin: 0;
}

.ux-alert--success {
    border-color: var(--color-success);
    background: var(--color-success-soft);
}

.ux-alert--success > svg {
    color: var(--color-success);
}

.ux-alert--warning {
    border-color: var(--color-warning);
    background: var(--color-warning-soft);
}

.ux-alert--warning > svg {
    color: var(--color-warning);
}

.ux-alert--danger {
    border-color: var(--color-danger);
    background: var(--color-danger-soft);
}

.ux-alert--danger > svg {
    color: var(--color-danger);
}

.ux-badge {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    min-height: 1.5rem;
    padding: 0 var(--space-2);
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-round);
    background: var(--color-surface-subtle);
    color: var(--color-text-primary);
    font-size: var(--font-size-micro);
    font-weight: var(--font-weight-extrabold);
    line-height: 1;
}

.ux-badge--info {
    border-color: var(--color-info);
    background: var(--color-info-soft);
    color: var(--color-text-strong);
}

.ux-badge--success {
    border-color: var(--color-success);
    background: var(--color-success-soft);
    color: var(--color-text-strong);
}

.ux-badge--warning {
    border-color: var(--color-warning);
    background: var(--color-warning-soft);
    color: var(--color-text-strong);
}

.ux-badge--danger {
    border-color: var(--color-danger);
    background: var(--color-danger-soft);
    color: var(--color-text-strong);
}

.ux-tooltip {
    position: relative;
    display: inline-flex;
}

.ux-tooltip::after {
    content: attr(data-ux-tooltip);
    position: absolute;
    bottom: calc(100% + var(--space-2));
    left: 50%;
    z-index: var(--z-dropdown);
    width: max-content;
    max-width: min(16rem, calc(100vw - var(--space-6)));
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-control);
    background: var(--color-brand-deep);
    color: var(--color-text-inverse);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-semibold);
    line-height: 1.4;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, var(--space-1));
    transition:
        opacity var(--motion-duration-fast) var(--motion-ease-standard),
        transform var(--motion-duration-fast) var(--motion-ease-standard);
}

.ux-tooltip:hover::after,
.ux-tooltip:focus-within::after {
    opacity: 1;
    transform: translate(-50%, 0);
}

.ux-dropdown {
    position: relative;
    width: fit-content;
}

.ux-dropdown > summary {
    list-style: none;
}

.ux-dropdown > summary::-webkit-details-marker {
    display: none;
}

.ux-dropdown__menu {
    position: absolute;
    top: calc(100% + var(--space-2));
    right: 0;
    z-index: var(--z-dropdown);
    display: grid;
    min-width: 13rem;
    padding: var(--space-2);
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-card);
    background: var(--color-surface-raised);
    box-shadow: var(--shadow-popover);
}

.ux-dropdown__menu a,
.ux-dropdown__menu button {
    display: flex;
    align-items: center;
    min-height: var(--size-control-md);
    padding: 0 var(--space-3);
    border: 0;
    border-radius: var(--radius-control);
    background: transparent;
    color: var(--color-text-primary);
    text-align: left;
    text-decoration: none;
}

.ux-dropdown__menu :is(a, button):hover {
    background: var(--color-brand-ocean-soft);
    color: var(--color-text-strong);
}

.ux-pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
}

.ux-pagination a,
.ux-pagination span {
    display: inline-grid;
    place-items: center;
    min-width: var(--size-control-md);
    min-height: var(--size-control-md);
    padding: 0 var(--space-2);
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
    font-weight: var(--font-weight-bold);
    text-decoration: none;
}

.ux-pagination [aria-current="page"] {
    border-color: var(--color-brand-ocean);
    background: var(--color-brand-ocean);
    color: var(--color-text-inverse);
}

.ux-dialog {
    width: min(34rem, calc(100% - (2 * var(--layout-gutter))));
    max-height: min(44rem, calc(100dvh - (2 * var(--space-6))));
    padding: 0;
    overflow: auto;
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-raised);
    color: var(--color-text-primary);
    box-shadow: var(--shadow-modal);
}

.ux-dialog::backdrop {
    background: var(--color-surface-scrim);
}

.ux-dialog__header,
.ux-dialog__body,
.ux-dialog__footer {
    padding: var(--space-5);
}

.ux-dialog__header,
.ux-dialog__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
}

.ux-dialog__header {
    border-bottom: var(--border-width) solid var(--color-border-subtle);
}

.ux-dialog__footer {
    border-top: var(--border-width) solid var(--color-border-subtle);
}

.ux-dialog__header h2 {
    margin: 0;
    font-size: var(--font-size-h3);
}

.ux-drawer {
    width: min(var(--layout-navigation-width), calc(100% - var(--space-6)));
    max-width: none;
    height: 100dvh;
    max-height: none;
    margin: 0 0 0 auto;
    border-radius: var(--radius-panel) 0 0 var(--radius-panel);
}

.ux-state {
    display: grid;
    justify-items: start;
    gap: var(--space-3);
    min-height: 12rem;
    padding: var(--space-6);
    border: var(--border-width) dashed var(--color-border-strong);
    border-radius: var(--radius-card);
    background: var(--color-surface-subtle);
}

.ux-state h3,
.ux-state p {
    margin: 0;
}

.ux-state--center {
    place-items: center;
    align-content: center;
    text-align: center;
}

.ux-spinner {
    display: inline-block;
    width: var(--size-icon-lg);
    height: var(--size-icon-lg);
    border: 3px solid var(--color-border-default);
    border-top-color: var(--color-brand-ocean);
    border-radius: var(--radius-round);
    animation: ux-spin .7s linear infinite;
}

.ux-skeleton {
    min-height: var(--space-4);
    border-radius: var(--radius-sm);
    background:
        linear-gradient(
            90deg,
            var(--color-surface-muted) 25%,
            var(--color-surface-subtle) 50%,
            var(--color-surface-muted) 75%
        );
    background-size: 200% 100%;
    animation: ux-skeleton 1.4s var(--motion-ease-standard) infinite;
}

@keyframes ux-spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes ux-skeleton {
    to {
        background-position: -200% 0;
    }
}

.btn {
    line-height: var(--line-height-compact);
    box-shadow: var(--shadow-xs);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid var(--bsa-border);
    cursor: pointer;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background-color .16s ease, color .16s ease;
    min-height: var(--size-control-md);
    border-color: var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
    font-weight: var(--font-weight-bold);
}

.btn-primary {
    border-color: var(--color-accent-coral);
    background: var(--color-accent-coral);
    color: var(--color-text-inverse);
}

.btn-primary:hover {
    _box-shadow: 0 12px 28px rgba(14, 114, 170, .22);
    border-color: var(--color-accent-coral-hover);
    background: var(--color-accent-coral-hover);
}


.btn-secondary {
    border-color: var(--color-brand-ocean);
    background: var(--color-brand-ocean);
    color: var(--color-text-inverse);
}

.btn-secondary:hover {
    _box-shadow: 0 12px 28px rgba(14, 114, 170, .22);
    border-color: var(--color-brand-ocean-hover);
    background: var(--color-brand-ocean-hover);
}

.btn-primary:hover {
    _box-shadow: 0 12px 28px rgba(14, 114, 170, .22);
    border-color: var(--color-accent-coral-hover);
    background: var(--color-accent-coral-hover);
}

.btn-red {
    border-color: var(--color-danger);
    background: var(--color-danger);
    color: var(--color-text-inverse);
}

.header-actions .btn,
.header-actions .link-muted {
    min-height: var(--size-control-md);
}

.header-dashboard-button:hover:active {
    transform: none;
    box-shadow: 0 14px 24px rgba(236, 98, 113, .2);
}

.header-dashboard-button:active:not(:hover) {
    transform: none;
    box-shadow: var(--shadow-xs);
}

.nav-toggle,
.saved-link,
.icon-btn,
.inventory-control-strip .btn {
    min-width: var(--size-control-md);
    min-height: var(--size-control-sm);
}

.header-actions .link-muted {
    display: inline-flex;
    align-items: center;
}

/* Existing compact interactive overlays are normalized to the 44px target. */

.listing-card__actions .icon-btn--overlay,
.listing-card__compare.icon-btn--overlay {
    min-width: 34px;
    margin: 0;
    padding: 0;
    border-color: rgba(255,255,255,.42);
    border-radius: 0.25rem;
    background: rgba(9, 35, 58, .58);
    color: var(--bsa-white);
    backdrop-filter: blur(8px);
    width: var(--size-control-sm);
    height: var(--size-control-sm);
    min-height: var(--size-control-sm);
}

.listing-card__badges {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 4;
    display: grid;
    justify-items: start;
    gap: 6px;
    max-width: calc(100% - 10rem);
}

/* Design-system reference page */

.ux-demo {
    width: min(100%, var(--layout-wide));
    margin-inline: auto;
    padding: var(--layout-section-y) var(--layout-gutter);
}

.ux-demo__hero {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(18rem, .6fr);
    gap: var(--space-8);
    align-items: end;
    padding: clamp(var(--space-8), 6vw, var(--space-16));
    border-radius: var(--radius-panel);
    background:
        linear-gradient(135deg, var(--color-brand-deep), var(--color-brand-navy));
    color: var(--color-text-inverse);
    box-shadow: var(--shadow-card);
}

.ux-demo__hero h1,
.ux-demo__hero p {
    color: inherit;
}

.ux-demo__hero h1 {
    max-width: 15ch;
    margin: 0;
    font-size: var(--font-size-h1);
}

.ux-demo__hero p {
    max-width: 60ch;
    margin: var(--space-4) 0 0;
    color: color-mix(in srgb, var(--color-text-inverse) 82%, transparent);
}

.ux-demo__meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-3);
}

.ux-demo__meta div {
    padding: var(--space-4);
    border: var(--border-width) solid color-mix(in srgb, var(--color-text-inverse) 24%, transparent);
    border-radius: var(--radius-card);
    background: color-mix(in srgb, var(--color-brand-deep) 52%, transparent);
}

.ux-demo__meta strong,
.ux-demo__meta span {
    display: block;
}

.ux-demo__meta strong {
    font-size: var(--font-size-h3);
}

.ux-demo__meta span {
    margin-top: var(--space-1);
    color: color-mix(in srgb, var(--color-text-inverse) 72%, transparent);
    font-size: var(--font-size-caption);
}

.ux-demo__nav {
    position: sticky;
    top: var(--layout-header-height);
    z-index: var(--z-sticky);
    display: flex;
    gap: var(--space-2);
    margin: var(--space-6) 0;
    padding: var(--space-2);
    overflow-x: auto;
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-card);
    background: color-mix(in srgb, var(--color-surface-canvas) 94%, transparent);
    box-shadow: var(--shadow-xs);
    backdrop-filter: blur(12px);
}

.ux-demo__nav a {
    display: inline-flex;
    align-items: center;
    min-height: var(--size-control-md);
    padding-inline: var(--space-3);
    border-radius: var(--radius-control);
    color: var(--color-text-secondary);
    font-size: var(--font-size-body-sm);
    font-weight: var(--font-weight-bold);
    white-space: nowrap;
}

.ux-demo__nav a:hover {
    background: var(--color-brand-ocean-soft);
    color: var(--color-text-strong);
}

.ux-demo__section {
    padding-block: var(--space-10);
    border-bottom: var(--border-width) solid var(--color-border-subtle);
    scroll-margin-top: calc(var(--layout-header-height) + var(--space-16));
}

.ux-demo__section:last-child {
    border-bottom: 0;
}

.ux-demo__section-head {
    max-width: var(--layout-reading);
    margin-bottom: var(--space-6);
}

.ux-demo__section-head h2 {
    margin: 0;
    font-size: var(--font-size-h2);
}

.ux-demo__section-head p {
    margin: var(--space-2) 0 0;
    color: var(--color-text-secondary);
}

.ux-token-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
    gap: var(--layout-grid-gap);
}

.ux-token {
    min-width: 0;
    overflow: hidden;
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-card);
    background: var(--color-surface-canvas);
}

.ux-token__visual {
    min-height: 5rem;
    border-bottom: var(--border-width) solid var(--color-border-subtle);
    background: var(--ux-token-value, var(--color-surface-subtle));
}

.ux-token__body {
    display: grid;
    gap: var(--space-2);
    padding: var(--space-4);
}

.ux-token__body strong,
.ux-token__body code,
.ux-token__body span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.ux-token__body code,
.ux-demo code {
    font: var(--font-weight-medium) var(--font-size-code) / 1.5 var(--font-family-code);
}

.ux-token__body code {
    color: var(--color-text-link);
}

.ux-token__body span {
    color: var(--color-text-secondary);
    font-size: var(--font-size-caption);
}

.ux-type-specimen {
    padding-block: var(--space-4);
    border-bottom: var(--border-width) solid var(--color-border-subtle);
}

.ux-type-specimen:last-child {
    border-bottom: 0;
}

.ux-type-specimen small {
    display: block;
    margin-bottom: var(--space-2);
    color: var(--color-text-secondary);
    font: var(--font-weight-semibold) var(--font-size-caption) / 1.4 var(--font-family-code);
}

.ux-space-list {
    display: grid;
    gap: var(--space-3);
}

.ux-space-row {
    display: grid;
    grid-template-columns: 9rem minmax(0, 1fr);
    gap: var(--space-4);
    align-items: center;
}

.ux-space-row code {
    overflow-wrap: anywhere;
}

.ux-space-row span {
    display: block;
    width: min(100%, var(--ux-token-value, 0));
    min-width: 1px;
    height: var(--space-4);
    border-radius: var(--radius-sm);
    background: var(--color-brand-ocean);
}

.ux-state-matrix {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
    gap: var(--space-4);
}

.ux-state-matrix__item {
    display: grid;
    place-items: center;
    gap: var(--space-2);
    min-height: 7rem;
    padding: var(--space-3);
    border: var(--border-width) solid var(--color-border-subtle);
    border-radius: var(--radius-card);
    background: var(--color-surface-subtle);
    text-align: center;
}

.ux-state-matrix__item small {
    color: var(--color-text-secondary);
    font-size: var(--font-size-caption);
}

.ux-contract-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr));
    gap: var(--layout-grid-gap);
}

.ux-contract {
    padding: var(--space-4);
    border: var(--border-width) solid var(--color-border-default);
    border-radius: var(--radius-card);
    background: var(--color-surface-canvas);
}

.ux-contract h3 {
    margin: 0;
    font-size: var(--font-size-h4);
}

.ux-contract p {
    margin: var(--space-2) 0 0;
    color: var(--color-text-secondary);
    font-size: var(--font-size-body-sm);
}

@media (max-width: 860px) {
    .ux-demo__hero {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .ux-demo__nav {
        top: calc(var(--layout-header-height) + var(--space-3));
    }
}

@media (max-width: 640px) {
    .ux-demo {
        padding-block: var(--space-6);
    }

    .ux-demo__hero {
        padding: var(--space-6);
    }

    .ux-demo__meta {
        grid-template-columns: 1fr;
    }

    .ux-space-row {
        grid-template-columns: 1fr;
        gap: var(--space-2);
    }

    .ux-table--responsive thead {
        display: none;
    }

    .ux-table--responsive,
    .ux-table--responsive tbody,
    .ux-table--responsive tr,
    .ux-table--responsive td {
        display: block;
        width: 100%;
    }

    .ux-table--responsive tr {
        padding: var(--space-3);
        border-bottom: var(--border-width) solid var(--color-border-default);
    }

    .ux-table--responsive tr:last-child {
        border-bottom: 0;
    }

    .ux-table--responsive td {
        display: grid;
        grid-template-columns: minmax(7rem, .45fr) minmax(0, 1fr);
        gap: var(--space-3);
        padding: var(--space-2);
        border: 0;
        text-align: left;
    }

    .ux-table--responsive td::before {
        content: attr(data-label);
        color: var(--color-text-secondary);
        font-weight: var(--font-weight-bold);
    }

    .ux-drawer {
        width: 100%;
        border-radius: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ux-spinner {
        animation-duration: 1.8s !important;
    }

    .ux-skeleton {
        animation: none !important;
        background: var(--color-surface-muted);
    }

    .ux-button:hover,
    .ux-card--interactive:hover,
    .ux-card--interactive:focus-within {
        transform: none;
    }
}

/* Event management */
.dashboard-event-delete-modal {
    width: min(32rem, calc(100% - (2 * var(--layout-gutter))));
    border-color: #efc4cb;
}

.dashboard-event-delete-modal .ux-dialog__header {
    align-items: flex-start;
    background: #fff9fa;
}

.dashboard-event-delete-modal .ux-dialog__header > div {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.dashboard-event-delete-modal .dashboard-quality-callout__kicker {
    color: var(--color-danger);
}

.dashboard-event-delete-modal h2,
.dashboard-event-delete-modal p,
.dashboard-event-editor .dashboard-card__head p {
    margin: 0;
}

.dashboard-event-delete-modal h2 {
    overflow-wrap: anywhere;
}

.dashboard-event-delete-modal p,
.dashboard-event-editor .dashboard-card__head p,
.dashboard-event-table small {
    color: var(--bsa-muted);
}

.dashboard-event-delete-modal .ux-dialog__footer {
    justify-content: flex-end;
}

.dashboard-event-delete-modal .ux-dialog__footer form {
    margin: 0;
}

.dashboard-editor-shell {
    width: 100%;
    max-width: none;
    min-height: 0;
    margin-bottom: var(--bsa-backend-space-xl);
    padding-top: 0 !important;
}

.dashboard-editor-shell > .auth-panel,
.dashboard-editor-shell > .auth-panel > form,
.dashboard-main .dashboard-card > .dashboard-form {
    width: 100%;
    max-width: none;
}

.dashboard-editor-shell select[multiple] {
    min-height: 190px;
}

.dashboard-editor-shell .select2-container {
    width: 100% !important;
}

.dashboard-editor-shell .select2-container--default .select2-selection--multiple {
    min-height: 0;
    padding: 0;
}

.event-media-gallery {
    margin-top: var(--space-6);
}

.event-attendee-grid .content-block {
    min-width: 0;
}

.event-attendee-grid .block-title-row h3 {
    margin: 0;
}

.dashboard-event-status {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--bsa-navy);
    font-weight: 850;
}

.dashboard-event-status input[type="checkbox"] {
    width: 18px;
    min-height: 18px;
    margin: 0;
}

.dashboard-event-table td > strong,
.dashboard-event-table td > small {
    display: block;
}

.dashboard-event-table td > small {
    margin-top: 3px;
}

.dashboard-event-table .dashboard-action-stack form {
    margin: 0;
}

@media (max-width: 760px) {
    .dashboard-event-delete-modal .ux-dialog__footer {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .dashboard-event-delete-modal .ux-dialog__footer .btn,
    .dashboard-event-delete-modal .ux-dialog__footer form {
        width: 100%;
    }
}

/* Saved listings page */
.saved-listings-page .listing-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.saved-listings-controls {
    display: grid;
    gap: 20px;
    margin: 0 0 18px;
    padding: 16px;
    border: 1px solid #d7e6ef;
    border-radius: 0.25rem;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 8px 24px rgba(12, 42, 68, .06);
}

.saved-listings-controls__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.saved-listings-controls__head > div {
    display: grid;
    gap: 3px;
}

.saved-listings-controls__head .eyebrow,
.saved-listings-controls__head > a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.saved-listings-controls__head .eyebrow {
    color: var(--bsa-pink);
}

.saved-listings-controls__head .eyebrow svg,
.saved-listings-controls__head > a svg {
    width: 16px;
    height: 16px;
}

.saved-listings-controls__head strong {
    color: var(--bsa-navy);
    font-size: 18px;
    line-height: 1.2;
}

.saved-listings-controls__head > a {
    color: var(--bsa-pink);
    font-size: 13px;
    font-weight: 850;
}

.saved-listings-controls__form {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(230px, auto) auto;
    gap: 10px;
    align-items: stretch;
}

.saved-listings-search {
    position: relative;
    display: block;
}

.saved-listings-search > svg {
    position: absolute;
    top: 50%;
    left: 14px;
    width: 18px;
    height: 18px;
    color: var(--bsa-pink);
    transform: translateY(-50%);
    pointer-events: none;
}

.saved-listings-search input,
.saved-listings-sort select {
    width: 100%;
    min-height: 46px;
    border: 1px solid #cfe0eb;
    border-radius: 0.25rem;
    background: #f8fbfd;
    color: var(--bsa-navy);
    font-size: 14px;
    font-weight: 700;
}

.saved-listings-search input {
    padding: 10px 46px 10px 42px;
}

.saved-listings-sort {
    display: grid;
    grid-template-columns: auto minmax(180px, 1fr);
    align-items: center;
    gap: 9px;
}

.saved-listings-sort > span {
    color: var(--bsa-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.saved-listings-sort select {
    padding: 0 36px 0 12px;
}

.saved-listings-search input:focus,
.saved-listings-sort select:focus {
    border-color: var(--bsa-pink);
    outline: 3px solid rgba(23, 111, 166, .14);
    background: var(--bsa-white);
}

.saved-listings-controls__form > .btn {
    min-height: 46px;
    padding-inline: 18px;
}

.saved-empty[hidden] {
    display: none;
}

.saved-empty {
    display: grid;
    justify-items: center;
    gap: 8px;
    padding: 42px 24px;
    text-align: center;
}

.saved-empty > svg {
    width: 32px;
    height: 32px;
    color: var(--bsa-pink);
}

.saved-empty h2,
.saved-empty p {
    margin: 0;
}

.saved-empty__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
}

.hero-cta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 0px;
}
.hero-cta .btn {
    min-width: 210px;
}
.hero-cta__browse,
.hero-cta__secondary {
    background-color: var(--color-brand-ocean);
    border-color: var(--color-brand-ocean);
    color: var(--bsa-white);
    box-shadow: 0 18px 34px rgba(6, 18, 34, .14);
}
.hero-cta__browse:hover,
.hero-cta__secondary:hover {    
    background-color: var(--color-brand-ocean-hover);
    border-color: var(--color-brand-ocean-hover);
    color: var(--bsa-white);
}
.hero-trust {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 0px;
}
.hero-trust div {
    min-width: 0;
    padding: 14px 16px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 10px;
}
.hero-trust strong,
.hero-trust span {
    display: block;
}
.hero-trust strong {
    color: var(--bsa-white);
    font-size: clamp(22px, 3vw, 30px);
    line-height: 1;
}
.hero-trust span {
    margin-top: 5px;
    color: rgba(255,255,255,.8);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.hero-search {
    position: relative;
    width: 100%;
    color: var(--bsa-text);
}
.hero-copy > .hero-search {
    margin-top: 0;
}
.hero-search--compact {
    margin: -8px 0 12px;
    padding: 16px;
    border: 1px solid var(--bsa-border);
    border-radius: 0.25rem;
    background:
        linear-gradient(135deg, rgba(23,111,166,.08), rgba(255,255,255,0) 42%),
        var(--bsa-page);
}

@media (max-width: 1180px) {
    .saved-listings-page .listing-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .saved-listings-page .listing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .saved-listings-controls__form {
        grid-template-columns: minmax(0, 1fr) minmax(230px, .7fr);
    }

    .saved-listings-controls__form > .btn {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640px) {
    .saved-listings-page .listing-grid {
        grid-template-columns: 1fr;
    }

    .saved-listings-controls {
        padding: 12px;
    }

    .saved-listings-controls__head {
        align-items: flex-start;
    }

    .saved-listings-controls__form {
        grid-template-columns: 1fr;
    }

    .saved-listings-sort {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .saved-listings-controls__form > .btn {
        grid-column: auto;
        width: 100%;
    }
}

/* Public utility pages: Contact, FAQ, Support, Shop, and Sitemap. */
.utility-page {
    width: min(100%, 1440px);
    margin: 0 auto;
    padding: clamp(38px, 5vw, 72px) var(--layout-gutter) clamp(52px, 6vw, 86px);
}

.utility-page__intro {
    max-width: 820px;
    margin-bottom: clamp(28px, 3.5vw, 46px);
}

.utility-faq .utility-page__intro {
    max-width: 1100px;
}

.utility-page__intro h1,
.support-hero h1 {
    margin: 0;
    color: var(--color-brand-navy);
    font-size: clamp(2rem, 4vw, 3.5rem);
    font-weight: var(--font-weight-bold);
    letter-spacing: var(--letter-spacing-display);
    line-height: 1.08;
}

.utility-page__intro p,
.support-hero__copy > p {
    max-width: 700px;
    margin: 14px 0 0;
    color: var(--color-text-secondary);
    font-size: clamp(.975rem, 1.35vw, 1.125rem);
    line-height: 1.6;
}

.utility-panel {
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
}

.utility-text-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
}

.utility-text-link:hover,
.utility-text-link:focus-visible {
    color: var(--color-brand-ocean-hover);
    text-decoration: underline;
    text-underline-offset: 4px;
}

.utility-text-link svg {
    width: 17px;
    height: 17px;
}

.contact-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(330px, .75fr);
    gap: var(--layout-grid-gap);
    align-items: stretch;
}

.contact-form-panel {
    padding: clamp(22px, 3vw, 34px);
}

.contact-form-panel .notice {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0 0 22px;
}

.contact-form-panel .notice svg {
    flex: 0 0 19px;
    width: 19px;
    height: 19px;
    margin-top: 1px;
}

.contact-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.contact-form__full,
.contact-form__submit {
    grid-column: 1 / -1;
}

.contact-form .field--required {
    position: relative;
}

.contact-form .field--required > span:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.contact-form .field-required {
    color: var(--color-danger);
    font-size: .625rem;
    font-style: normal;
    font-weight: var(--font-weight-bold);
    letter-spacing: .045em;
    text-transform: uppercase;
}

.contact-form input,
.contact-form select,
.contact-form textarea {
    width: 100%;
}

.contact-form textarea {
    min-height: 132px;
    resize: vertical;
}

.utility-input-wrap {
    position: relative;
    display: block;
}

.utility-input-wrap > svg {
    position: absolute;
    top: 50%;
    left: 14px;
    z-index: 1;
    width: 18px;
    height: 18px;
    color: var(--color-brand-navy);
    pointer-events: none;
    transform: translateY(-50%);
}

.contact-form .utility-input-wrap input {
    padding-left: 44px;
}

.contact-form .field-note--error {
    margin-top: 0;
}

.contact-form__submit {
    justify-self: start;
}

.contact-honeypot {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.contact-route-panel {
    padding: clamp(22px, 3vw, 34px);
}

.contact-route-panel > section {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 18px;
}

.contact-route-panel > section + section {
    margin-top: 28px;
    padding-top: 28px;
    border-top: 1px solid var(--color-border-default);
}

.contact-route-panel > section > svg {
    width: 42px;
    height: 42px;
    color: var(--color-brand-navy);
    stroke-width: 1.6;
}

.contact-route-panel h2 {
    margin: 0;
    color: var(--color-brand-navy);
    font-size: 1.05rem;
}

.contact-route-panel p {
    margin: 8px 0 18px;
    color: var(--color-text-secondary);
    line-height: 1.55;
}

.utility-link-list {
    display: grid;
}

.utility-link-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 42px;
    border-bottom: 1px solid var(--color-border-default);
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
}

.utility-link-list a:hover,
.utility-link-list a:focus-visible {
    color: var(--color-brand-ocean-hover);
}

.utility-link-list svg {
    width: 17px;
    height: 17px;
}

.utility-route-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: var(--layout-grid-gap);
    border-block: 1px solid var(--color-border-default);
    background: var(--color-surface-canvas);
}

.utility-route-strip > div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    min-height: 84px;
    padding: 16px 24px;
}

.utility-route-strip > div + div {
    border-left: 1px solid var(--color-border-default);
}

.utility-route-strip svg {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    color: var(--color-brand-navy);
    stroke-width: 1.6;
}

.utility-route-strip span,
.utility-route-strip strong,
.utility-route-strip small {
    display: block;
}

.utility-route-strip strong {
    color: var(--color-brand-navy);
    font-size: .925rem;
}

.utility-route-strip small {
    margin-top: 4px;
    color: var(--color-text-secondary);
}

.faq-controls {
    display: grid;
    gap: 18px;
    margin-bottom: 28px;
}

.faq-search {
    position: relative;
    display: block;
}

.faq-search > svg {
    position: absolute;
    top: 50%;
    left: 18px;
    width: 21px;
    height: 21px;
    color: var(--color-brand-navy);
    pointer-events: none;
    transform: translateY(-50%);
}

.faq-search input {
    width: 100%;
    min-height: 58px;
    padding: 12px 54px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
    font: inherit;
}

.faq-search input:focus {
    border-color: var(--color-focus);
    box-shadow: var(--shadow-focus);
    outline: 0;
}

.faq-search .search-field-clear {
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
}

.faq-filters {
    display: flex;
    align-items: center;
    gap: 10px;
    overflow-x: auto;
    padding-bottom: 2px;
    scrollbar-width: thin;
}

.faq-filter,
.shop-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 44px;
    padding: 9px 18px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-control);
    background: var(--color-surface-canvas);
    color: var(--color-brand-navy);
    font: inherit;
    font-size: .875rem;
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
    cursor: pointer;
}

.faq-filter:hover,
.faq-filter:focus-visible,
.shop-filter:hover,
.shop-filter:focus-visible {
    border-color: var(--color-brand-ocean);
    color: var(--color-brand-ocean-hover);
}

.faq-filter.is-active {
    border-color: var(--color-accent-coral);
    background: var(--color-accent-coral);
    color: var(--color-text-inverse);
}

.faq-list {
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
}

.faq-item + .faq-item {
    border-top: 1px solid var(--color-border-default);
}

.faq-item[hidden] {
    display: none;
}

.faq-item summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 66px;
    padding: 18px 22px;
    color: var(--color-brand-navy);
    font-weight: var(--font-weight-semibold);
    list-style: none;
    cursor: pointer;
}

.faq-item summary::-webkit-details-marker {
    display: none;
}

.faq-item summary:hover {
    color: var(--color-brand-ocean-hover);
}

.faq-item summary:focus-visible {
    outline: 2px solid var(--color-focus);
    outline-offset: -3px;
}

.faq-item summary svg {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
}

.faq-item__minus,
.faq-item[open] .faq-item__plus {
    display: none;
}

.faq-item[open] .faq-item__minus {
    display: block;
}

.faq-item__answer {
    padding: 0 22px 22px;
}

.faq-item__answer p {
    max-width: 920px;
    margin: 0;
    color: var(--color-text-secondary);
    line-height: 1.7;
}

.faq-item__answer a {
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
}

.faq-empty,
.shop-empty {
    display: grid;
    justify-items: center;
    gap: 10px;
    min-height: 220px;
    margin: 0;
    padding: 38px 24px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-page);
    text-align: center;
}

.faq-empty[hidden] {
    display: none;
}

.faq-empty > svg,
.shop-empty > svg {
    width: 44px;
    height: 44px;
    color: var(--color-brand-navy);
    stroke-width: 1.5;
}

.faq-empty h2,
.shop-empty h2 {
    margin: 0;
    font-size: 1.15rem;
}

.faq-empty p,
.shop-empty p {
    margin: 0;
    color: var(--color-text-secondary);
}

.shop-empty a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
}

.shop-empty a svg {
    width: 16px;
    height: 16px;
}

.utility-help-band {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    margin-top: 34px;
    padding: 24px 28px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-brand-ocean-soft);
}

.utility-help-band h2 {
    margin: 0;
    color: var(--color-brand-navy);
    font-size: 1.25rem;
}

.utility-help-band p {
    margin: 7px 0 0;
    color: var(--color-text-secondary);
}

.utility-help-band__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 10px;
}

.support-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 330px);
    gap: 40px;
    align-items: center;
    margin: clamp(-72px, -5vw, -38px) calc(0px - var(--layout-gutter)) 0;
    padding: clamp(44px, 6vw, 82px) var(--layout-gutter);
    border-bottom: 1px solid var(--color-border-default);
    background: var(--color-surface-page);
}

.support-hero__copy {
    max-width: 710px;
}

.support-hero__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 26px;
}

.support-hero__session {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 28px 0 0;
    color: var(--color-text-secondary);
    font-size: .875rem;
}

.support-hero__session svg {
    width: 18px;
    height: 18px;
    color: var(--color-brand-navy);
}

.support-hero__session a {
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
}

.support-hero__icon {
    display: grid;
    place-items: center;
    justify-self: center;
    width: min(260px, 100%);
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--color-brand-ocean-soft);
}

.support-hero__icon svg {
    width: 54%;
    height: 54%;
    color: var(--color-brand-navy);
    stroke-width: 1.35;
}

.support-options {
    padding-top: clamp(42px, 5vw, 66px);
}

.support-options > h2,
.support-checklist > h2 {
    margin: 0 0 22px;
    color: var(--color-brand-navy);
    font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.support-option-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--layout-grid-gap);
}

.support-option {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 240px;
    padding: 24px;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
    color: var(--color-text-primary);
    text-decoration: none;
    transition: border-color var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-base) var(--motion-ease-standard), box-shadow var(--motion-duration-base) var(--motion-ease-standard);
}

.support-option:hover,
.support-option:focus-visible {
    border-color: var(--color-brand-ocean);
    box-shadow: var(--shadow-card);
    transform: translateY(var(--motion-lift));
}

.support-option > svg:first-child {
    width: 36px;
    height: 36px;
    margin-bottom: 22px;
    color: var(--color-brand-navy);
    stroke-width: 1.5;
}

.support-option span,
.support-option strong,
.support-option small {
    display: block;
}

.support-option strong {
    color: var(--color-brand-navy);
    font-size: 1rem;
}

.support-option small {
    margin-top: 9px;
    color: var(--color-text-secondary);
    line-height: 1.55;
}

.support-option__arrow {
    position: absolute;
    right: 20px;
    bottom: 20px;
    width: 18px;
    height: 18px;
    color: var(--color-brand-ocean);
}

.support-checklist {
    margin-top: 34px;
    padding: clamp(24px, 3vw, 38px);
    background: var(--color-surface-page);
}

.support-checklist ol {
    display: grid;
    gap: 20px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.support-checklist li {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 16px;
}

.support-checklist li > span {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--color-brand-ocean);
    color: var(--color-text-inverse);
    font-size: .75rem;
    font-weight: var(--font-weight-bold);
}

.support-checklist strong,
.support-checklist small {
    display: block;
}

.support-checklist strong {
    color: var(--color-brand-navy);
}

.support-checklist small {
    margin-top: 4px;
    color: var(--color-text-secondary);
    line-height: 1.5;
}

.support-help-band {
    align-items: flex-start;
    background: var(--color-surface-canvas);
}

.support-help-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    flex: 1 1 620px;
    max-width: 720px;
}

.support-help-links a {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) 18px;
    gap: 14px;
    align-items: center;
    min-height: 80px;
    padding: 12px 22px;
    color: var(--color-text-primary);
    text-decoration: none;
}

.support-help-links a + a {
    border-left: 1px solid var(--color-border-default);
}

.support-help-links svg {
    width: 22px;
    height: 22px;
    color: var(--color-brand-navy);
}

.support-help-links a > svg:last-child {
    width: 17px;
    height: 17px;
    color: var(--color-brand-ocean);
}

.support-help-links strong,
.support-help-links small {
    display: block;
}

.support-help-links strong {
    color: var(--color-brand-navy);
}

.support-help-links small {
    margin-top: 4px;
    color: var(--color-text-secondary);
    line-height: 1.45;
}

.shop-intro {
    max-width: 680px;
}

.shop-filters {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 26px;
    overflow-x: auto;
    padding-bottom: 2px;
}

.shop-filter.is-active {
    border-color: var(--color-brand-navy);
    background: var(--color-brand-navy);
    color: var(--color-text-inverse);
}

.shop-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--layout-grid-gap);
}

.shop-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-panel);
    background: var(--color-surface-canvas);
    transition: border-color var(--motion-duration-fast) var(--motion-ease-standard), transform var(--motion-duration-base) var(--motion-ease-standard), box-shadow var(--motion-duration-base) var(--motion-ease-standard);
}

.shop-card:hover {
    border-color: var(--color-brand-ocean);
    box-shadow: var(--shadow-card);
    transform: translateY(var(--motion-lift));
}

.shop-card__media {
    border-bottom: 1px solid var(--color-border-subtle);
    background-position: center;
    background-size: cover;
    aspect-ratio: 4/3;
    padding-top: 75%;
}

.shop-card__media img {
    width: 100%;
    height: 212px;
    object-fit: cover;
}

.shop-card__media > svg {
    width: 62px;
    height: 62px;
    padding: 15px;
    border-radius: 50%;
    background: var(--color-brand-ocean-soft);
    color: var(--color-brand-navy);
    stroke-width: 1.4;
}

.shop-card__body {
    flex: 1 1 auto;
    padding: 24px 24px 12px;
}

.shop-card__title {
    font-size: 28px;
    line-height: 1.2;
    color: var(--color-brand-navy);
    font-weight: var(--font-weight-bold);
}

.shop-card__category {
    display: inline-block;
    margin-bottom: 13px;
    color: var(--color-brand-ocean);
    font-size: .72rem;
    font-weight: var(--font-weight-bold);
    letter-spacing: .07em;
    text-transform: uppercase;
}

.shop-card h2 {
    margin: 0;
    color: var(--color-brand-navy);
    font-size: 1.3rem;
}

.shop-card__price {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin: 13px 0;
    color: var(--color-brand-navy);
    font-size: 1.4rem;
    font-variant-numeric: tabular-nums;
}

.shop-card__price small {
    font-size: 0.85rem;
}

.shop-card__description {
    margin: 0;
    color: var(--color-text-secondary);
    line-height: 1.6;
}

.shop-card__action {
    padding: 18px 24px 24px;
}

.shop-card__action form,
.shop-card__action .btn {
    width: 100%;
}

.shop-card__action .btn {
    justify-content: center;
}

.shop-empty {
    margin-bottom: 0;
}

.sitemap-intro .utility-text-link {
    margin-top: 24px;
}

.sitemap-directory {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid var(--color-border-default);
}

.sitemap-group {
    min-width: 0;
    padding: 28px 28px 18px;
}

.sitemap-group:first-child {
    padding-left: 0;
}

.sitemap-group + .sitemap-group {
    border-left: 1px solid var(--color-border-default);
}

.sitemap-group:nth-child(5) {
    grid-column: 1 / 2;
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid var(--color-border-default);
}

.sitemap-group h2 {
    margin: 0 0 18px;
    color: var(--color-brand-navy);
    font-size: 1.1rem;
}

.sitemap-group nav {
    display: grid;
}

.sitemap-group a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 52px;
    border-bottom: 1px solid var(--color-border-default);
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-medium);
    text-decoration: none;
}

.sitemap-group a:hover,
.sitemap-group a:focus-visible {
    color: var(--color-brand-ocean-hover);
}

.sitemap-group a svg {
    flex: 0 0 17px;
    width: 17px;
    height: 17px;
}

.sitemap-marketplace {
    margin-top: 36px;
    padding: 24px;
    background: var(--color-brand-ocean-soft);
}

.sitemap-marketplace h2 {
    margin: 0 0 18px;
    color: var(--color-brand-navy);
    font-size: 1.15rem;
}

.sitemap-marketplace nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sitemap-marketplace a {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) 17px;
    gap: 12px;
    align-items: center;
    min-height: 54px;
    padding: 8px 20px;
    color: var(--color-brand-ocean);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
}

.sitemap-marketplace a + a {
    border-left: 1px solid var(--color-border-default);
}

.sitemap-marketplace a svg {
    width: 24px;
    height: 24px;
    color: var(--color-brand-navy);
}

.sitemap-marketplace a > svg:last-child {
    width: 16px;
    height: 16px;
    color: var(--color-brand-ocean);
}

@media (max-width: 1080px) {
    .contact-layout {
        grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr);
    }

    .support-option-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .support-option {
        min-height: 210px;
    }

    .shop-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sitemap-directory {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sitemap-group:nth-child(n) {
        grid-column: auto;
        padding: 26px;
        border-top: 1px solid var(--color-border-default);
        border-left: 0;
    }

    .sitemap-group:nth-child(even) {
        border-left: 1px solid var(--color-border-default);
    }

    .sitemap-group:nth-child(odd) {
        padding-left: 0;
    }

    .sitemap-marketplace nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sitemap-marketplace a:nth-child(3) {
        border-left: 0;
        border-top: 1px solid var(--color-border-default);
    }

    .sitemap-marketplace a:nth-child(4) {
        border-top: 1px solid var(--color-border-default);
    }
}

@media (max-width: 820px) {
    .contact-layout,
    .support-hero {
        grid-template-columns: 1fr;
    }

    .contact-route-panel > section {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .utility-route-strip {
        grid-template-columns: 1fr;
    }

    .utility-route-strip > div {
        justify-content: flex-start;
    }

    .utility-route-strip > div + div {
        border-top: 1px solid var(--color-border-default);
        border-left: 0;
    }

    .support-hero__icon {
        display: none;
    }

    .utility-help-band,
    .support-help-band {
        align-items: stretch;
        flex-direction: column;
    }

    .support-help-links {
        flex-basis: auto;
        width: 100%;
        max-width: none;
    }
}

@media (max-width: 640px) {
    .utility-page {
        padding: 32px 16px 54px;
    }

    .utility-page__intro {
        margin-bottom: 26px;
    }

    .utility-page__intro h1,
    .support-hero h1 {
        font-size: clamp(2rem, 10vw, 2.65rem);
    }

    .contact-form {
        grid-template-columns: 1fr;
    }

    .contact-form__full,
    .contact-form__submit {
        grid-column: auto;
    }

    .contact-form__submit,
    .utility-help-band__actions,
    .utility-help-band__actions .btn {
        width: 100%;
    }

    .utility-help-band__actions {
        display: grid;
    }

    .faq-item summary {
        min-height: 58px;
        padding: 16px;
    }

    .faq-item__answer {
        padding: 0 16px 18px;
    }

    .support-hero {
        margin: -32px -16px 0;
        padding: 40px 16px;
    }

    .support-hero__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .support-hero__actions .btn {
        width: 100%;
    }

    .support-option-grid,
    .shop-grid,
    .support-help-links,
    .sitemap-directory,
    .sitemap-marketplace nav {
        grid-template-columns: 1fr;
    }

    .support-option {
        min-height: 190px;
    }

    .support-help-links a + a,
    .sitemap-marketplace a + a,
    .sitemap-marketplace a:nth-child(4) {
        border-top: 1px solid var(--color-border-default);
        border-left: 0;
    }

    .sitemap-group:nth-child(n) {
        padding: 24px 0;
        border-top: 1px solid var(--color-border-default);
        border-left: 0;
    }

    .sitemap-marketplace {
        padding: 20px 16px;
    }

    .sitemap-marketplace a {
        padding-inline: 4px;
    }
}

/* Storefront cascade lock: these pages intentionally use a tighter sales-page rhythm. */
.utility-page.store-product {
    padding-top: 18px;
    padding-bottom: 20px;
}

.utility-page.store-checkout {
    padding-top: 20px;
}

.store-product .product-gallery__stage {
    min-height: clamp(360px, 27vw, 430px);
}

@media (max-width: 760px) {
    .utility-page.store-product {
        padding-top: 12px;
        padding-bottom: 28px;
    }

    .store-product .product-gallery__stage {
        min-height: 330px;
    }
}

@media (max-width: 520px) {
    .store-product .product-gallery__stage {
        min-height: 280px;
    }
}

/* Shared dashboard summary filters and the canonical message-center thread layout. */
body.dashboard-message-dialog-open {
    overflow: hidden;
}

body.dashboard-message-dialog-open .site-header {
    z-index: 10040;
}

.dashboard-message-center {
    display: grid;
    gap: 18px;
}

.dashboard-summary-filters {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 18px;
    border: 1px solid #d8e2ea;
    border-radius: var(--bsa-backend-panel-radius, .25rem);
    background: #fff;
    overflow: hidden;
}

.dashboard-summary-filters--in-flow {
    margin-bottom: 0;
}

.dashboard-summary-filters--1 {
    grid-template-columns: minmax(0, 1fr);
}

.dashboard-summary-filters--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dashboard-summary-filters--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dashboard-summary-filters--5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.dashboard-summary-filters--6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.dashboard-summary-filters[aria-busy="true"] {
    opacity: .68;
    pointer-events: none;
}

.dashboard-summary-filters__item {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    min-height: 78px;
    padding: 14px 22px;
    color: var(--bsa-navy);
    text-decoration: none;
    transition: background .16s ease, box-shadow .16s ease, color .16s ease;
}

.dashboard-summary-filters__item + .dashboard-summary-filters__item {
    border-left: 1px solid #d8e2ea;
}

.dashboard-summary-filters__item:hover {
    background: #f8fbfd;
}

.dashboard-summary-filters__item.is-active {
    background: #fffafb;
    box-shadow: inset 0 -3px 0 var(--bsa-pink);
}

.dashboard-summary-filters__item:focus-visible,
.dashboard-message-center-row:focus-visible {
    outline: 3px solid rgba(236, 98, 113, .22);
    outline-offset: -3px;
}

.dashboard-summary-filters__item svg {
    width: 22px;
    height: 22px;
    color: var(--bsa-pink);
}

.dashboard-summary-filters__item strong {
    color: var(--bsa-pink);
    font-size: 27px;
    font-weight: 900;
    line-height: 1;
}

.dashboard-summary-filters__item span {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}

/* Overview shortcuts use the same segmented visual language as dashboard summary filters. */
.dashboard-overview-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 18px;
    border: 1px solid #d8e2ea;
    border-radius: var(--bsa-backend-panel-radius, .25rem);
    background: #fff;
    box-shadow: var(--shadow-card);
    overflow: hidden;
}

.dashboard-overview-actions--1 {
    grid-template-columns: minmax(0, 1fr);
}

.dashboard-overview-actions--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dashboard-overview-actions--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dashboard-overview-actions__item {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-width: 0;
    min-height: 82px;
    padding: 14px 20px;
    color: var(--bsa-navy);
    text-decoration: none;
    transition: background .16s ease, box-shadow .16s ease, color .16s ease;
}

.dashboard-overview-actions__item + .dashboard-overview-actions__item {
    border-left: 1px solid #d8e2ea;
}

.dashboard-overview-actions__item:hover {
    background: #fffafb;
    box-shadow: inset 0 -3px 0 var(--bsa-pink);
}

.dashboard-overview-actions__item:focus-visible {
    outline: 3px solid rgba(236, 98, 113, .22);
    outline-offset: -3px;
}

.dashboard-overview-actions__item > svg:first-child {
    width: 22px;
    height: 22px;
    color: var(--bsa-pink);
}

.dashboard-overview-actions__item > strong {
    color: var(--bsa-pink);
    font-family: var(--font-family-numeric);
    font-size: 27px;
    font-variant-numeric: tabular-nums lining-nums;
    font-weight: 900;
    line-height: 1;
}

.dashboard-overview-actions__copy {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.dashboard-overview-actions__copy b,
.dashboard-overview-actions__copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-overview-actions__copy b {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 850;
}

.dashboard-overview-actions__copy small {
    color: var(--bsa-pink);
    font-size: 11px;
    font-weight: 750;
}

.dashboard-overview-actions__arrow {
    width: 16px;
    height: 16px;
    color: #8295a7;
    transition: color .16s ease, transform .16s ease;
}

.dashboard-overview-actions__item:hover .dashboard-overview-actions__arrow {
    color: var(--bsa-pink);
    transform: translateX(3px);
}

.dashboard-message-center-inbox {
    min-width: 0;
}

.dashboard-message-center-inbox__head {
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.dashboard-message-center-inbox__send {
    flex: 0 0 auto;
}

.dashboard-message-compose .auth-panel {
    min-width: 0;
}

.dashboard-message-compose [hidden] {
    display: none !important;
}

.dashboard-message-compose__warning {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid #efb8c0;
    border-radius: var(--bsa-backend-control-radius, .25rem);
    background: #fff7f8;
    color: #9e3342;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.45;
}

.dashboard-message-compose__warning svg {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
}

.dashboard-message-compose__attachment .media-upload-field__tiles {
    min-height: 112px;
}

.dashboard-message-attachments {
    display: grid;
    gap: 7px;
    margin-top: 10px;
}

.dashboard-message-attachments a {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 8px;
    border: 1px solid rgba(23, 111, 166, .2);
    border-radius: var(--bsa-backend-control-radius, .25rem);
    background: rgba(255, 255, 255, .68);
    color: inherit;
    text-decoration: none;
}

.dashboard-message-attachments a:hover {
    border-color: rgba(23, 111, 166, .42);
}

.dashboard-message-attachments img {
    width: 48px;
    height: 48px;
    border-radius: var(--bsa-backend-control-radius, .25rem);
    object-fit: cover;
}

.dashboard-message-attachments svg {
    width: 18px;
    height: 18px;
}

.dashboard-message-attachments span {
    min-width: 0;
    overflow: hidden;
    font-size: 11px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-message-center__filters {
    display: flex;
    align-items: end;
    gap: 10px;
    margin: 0 0 14px;
    padding: 0;
    border: 0;
    background: #fff;
    box-shadow: none;
}

.dashboard-message-center__filters .dashboard-filter-box__head {
    order: 2;
    flex: 0 0 auto;
}

.dashboard-message-center__filters .dashboard-filter-box__head > div {
    display: none;
}

.dashboard-message-center__filters .dashboard-filter-box__grid {
    flex: 1 1 auto;
}

.dashboard-message-center-list__columns,
.dashboard-message-center-row {
    display: grid;
    grid-template-columns: 38px minmax(180px, .9fr) minmax(150px, .82fr) minmax(235px, 1.35fr) 86px minmax(118px, auto) 18px;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.dashboard-message-center-list__columns {
    min-height: 34px;
    padding: 0 12px;
    border-bottom: 1px solid #d8e2ea;
    color: #526b82;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.dashboard-message-center-list {
    border-bottom: 1px solid #d8e2ea;
}

.dashboard-message-center-row {
    position: relative;
    min-height: 78px;
    padding: 12px;
    border-bottom: 1px solid #e2eaf0;
    background: #fff;
    color: inherit;
    text-decoration: none;
    transition: background .16s ease, box-shadow .16s ease;
}

.dashboard-message-center-row:last-child {
    border-bottom: 0;
}

.dashboard-message-center-row:hover {
    background: #f8fbfd;
}

.dashboard-message-center-row.needs-reply {
    background: #fffafb;
    box-shadow: inset 4px 0 0 var(--bsa-pink);
}

.dashboard-message-center-row.needs-reply:hover {
    background: #fff6f7;
}

.dashboard-message-center-row.is-archived {
    background: #fbfcfd;
    opacity: .82;
}

.dashboard-message-center-row > .dashboard-message-badge,
.dashboard-message-conversation__head > .dashboard-message-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: var(--bsa-backend-control-radius, .25rem);
    line-height: 1;
}

.dashboard-message-center-row__person,
.dashboard-message-center-row__listing {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.dashboard-message-center-row__person strong,
.dashboard-message-center-row__person small,
.dashboard-message-center-row__listing strong,
.dashboard-message-center-row__preview {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dashboard-message-center-row__person strong,
.dashboard-message-center-row__listing strong {
    color: var(--bsa-navy);
    font-size: 13px;
    font-weight: 900;
    white-space: nowrap;
}

.dashboard-message-center-row__person small {
    color: #71869a;
    font-size: 11px;
    white-space: nowrap;
}

.dashboard-message-center-row__listing > span,
.dashboard-message-center-row__preview,
.dashboard-message-center-row__activity,
.dashboard-message-center-row__quiet {
    color: var(--bsa-muted);
    font-size: 12px;
}

.dashboard-message-center-row__preview {
    display: -webkit-box;
    line-height: 1.42;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.dashboard-message-center-row__activity {
    white-space: nowrap;
}

.dashboard-message-center-row__status {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    min-width: 0;
}

.dashboard-message-state {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 8px;
    border: 1px solid #d2dee7;
    border-radius: var(--bsa-backend-control-radius, .25rem);
    color: #526b82;
    font-size: 10px;
    font-style: normal;
    font-weight: 900;
    line-height: 1.15;
    white-space: nowrap;
}

.dashboard-message-state--reply {
    border-color: #efb8c0;
    background: #fff7f8;
    color: #b83e4f;
}

.dashboard-message-state--priority {
    border-color: #f2aaaa;
    background: #fff1f1;
    color: #b4232d;
}

.dashboard-message-state--archived {
    background: #f1f4f6;
    color: #637789;
}

.dashboard-message-center-row__arrow {
    width: 17px;
    height: 17px;
    color: #71869a;
}

.dashboard-message-conversation__head {
    display: grid;
    grid-template-columns: auto minmax(0, auto) minmax(0, 1fr) auto;
    gap: 14px;
    min-height: 76px;
    padding: 12px 20px;
}

.dashboard-message-conversation__identity {
    align-content: center;
}

.dashboard-message-conversation__states {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 6px !important;
}

.dashboard-message-conversation__body {
    padding: 0;
}

.dashboard-message-conversation__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    height: 100%;
    min-height: 0;
}

.dashboard-message-conversation__layout.has-context {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 370px);
}

.dashboard-message-conversation__history {
    min-width: 0;
    min-height: 0;
    padding: 22px clamp(16px, 3.2vw, 48px);
    overflow: hidden;
}

.dashboard-message-conversation .dashboard-chat-thread {
    width: min(900px, 100%);
    height: 100%;
    padding: 4px 4px 28px;
}

.dashboard-message-conversation .dashboard-chat-message {
    gap: 0;
}

.dashboard-message-conversation .dashboard-chat-message__bubble {
    max-width: min(660px, 76%);
    box-shadow: none;
}

.dashboard-message-context {
    min-width: 0;
    min-height: 0;
    padding: 22px;
    border-left: 1px solid #d8e2ea;
    background: #fff;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.dashboard-message-context h3,
.dashboard-message-context h4,
.dashboard-message-context p,
.dashboard-message-context dl,
.dashboard-message-context dd {
    margin: 0;
}

.dashboard-message-context h3 {
    color: var(--bsa-navy);
    font-size: 18px;
    letter-spacing: -.015em;
}

.dashboard-message-context h4 {
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 900;
}

.dashboard-message-context__facts {
    display: grid;
    gap: 12px;
    margin-top: 18px !important;
}

.dashboard-message-context__facts > div {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 10px;
}

.dashboard-message-context__facts dt {
    color: #71869a;
    font-size: 11px;
    font-weight: 850;
}

.dashboard-message-context__facts dd,
.dashboard-message-context__facts a {
    color: var(--bsa-navy);
    font-size: 12px;
    font-weight: 750;
    overflow-wrap: anywhere;
}

.dashboard-message-context__facts a:hover {
    color: var(--bsa-pink);
}

.dashboard-message-context__section,
.dashboard-message-context__templates {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid #d8e2ea;
}

.dashboard-message-context__section p {
    margin-top: 8px;
    color: var(--bsa-muted);
    font-size: 12px;
    line-height: 1.5;
}

.dashboard-message-context__signals {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 9px;
}

.dashboard-message-context__signals span {
    padding: 4px 7px;
    border: 1px solid #d8e2ea;
    border-radius: var(--bsa-backend-control-radius, .25rem);
    background: #f8fbfd;
    color: #526b82;
    font-size: 10px;
    font-weight: 850;
}

.dashboard-message-context__actions {
    display: grid;
    gap: 8px;
}

.dashboard-message-context__actions h4 {
    margin-bottom: 2px;
}

.dashboard-message-context__actions .btn {
    width: 100%;
    min-height: 40px;
    font-size: 12px;
}

.dashboard-message-context__actions .btn svg {
    width: 15px;
    height: 15px;
}

.dashboard-message-context__templates summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: var(--bsa-navy);
    cursor: pointer;
    font-size: 12px;
    font-weight: 900;
    list-style: none;
}

.dashboard-message-context__templates summary::-webkit-details-marker {
    display: none;
}

.dashboard-message-context__templates summary svg {
    width: 16px;
    height: 16px;
    transition: transform .16s ease;
}

.dashboard-message-context__templates[open] summary svg {
    transform: rotate(180deg);
}

.dashboard-message-context__template-list {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.dashboard-message-context__template-list article {
    display: grid;
    gap: 6px;
    padding: 10px;
    border: 1px solid #d8e2ea;
    border-radius: var(--bsa-backend-control-radius, .25rem);
    background: #f8fbfd;
}

.dashboard-message-context__template-list strong {
    color: var(--bsa-navy);
    font-size: 12px;
}

.dashboard-message-context__template-list small {
    color: var(--bsa-muted);
    font-size: 11px;
    line-height: 1.35;
}

.dashboard-message-context__template-list article > div {
    display: flex;
    gap: 6px;
}

.dashboard-message-context__template-list .btn {
    flex: 1 1 0;
}

@media (max-width: 1180px) {
    .dashboard-message-center-list__columns,
    .dashboard-message-center-row {
        grid-template-columns: 38px minmax(180px, .95fr) minmax(240px, 1.35fr) 82px minmax(112px, auto) 18px;
    }

    .dashboard-message-center-list__columns > span:nth-child(3),
    .dashboard-message-center-row__listing {
        display: none;
    }
}

@media (max-width: 840px) {
    .dashboard-message-conversation__layout.has-context {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: minmax(240px, 1fr) minmax(190px, 42%);
    }

    .dashboard-message-context {
        border-top: 1px solid #d8e2ea;
        border-left: 0;
    }
}

@media (max-width: 760px) {
    .dashboard-overview-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-overview-actions__item + .dashboard-overview-actions__item {
        border-left: 0;
    }

    .dashboard-overview-actions__item:nth-child(even) {
        border-left: 1px solid #d8e2ea;
    }

    .dashboard-overview-actions__item:nth-child(n + 3) {
        border-top: 1px solid #d8e2ea;
    }

    .dashboard-overview-actions__item {
        grid-template-columns: auto auto minmax(0, 1fr);
        gap: 6px 8px;
        min-height: 74px;
        padding: 11px 12px;
    }

    .dashboard-overview-actions__item > svg:first-child {
        width: 19px;
        height: 19px;
    }

    .dashboard-overview-actions__item > strong {
        font-size: 21px;
    }

    .dashboard-overview-actions__copy b {
        font-size: 11px;
    }

    .dashboard-overview-actions__copy small {
        font-size: 10px;
    }

    .dashboard-overview-actions__arrow {
        display: none;
    }

    .dashboard-summary-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-summary-filters__item + .dashboard-summary-filters__item {
        border-left: 0;
    }

    .dashboard-summary-filters__item:nth-child(even) {
        border-left: 1px solid #d8e2ea;
    }

    .dashboard-summary-filters__item:nth-child(n + 3) {
        border-top: 1px solid #d8e2ea;
    }

    .dashboard-summary-filters__item {
        grid-template-columns: auto 1fr;
        gap: 4px 8px;
        min-height: 72px;
        padding: 11px 12px;
    }

    .dashboard-summary-filters__item svg {
        grid-row: 1 / span 2;
        width: 19px;
        height: 19px;
    }

    .dashboard-summary-filters__item strong {
        font-size: 21px;
    }

    .dashboard-summary-filters__item span {
        font-size: 11px;
    }

    .dashboard-message-center-inbox__head {
        display: grid;
    }

    .dashboard-message-center-inbox__send {
        width: 100%;
    }

    .dashboard-message-center-list__columns {
        display: none;
    }

    .dashboard-message-center-row {
        grid-template-columns: 34px minmax(0, 1fr) auto;
        grid-template-areas:
            "type person arrow"
            "type preview arrow"
            ". activity arrow"
            ". status status";
        gap: 5px 10px;
        min-height: 108px;
        padding: 12px 10px;
    }

    .dashboard-message-center-row > .dashboard-message-badge { grid-area: type; align-self: start; }
    .dashboard-message-center-row__person { grid-area: person; }
    .dashboard-message-center-row__preview { grid-area: preview; }
    .dashboard-message-center-row__activity { grid-area: activity; }
    .dashboard-message-center-row__status { grid-area: status; justify-content: flex-start; }
    .dashboard-message-center-row__arrow { grid-area: arrow; }

    .dashboard-message-center__filters {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .dashboard-message-center__filters .dashboard-filter-box__head {
        justify-content: flex-end;
    }

    .dashboard-message-conversation__head {
        grid-template-columns: auto minmax(0, 1fr) auto;
        grid-template-areas:
            "badge identity close"
            ". states states";
        gap: 5px 10px;
        min-height: 72px;
        padding: 9px 12px;
    }

    .dashboard-message-conversation__head > .dashboard-message-badge { grid-area: badge; }
    .dashboard-message-conversation__identity { grid-area: identity; }
    .dashboard-message-conversation__states { grid-area: states; }
    .dashboard-message-conversation__close { grid-area: close; }

    .dashboard-message-conversation__history {
        padding: 14px 10px;
    }

    .dashboard-message-conversation .dashboard-chat-message__bubble {
        max-width: 90%;
    }

    .dashboard-message-context {
        padding: 16px;
    }
}

@media (prefers-reduced-motion: no-preference) {
    .dashboard-message-conversation.is-open {
        animation: support-dialog-enter .18s ease-out both;
    }
}

/* Slim sticky navigation after scrolling; keep the expanded mobile menu usable. */
.site-header.is-scrolled {
    min-height: 48px;
}
.site-header.is-scrolled .brand__logo {
    height: 30px;
}
@media (min-width: 861px) {
    .site-header.is-scrolled .header-actions > .btn,
    .site-header.is-scrolled .header-actions > .saved-link,
    .site-header.is-scrolled .header-actions > .cart-link {
        min-height: 34px;
    }
}
@media (max-width: 860px) {
    .site-header.is-scrolled {
        min-height: 52px;
        padding-block: 4px;
    }
    .site-header.is-scrolled > .nav-toggle,
    .site-header.is-scrolled > .saved-link,
    .site-header.is-scrolled > .cart-link {
        min-height: 44px;
    }
}
@media (prefers-reduced-motion: no-preference) {
    .site-header {
        transition: min-height .24s ease, padding .24s ease;
    }
    .site-header .brand__logo {
        transition: height .24s ease;
    }
    .site-header .header-actions > .btn,
    .site-header .header-actions > .saved-link,
    .site-header .header-actions > .cart-link,
    .site-header > .nav-toggle,
    .site-header > .saved-link,
    .site-header > .cart-link {
        transition: min-height .24s ease, color .16s ease, background-color .16s ease, border-color .16s ease, box-shadow .16s ease;
    }
}
