.ef-timeline {
    --ef-marker-size: 58px;
    --ef-axis-column: 86px;
    --ef-axis-gap: 34px;
    --ef-content-width: 520px;
    --ef-item-gap: 96px;
    --ef-axis-width: 3px;
    --ef-axis-base: #d9dee8;
    --ef-axis-active: #20d7a6;
    --ef-marker-bg: #fff;
    --ef-marker-active: #20d7a6;
    --ef-marker-text: #101828;
    --ef-marker-active-text: #101828;
    --ef-marker-min-width: 58px;
    --ef-marker-max-width: 180px;
    --ef-marker-active-scale: 1.04;
    --ef-marker-halo-size: 8px;
    position: relative;
    width: 100%;
    isolation: isolate;
}

.ef-timeline__stage {
    position: relative;
    width: 100%;
}

.ef-timeline__svg {
    position: absolute;
    z-index: 1;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
}

.ef-timeline__path {
    fill: none;
    vector-effect: non-scaling-stroke;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: var(--ef-axis-width);
}

.ef-timeline__path--base { stroke: var(--ef-axis-base); }
.ef-timeline__path--progress { stroke: var(--ef-axis-active); transition: stroke-dashoffset .06s linear; }

/* This is the real nested-element drop zone. Elementor inserts one .e-con per repeater item here. */
.ef-timeline__content {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--ef-axis-column) minmax(0, 1fr);
    grid-auto-rows: auto;
    row-gap: var(--ef-item-gap);
    align-items: center;
    min-height: 180px;
}

.ef-timeline__content > .e-con,
.ef-timeline__content > .elementor-element.e-con {
    width: min(100%, var(--ef-content-width));
    max-width: var(--ef-content-width);
    min-width: 0;
    margin: 0;
    position: relative;
    z-index: 3;
    grid-row: var(--ef-row, auto);
    transition: opacity .45s cubic-bezier(.2,.75,.2,1), transform .55s cubic-bezier(.2,.75,.2,1);
}

.ef-timeline__content > .ef-timeline__child--left {
    grid-column: 1;
    justify-self: end;
    margin-right: var(--ef-axis-gap);
}

.ef-timeline__content > .ef-timeline__child--right {
    grid-column: 3;
    justify-self: start;
    margin-left: var(--ef-axis-gap);
}

/* Connector line between marker and the user-built Elementor container. */
.ef-timeline__content > .e-con::before {
    content: "";
    position: absolute;
    top: 50%;
    width: var(--ef-axis-gap);
    height: 1px;
    background: var(--ef-axis-base);
    pointer-events: none;
}

.ef-timeline__content > .ef-timeline__child--left::before { left: 100%; }
.ef-timeline__content > .ef-timeline__child--right::before { right: 100%; }

.ef-timeline__markers {
    position: absolute;
    z-index: 5;
    inset: 0;
    pointer-events: none;
}

.ef-timeline__marker-wrap {
    position: absolute;
    transform: translate(-50%, -50%);
    transition: opacity .3s ease, transform .3s ease;
}

.ef-timeline__marker {
    width: var(--ef-marker-size);
    height: var(--ef-marker-size);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--ef-axis-base);
    border-radius: 999px;
    background: var(--ef-marker-bg);
    color: var(--ef-marker-text);
    box-shadow: 0 5px 18px rgba(16,24,40,.08);
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    overflow-wrap: anywhere;
    transition: background .3s ease, border-color .3s ease, box-shadow .3s ease, transform .3s ease;
}

/* Marker geometry presets. */
.ef-timeline--marker-width-auto .ef-timeline__marker {
    width: auto;
    min-width: var(--ef-marker-min-width);
    max-width: var(--ef-marker-max-width);
    height: auto;
    min-height: var(--ef-marker-size);
}
.ef-timeline--marker-wrap .ef-timeline__marker { white-space: normal; }
.ef-timeline--marker-nowrap .ef-timeline__marker { white-space: nowrap; }

.ef-timeline--marker-circle .ef-timeline__marker { border-radius: 999px; }
.ef-timeline--marker-rounded .ef-timeline__marker { border-radius: 18px; }
.ef-timeline--marker-pill .ef-timeline__marker { border-radius: 999px; }
.ef-timeline--marker-badge .ef-timeline__marker {
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(16,24,40,.10);
}
.ef-timeline--marker-minimal .ef-timeline__marker {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}

