.elementor-widget-dc-image-cta-card .dc-image-cta-card {
    --dc-card-border-width: 1px;
    --dc-card-border-color: rgba(0, 0, 0, 0);
    --dc-card-border-color-hover: #0059ab;
    --dc-transition-duration: 220ms;
    --dc-button-width: 137px;
    --dc-button-min-height: 40px;
    --dc-button-gap: 12px;
    --dc-button-radius: 20px;
    --dc-button-border-width: 1px;
    --dc-button-right: 0px;
    --dc-button-bottom: 0px;
    --dc-icon-size: 10px;
    --dc-icon-normal-rotation: 45deg;
    --dc-icon-hover-rotation: 0deg;
    --dc-button-text: #0059ab;
    --dc-button-bg: #ffffff;
    --dc-button-border: #0059ab;
    --dc-button-text-hover: #ffffff;
    --dc-button-bg-hover: #0059ab;
    --dc-button-border-hover: #0059ab;

    position: relative;
    display: block;
    width: 100%;
    max-width: 424px;
    box-sizing: border-box;
    color: inherit;
    text-decoration: none;
    background: transparent;
    isolation: isolate;
}

.elementor-widget-dc-image-cta-card a.dc-image-cta-card,
.elementor-widget-dc-image-cta-card a.dc-image-cta-card:visited,
.elementor-widget-dc-image-cta-card a.dc-image-cta-card:hover,
.elementor-widget-dc-image-cta-card a.dc-image-cta-card:focus,
.elementor-widget-dc-image-cta-card a.dc-image-cta-card:active {
    color: inherit;
    text-decoration: none;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__media {
    position: relative;
    width: 100%;
    aspect-ratio: 424 / 260;
    overflow: visible;
    box-sizing: border-box;
    isolation: isolate;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__image {
    width: 100%;
    height: 100%;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 424 260' preserveAspectRatio='none'%3E%3Cpath fill='%23fff' d='M424 188C424 201.255 413.255 212 400 212H303C289.745 212 279 222.745 279 236C279 249.255 268.255 260 255 260H24C10.7452 260 0 249.255 0 236V24C0 10.7452 10.7452 0 24 0H400C413.255 0 424 10.7452 424 24V188Z'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: 100% 100%;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 424 260' preserveAspectRatio='none'%3E%3Cpath fill='%23fff' d='M424 188C424 201.255 413.255 212 400 212H303C289.745 212 279 222.745 279 236C279 249.255 268.255 260 255 260H24C10.7452 260 0 249.255 0 236V24C0 10.7452 10.7452 0 24 0H400C413.255 0 424 10.7452 424 24V188Z'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: 100% 100%;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__image img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    margin: 0;
    border: 0;
    object-fit: cover;
    object-position: center center;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__shape-border {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__shape-border path {
    fill: none;
    stroke: var(--dc-card-border-color);
    stroke-width: var(--dc-card-border-width);
    vector-effect: non-scaling-stroke;
    transition: stroke var(--dc-transition-duration) ease;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__button,
.elementor-widget-dc-image-cta-card a.dc-image-cta-card__button,
.elementor-widget-dc-image-cta-card a.dc-image-cta-card__button:visited {
    position: absolute;
    right: var(--dc-button-right);
    bottom: var(--dc-button-bottom);
    z-index: 4;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--dc-button-gap);
    width: var(--dc-button-width);
    min-height: var(--dc-button-min-height);
    margin: 0;
    padding: 0 18px;
    box-sizing: border-box;
    border: var(--dc-button-border-width) solid var(--dc-button-border);
    border-radius: var(--dc-button-radius);
    background: var(--dc-button-bg);
    color: var(--dc-button-text);
    line-height: 1.2;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
    transition:
        color var(--dc-transition-duration) ease,
        background-color var(--dc-transition-duration) ease,
        border-color var(--dc-transition-duration) ease;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card:not(.dc-image-cta-card--whole-link) span.dc-image-cta-card__button {
    cursor: default;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__icon-stack {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--dc-icon-size);
    height: var(--dc-icon-size);
    flex: 0 0 var(--dc-icon-size);
    font-size: var(--dc-icon-size);
    line-height: 1;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__icon {
    position: absolute;
    inset: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: currentColor;
    transition:
        opacity var(--dc-transition-duration) ease,
        transform var(--dc-transition-duration) ease;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__icon--normal {
    opacity: 1;
    transform: rotate(var(--dc-icon-normal-rotation));
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__icon--hover {
    opacity: 0;
    transform: rotate(var(--dc-icon-hover-rotation));
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card__icon i,
.elementor-widget-dc-image-cta-card .dc-image-cta-card__icon svg {
    display: block;
    width: 1em;
    height: 1em;
    font-size: 1em;
    fill: currentColor;
}

@media (hover: hover) and (pointer: fine) {
    .elementor-widget-dc-image-cta-card .dc-image-cta-card:hover .dc-image-cta-card__shape-border path {
        stroke: var(--dc-card-border-color-hover);
    }

    .elementor-widget-dc-image-cta-card .dc-image-cta-card:hover .dc-image-cta-card__button {
        border-color: var(--dc-button-border-hover);
        background: var(--dc-button-bg-hover);
        color: var(--dc-button-text-hover);
    }

    .elementor-widget-dc-image-cta-card .dc-image-cta-card:hover .dc-image-cta-card__icon--normal {
        opacity: 0;
    }

    .elementor-widget-dc-image-cta-card .dc-image-cta-card:hover .dc-image-cta-card__icon--hover {
        opacity: 1;
    }
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card:focus-within .dc-image-cta-card__shape-border path,
.elementor-widget-dc-image-cta-card .dc-image-cta-card:active .dc-image-cta-card__shape-border path {
    stroke: var(--dc-card-border-color-hover);
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card:focus-within .dc-image-cta-card__button,
.elementor-widget-dc-image-cta-card .dc-image-cta-card:active .dc-image-cta-card__button {
    border-color: var(--dc-button-border-hover);
    background: var(--dc-button-bg-hover);
    color: var(--dc-button-text-hover);
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card:focus-within .dc-image-cta-card__icon--normal,
.elementor-widget-dc-image-cta-card .dc-image-cta-card:active .dc-image-cta-card__icon--normal {
    opacity: 0;
}

.elementor-widget-dc-image-cta-card .dc-image-cta-card:focus-within .dc-image-cta-card__icon--hover,
.elementor-widget-dc-image-cta-card .dc-image-cta-card:active .dc-image-cta-card__icon--hover {
    opacity: 1;
}

.elementor-widget-dc-image-cta-card a.dc-image-cta-card:focus-visible,
.elementor-widget-dc-image-cta-card a.dc-image-cta-card__button:focus-visible {
    outline: 2px solid var(--dc-button-border-hover);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    .elementor-widget-dc-image-cta-card .dc-image-cta-card__shape-border path,
    .elementor-widget-dc-image-cta-card .dc-image-cta-card__button,
    .elementor-widget-dc-image-cta-card .dc-image-cta-card__icon {
        transition-duration: 0ms;
    }
}
