
.ce-search-banner {
    --font-size: var(--root-font-size); /* Reset, use REM */
}

.ce-search-banner .banner__content {
    --color-background: var(--root-color--white);
    --border-radius: 0.5rem;
    --box-shadow: 0 0.25rem 1rem 0 rgba(0, 0, 0, 0.16);
}

.ce-search-banner__header {
    --font-family: var(--root-heading-2-family);
    --font-size: var(--root-heading-2-size);
    --font-style: var(--root-heading-2-style);
    --font-weight: var(--root-heading-2-weight);
    --line-height: var(--root-heading-2-line-height);
    --color: var(--root-color--primary);
}

input[type="search"].ce-search-banner__search__input {
    --font-family: inherit;
    --font-size: 1em;
    --font-style: normal;
    --font-weight: var(--root-font-weight--normal);
    --line-height: inherit;
    --color-text: var(--root-color-text);
    --color-border: var(--root-color-border);
    --color-background: var(--root-color--white);
}

input[type="search"].ce-search-banner__search__input::placeholder {
    --color-placeholder: var(--root-color-text-placeholder);
}

input[type="search"].ce-search-banner__search__input:focus {
    --color-border: var(--root-color--primary);
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner__search__icon {
    --color-icon: var(--root-color--primary);
}

.ce-search-banner__search__button {
    --font-family: inherit;
    --font-size: 1em;
    --font-style: normal;
    --font-weight: var(--root-font-weight--bold);
    --line-height: inherit;
    --color-text: var(--root-color--white);
    --color-border: var(--root-color--primary);
    --color-background: var(--root-color--primary);
}

.ce-search-banner__search__button:active,
.ce-search-banner__search__button:focus,
.ce-search-banner__search__button:hover {
    --color-border: var(--root-color--primary-darkest);
    --color-background: var(--root-color--primary-darkest);
}

.ce-search-banner__additional-link {
    /*--font-family: inherit;*/
    /*--font-size: 1rem;*/
    /*--font-style: normal;*/
    /*--font-weight: normal;*/
    /*--line-height: inherit;*/
    /*--color: var(--root-color-text-link);*/
}

.ce-search-banner__additional-link:active,
.ce-search-banner__additional-link:focus,
.ce-search-banner__additional-link:hover {
    /*--color: var(--root-color-text-link--hover);*/
}

.ce-search-banner__additional-link .icon {
    fill: var(--fill, currentColor);
}

/* Primary */
.ce-search-banner.section--color-primary .banner__content {
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-primary .ce-header__header {
    /*--color: var(--root-color--primary);*/
}

.ce-search-banner.section--color-primary input[type="search"].ce-search-banner__search__input {
    /*--color-text: var(--root-color-text);*/
    /*--color-border: var(--root-color-border);*/
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-primary input[type="search"].ce-search-banner__search__input::placeholder {
    /*--color-placeholder: var(--root-color-text-placeholder);*/
}

.ce-search-banner.section--color-primary input[type="search"].ce-search-banner__search__input:focus {
    /*--color-border: var(--root-color--primary);*/
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-primary .ce-search-banner__search__icon {
    /*--color-icon: var(--root-color--primary);*/
}

.ce-search-banner.section--color-primary .ce-search-banner__search__button {
    /*--color-text: var(--root-color--white);*/
    /*--color-border: var(--root-color--primary);*/
    /*--color-background: var(--root-color--primary);*/
}

.ce-search-banner.section--color-primary .ce-search-banner__search__button:active,
.ce-search-banner.section--color-primary .ce-search-banner__search__button:focus,
.ce-search-banner.section--color-primary .ce-search-banner__search__button:hover {
    /*--color-border: var(--root-color--primary-darkest);*/
    /*--color-background: var(--root-color--primary-darkest);*/
}

.ce-search-banner.section--color-primary .ce-search-banner__additional-link {
    /*--color: var(--root-color-text-link);*/
}

.ce-search-banner.section--color-primary .ce-search-banner__additional-link:active,
.ce-search-banner.section--color-primary .ce-search-banner__additional-link:focus,
.ce-search-banner.section--color-primary .ce-search-banner__additional-link:hover {
    /*--color: var(--root-color-text-link--hover);*/
}

/* Secondary */
.ce-search-banner.section--color-secondary .banner__content {
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-secondary .ce-header__header {
    /*--color: var(--root-color--primary);*/
}

.ce-search-banner.section--color-secondary input[type="search"].ce-search-banner__search__input {
    /*--color-text: var(--root-color-text);*/
    /*--color-border: var(--root-color-border);*/
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-secondary input[type="search"].ce-search-banner__search__input::placeholder {
    /*--color-placeholder: var(--root-color-text-placeholder);*/
}

.ce-search-banner.section--color-secondary input[type="search"].ce-search-banner__search__input:focus {
    /*--color-border: var(--root-color--primary);*/
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-secondary .ce-search-banner__search__icon {
    /*--color-icon: var(--root-color--primary);*/
}

.ce-search-banner.section--color-secondary .ce-search-banner__search__button {
    /*--color-text: var(--root-color--white);*/
    /*--color-border: var(--root-color--primary);*/
    /*--color-background: var(--root-color--primary);*/
}

.ce-search-banner.section--color-secondary .ce-search-banner__search__button:active,
.ce-search-banner.section--color-secondary .ce-search-banner__search__button:focus,
.ce-search-banner.section--color-secondary .ce-search-banner__search__button:hover {
    /*--color-border: var(--root-color--primary-darkest);*/
    /*--color-background: var(--root-color--primary-darkest);*/
}

.ce-search-banner.section--color-secondary .ce-search-banner__additional-link {
    /*--color: var(--root-color-text-link);*/
}

.ce-search-banner.section--color-secondary .ce-search-banner__additional-link:active,
.ce-search-banner.section--color-secondary .ce-search-banner__additional-link:focus,
.ce-search-banner.section--color-secondary .ce-search-banner__additional-link:hover {
    /*--color: var(--root-color-text-link--hover);*/
}

/* Support */
.ce-search-banner.section--color-support .banner__content {
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-support .ce-header__header {
    /*--color: var(--root-color--primary);*/
}

.ce-search-banner.section--color-support input[type="search"].ce-search-banner__search__input {
    /*--color-text: var(--root-color-text);*/
    /*--color-border: var(--root-color-border);*/
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-support input[type="search"].ce-search-banner__search__input::placeholder {
    /*--color-placeholder: var(--root-color-text-placeholder);*/
}

.ce-search-banner.section--color-support input[type="search"].ce-search-banner__search__input:focus {
    /*--color-border: var(--root-color--primary);*/
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-support .ce-search-banner__search__icon {
    /*--color-icon: var(--root-color--primary);*/
}

.ce-search-banner.section--color-support .ce-search-banner__search__button {
    /*--color-text: var(--root-color--white);*/
    /*--color-border: var(--root-color--primary);*/
    /*--color-background: var(--root-color--primary);*/
}

.ce-search-banner.section--color-support .ce-search-banner__search__button:active,
.ce-search-banner.section--color-support .ce-search-banner__search__button:focus,
.ce-search-banner.section--color-support .ce-search-banner__search__button:hover {
    /*--color-border: var(--root-color--primary-darkest);*/
    /*--color-background: var(--root-color--primary-darkest);*/
}

.ce-search-banner.section--color-support .ce-search-banner__additional-link {
    /*--color: var(--root-color-text-link);*/
}

.ce-search-banner.section--color-support .ce-search-banner__additional-link:active,
.ce-search-banner.section--color-support .ce-search-banner__additional-link:focus,
.ce-search-banner.section--color-support .ce-search-banner__additional-link:hover {
    /*--color: var(--root-color-text-link--hover);*/
}

/* Grey */
.ce-search-banner.section--color-grey .banner__content {
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-grey .ce-header__header {
    /*--color: var(--root-color--primary);*/
}

.ce-search-banner.section--color-grey input[type="search"].ce-search-banner__search__input {
    /*--color-text: var(--root-color-text);*/
    /*--color-border: var(--root-color-border);*/
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-grey input[type="search"].ce-search-banner__search__input::placeholder {
    /*--color-placeholder: var(--root-color-text-placeholder);*/
}

.ce-search-banner.section--color-grey input[type="search"].ce-search-banner__search__input:focus {
    /*--color-border: var(--root-color--primary);*/
    /*--color-background: var(--root-color--white);*/
}

.ce-search-banner.section--color-grey .ce-search-banner__search__icon {
    /*--color-icon: var(--root-color--primary);*/
}

.ce-search-banner.section--color-grey .ce-search-banner__search__button {
    /*--color-text: var(--root-color--white);*/
    /*--color-border: var(--root-color--primary);*/
    /*--color-background: var(--root-color--primary);*/
}

.ce-search-banner.section--color-grey .ce-search-banner__search__button:active,
.ce-search-banner.section--color-grey .ce-search-banner__search__button:focus,
.ce-search-banner.section--color-grey .ce-search-banner__search__button:hover {
    /*--color-border: var(--root-color--primary-darkest);*/
    /*--color-background: var(--root-color--primary-darkest);*/
}

.ce-search-banner.section--color-grey .ce-search-banner__additional-link {
    /*--color: var(--root-color-text-link);*/
}

.ce-search-banner.section--color-grey .ce-search-banner__additional-link:active,
.ce-search-banner.section--color-grey .ce-search-banner__additional-link:focus,
.ce-search-banner.section--color-grey .ce-search-banner__additional-link:hover {
    /*--color: var(--root-color-text-link--hover);*/
}

.ce-search-banner__search__form {
    position: relative;
    display: flex;
    align-items: center;
    height: 3rem;
    margin-top: 1.5rem;
}

input[type="search"].ce-search-banner__search__input {
    line-height: 1.5;
    max-width: initial;
    height: 100%;
    padding: 0.625rem 0.75rem 0.625rem 2.75rem;
    transition: border-color 200ms;
    border-width: 0.125rem;
    border-style: solid;
    border-radius: 0.125rem;
}

input[type="search"].ce-search-banner__search__input:focus {
    box-shadow: initial;
}

.ce-search-banner__search__button {
    height: 100%;
    padding: 0 0.625rem;
    position: absolute;
    right: 0;
    cursor: pointer;
    border-width: 0.125rem;
    border-style: solid;
    border-radius: 0.125em;
}

.ce-search-banner__search__icon {
    position: absolute;
    left: 0.75rem;
    width: 1.5rem;
    height: 1.5rem;
}

.ce-search-banner__additional-link {
    display: inline-block;
    margin-top: 1rem;
}

/* Responsive */
@media (max-width: 61.999rem) {
    .ce-search-banner__search {
        position: absolute;
        z-index: -1;
        right: 0;
        left: 0;
        margin: 0;
        transform: translateY(5rem);
    }
}

@media (min-width: 62rem) {
    .ce-search-banner__search {
        overflow: visible;
        padding-left: 1rem;
    }

    .ce-search-banner__search__form {
        width: 100%;
    }

    .ce-search-banner.banner.banner--layout-1,
    .ce-search-banner.banner.banner--layout-1 > .flow,
    .ce-search-banner.banner.banner--layout-1 > .flow > .flow,
    .ce-search-banner.banner.banner--layout-1 .banner__content {
        display: flex;
    }

    .ce-search-banner.banner.banner--layout-1::before {
        content: '';
        float: left;
        width: 0.063rem;
        margin-left: -0.063rem;
    }

    .ce-search-banner.banner.banner--layout-1::after {
        content: '';
        display: table;
        clear: both;
    }

    .ce-search-banner.banner--layout-1::before {
        padding-top: calc(100% * 1/3);
    }

    .ce-search-banner.banner.banner--layout-1 > .flow,
    .ce-search-banner.banner.banner--layout-1 > .flow > .flow,
    .ce-search-banner.banner.banner--layout-1 .banner__content {
        width: 100%;
    }

    .ce-search-banner.banner.banner--layout-1 .banner__visual {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }

    .ce-search-banner.banner--layout-1 .banner__content {
        align-items: center;
    }
}

@media (min-width: 100rem) {
    .ce-search-banner.banner--layout-1::before {
        padding-top: calc(100% * 1/4);
    }
}

.ce-search-banner {
    font-size: var(--font-size, 1rem); /* Reset, use REM */
}

.ce-search-banner .banner__content {
    background-color: var(--color-background, white);
}

.ce-search-banner__header {
    font-family: var(--font-family, inherit);
    font-size: var(--font-size, 1.777em);
    font-style: var(--font-style, normal);
    font-weight: var(--font-weight, normal);
    color: var(--color, black);
    line-height: var(--line-height, 1.25);
}

input[type="search"].ce-search-banner__search__input {
    font-family: var(--font-family, inherit);
    font-size: var(--font-size, 1em);
    font-style: var(--font-style, normal);
    font-weight: var(--font-weight, normal);
    line-height: var(--line-height, inherit);
    color: var(--color-text, #0349D1);
    border-color: var(--color-border, #d9d9d9);
    background-color: var(--color-background, white);
}

input[type="search"].ce-search-banner__search__input::placeholder {
    color: var(--color-placeholder, hsl(0, 0%, 41%));
}

.ce-search-banner__search__button {
    font-family: var(--font-family, inherit);
    font-size: var(--font-size, 1em);
    font-weight: var(--font-weight, bold);
    font-style: var(--font-style, normal);
    line-height: var(--line-height, inherit);
    color: var(--color-text, #fff);
    border-color: var(--color-border, #000714);
    background-color: var(--color-background, #022979);
}

.ce-search-banner__search__icon {
    fill: var(--color-icon, #022979);
}

.ce-search-banner__additional-link {
    font-family: var(--font-family, inherit);
    font-size: var(--font-size, 1rem);
    font-style: var(--font-style, normal);
    font-weight: var(--font-weight, normal);
    line-height: var(--line-height, inherit);
    color: var(--color, black);
}

.ce-search-banner__additional-link .icon {
    fill: var(--fill, currentColor);
}

@media (min-width: 62rem) {
    .ce-search-banner.banner--layout-0 .banner__content,
    .ce-search-banner.banner--layout-1 .banner__content,
    .ce-search-banner.banner--layout-2 .banner__content {
        background-color: transparent;
    }

    .ce-search-banner.banner--layout-0 .banner__content-frame,
    .ce-search-banner.banner--layout-1 .banner__content-frame,
    .ce-search-banner.banner--layout-2 .banner__content-frame {
        background-color: var(--color-background, white);
        border-radius: var(--border-radius, 0.5rem);
        box-shadow: var(--box-shadow, 0 0.25rem 1rem 0 rgba(0, 0, 0, 0.16));
    }
}