.ef-timeline__marker-wrap.is-active .ef-timeline__marker {
    border-color: transparent;
    background: var(--ef-marker-active);
    box-shadow: 0 0 0 var(--ef-marker-halo-size) color-mix(in srgb, var(--ef-marker-active) 16%, transparent), 0 10px 26px rgba(16,24,40,.12);
    transform: scale(var(--ef-marker-active-scale));
    color: var(--ef-marker-active-text);
}
.ef-timeline--marker-no-halo .ef-timeline__marker-wrap.is-active .ef-timeline__marker {
    box-shadow: 0 10px 26px rgba(16,24,40,.12);
}
.ef-timeline--marker-minimal .ef-timeline__marker-wrap.is-active .ef-timeline__marker {
    background: transparent;
    box-shadow: none;
}

/* Side-axis layouts. */
.ef-timeline--axis-left .ef-timeline__content {
    grid-template-columns: var(--ef-axis-column) minmax(0, 1fr);
}
.ef-timeline--axis-left .ef-timeline__content > .e-con,
.ef-timeline--axis-left .ef-timeline__content > .ef-timeline__child--left,
.ef-timeline--axis-left .ef-timeline__content > .ef-timeline__child--right {
    grid-column: 2;
    justify-self: start;
    margin: 0 0 0 var(--ef-axis-gap);
}
.ef-timeline--axis-left .ef-timeline__content > .e-con::before { right: 100%; left: auto; }

.ef-timeline--axis-right .ef-timeline__content {
    grid-template-columns: minmax(0, 1fr) var(--ef-axis-column);
}
.ef-timeline--axis-right .ef-timeline__content > .e-con,
.ef-timeline--axis-right .ef-timeline__content > .ef-timeline__child--left,
.ef-timeline--axis-right .ef-timeline__content > .ef-timeline__child--right {
    grid-column: 1;
    justify-self: end;
    margin: 0 var(--ef-axis-gap) 0 0;
}
.ef-timeline--axis-right .ef-timeline__content > .e-con::before { left: 100%; right: auto; }

/* Flow adds a restrained offset to the axis positions without breaking the grid. */
.ef-timeline--theme-flow { --ef-flow-shift: 22px; }

/* Reveal */
.ef-timeline--effect-fade:not(.ef-timeline--no-reveal) .ef-timeline__content > .e-con:not(.is-active) { opacity: .18; }
.ef-timeline--effect-slide:not(.ef-timeline--no-reveal) .ef-timeline__content > .e-con:not(.is-active) { opacity: .16; transform: translateY(26px); }
.ef-timeline--effect-scale:not(.ef-timeline--no-reveal) .ef-timeline__content > .e-con:not(.is-active) { opacity: .18; transform: scale(.97); }
.ef-timeline__content > .e-con.is-active { opacity: 1; transform: none; }

/* Parallax / sticky story. Disabled in editor so editing stays predictable. */
.ef-timeline--theme-parallax:not(.elementor-element-edit-mode) .ef-timeline__stage { min-height: var(--ef-parallax-height, 260vh); }
.ef-timeline--theme-parallax:not(.elementor-element-edit-mode) .ef-timeline__content {
    position: sticky;
    top: 20vh;
    min-height: 60vh;
    row-gap: 0;
}
.ef-timeline--theme-parallax:not(.elementor-element-edit-mode) .ef-timeline__content > .e-con {
    grid-row: 1 !important;
    align-self: center;
    opacity: var(--ef-parallax-opacity, 0);
    transform: translateY(var(--ef-parallax-y, 40px)) scale(var(--ef-parallax-scale, .98));
    pointer-events: none;
}
.ef-timeline--theme-parallax:not(.elementor-element-edit-mode) .ef-timeline__content > .e-con.is-active { pointer-events: auto; }

/* Elementor editor: make empty nested containers unmistakably editable, just like Nested Tabs. */
.elementor-editor-active .ef-timeline__content > .e-con {
    min-height: 150px;
}
.elementor-editor-active .ef-timeline__content > .e-con.e-con-empty,
.elementor-editor-active .ef-timeline__content > .e-con:empty {
    min-height: 180px;
}

