.hide-scrollbar {
    scrollbar-width: none;
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

#expert-sticky-tabs [data-tab-id].active {
    font-weight: 700;
    color: rgb(37 99 235);
}

#expert-fixed-cta.-bottom-full {
    bottom: -100%;
}

.expert-fixed-cta {
    border-top: 1px solid rgb(226 232 240);
    background: linear-gradient(180deg, rgb(255 255 255 / 0.92) 0%, rgb(255 255 255) 40%);
    padding: 0.75rem 1rem calc(0.75rem + env(safe-area-inset-bottom, 0px));
    box-shadow: 0 -8px 24px rgb(15 23 42 / 0.08);
    backdrop-filter: blur(10px);
}

.expert-fixed-cta__inner {
    margin-inline: auto;
    width: 100%;
    max-width: 28rem;
}

.expert-fixed-cta__btn {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border: none;
    border-radius: 9999px;
    background: linear-gradient(135deg, rgb(37 99 235) 0%, rgb(29 78 216) 100%);
    padding: 0.875rem 1.25rem;
    font-size: 0.9375rem;
    font-weight: 600;
    color: #fff;
    box-shadow: 0 8px 20px rgb(37 99 235 / 0.35);
    transition: transform 150ms ease, box-shadow 150ms ease, opacity 150ms ease;
}

.expert-fixed-cta__btn:hover:not(:disabled) {
    box-shadow: 0 10px 24px rgb(37 99 235 / 0.42);
    transform: translateY(-1px);
}

.expert-fixed-cta__btn:active:not(:disabled) {
    transform: translateY(0);
}

.expert-fixed-cta__btn:disabled {
    opacity: 0.55;
    box-shadow: none;
    cursor: not-allowed;
}

.expert-fixed-cta__btn-icon {
    display: flex;
    height: 1.25rem;
    width: 1.25rem;
    align-items: center;
    justify-content: center;
}

.expert-fixed-cta__btn-icon svg {
    height: 1.125rem;
    width: 1.125rem;
}

.expert-order-modal.flex {
    display: flex;
}

.expert-order-modal__panel {
    max-height: min(88vh, 640px);
    display: flex;
    flex-direction: column;
}

.expert-order-modal__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    border-bottom: 1px solid rgb(241 245 249);
    padding: 1rem 1rem 0.875rem;
}

.expert-order-modal__title {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: rgb(15 23 42);
}

.expert-order-modal__subtitle {
    margin: 0.25rem 0 0;
    font-size: 0.75rem;
    line-height: 1.5;
    color: rgb(100 116 139);
}

.expert-order-modal__close {
    display: flex;
    height: 2rem;
    width: 2rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 9999px;
    background: rgb(241 245 249);
    color: rgb(71 85 105);
    cursor: pointer;
}

.expert-order-modal__close svg {
    height: 1.125rem;
    width: 1.125rem;
}

.expert-order-modal__search-wrap {
    position: relative;
    padding: 0.75rem 1rem 0.5rem;
}

.expert-order-modal__search-icon {
    position: absolute;
    top: 50%;
    inset-inline-start: 1.5rem;
    display: flex;
    height: 1.125rem;
    width: 1.125rem;
    color: rgb(148 163 184);
    transform: translateY(-35%);
    pointer-events: none;
}

.expert-order-modal__search {
    width: 100%;
    border: 1px solid rgb(226 232 240);
    border-radius: 0.75rem;
    background: rgb(248 250 252);
    padding: 0.625rem 0.875rem;
    padding-inline-start: 2.5rem;
    font-size: 0.875rem;
    color: rgb(15 23 42);
    outline: none;
    transition: border-color 150ms ease, box-shadow 150ms ease;
}

.expert-order-modal__search:focus {
    border-color: rgb(147 197 253);
    background: #fff;
    box-shadow: 0 0 0 3px rgb(219 234 254);
}

.expert-order-modal__list-wrap {
    min-height: 0;
    flex: 1;
    overflow: auto;
    padding: 0 0.5rem 0.75rem;
}

.expert-order-modal__list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.expert-order-modal__item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    border-radius: 0.75rem;
    padding: 0.625rem 0.5rem;
    text-decoration: none;
    color: inherit;
    transition: background-color 150ms ease;
}

.expert-order-modal__item:hover {
    background: rgb(239 246 255);
}

