:root {
    --autocomplete-selected-item-background-color: var(--ita-colors-background-contrast-tertiary);
    --datepicker-primary: var(--ita-colors-background-contrast-tertiary);
    --datepicker-primary-alt-1: var(--ita-colors-border-contrast-primary);
    --datepicker-primary-alt-2: var(--ita-colors-border-contrast-secondary);
}
@font-face {
    font-family: "TYPO_1";
    src: url("../../fonts/COMMON/Inter/Inter-Medium.woff2") format("woff2"), url("../../fonts/COMMON/Inter/Inter-Medium.woff") format("woff");
    font-style: normal;
    font-display: swap;
    font-weight: 500
}
@font-face {
    font-family: "TYPO_2";
    src: url("../../fonts/COMMON/Inter/Inter-Bold.woff2") format("woff2"), url("../../fonts/COMMON/Inter/Inter-Bold.woff") format("woff");
    font-style: normal;
    font-display: swap;
    font-weight: 700;
}
@font-face {
    font-family: "TYPO_3";
    src: url("../../fonts/COMMON/Inter/Inter-Black.woff2") format("woff2"), url("../../fonts/COMMON/Inter/Inter-Black.woff") format("woff");
    font-style: normal;
    font-display: swap;
    font-weight: 900;
}
/* Match font-family with font-weight */
.ff-1 {
    font-weight: 500;
}
.ff-2 {
    font-weight: 700;
}
.ff-3 {
    font-weight: 900;
}
/* BOOKING */
.BOOKING__GET_A_QUOTE_MORE_INFO .BUTTON_SECONDARY {
    border-color: var(--ita-colors-text-contrast-primary);
    color: var(--ita-colors-text-contrast-primary);
}

@media (max-width: 959px) {
    .BOOKING__SWAP_BC_1 {
        background-color: var(--ita-colors-background-base-white);
    }
}
/* PRODUCT CARD SKELETON */
@keyframes animLoading {
    0% { opacity: 0.5 }
    100% { opacity: 1 }
}
.PRODUCT_CARD_PLACEHOLDER__ANIMATION {
    animation: animLoading 0.8s 0s infinite linear alternate;
}
.PRODUCT_CARD_PLACEHOLDER {
    background-color: var(--ita-colors-background-base-tertiary);
    border-radius: 5px;
    height: 1em;
}

/* FOOTER */
.FOOTER {
    background-color: var(--ita-colors-background-base-tertiary);
}
/* NAV PRIMARY */
.NAV_PRIMARY__MENU_PHONE_LINK {
    background-color: var(--ita-colors-background-base-tertiary);
}

/* BOOKING SEARCH FORM ALT */
@media (min-width: 960px)  {
    .BSEARCH_FORM_ALT .BSEARCH_FORM,
    .BSEARCH_FORM_ALT .BSEARCH_FORM__MAIN{
        background-color: transparent;
    }
}
.BSEARCH_FORM_ALT #bSF_uiStartButton {
    display: none;
}