@media (max-width: 767px) {
    .ef-timeline {
        --ef-axis-column: 52px;
        --ef-axis-gap: 14px;
        --ef-item-gap: 52px;
        width: 100%;
        max-width: 100%;
        overflow: clip;
    }

    .ef-timeline__stage,
    .ef-timeline__content {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    /* Gap is handled by the grid itself. Previously the child also had a
       left/right margin, which made the row wider than the widget on mobile. */
    .ef-timeline__content {
        grid-template-columns: var(--ef-axis-column) minmax(0, 1fr);
        column-gap: var(--ef-axis-gap);
        overflow: hidden;
    }

    .ef-timeline__content > .e-con,
    .ef-timeline__content > .elementor-element.e-con,
    .ef-timeline__content > .ef-timeline__child--left,
    .ef-timeline__content > .ef-timeline__child--right {
        grid-column: 2;
        justify-self: stretch;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin: 0;
        box-sizing: border-box;
        --width: 100% !important;
        --content-width: 100% !important;
    }

    .ef-timeline__content > .e-con::before {
        right: 100%;
        left: auto;
        width: var(--ef-axis-gap);
    }

    .ef-timeline--mobile-axis-right .ef-timeline__content {
        grid-template-columns: minmax(0, 1fr) var(--ef-axis-column);
    }

    .ef-timeline--mobile-axis-right .ef-timeline__content > .e-con,
    .ef-timeline--mobile-axis-right .ef-timeline__content > .elementor-element.e-con,
    .ef-timeline--mobile-axis-right .ef-timeline__content > .ef-timeline__child--left,
    .ef-timeline--mobile-axis-right .ef-timeline__content > .ef-timeline__child--right {
        grid-column: 1;
        margin: 0;
    }

    .ef-timeline--mobile-axis-right .ef-timeline__content > .e-con::before {
        left: 100%;
        right: auto;
    }

    /* Prevent common nested Elementor content from forcing the timeline wider
       than the viewport while preserving the user's layout choices. */
    .ef-timeline__content > .e-con img,
    .ef-timeline__content > .e-con video,
    .ef-timeline__content > .e-con iframe {
        max-width: 100%;
    }
}


@media (prefers-reduced-motion: reduce) {
    .ef-timeline__path--progress,
    .ef-timeline__content > .e-con,
    .ef-timeline__marker,
    .ef-timeline__marker-wrap { transition: none !important; }
}

/* Internal repeater target used by Elementor's nested editor. Hidden on the frontend. */
.ef-timeline__editor-points {
    display: none;
}

.elementor-editor-active .ef-timeline__editor-points {
    display: none;
    gap: 8px;
    flex-wrap: wrap;
    margin: 0 0 18px;
    position: relative;
    z-index: 20;
}

.elementor-editor-active .ef-timeline__editor-point {
    appearance: none;
    border: 1px solid #dfe3ea;
    border-radius: 999px;
    background: #fff;
    color: #1d2939;
    min-height: 34px;
    padding: 6px 11px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font: inherit;
    cursor: pointer;
}

.elementor-editor-active .ef-timeline__editor-point-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--ef-marker-active);
    flex: 0 0 auto;
}

.elementor-editor-active .ef-timeline__editor-point-label {
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
}

/* =========================================================
   Dual content slots
   One timeline point remains one nested child of the widget.
   That child can contain two real Elementor containers: primary + secondary.
========================================================= */
.ef-timeline {
    --ef-secondary-gap: 24px;
}

/* In single mode the second slot exists in the document but stays out of the layout. */
.ef-timeline__content > .ef-timeline__point--single .ef-timeline-slot--secondary {
    display: none !important;
}

.ef-timeline__content > .ef-timeline__point--single .ef-timeline-slot--primary {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

/* Center-axis dual layout: the point wrapper spans the complete timeline row. */
.ef-timeline--axis-center .ef-timeline__content > .ef-timeline__point--dual {
    grid-column: 1 / -1 !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) var(--ef-axis-column) minmax(0, 1fr) !important;
    align-items: center;
    column-gap: 0;
    background: transparent;
}

/* The old connector belongs to a single-sided point. Dual points draw one from each slot. */
.ef-timeline__content > .ef-timeline__point--dual::before {
    display: none !important;
}

.ef-timeline--axis-center .ef-timeline__point--dual .ef-timeline-slot {
    position: relative;
    width: min(100%, var(--ef-content-width));
    max-width: var(--ef-content-width);
    min-width: 0;
    margin: 0;
}

.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-left .ef-timeline-slot--primary,
.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-right .ef-timeline-slot--secondary {
    grid-column: 1;
    justify-self: end;
    margin-right: var(--ef-axis-gap);
}

.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-left .ef-timeline-slot--secondary,
.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-right .ef-timeline-slot--primary {
    grid-column: 3;
    justify-self: start;
    margin-left: var(--ef-axis-gap);
}

.ef-timeline--axis-center .ef-timeline__point--dual .ef-timeline-slot::before {
    content: "";
    position: absolute;
    top: 50%;
    width: var(--ef-axis-gap);
    height: 1px;
    background: var(--ef-axis-base);
    pointer-events: none;
}