.expert-order-modal__item-icon {
    display: flex;
    height: 2.5rem;
    width: 2.5rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 0.75rem;
    background: rgb(239 246 255);
    color: rgb(59 130 246);
}

.expert-order-modal__item-icon svg {
    height: 1.25rem;
    width: 1.25rem;
    opacity: 0.65;
}

.expert-order-modal__item-icon-mask {
    display: inline-block;
    height: 1.375rem;
    width: 1.375rem;
    background: currentColor;
    -webkit-mask-image: var(--service-icon-mask);
    mask-image: var(--service-icon-mask);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
}

.expert-order-modal__item-body {
    min-width: 0;
    flex: 1;
}

.expert-order-modal__item-title {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: rgb(15 23 42);
}

.expert-order-modal__item-badge {
    display: inline-block;
    margin-top: 0.125rem;
    border-radius: 9999px;
    background: rgb(219 234 254);
    padding: 0.125rem 0.5rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: rgb(29 78 216);
}

.expert-order-modal__item-arrow {
    height: 1rem;
    width: 1rem;
    flex-shrink: 0;
    color: rgb(148 163 184);
}

.expert-order-modal__empty {
    margin: 0;
    padding: 1.5rem 1rem;
    text-align: center;
    font-size: 0.8125rem;
    color: rgb(100 116 139);
}

.expert-order-modal__list [data-order-service-item].is-hidden {
    display: none;
}

.breadcrumb-separator {
    display: inline-block;
    flex-shrink: 0;
    color: rgb(148 163 184);
    font-size: 1.125rem;
    line-height: 1;
    user-select: none;
}

.expert-detail-section {
    margin-bottom: 1.5rem;
}

.expert-profile-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 9999px;
    background: rgb(239 246 255);
}

.expert-profile-avatar__img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center center;
}

.expert-profile-avatar__img--placeholder {
    object-fit: contain;
    object-position: center center;
    transform: scale(1.02);
}

.expert-banner-actions {
    display: flex;
    align-items: center;
    padding: 0.25rem;
    border-radius: 9999px;
    border: 1px solid rgb(255 255 255 / 0.45);
    background: rgb(255 255 255 / 0.92);
    box-shadow:
        0 4px 16px rgb(15 23 42 / 0.12),
        0 1px 2px rgb(15 23 42 / 0.06);
    backdrop-filter: blur(10px);
}

.expert-banner-actions__btn {
    display: flex;
    height: 2.25rem;
    width: 2.25rem;
    flex-shrink: 0;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 9999px;
    background: transparent;
    color: rgb(71 85 105);
    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        transform 0.15s ease;
}

.expert-banner-actions__btn:hover {
    background: rgb(241 245 249);
    color: rgb(37 99 235);
}

.expert-banner-actions__btn--like:hover {
    color: rgb(239 68 68);
    background: rgb(254 242 242);
}

.expert-banner-actions__btn:active {
    transform: scale(0.94);
}

.expert-banner-actions__btn:disabled {
    cursor: wait;
    opacity: 0.65;
}

.expert-banner-actions__btn--liked,
.expert-banner-actions__btn--liked:hover {
    color: rgb(239 68 68);
    background: rgb(254 242 242);
}

.expert-banner-actions__divider {
    width: 1px;
    height: 1.125rem;
    flex-shrink: 0;
    margin-inline: 0.125rem;
    background: rgb(226 232 240);
}

