﻿/* WorkSans Regular */
@font-face {
    font-family: "WorkSans-Regular";
    src: url("../fonts/WorkSans-Regular.ttf") format("woff2");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
/* WorkSans Medium */
@font-face {
    font-family: "WorkSans-Medium";
    src: url("../fonts/WorkSans-Medium.ttf") format("woff2");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
/* WorkSans Bold */
@font-face {
    font-family: "WorkSans-Italic";
    src: url("../fonts/WorkSans-Italic.ttf") format("woff2");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
/* WorkSans Bold */
@font-face {
    font-family: "WorkSans-Bold";
    src: url("../fonts/WorkSans-Bold.ttf") format("woff2");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
:root {
    --lightblue: #53B8E8;
    --lightpurple: #A77BCA;
    --progressing-green: #7ABF99;
    --progressing-blue: #C9EDF2;
    --form-red: #D85A67;
}
body {
    background-color: #E5E5E5;
    font-family: 'Lato', sans-serif;
}
a:hover {
    text-decoration: none;
}
textarea {
    resize: none;
}
.bkg-white {
    background-color: #FFF;
}
p {
    margin: 0;
}
.btn-submit {
    text-transform: uppercase;
    border: 0;
    background: #00769c;
    color: #fff;
    font-size: 16px;
    font-weight: normal;
    border-radius: 3px;
    cursor: pointer;
}
.standardform-container {
    max-width: 600px;
    margin: 30px auto;
    background-color: #FFFFFF;
    padding: 20px;
}
.standardform-container .header {
    margin-bottom: 2.5rem;
}
.standardform-container .logo img {
    width: 389px;
    max-width: 100%;
}
.standardform-footer {
    text-align: center;
    padding-top: 20px;
}
.standardform-footer a {
    color: #000000;
    font-size: 11px;
}
.standardform-container a + a::before {
    content: '|';
    padding: 0.5rem;
}
.unsubscribe-option label {
    margin: 0;
    margin-left: 0.25rem;
}
.unsubscribe-form .btn-submit {
    width: 120px;
    height: 30px;
    line-height: 26px;
}
.btn-submit:disabled {
    cursor: wait;
    opacity: 0.7;
}

input:invalid {
    border-color: red;
}

.place-holder {
    color: gray;
    padding-left:8px;
}
/* ================================================================ Kendo ================================================================ */
.k-multiselect {
    border-radius: .25rem;
    border: 1px solid #ced4da;
}

.k-multiselect-wrap .k-input {
    min-height: 2.5rem;
}

.error-message {
    color: red;
    padding-left: 3px;
}

.error-active {
    border-color: red;
}

.k-input, .k-picker {
    font-size: 1rem !important;
}

.k-dropdown-wrap .k-readonly, .k-multiselect-wrap .k-readonly {
    opacity: .75;
}

#inputExpectedDueDate:disabled {
    background: #dddddd;
}
.k-input:focus, .k-input.k-focus {
    box-shadow: unset !important;
    border-color: none;
}
/* ================================================================ Preference Form - Master template  ================================================================ */
.pref-ctr-master {
    min-height: 100vh;
    background-color: #FFF;
    color: #272A2C;
    font-family: "WorkSans-Regular", sans-serif;
}
.pref-ctr-master h1,
.pref-ctr-master h2 {
    font-family: "WorkSans-Medium", sans-serif;
    color: #656565;
}
.pref-ctr-master h1 {
    font-size: 3rem;
    margin-bottom: 1rem;
}
.pref-ctr-master h2 {
    font-size: 2.125rem;
    margin-bottom: 2rem;
}
.pref-ctr-master a {
    text-decoration: underline;
    color: #36647A;
    word-wrap: break-word;
}
.pref-ctr-master .btn-primary,
.pref-ctr-master .btn-secondary {
    font-family: "WorkSans-Medium", sans-serif;
    width: 100%;
    padding: .5rem;
    border-radius: 24px;
}
.pref-ctr-master .btn-primary {
    color: #FFF;
    border: 1px solid #54B8E8 ;
    background-color: #54B8E8;
    max-width: 244px;
}
.pref-ctr-master .btn-secondary {
    color: var(--lightpurple);
    border: 1px solid var(--lightpurple);
    background-color: #FFF; 
}
.pref-ctr-master img {
    max-width: 100%;
}
.pref-ctr-master input {
    font-family: "WorkSans-Medium", sans-serif;
}
.pref-ctr-master ::placeholder {
    color: #ABAAAB;
    font-family: "WorkSans-Italic", sans-serif;
}
.pref-ctr-master [type=text]:not(.k-input),
.pref-ctr-master [type=number],
.pref-ctr-master select {
    border: 1px solid var(--progressing-blue);
    padding: 1rem 1.25rem;
    line-height: 1;
    border-radius: 5px;
}
.pref-ctr-master .error-dropdown .k-dropdown-wrap {
    border-color: var(--form-red);
}
.pref-ctr-master select {
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    position: relative;
    padding: 1.09375rem 2.5rem 1.09375rem 1.25rem;
}
.pref-ctr-master .dropdown .arrow {
    position: absolute;
    right: 1rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    line-height: 0;
    cursor: pointer;
}

.pref-ctr-master [type=checkbox],
.pref-ctr-master [type=radio] {
    background-color: #FFF;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 2px;
    width: 20px;
    height: 20px;
    border: 2px solid var(--lightblue);
}
.pref-ctr-master [type=radio] {
    border-radius: 50%;
    position: relative;
}
.pref-ctr-master [type=checkbox]:checked {
    background-color: var(--lightblue);
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/></svg>");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 155%;
}
.pref-ctr-master [type=radio]:checked::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    inset: 50% 0 0 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: var(--lightblue);
    border-radius: 50%;
}
.pref-ctr-master .error-message {
    color: var(--form-red);
    font-family: "WorkSans-Italic", sans-serif;
    margin-bottom: -1.5rem;
    min-height: 1.5rem;
}
.pref-ctr-master input[type=text].error-active {
    border-color: var(--form-red);
}
.pref-ctr-btn-area {
    row-gap: 1rem;
    margin-top: 3rem;
}
.pref-ctr-btn-area .btn-primary {
    max-width: unset;
}
.pref-ctr-wrapper {
    min-height: 554px;
    margin-bottom: 6rem;
}
/* ================================================================ Preference Form - Header & info area  ================================================================ */
.pref-ctr-header {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 50% 1rem minmax(auto, 50%);
    grid-template-columns: 50% minmax(auto, 50%);
    -ms-grid-rows: 180px 1fr;
    grid-template-rows: 180px 1fr;
    -webkit-column-gap: 1rem;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-bottom: 3rem;
}
.pref-ctr-header > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
}
.pref-ctr-header > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
}
.pref-ctr-header > *:nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
}
.pref-ctr-header > *:nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
}
.pref-ctr-header-brand {
    -ms-flex-line-pack: center;
    align-content: center;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
}
.pref-ctr-header-brand img {
    max-height: 55px;
    max-width: 270px;
    object-fit: contain;
    object-position: left;
}
.pref-ctr-header > img {
    -ms-grid-column: 2;
    grid-area: span 2 / 2;
    justify-self: flex-end;
}
/* ================================================================ Preference Form - Progress bar  ================================================================ */
.pref-ctr-progress {
    max-width: 700px;
    margin: 0 auto 2rem;
}
.pref-ctr-progress ul {
    --line-thickness: 5px;
    --progress-circle-thickness: 7.5px;
    color: var(--lightblue);
    padding: 0;
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
}
.pref-ctr-progress li {
    -ms-flex-preferred-size: 100px;
    flex-basis: 100px;
}
.pref-ctr-progress span {
    display: block;
    text-align: center;
    padding-top: calc(1.5rem + var(--line-thickness));
    position: relative;
}
.pref-ctr-progress span::before {
    content: "";
    display: inline-block;
    border-radius: 50%;
    padding: var(--progress-circle-thickness);
    background-color: var(--progressing-green);
    position: absolute;
    bottom: calc(100% - var(--line-thickness) / 2);
    left: 50%;
    -webkit-transform: translate(-50%, 50%);
    -ms-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%);
}
.pref-ctr-progress .active {
    font-family: "WorkSans-Bold", sans-serif;
}
.pref-ctr-progress .active::before {
    content: "";
    display: block;
    position: absolute;
    height: var(--line-thickness);
    background-color: var(--progressing-blue);
    top: 0;
    left: 68px;
    right: 68px;
    border-radius: 2px;
}
.pref-ctr-progress .active:last-child::before {
    background-color: var(--progressing-green);
}
.pref-ctr-progress .active span::before {
    padding: 5px;
    border: 5px solid #FFF;
    background-color: var(--lightblue);
    -webkit-box-shadow: 0 0 5px -1px var(--lightblue);
    box-shadow: 0 0 5px -1px var(--lightblue);
}
.pref-ctr-progress .active ~ li span::before {
    background-color: var(--progressing-blue);
}
/* ================================================================ Preference Form - Form area  ================================================================ */
.pref-ctr-form-area {
    max-width: 548px;
    margin: 0 auto;
    position: relative;
}
.pref-ctr-form-area h2 {
    text-align: center;
}
.pref-ctr-form-area > div {
    margin-bottom: 2rem;
}
.pref-ctr-form-area label,
.pref-ctr-form-area .form-title {
    font-family: "WorkSans-Medium", sans-serif;
}
.pref-ctr-form-area .form-title {
    margin-bottom: .5rem;
}
.pref-ctr-input-list > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    margin: 1rem 0;
}
.pref-ctr-input-list label {
    font-family: "WorkSans-Regular", sans-serif;
}
.pref-ctr-input-list input {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-top: .125rem;
}
.pref-ctr-input-list.split {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 1rem;
    margin-block: .5rem 0;
}
.pref-ctr-input-list.split > div {
    margin: 0;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
}
.pref-ctr-master .hide-clear .k-clear-value {
    display: none;
}
.pref-ctr-master .k-dropdown-wrap {
    background-color: transparent;
    background-image: unset;
    border: 1px solid var(--progressing-blue);
    border-radius: 5px;
}
.pref-ctr-master .k-dropdown-wrap .k-input {
    padding: 1rem 0 1rem 1.25rem;
    height: unset;
}
.pref-ctr-master .k-select {
    background-color: unset;
    background-image: unset;   
}
.pref-ctr-master .k-combobox {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}
.pref-ctr-master .k-combobox .k-clear-value {
    padding: 0px 0px;
    border-width: 0 0 0 0px;
    box-sizing: border-box;
    flex: 0 0 auto;
    text-align: center;
    -ms-flex-preferred-size: 35%;
    flex-basis: 35%;
    max-width: 40px;
    max-height: 16px;
    margin-top: 1.4em;
}
.pref-ctr-master .multidropdown.error-active {
    border: 1px solid var(--form-red);
    border-radius: 5px;
}
.pref-ctr-master .multidropdown .k-combobox:last-child {
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2;
    -ms-flex-preferred-size: 65%;
    flex-basis: 65%;
}
.pref-ctr-master .k-dropdown .k-select,
.pref-ctr-master .k-combobox .k-select {
    -ms-flex-preferred-size: 35%;
    flex-basis: 35%;
    max-width: 57px;
}
.pref-ctr-master .k-i-arrow-60-down {
    width: 23px;
}
.pref-ctr-master .k-i-arrow-60-down::before,
.pref-ctr-master .k-i-arrow-60-down::after {
    content: "";
    display: inline-block;
    width: 11.5px;
    height: 2px;
    position: relative;
    background-color: var(--lightblue);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    vertical-align: middle;
}
.pref-ctr-master .k-i-arrow-60-down::before {
    left: 2px;
}
.pref-ctr-master .k-i-arrow-60-down::after {
    right: 2px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.pref-ctr-input-list > div:last-child,
.pref-ctr-input-list label {
    margin-bottom: 0;
}
.pref-ctr-form-area .summary-edit {
    position: absolute;
    top: 4.125rem;
    right: 0;
    padding-inline: 0;
}
.pref-ctr-form-area .summary-edit::before {
    content: "";
    display: inline-block;
    margin-right: .25rem;
    -webkit-mask-image: url(../images/lnr-pencil.svg);
    mask-image: url(../images/lnr-pencil.svg);
    width: 16px;
    height: 16px;
    background-color: #62B7DE;
    -webkit-mask-size: 16px;
    mask-size: 16px;
    vertical-align: text-top;
}
.pref-ctr-form-area .terms-agreement {
    margin: 3rem 0 4rem;
}
.pref-ctr-form-area .terms-agreement .form-group {
    padding-left: 2.25rem;
    margin-block: 1rem 0;
}
.pref-ctr-form-area .terms-agreement .error-message {
    margin-bottom: -.5rem;
}
.pref-ctr-form-area .terms-agreement .error-message:empty {
    min-height: unset;
    margin-bottom: 0;
}
.pref-ctr-form-area .terms-agreement [type=checkbox] {
    position: absolute;
    left: 0;
    margin-top: .25rem;
}
.pref-ctr-form-area .terms-agreement label {
    font-family: "WorkSans-Regular", sans-serif;
    display: block;
    margin-bottom: 0;
}
.pref-ctr-form-area .terms-agreement + .mx-auto {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.k-list-scroller {
    border: 1px solid #A9A9AA;
}
.k-reset {
    margin: 0;
    padding: 0;
    border-width: 0;
    outline: 0;
    text-decoration: none;
    font: inherit;
    list-style: none;
}
.k-list .k-item {
    font-family: "WorkSans-Regular", sans-serif;
    background-color: #fff;
    color: #272A2C;
    border: none;
    padding: .75rem 1rem !important;
}
.k-list .k-item:hover, .k-list .k-item.k-state-hover, .k-list-optionlabel:hover, .k-list-optionlabel.k-state-hover {
    color: #272A2C;
    background-color: #ebebeb;
}
.k-list .k-item:hover.k-state-selected, .k-list .k-item.k-state-hover.k-state-selected, .k-list-optionlabel:hover.k-state-selected, .k-list-optionlabel.k-state-hover.k-state-selected {
    color: #272A2C;
    background-color: var(--progressing-blue);
}
.k-list .k-item:focus, .k-list .k-item.k-state-focused, .k-list-optionlabel:focus, .k-list-optionlabel.k-state-focused {
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.12)
}
.k-list .k-item.k-state-selected, .k-list-optionlabel.k-state-selected {
    color: #272A2C;
    background-color: var(--progressing-blue);
}

/* ================================================================ Preference Form - Footer  ================================================================ */
.pref-ctr-footer-wrapper {
    padding-bottom: 2rem;
}
.pref-ctr-footer {
    border: 1px solid #DDD;
    border-radius: 32px;
    padding: 1rem 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.pref-ctr-footer .brand {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-right: 1px solid #DDD;
    margin-block: 7.5px;;
}
.pref-ctr-footer .brand img {
    max-height: 28px;
}
.pref-ctr-footer-text {
    color: #666;
    font-size: .75rem;
    margin-inline: 1.5rem .5rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
.pref-ctr-footer hr {
    display: none;
}
.pref-ctr-footer > div:last-child {
    margin-left: 1.5rem;
    text-align: center;
}
.pref-ctr-footer > div:last-child img {
    max-width: 65px;
}
@media (max-width: 991px) {
    .pref-ctr-master h1 {
        font-size: 2rem;
    }
    .pref-ctr-wrapper {
        min-height: 400px;
        margin-bottom: 3rem;
    }
    .pref-ctr-header {
        -ms-grid-rows: auto;
        -ms-grid-columns: auto unset 1fr;
        grid-template: auto / 1fr auto;
        -webkit-column-gap: unset;
        -moz-column-gap: unset;
        column-gap: unset;
        row-gap: 2.25rem;
    }
    .pref-ctr-header-brand {
        width: 100%;
    }
    .pref-ctr-header-brand img {
        min-width: 130px;
        width: clamp(130px, 55%, 195px);
    }
    .pref-ctr-header > img {
        grid-row: unset;
        max-height: 86px;
    }
    .pref-ctr-input-list.split > div {
        max-width: unset;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }
    .pref-ctr-master .k-dropdown-wrap .k-input {
        padding-left: 1rem;
    }
    .pref-ctr-progress,
    .pref-ctr-form-area .terms-agreement {
        margin-bottom: 3rem;
    }
    .pref-ctr-footer-wrapper {
        padding-bottom: 1rem;
    }
    .pref-ctr-footer {
        display: block;
    }
    .pref-ctr-footer .brand {
        display: inline-flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        row-gap: 1rem;
        border-right: unset;
        margin: 0;
    }
    .pref-ctr-footer .brand img {
        max-height: unset;
        width: clamp(130px, 50%, 200px);
    }
    .pref-ctr-footer hr {
        display: block;
        margin: 1.25rem 0;
    }
    .pref-ctr-header div:last-child {
        -ms-grid-column-span: 2;
        grid-column: span 2;
    }
    .pref-ctr-footer-text {
        margin: 1rem 0;
    }
    .pref-ctr-footer > div:last-child {
        margin-left: 0;
    }
    .pref-ctr-footer > div:last-child img {
        max-width: unset;
        width: clamp(65px, 23%, 105px);
    }
}