.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-left .ef-timeline-slot--primary::before,
.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-right .ef-timeline-slot--secondary::before {
    left: 100%;
}

.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-left .ef-timeline-slot--secondary::before,
.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-right .ef-timeline-slot--primary::before {
    right: 100%;
}

/* With a side axis both slots stay usable and are stacked on the content side. */
.ef-timeline--axis-left .ef-timeline__content > .ef-timeline__point--dual,
.ef-timeline--axis-right .ef-timeline__content > .ef-timeline__point--dual {
    display: flex !important;
    flex-direction: column;
    gap: var(--ef-secondary-gap);
}

.ef-timeline--axis-left .ef-timeline__point--dual .ef-timeline-slot,
.ef-timeline--axis-right .ef-timeline__point--dual .ef-timeline-slot {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

/* Make the two drop zones clear in Elementor without adding frontend chrome. */
.elementor-editor-active .ef-timeline__point--dual .ef-timeline-slot {
    min-height: 110px;
}

@media (max-width: 767px) {
    /* On mobile both content areas belong to the same safe content column.
       This prevents either side from extending outside the widget. */
    .ef-timeline__content > .ef-timeline__point--dual,
    .ef-timeline--axis-center .ef-timeline__content > .ef-timeline__point--dual,
    .ef-timeline--axis-left .ef-timeline__content > .ef-timeline__point--dual,
    .ef-timeline--axis-right .ef-timeline__content > .ef-timeline__point--dual {
        grid-column: 2 !important;
        justify-self: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column;
        gap: var(--ef-secondary-gap);
        box-sizing: border-box;
    }

    .ef-timeline--mobile-axis-right .ef-timeline__content > .ef-timeline__point--dual {
        grid-column: 1 !important;
    }

    .ef-timeline__content > .ef-timeline__point--dual .ef-timeline-slot,
    .ef-timeline--axis-center .ef-timeline__point--dual .ef-timeline-slot {
        grid-column: auto !important;
        justify-self: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0;
        margin: 0 !important;
        box-sizing: border-box;
    }

    .ef-timeline__content > .ef-timeline__point--dual .ef-timeline-slot::before {
        display: none !important;
    }
}

/* =========================================================
   Timeline 0.8 — stable two-sided point layout
   New points are wrappers with two equal Elementor containers.
   Legacy one-container points keep the original single-sided flow.
========================================================= */
.ef-timeline {
    --ef-left-fr: 1fr;
    --ef-right-fr: 1fr;
    --ef-point-axis-gap: var(--ef-axis-gap);
}

.ef-timeline--axis-center .ef-timeline__content {
    grid-template-columns: minmax(0, var(--ef-left-fr)) var(--ef-axis-column) minmax(0, var(--ef-right-fr));
}

/* Every modern point owns the whole row; the two nested Elementor containers
   are positioned around the axis using CSS Grid only. */
.ef-timeline--axis-center .ef-timeline__content > .ef-timeline__point--dual {
    grid-column: 1 / -1 !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, var(--ef-left-fr)) var(--ef-axis-column) minmax(0, var(--ef-right-fr)) !important;
    column-gap: 0 !important;
    background: transparent !important;
    overflow: visible;
}

.ef-timeline__point--dual.ef-timeline__align-start { align-items: start; }
.ef-timeline__point--dual.ef-timeline__align-center { align-items: center; }
.ef-timeline__point--dual.ef-timeline__align-end { align-items: end; }

.ef-timeline--axis-center .ef-timeline__point--dual .ef-timeline-slot {
    position: relative;
    width: min(100%, var(--ef-content-width));
    max-width: var(--ef-content-width);
    min-width: 0;
    margin: 0 !important;
    box-sizing: border-box;
}

/* Primary means "main content"; side is controlled independently. */
.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-left .ef-timeline-slot--primary,
.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-right .ef-timeline-slot--secondary {
    grid-column: 1;
    justify-self: end;
    margin-right: var(--ef-point-axis-gap, var(--ef-axis-gap)) !important;
}

.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-right .ef-timeline-slot--primary,
.ef-timeline--axis-center .ef-timeline__point--dual.ef-timeline__point--primary-left .ef-timeline-slot--secondary {
    grid-column: 3;
    justify-self: start;
    margin-left: var(--ef-point-axis-gap, var(--ef-axis-gap)) !important;
}

.ef-timeline--axis-center .ef-timeline__point--dual .ef-timeline-slot::before {
    width: var(--ef-point-axis-gap, var(--ef-axis-gap));
}