.expert-section-heading {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.expert-section-heading__icon {
    display: flex;
    height: 2rem;
    width: 2rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    border: 1px solid rgb(219 234 254);
    background: rgb(239 246 255);
    color: rgb(59 130 246);
}

.expert-section-heading__icon .section-title-icon,
.expert-section-heading__svg {
    height: 1.125rem;
    width: 1.125rem;
}

.expert-section-heading__title {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.35;
    color: rgb(30 41 59);
}

.expert-price-table {
    margin-top: 0.5rem;
}

.expert-price-table__scroll {
    overflow-x: auto;
    border: 1px solid rgb(226 232 240);
    border-radius: 0.75rem;
    background: rgb(255 255 255);
    box-shadow: 0 1px 3px rgb(15 23 42 / 0.06);
}

.expert-price-table__table {
    width: 100%;
    min-width: 20rem;
    border-collapse: collapse;
    text-align: right;
}

.expert-price-table__table thead {
    background: rgb(239 246 255);
}

.expert-price-table__table th {
    padding: 0.625rem 0.875rem;
    font-size: 0.75rem;
    font-weight: 700;
    color: rgb(51 65 85);
    border-bottom: 1px solid rgb(219 234 254);
}

.expert-price-table__table tbody tr {
    border-bottom: 1px solid rgb(241 245 249);
}

.expert-price-table__table tbody tr:last-child {
    border-bottom: none;
}

.expert-price-table__table td,
.expert-price-table__table th[scope="row"] {
    padding: 0.75rem 0.875rem;
    vertical-align: middle;
}

.expert-price-table__service {
    font-size: 0.875rem;
    font-weight: 600;
    color: rgb(30 41 59);
}

.expert-price-table__value {
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    text-align: left;
}

.expert-price-table__unit {
    font-weight: 600;
    color: rgb(71 85 105);
}

.expert-price-table__sep {
    margin-inline: 0.25rem;
    color: rgb(148 163 184);
}

.expert-price-table__price {
    font-weight: 700;
    color: rgb(0 174 239);
}

.expert-price-table__table th:last-child {
    text-align: left;
}

.expert-price-table__cards {
    display: none;
    margin: 0;
    list-style: none;
    padding: 0;
    gap: 0.5rem;
}

.expert-price-table__card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    border: 1px solid rgb(226 232 240);
    border-radius: 0.625rem;
    background: rgb(255 255 255);
    padding: 0.75rem 0.875rem;
    box-shadow: 0 1px 2px rgb(15 23 42 / 0.04);
}

.expert-price-table__card-title {
    font-size: 0.875rem;
    font-weight: 600;
    color: rgb(30 41 59);
}

.expert-price-table__value--card {
    flex-shrink: 0;
    font-size: 0.8125rem;
}

@media (max-width: 639px) {
    .expert-price-table__scroll {
        display: none;
    }

    .expert-price-table__cards {
        display: flex;
        flex-direction: column;
    }
}

.expert-services-slider {
    overflow: hidden;
}

.expert-services-slider__viewport {
    position: relative;
}

.expert-services-slider__nav {
    position: absolute;
    top: 50%;
    z-index: 2;
    display: none;
    height: 1.75rem;
    width: 1.75rem;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border: 1px solid rgb(219 234 254);
    background: rgb(255 255 255 / 0.82);
    color: rgb(59 130 246);
    box-shadow: 0 1px 3px rgb(15 23 42 / 0.08);
    backdrop-filter: blur(4px);
    transform: translateY(-50%);
    transition: background-color 150ms ease, color 150ms ease;
}

.expert-services-slider__nav:not([hidden]) {
    display: inline-flex;
}

.expert-services-slider__nav:hover {
    background: rgb(255 255 255 / 0.95);
    color: rgb(37 99 235);
}

.expert-services-slider__nav--prev {
    inset-inline-end: 0.125rem;
}

.expert-services-slider__nav--next {
    inset-inline-start: 0.125rem;
}

.expert-services-slider__nav-icon {
    height: 1rem;
    width: 1rem;
}

.expert-services-slider__track {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0.625rem;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 2rem;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
    padding-block: 0.375rem;
    padding-inline: 0.25rem;
    cursor: grab;
}

.expert-services-slider__track.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
    user-select: none;
}

.expert-services-slider__item {
    flex: 0 0 auto;
    width: 7.25rem;
    scroll-snap-align: start;
    border-radius: 0.5rem;
    border: 1px solid transparent;
    background: rgb(255 255 255);
    box-shadow: 0 1px 2px rgb(15 23 42 / 0.06);
    transition: box-shadow 150ms ease;
}

.expert-services-slider__item:hover {
    box-shadow: 0 2px 6px rgb(15 23 42 / 0.1);
}

.expert-services-slider__card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 0.5rem;
}

.expert-services-slider__icon {
    display: flex;
    height: 3.375rem;
    width: 3.375rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 0.75rem;
    background: rgb(239 246 255);
    color: rgb(59 130 246);
}

.expert-services-slider__icon-mask {
    display: inline-block;
    height: 2rem;
    width: 2rem;
    flex-shrink: 0;
    background: currentColor;
    color: rgb(59 130 246);
    -webkit-mask-image: var(--service-icon-mask);
    mask-image: var(--service-icon-mask);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
}

.expert-services-slider__icon-fallback {
    height: 1.875rem;
    width: 1.875rem;
    opacity: 0.6;
}