/* BOOKING SEARCH FORM */
.BSEARCH_FORM,
.BSEARCH_FORM__MAIN {
    background-color: var(--ita-colors-background-contrast-tertiary);
    color: var(--ita-colors-text-contrast-primary);
}
.BSEARCH_FORM__SINGLE_INPUT_A {
    font-family: var(--ita-fontFamilies-1);
    font-weight: 500;
    background-color: var(--ita-colors-background-base-secondary);
}
.BSEARCH_FORM__SINGLE_INPUT_A:focus,
.BSEARCH_FORM__SINGLE_INPUT_A.focus,
.BSEARCH_FORM__SINGLE_INPUT_A:focus ~ label,
.BSEARCH_FORM__SINGLE_INPUT_A.focus ~ label {
    background-color: var(--ita-colors-background-base-white);
    outline: none;
}
body.xs .BSEARCH_FORM__SINGLE_INPUT_A:not(:disabled),
body.xs .BSEARCH_FORM__SINGLE_INPUT_A:not(:disabled) ~ label,
body.sm .BSEARCH_FORM__SINGLE_INPUT_A:not(:disabled),
body.sm .BSEARCH_FORM__SINGLE_INPUT_A:not(:disabled) ~ label {
    background-color: var(--ita-colors-background-base-white);
}
.BSEARCH_FORM__SINGLE_INPUT_A_LABEL {
    font-family: var(--ita-fontFamilies-1);
    font-weight: 500;
}
.BSEARCH_FORM__SINGLE_INPUT_A_LABEL [class^="icon-"] {
    color: var(--ita-colors-background-contrast-tertiary);
}
.BSEARCH_FORM__SINGLE_INPUT_A_BORDER_RIGHT_COLOR_ALT {
    border-right-color: var(--ita-colors-background-contrast-tertiary);
}
.BSEARCH_FORM__SUBMIT_BTN_DESKTOP {
    background-color: var(--ita-colors-background-base-primary);
    border-color: var(--ita-colors-background-base-primary);
    color: var(--ita-colors-text-base-primary);
}
.BSEARCH_FORM__SUBMIT_BTN_DESKTOP:disabled {
    background-color: var(--ita-colors-background-base-secondary);
    border-color: var(--ita-colors-background-base-secondary);
    color: var(--ita-colors-text-contrast-tertiary);
}
.BSEARCH_FORM__STORE_SEARCH_TITLE_AMOUNT {
    color: var(--ita-colors-alert-success);
}
.BSEARCH_FORM__STORE_SEARCH_DISTANCE_ICON,
.BSEARCH_FORM__STORE_SEARCH_EMAIL_ICON {
    color: var(--ita-colors-alert-success);
}
.BSEARCH_FORM__STORE_SEARCH_DISTANCE_TEXT {
    color: var(--ita-colors-text-contrast-tertiary);
}
.BSEARCH_FORM__STORE_INPUT_CTN {
    border-color: var(--ita-colors-border-contrast-primary);
}
.BSEARCH_FORM__STORE_SEARCH_AUTOCOMPLETE_MY_POSITION {
    color: var(--ita-colors-alert-success);
}
#bsearch_form .BSEARCH_FORM__STORE_SEARCH_SELECTED_STORE_ITEM {
    background-color: var(--ita-colors-background-contrast-primary);
    color: var(--ita-colors-text-contrast-primary);
}
.BSEARCH_FORM__STORE_SEARCH_SELECTED_STORE_ITEM .BSEARCH_FORM__STORE_SEARCH_DISTANCE_ICON,
.BSEARCH_FORM__STORE_SEARCH_SELECTED_STORE_ITEM .BSEARCH_FORM__STORE_SEARCH_DISTANCE_TEXT {
    color: currentColor
}
#bSF_uiDateStartContent button:has(.icon-system_close),
#bSF_uiDateEndContent button:has(.icon-system_close) {
    display: none;
}
.BSEARCH_FORM__STORE_SEARCH_SCHEDULE > li:first-child {
    order: 1;
}
/* FORMS */

/* 
    Input badges
    Radios and checkboxes variants
*/
input.INPUT_BADGE ~ label {
    background-color: var(--ita-colors-background-base-white);
    color: var(--ita-colors-text-base-primary);
}
input.INPUT_BADGE:checked ~ label {
    background-color: var(--ita-colors-background-contrast-tertiary);
    color: var(--ita-colors-text-contrast-primary);
}
input.INPUT_BADGE ~ label .INPUT_BADGE__ICON {
    display: none;
}
input.INPUT_BADGE:checked ~ label .INPUT_BADGE__ICON {
    display: inherit;
}
input.INPUT_BADGE:disabled ~ label {
    background-color: var(--ita-colors-background-base-primary);
    color: var(--ita-colors-text-contrast-tertiary);
}

/* Radio inputs */
input.RADIO_INPUT ~ label {
    color: var(--ita-colors-text-base-primary);
}
input.RADIO_INPUT:checked ~ label .RADIO_INPUT__CHECKZONE {
    border-color: var(--ita-colors-text-base-primary);
}
input.RADIO_INPUT:checked ~ label .RADIO_INPUT__CHECKZONE::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: var(--ita-spacings-3);
    height: var(--ita-spacings-3);
    background-color: var(--ita-colors-text-base-primary);
    border-radius: 100%;
}

/* Checkbox inputs */
input.CHECKBOX_INPUT ~ label {
    color: var(--ita-colors-text-base-primary);
}
input.CHECKBOX_INPUT:checked ~ label .CHECKBOX_INPUT__CHECKZONE {
    border-color: var(--ita-colors-text-base-primary);
}
input.CHECKBOX_INPUT:checked ~ label .CHECKBOX_INPUT__CHECKZONE::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: var(--ita-spacings-3);
    height: var(--ita-spacings-3);
    background-color: var(--ita-colors-text-base-primary);
}

