/* ==========================================
   SHARED BEFORE / AFTER COMPARISON
========================================== */

.gonbad-before-after-figure {
    width: 100%;
    max-width: 100%;
    margin: var(--space-xl) 0;
}

.gonbad-before-after__title {
    margin-bottom: var(--space-md);
    color: var(--color-primary);
    font-weight: 700;
}

.gonbad-before-after {
    --gonbad-compare-position: 50%;

    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: var(--radius-sm);
    background: var(--color-gray-light);
}

.gonbad-before-after__base {
    position: relative;
    width: 100%;
}

.gonbad-before-after__image {
    display: block;
    width: 100%;
    height: auto;
}

.gonbad-before-after__overlay {
    position: absolute;
    inset: 0;
    overflow: hidden;

    clip-path: inset(
        0
        calc(100% - var(--gonbad-compare-position))
        0
        0
    );
}

.gonbad-before-after__overlay .gonbad-before-after__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gonbad-before-after__label {
    position: absolute;
    z-index: 2;
    bottom: var(--space-md);
    padding: var(--space-sm) var(--space-md);
    border-radius: var(--radius-sm);
    background: var(--color-secondary);
    color: var(--color-white);
    font-size: var(--fs-small);
    pointer-events: none;
}

.gonbad-before-after__label--before {
    left: var(--space-md);
}

.gonbad-before-after__label--after {
    right: var(--space-md);
}

.gonbad-before-after__divider {
    position: absolute;
    z-index: 3;
    top: 0;
    bottom: 0;
    left: var(--gonbad-compare-position);
    width: 3px;
    background: var(--color-white);
    transform: translateX(-50%);
    pointer-events: none;
}

.gonbad-before-after__divider::after {
    content: "↔";

    position: absolute;
    top: 50%;
    left: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    border: 2px solid var(--color-white);
    border-radius: 50%;

    background: var(--color-primary);
    color: var(--color-white);

    font-size: 22px;

    transform: translate(-50%, -50%);
}

.gonbad-before-after__control {
    position: absolute;
    z-index: 4;
    inset: 0;

    width: 100%;
    height: 100%;
    margin: 0;

    opacity: 0;
    cursor: ew-resize;
    touch-action: pan-y;
}

.gonbad-before-after:focus-within {
    outline: 3px solid var(--color-primary);
    outline-offset: 3px;
}

/* Brand-page comparisons */
.fz-brand-comparisons {
    width: 100%;
    max-width: 1100px;
    margin-inline: auto;
    padding-inline: var(--space-md);
    box-sizing: border-box;
}
/* ==========================================
   SHARED COMPARISON TABLE
========================================== */

.gonbad-comparison-table-wrap {
    width: 100%;
    max-width: 100%;
    margin-block: var(--space-xl);
    border: 1px solid var(--color-gray-light);
    border-radius: var(--radius-sm);
    background: var(--color-white);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.gonbad-comparison-table {
    width: 100%;
    min-width: 480px;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
    background: transparent;
    color: var(--color-text);
    text-align: start;
}

.gonbad-comparison-table caption {
    padding: var(--space-md);
    color: var(--color-primary);
    font-weight: 700;
    text-align: start;
}

.gonbad-comparison-table th,
.gonbad-comparison-table td {
    padding: var(--space-md);
    border: 0;
    border-inline-end: 1px solid var(--color-gray-light);
    border-bottom: 1px solid var(--color-gray-light);
    background: transparent;
    color: var(--color-text);
    text-align: start;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.gonbad-comparison-table th {
    font-weight: 700;
}

.gonbad-comparison-table tr > :last-child {
    border-inline-end: 0;
}

.gonbad-comparison-table tbody tr:last-child > * {
    border-bottom: 0;
}

.gonbad-comparison-table:not(:has(tbody)) thead tr:last-child > * {
    border-bottom: 0;
}

/* First row */
.gonbad-comparison-table-wrap[data-highlight="row"]
    .gonbad-comparison-table thead th,
.gonbad-comparison-table-wrap[data-highlight="both"]
    .gonbad-comparison-table thead th {
    background: var(--color-primary);
    color: var(--color-white);
}

/* First column */
.gonbad-comparison-table-wrap[data-highlight="column"]
    .gonbad-comparison-table tr > :first-child,
.gonbad-comparison-table-wrap[data-highlight="both"]
    .gonbad-comparison-table tr > :first-child {
    background: var(--color-primary);
    color: var(--color-white);
}
/* حذف جداکننده خدمات از بالای جدول و تصویر قبل و بعد */
.gonbad-service--has-separator > .gonbad-service__visual-items::before {
    content: none;
    display: none;
}