.expert-services-slider__title {
    display: block;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: center;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.4;
    color: rgb(51 65 85);
}

@media (min-width: 640px) {
    .expert-services-slider__track {
        flex-wrap: wrap;
        overflow-x: visible;
        scroll-snap-type: none;
        cursor: default;
        gap: 0.875rem;
    }

    .expert-services-slider__item {
        width: 8.5rem;
        scroll-snap-align: none;
    }

    .expert-services-slider__card {
        padding: 0.875rem 0.625rem;
        gap: 0.75rem;
    }

    .expert-services-slider__title {
        font-size: 0.9375rem;
    }

    .expert-services-slider__icon {
        height: 3.75rem;
        width: 3.75rem;
    }

    .expert-services-slider__icon-mask {
        height: 2.25rem;
        width: 2.25rem;
    }
}

.expert-skill-item {
    border-bottom: 1px solid rgb(226 232 240);
}

.expert-skill-item:last-child {
    border-bottom: 0;
}

.expert-skill-item__card {
    padding: 0.75rem 0;
}

.expert-skill-item__row {
    display: flex;
    gap: 0.875rem;
    align-items: flex-start;
}

.expert-skill-item__media {
    flex-shrink: 0;
    width: 3.75rem;
    height: 3.75rem;
    overflow: hidden;
    border-radius: 0.625rem;
}

.expert-skill-item__img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.expert-skill-item__icon {
    display: flex;
    height: 100%;
    width: 100%;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    background: rgb(239 246 255);
}

.expert-skill-item__icon--empty {
    background: rgb(241 245 249);
}

.expert-skill-item__icon-mask {
    display: inline-block;
    height: 2rem;
    width: 2rem;
    flex-shrink: 0;
    background: currentColor;
    color: rgb(59 130 246);
    -webkit-mask-image: var(--service-icon-mask);
    mask-image: var(--service-icon-mask);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
}

.expert-skill-item__icon-fallback {
    height: 1.75rem;
    width: 1.75rem;
    opacity: 0.55;
    color: rgb(100 116 139);
}

.expert-skill-item__body {
    min-width: 0;
    flex: 1;
}

.expert-skill-item__title {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.4;
    color: rgb(15 23 42);
}

.expert-skill-item__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 0.75rem;
    margin-top: 0.375rem;
    font-size: 0.8125rem;
    line-height: 1.35;
}

.expert-skill-item__rating {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    color: rgb(245 158 11);
}

.expert-skill-item__star {
    height: 1rem;
    width: 1rem;
    flex-shrink: 0;
}

.expert-skill-item__reviews {
    color: rgb(100 116 139);
    font-size: 0.75rem;
}

.expert-skill-item__no-rating {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: rgb(148 163 184);
    font-size: 0.75rem;
}

.expert-skill-item__stars-empty {
    display: inline-flex;
    align-items: center;
    gap: 0.0625rem;
}

.expert-skill-item__stars-empty svg {
    height: 0.75rem;
    width: 0.75rem;
    color: rgb(203 213 225);
}

.expert-skill-item__location {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    color: rgb(100 116 139);
}

.expert-skill-item__location svg {
    height: 0.875rem;
    width: 0.875rem;
    flex-shrink: 0;
}

.expert-skill-item__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.625rem 0.875rem;
    margin-top: 0.625rem;
}

.expert-skill-item__link {
    font-size: 0.75rem;
    color: rgb(37 99 235);
    text-decoration: none;
}

.expert-skill-item__link:hover {
    text-decoration: underline;
}

.expert-skill-item__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    border: 1px solid rgb(37 99 235);
    border-radius: 0.375rem;
    padding: 0.375rem 0.75rem;
    font-size: 0.75rem;
    line-height: 1.35;
    color: rgb(37 99 235);
    text-decoration: none;
    transition: background-color 0.15s, color 0.15s;
}

.expert-skill-item__btn svg {
    height: 1rem;
    width: 1rem;
    flex-shrink: 0;
}

.expert-skill-item__btn:hover {
    background: rgb(37 99 235);
    color: #fff;
}

@media (min-width: 640px) {
    .expert-skill-item__card {
        padding: 0.875rem 0;
    }

    .expert-skill-item__media {
        width: 4.5rem;
        height: 4.5rem;
    }

    .expert-skill-item__title {
        font-size: 0.9375rem;
    }
}

