/**
 * GW Conectores Decorativos
 * Extensao global exclusiva para Containers do Elementor.
 */

.gw-connectors-yes {
    --gwc-accent: #c4a676;
    --gwc-line-color: #eeeeee;
    --gwc-offset: 60px;
    --gwc-diamond-size: 10px;
    --gwc-ring-inset: -12px;
    --gwc-line-width: 100px;
    --gwc-vertical: 50%;

    position: relative;
    overflow: visible !important;
}

html.gw-connectors-active,
body.gw-connectors-active {
    overflow-x: clip;
}

@supports not (overflow: clip) {
    html.gw-connectors-active,
    body.gw-connectors-active {
        overflow-x: hidden;
    }
}

.gw-connector {
    position: absolute;
    top: var(--gwc-vertical, 50%);
    z-index: 5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--gwc-diamond-size, 10px);
    height: var(--gwc-diamond-size, 10px);
    transform: translateY(-50%);
    pointer-events: none;
}

.gw-connector--left {
    left: calc(0px - var(--gwc-offset, 60px));
}

.gw-connector--right {
    right: calc(0px - var(--gwc-offset, 60px));
}

.gw-connector span {
    position: relative;
    display: inline-block;
    width: var(--gwc-diamond-size, 10px);
    height: var(--gwc-diamond-size, 10px);
    background: var(--gwc-accent, #c4a676);
    transform: rotate(45deg);
}

.gw-connector span::before {
    content: "";
    position: absolute;
    inset: var(--gwc-ring-inset, -12px);
    border: 1px dotted var(--gwc-accent, #c4a676);
    border-radius: 50%;
}

.gw-connector::before {
    content: "";
    position: absolute;
    top: 50%;
    height: 1px;
    width: var(--gwc-line-width, 100px);
    background: var(--gwc-line-color, #eeeeee);
}

.gw-connector--right::before {
    left: 30px;
}

.gw-connector--left::before {
    right: 30px;
}

.gw-connectors-yes:not(.gw-connectors-left-yes) > .gw-connector--left,
.gw-connectors-yes:not(.gw-connectors-right-yes) > .gw-connector--right {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .gw-connector,
    .gw-connector * {
        transition: none !important;
        animation: none !important;
    }
}