/* Empty side is allowed and must remain a real editable Elementor drop zone. */
.elementor-editor-active .ef-timeline__point--dual .ef-timeline-slot {
    min-height: 120px;
    outline: 1px dashed rgba(127, 127, 127, .22);
    outline-offset: -1px;
}

/* Preserve historical single-container points without restructuring their data. */
.ef-timeline__point--legacy {
    min-width: 0;
}

/* Axis visual styles. The animated progress remains solid for predictable
   stroke-dashoffset animation; the base line carries the selected pattern. */
.ef-timeline--axis-style-dashed .ef-timeline__path--base { stroke-dasharray: 10 8; }
.ef-timeline--axis-style-dotted .ef-timeline__path--base {
    stroke-dasharray: 1 10;
    stroke-linecap: round;
}

@media (max-width: 767px) {
    .ef-timeline {
        --ef-left-fr: 1fr;
        --ef-right-fr: 1fr;
    }

    /* Mobile always becomes one safe content column plus the marker column. */
    .ef-timeline__content,
    .ef-timeline--axis-center .ef-timeline__content,
    .ef-timeline--axis-left .ef-timeline__content {
        grid-template-columns: var(--ef-axis-column) minmax(0, 1fr) !important;
        column-gap: var(--ef-axis-gap) !important;
    }

    .ef-timeline--mobile-axis-right .ef-timeline__content,
    .ef-timeline--axis-right .ef-timeline__content {
        grid-template-columns: minmax(0, 1fr) var(--ef-axis-column) !important;
    }

    .ef-timeline__content > .ef-timeline__point--dual,
    .ef-timeline--axis-center .ef-timeline__content > .ef-timeline__point--dual,
    .ef-timeline--axis-left .ef-timeline__content > .ef-timeline__point--dual,
    .ef-timeline--axis-right .ef-timeline__content > .ef-timeline__point--dual {
        grid-column: 2 !important;
        justify-self: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: var(--ef-secondary-gap) !important;
        box-sizing: border-box;
    }

    .ef-timeline--mobile-axis-right .ef-timeline__content > .ef-timeline__point--dual,
    .ef-timeline--axis-right .ef-timeline__content > .ef-timeline__point--dual {
        grid-column: 1 !important;
    }

    .ef-timeline__point--dual .ef-timeline-slot {
        grid-column: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        box-sizing: border-box;
    }

    .ef-timeline__point--dual .ef-timeline-slot::before { display: none !important; }

    /* Explicit mobile ordering. */
    .ef-timeline--mobile-order-main-secondary .ef-timeline-slot--primary { order: 1; }
    .ef-timeline--mobile-order-main-secondary .ef-timeline-slot--secondary { order: 2; }
    .ef-timeline--mobile-order-secondary-main .ef-timeline-slot--secondary { order: 1; }
    .ef-timeline--mobile-order-secondary-main .ef-timeline-slot--primary { order: 2; }

    .ef-timeline--mobile-order-left-right .ef-timeline__point--primary-left .ef-timeline-slot--primary,
    .ef-timeline--mobile-order-left-right .ef-timeline__point--primary-right .ef-timeline-slot--secondary { order: 1; }
    .ef-timeline--mobile-order-left-right .ef-timeline__point--primary-left .ef-timeline-slot--secondary,
    .ef-timeline--mobile-order-left-right .ef-timeline__point--primary-right .ef-timeline-slot--primary { order: 2; }

    .ef-timeline--mobile-order-right-left .ef-timeline__point--primary-left .ef-timeline-slot--secondary,
    .ef-timeline--mobile-order-right-left .ef-timeline__point--primary-right .ef-timeline-slot--primary { order: 1; }
    .ef-timeline--mobile-order-right-left .ef-timeline__point--primary-left .ef-timeline-slot--primary,
    .ef-timeline--mobile-order-right-left .ef-timeline__point--primary-right .ef-timeline-slot--secondary { order: 2; }

    /* Hide only the axis path. Markers remain available and readable. */
    .ef-timeline--hide-axis-mobile .ef-timeline__svg { display: none; }

    .ef-timeline__point--dual img,
    .ef-timeline__point--dual video,
    .ef-timeline__point--dual iframe,
    .ef-timeline__point--dual svg {
        max-width: 100%;
    }
}

@media (min-width: 768px) {
    .ef-timeline--axis-center .ef-timeline__point--dual .ef-timeline-slot {
        width: min(100%, var(--ef-content-width));
        max-width: min(var(--ef-content-width), calc(100% - var(--ef-point-axis-gap, var(--ef-axis-gap))));
    }
}
