.elementor-widget-dc-header-product-search,
.elementor-widget-dc-header-product-search * {
    box-sizing: border-box;
}

.elementor-widget-dc-header-product-search .dc-header-search {
    --dc-hs-width: 100%;
    --dc-hs-height: 44px;
    --dc-hs-bg: #fcfcfc;
    --dc-hs-radius: 22px;
    --dc-hs-text: #1c222e;
    --dc-hs-placeholder: #a7abb3;
    --dc-hs-focus: #0059ab;
    --dc-hs-input-pad: 0 54px 0 22px;
    --dc-hs-button-size: 32px;
    --dc-hs-button-offset: 6px;
    --dc-hs-button-radius: 50%;
    --dc-hs-icon-size: 18px;
    --dc-hs-button-bg: #e6eff7;
    --dc-hs-button-bg-hover: #d9e9f6;
    --dc-hs-button-color: #0059ab;
    --dc-hs-button-color-hover: #0059ab;

    display: flex;
    width: 100%;
    max-width: 100%;
    justify-content: stretch;
}

.elementor-widget-dc-header-product-search .dc-header-search__form {
    position: relative;
    width: var(--dc-hs-width);
    max-width: 100%;
    height: var(--dc-hs-height);
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .05);
    border-radius: var(--dc-hs-radius);
    background: var(--dc-hs-bg);
}

.elementor-widget-dc-header-product-search .dc-header-search__input,
.elementor-widget-dc-header-product-search input.dc-header-search__input {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    margin: 0;
    padding: var(--dc-hs-input-pad);
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0;
    background: transparent !important;
    color: var(--dc-hs-text) !important;
    box-shadow: none !important;
    line-height: 1.3;
    appearance: none;
    -webkit-appearance: none;
}

.elementor-widget-dc-header-product-search .dc-header-search__input::-webkit-search-cancel-button {
    display: none;
    appearance: none;
    -webkit-appearance: none;
}

.elementor-widget-dc-header-product-search .dc-header-search__input::placeholder {
    color: var(--dc-hs-placeholder);
    opacity: 1;
}

.elementor-widget-dc-header-product-search .dc-header-search__form:focus-within {
    outline: 2px solid var(--dc-hs-focus);
    outline-offset: 2px;
}

.elementor-widget-dc-header-product-search .dc-header-search__submit,
.elementor-widget-dc-header-product-search button.dc-header-search__submit {
    position: absolute;
    top: 50%;
    right: var(--dc-hs-button-offset);
    display: inline-flex;
    width: var(--dc-hs-button-size);
    min-width: 0;
    height: var(--dc-hs-button-size);
    min-height: 0;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    transform: translateY(-50%);
    border: 0 !important;
    border-radius: var(--dc-hs-button-radius);
    background: var(--dc-hs-button-bg) !important;
    background-image: none !important;
    color: var(--dc-hs-button-color) !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.elementor-widget-dc-header-product-search .dc-header-search__submit:focus-visible {
    outline: 2px solid var(--dc-hs-focus);
    outline-offset: 2px;
}

@media (hover: hover) and (pointer: fine) {
    .elementor-widget-dc-header-product-search .dc-header-search__submit:hover {
        background: var(--dc-hs-button-bg-hover) !important;
        color: var(--dc-hs-button-color-hover) !important;
    }
}

.elementor-widget-dc-header-product-search .dc-header-search__icon {
    display: inline-flex;
    width: var(--dc-hs-icon-size);
    height: var(--dc-hs-icon-size);
    align-items: center;
    justify-content: center;
    color: currentColor;
    font-size: var(--dc-hs-icon-size);
    line-height: 1;
}

.elementor-widget-dc-header-product-search .dc-header-search__icon svg,
.elementor-widget-dc-header-product-search .dc-header-search__icon i {
    display: block;
    width: 1em;
    height: 1em;
    color: currentColor;
    fill: currentColor;
}

.elementor-widget-dc-header-product-search .dc-header-search__sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
    .elementor-widget-dc-header-product-search .dc-header-search__submit {
        transition: none !important;
    }
}