.expert-platform-label {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    margin: 0;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.35;
    color: rgb(71 85 105);
}

.expert-platform-label__icon {
    height: 1.125rem;
    width: 1.125rem;
    flex-shrink: 0;
    color: rgb(37 99 235);
}

.expert-trust-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.expert-trust-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
    border-radius: 9999px;
    border: 1px solid transparent;
    padding-block: 0.375rem;
    padding-inline: 0.375rem 1.125rem;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
}

.expert-trust-badge__icon {
    display: flex;
    height: 2rem;
    width: 2rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
}

.expert-trust-badge__svg {
    height: 1.125rem;
    width: 1.125rem;
}

.expert-trust-badge__label {
    color: rgb(30 41 59);
}

.expert-trust-badge--clearance {
    border-color: rgb(167 243 208);
    background: linear-gradient(135deg, rgb(236 253 245), rgb(209 250 229));
}

.expert-trust-badge--clearance .expert-trust-badge__icon {
    background: rgb(255 255 255);
    color: rgb(5 150 105);
    box-shadow: 0 1px 2px rgb(16 185 129 / 0.15);
}

.expert-trust-badge--certificate {
    border-color: rgb(191 219 254);
    background: linear-gradient(135deg, rgb(239 246 255), rgb(219 234 254));
}

.expert-trust-badge--certificate .expert-trust-badge__icon {
    background: rgb(255 255 255);
    color: rgb(37 99 235);
    box-shadow: 0 1px 2px rgb(37 99 235 / 0.12);
}

.expert-trust-badge--quality {
    border-color: rgb(253 230 138);
    background: linear-gradient(135deg, rgb(255 251 235), rgb(254 243 199));
}

.expert-trust-badge--quality .expert-trust-badge__icon {
    background: rgb(255 255 255);
    color: rgb(217 119 6);
    box-shadow: 0 1px 2px rgb(245 158 11 / 0.15);
}

.expert-stats-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
}

@media (min-width: 640px) {
    .expert-stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 768px) {
    .expert-stats-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
    }
}

.expert-stat-card {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    border-radius: 0.875rem;
    border: 1px solid transparent;
    padding: 0.875rem 1rem;
    min-height: 4.5rem;
}

.expert-stat-card__icon {
    display: flex;
    height: 2.75rem;
    width: 2.75rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 0.75rem;
}

.expert-stat-card__svg {
    height: 1.375rem;
    width: 1.375rem;
}

.expert-stat-card__body {
    min-width: 0;
    flex: 1;
}

.expert-stat-card__label {
    display: block;
    margin-bottom: 0.25rem;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.35;
    color: rgb(100 116 139);
}

.expert-stat-card__value {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
    color: rgb(15 23 42);
    word-break: break-word;
}

.expert-stat-card--joined {
    border-color: rgb(191 219 254);
    background: linear-gradient(135deg, rgb(255 255 255), rgb(239 246 255));
}

.expert-stat-card--joined .expert-stat-card__icon {
    background: rgb(255 255 255);
    color: rgb(37 99 235);
    box-shadow: 0 1px 3px rgb(37 99 235 / 0.12);
}

.expert-stat-card--services {
    border-color: rgb(167 243 208);
    background: linear-gradient(135deg, rgb(255 255 255), rgb(236 253 245));
}

.expert-stat-card--services .expert-stat-card__icon {
    background: rgb(255 255 255);
    color: rgb(5 150 105);
    box-shadow: 0 1px 3px rgb(16 185 129 / 0.12);
}

.expert-stat-card--reviews {
    border-color: rgb(221 214 254);
    background: linear-gradient(135deg, rgb(255 255 255), rgb(245 243 255));
}

.expert-stat-card--reviews .expert-stat-card__icon {
    background: rgb(255 255 255);
    color: rgb(124 58 237);
    box-shadow: 0 1px 3px rgb(124 58 237 / 0.12);
}