/* Select inputs + dropdown inputs */
select.SELECT_INPUT,
button.DROPDOWN_INPUT__PLACEHOLDER {
    font-family: var(--ita-fontFamilies-1);
    color: var(--ita-colors-text-base-primary);
    background-color: var(--ita-colors-background-base-white);
    border: 1px solid var(--ita-colors-border-base-secondary);
    height: 44px;
}
select.SELECT_INPUT:focus {
    border-color: var(--ita-colors-border-contrast-tertiary);
}
select.SELECT_INPUT ~ label {
    color: var(--ita-colors-text-base-primary);
}
select.SELECT_INPUT:required ~ label::after {
    content: "*";
}
select.SELECT_INPUT ~ .SELECT_INPUT__ICONS .SELECT_INPUT__ICONS__LEFT,
select.SELECT_INPUT ~ .SELECT_INPUT__ICONS .SELECT_INPUT__ICONS__RIGHT,
.DROPDOWN_INPUT__ICONS .DROPDOWN_INPUT__ICONS__LEFT,
.DROPDOWN_INPUT__ICONS .DROPDOWN_INPUT__ICONS__RIGHT {
    height: 44px;
}
select.SELECT_INPUT.SELECT_INPUT__INVALID,
select.SELECT_INPUT.SELECT_INPUT__INVALID:focus {
    border: 2px solid var(--ita-colors-alert-danger);
}
select.SELECT_INPUT.SELECT_INPUT__VALID,
select.SELECT_INPUT.SELECT_INPUT__VALID:focus {
    border: 2px solid var(--ita-colors-alert-success);
}
select.SELECT_INPUT:disabled,
button.DROPDOWN_INPUT__PLACEHOLDER:disabled {
    color: var(--ita-colors-text-base-tertiary);
    background-color: var(--ita-colors-background-base-tertiary);
    border-color: var(--ita-colors-background-base-tertiary);
}

/* Text inputs */
input.TEXT_INPUT {
    font-family: var(--ita-fontFamilies-1);
    color: var(--ita-colors-text-base-primary);
    background-color: var(--ita-colors-background-base-white);
    border: 1px solid var(--ita-colors-border-base-secondary);
    height: 44px;
}
input.TEXT_INPUT:focus {
    border-color: var(--ita-colors-border-contrast-tertiary);
}
input.TEXT_INPUT ~ label {
    color: var(--ita-colors-text-base-primary);
}
input.TEXT_INPUT:required ~ label::after {
    content: "*";
}
input.TEXT_INPUT ~ .TEXT_INPUT__ICONS .TEXT_INPUT__ICONS__LEFT,
input.TEXT_INPUT ~ .TEXT_INPUT__ICONS .TEXT_INPUT__ICONS__RIGHT {
    height: 44px;
}
input.TEXT_INPUT.TEXT_INPUT__INVALID,
input.TEXT_INPUT.TEXT_INPUT__INVALID:focus {
    border: 2px solid var(--ita-colors-alert-danger);
}
input.TEXT_INPUT.TEXT_INPUT__VALID,
input.TEXT_INPUT.TEXT_INPUT__VALID:focus {
    border: 2px solid var(--ita-colors-alert-success);
}
input.TEXT_INPUT:disabled {
    color: var(--ita-colors-text-base-tertiary);
    background-color: var(--ita-colors-background-base-tertiary);
    border-color: var(--ita-colors-background-base-tertiary);
}

/* BUTTONS */
.BUTTON_PRIMARY {
    color: var(--ita-colors-text-contrast-primary);
    background-color: var(--ita-colors-text-base-primary);
    border: 1px solid var(--ita-colors-text-base-primary);
    border-radius: 0px;
}
.BUTTON_PRIMARY:disabled {
    color: var(--ita-colors-text-contrast-tertiary);
    background-color: var(--ita-colors-background-base-secondary);
    border-color: var(--ita-colors-background-base-secondary);
}
.BUTTON_SECONDARY {
    color: var(--ita-colors-text-base-primary);
    background-color: transparent;
    font-family: var(--ita-fontFamilies-3);
    border: 1px solid var(--ita-colors-text-base-primary);
    border-radius: 0px;
}
.BUTTON_SECONDARY:disabled {
    color: var(--ita-colors-text-contrast-tertiary);
    background-color: var(--ita-colors-background-base-secondary);
    border-color: var(--ita-colors-background-base-secondary);
}
.BUTTON_TERTIARY {
    color: var(--ita-colors-text-base-primary);
    background-color: transparent;
    font-family: var(--ita-fontFamilies-3);
    border: none;
}
.BUTTON_TERTIARY:disabled {
    color: var(--ita-colors-text-contrast-tertiary);
}

a {
    color: var(--ita-colors-text-base-primary);
}

/*  */
* {
    box-sizing: border-box;
}

/* BUTTONS */
button {
    cursor: pointer;
}
button:disabled {
    cursor: default;
}

/* retrait style <details> par défaut de iOS */
details > summary::-webkit-details-marker {
    display: none;
}
details:not([open]) > summary .icons span[class*="icon-"]:nth-child(2) {
    display: none;
}
details[open] > summary .icons span[class*="icon-"]:nth-child(1) {
    display: none;
}
/* retrait style <button> et <select> par défaut de iOS */
select, button {
    color: black
}
/* Opacity od disabled input on iOS */
input:disabled {
    opacity: 1;
}
/* input type search reset */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance:none;
}