.expert-reviews-list {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.expert-reviews-empty {
    margin-top: 1rem;
    border-radius: 0.75rem;
    border: 1px dashed rgb(203 213 225);
    background: rgb(248 250 252);
    padding: 2.5rem 1rem;
    text-align: center;
    font-size: 0.875rem;
    color: rgb(100 116 139);
}

.expert-review-card {
    border-radius: 0.875rem;
    border: 1px solid rgb(226 232 240);
    background: #fff;
    padding: 0.875rem 1rem 0.75rem;
    box-shadow: 0 1px 2px rgb(15 23 42 / 0.04);
}

.expert-review-card__header {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem 0.75rem;
}

.expert-review-card__author {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0.625rem;
}

.expert-review-card__avatar {
    height: 2.5rem;
    width: 2.5rem;
    flex-shrink: 0;
    border-radius: 9999px;
    object-fit: cover;
    box-shadow: 0 0 0 2px rgb(241 245 249);
}

.expert-review-card__avatar--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgb(239 246 255);
    font-size: 0.875rem;
    font-weight: 700;
    color: rgb(37 99 235);
}

.expert-review-card__author-text {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 0.0625rem;
}

.expert-review-card__name {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.3;
    color: rgb(15 23 42);
    word-break: break-word;
}

.expert-review-card__location {
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.35;
    color: rgb(100 116 139);
}

.expert-review-card__time {
    flex-shrink: 0;
    font-size: 0.75rem;
    font-weight: 500;
    color: rgb(148 163 184);
    white-space: nowrap;
}

.expert-review-card__meta {
    margin-top: 0.625rem;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0.5rem 0.75rem;
    padding-top: 0.625rem;
    border-top: 1px solid rgb(241 245 249);
}

.expert-review-card__service {
    min-width: 0;
    flex: 0 1 auto;
    max-width: 100%;
}

.expert-review-card__service-link,
.expert-review-card__service-label {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.5;
}

.expert-review-card__service-link {
    border-radius: 9999px;
    background: rgb(239 246 255);
    color: rgb(29 78 216);
    padding: 0.25rem 0.625rem;
    text-decoration: none;
    transition: background-color 0.2s, color 0.2s;
}

.expert-review-card__service-link:hover {
    background: rgb(219 234 254);
    color: rgb(30 64 175);
}

.expert-review-card__service-label {
    color: rgb(51 65 85);
}

.expert-review-card__rating {
    display: flex;
    flex-shrink: 0;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0.375rem;
    margin-inline-start: auto;
    white-space: nowrap;
}

.expert-review-card__rating-label {
    flex-shrink: 0;
    font-size: 0.75rem;
    font-weight: 500;
    white-space: nowrap;
    color: rgb(100 116 139);
}

.expert-review-card__stars {
    display: flex;
    flex-shrink: 0;
    gap: 0.125rem;
}

.expert-review-card__star {
    height: 0.875rem;
    width: 0.875rem;
    color: rgb(226 232 240);
}

.expert-review-card__star.is-filled {
    color: rgb(245 158 11);
}

.expert-review-card__comment {
    margin: 0.625rem 0 0;
    border-radius: 0.5rem;
    background: rgb(248 250 252);
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    font-weight: 400;
    line-height: 1.6;
    color: rgb(51 65 85);
}

.expert-review-card__footer {
    margin-top: 0.5rem;
    display: flex;
    justify-content: flex-end;
}

.expert-review-card__votes {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.expert-review-card__vote {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    border-radius: 9999px;
    border: 1px solid rgb(226 232 240);
    background: #fff;
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    color: rgb(100 116 139);
    cursor: pointer;
    transition: border-color 0.2s, background-color 0.2s, color 0.2s;
}

.expert-review-card__vote:disabled {
    cursor: not-allowed;
    opacity: 0.65;
}

.expert-review-card__vote.is-active.expert-review-card__vote--up {
    border-color: rgb(147 197 253);
    background: rgb(239 246 255);
    color: rgb(29 78 216);
}

.expert-review-card__vote.is-active.expert-review-card__vote--down {
    border-color: rgb(252 165 165);
    background: rgb(254 242 242);
    color: rgb(185 28 28);
}

.expert-review-card__vote svg {
    height: 1rem;
    width: 1rem;
}

.expert-review-card__vote-count {
    display: inline-flex;
    min-width: 1.25rem;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    padding: 0.125rem 0.375rem;
    font-size: 0.6875rem;
    font-weight: 700;
}

.expert-review-card__vote--up .expert-review-card__vote-count {
    background: rgb(219 234 254);
    color: rgb(29 78 216);
}

.expert-review-card__vote--down .expert-review-card__vote-count {
    background: rgb(254 226 226);
    color: rgb(185 28 28);
}

@media (max-width: 640px) {
    .expert-review-card {
        padding: 0.75rem;
    }
}
