/* Header alignment and the shared language / delivery preferences dialog. */
.header-nav>.container {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media(min-width:992px) {
  body .container { max-width: min(1320px,calc(100% - 40px)); }
}
.preferences-trigger {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #245773;
  background: transparent;
  border: 0;
  padding: 2px 0;
  font: inherit;
  cursor: pointer;
}
.preferences-trigger .preferences-trigger__icon { width: 16px; height: 16px; flex-shrink: 0; }
.preferences-trigger .preferences-trigger__chevron { width: 12px; height: 12px; }
.preferences-trigger__country { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; }
.preferences-trigger__country .delivery-info__flag { width: 20px; height: 14px; flex-basis: 20px; }
.preferences-modal { color: #22313f; font-family: 'Open Sans',Arial,sans-serif; }
.preferences-modal .preferences-dialog { width: calc(100% - 32px); max-width: 580px; margin: 5vh auto; }
.preferences-modal .preferences-content { border: 1px solid #dce5e9; border-radius: 10px; box-shadow: 0 16px 56px #17232d26; overflow: hidden; max-height: 90vh; max-height: 90dvh; }
.preferences-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 22px 24px 18px; border-bottom: 1px solid #e0e6e9; }
.preferences-head h2 { display: flex; align-items: center; gap: 10px; margin: 0 0 6px; font-size: 22px; line-height: 1.35; font-weight: 600; }
.preferences-head .preferences-heading-icon { color: #087886; width: 24px; height: 24px; flex-shrink: 0; }
.preferences-head p { color: #61717d; font-size: 13px; line-height: 1.5; margin: 0; }
.preferences-close { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1px solid #e0e6e9; border-radius: 6px; background: #fff; color: #52616b; cursor: pointer; flex-shrink: 0; }
.preferences-close .m-icon { width: 20px; height: 20px; }
.preferences-body { padding: 22px 24px; overflow-y: auto; min-height: 0; overscroll-behavior: contain; }
.preferences-fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
.preferences-fieldset legend { display: flex; align-items: center; gap: 8px; width: auto; padding: 0; margin: 0 0 12px; color: #22313f; font-size: 14px; font-weight: 600; }
.preferences-legend-icon { width: 18px; height: 18px; color: #087886; }
.preferences-languages { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.preferences-option { display: block; margin: 0; position: relative; min-width: 0; cursor: pointer; }
.preferences-option>input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.preferences-option__face { display: flex; align-items: center; gap: 8px; height: 46px; padding: 8px 10px; border: 1px solid #c8d3d8; border-radius: 5px; background: #fff; font-size: 13px; line-height: 1.4; color: #354c59; }
.preferences-option__face>img { width: 26px; height: 18px; object-fit: cover; flex-shrink: 0; border: 1px solid #d5dfe4; border-radius: 2px; }
.preferences-option__face>span:not(.delivery-info__flag) { min-width: 0; overflow-wrap: anywhere; }
.preferences-option__face>.preferences-option__check { flex-shrink: 0; margin-left: auto; width: 15px; height: 15px; opacity: 0; color: #087886; }
.preferences-option>input:checked+.preferences-option__face { background: #eff8f9; border-color: #087886; color: #165764; }
.preferences-option>input:checked+.preferences-option__face>.preferences-option__check { opacity: 1; }
.preferences-option:hover .preferences-option__face { border-color: #087886; }
.preferences-option>input:focus-visible+.preferences-option__face { outline: 3px solid #086bba; outline-offset: 2px; }
.preferences-destination { margin-top: 24px; }
.preferences-destination legend { margin-bottom: 5px; }
.preferences-hint { margin: 0 0 12px; color: #61717d; font-size: 12px; line-height: 1.6; }
.preferences-country-picker { border: 1px solid #c8d3d8; border-radius: 5px; }
.preferences-country-picker>summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px; cursor: pointer; list-style: none; color: #22313f; font-size: 14px; }
.preferences-country-picker>summary::-webkit-details-marker { display: none; }
.preferences-country-picker>summary>[data-preferences-country-current] { display: flex; align-items: center; gap: 10px; }
.preferences-country-picker>summary>.m-icon { width: 17px; height: 17px; flex-shrink: 0; color: #61717d; }
.preferences-country-picker[open]>summary { border-bottom: 1px solid #e0e6e9; }
.preferences-country-picker[open]>summary>.m-icon { transform: rotate(180deg); }
.preferences-country-panel { padding: 12px; }
.preferences-search { display: flex; align-items: center; gap: 8px; padding: 0 10px; border: 1px solid #b8c8ce; border-radius: 4px; margin: 0 0 12px; }
.preferences-search>.m-icon { color: #61717d; width: 18px; height: 18px; flex-shrink: 0; }
.preferences-search input { width: 100%; min-width: 0; height: 40px; border: 0; font: inherit; font-size: 14px; color: #22313f; background: #fff; }
.preferences-countries { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; max-height: 230px; overflow-y: auto; overscroll-behavior: contain; padding: 3px; }
.preferences-countries .preferences-option__face { height: auto; min-height: 44px; padding: 8px; font-size: 12px; }
.preferences-countries .delivery-info__flag { flex-shrink: 0; }
.preferences-option[hidden] { display: none!important; }
.preferences-search-status { font-size: 12px; color: #61717d; margin: 8px 0 0; }
.preferences-search-status:empty { display: none; }
.preferences-footer { display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding: 16px 24px; border-top: 1px solid #e0e6e9; background: #f8fafb; flex-shrink: 0; }
.preferences-footer button { border-radius: 5px; min-height: 44px; padding: 10px 18px; font-family: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.preferences-cancel { background: #fff; color: #52616b; border: 1px solid #c8d3d8; }
.preferences-save { display: inline-flex; align-items: center; justify-content: center; gap: 8px; background: #087886; color: #fff; border: 1px solid #087886; }
.preferences-save:hover { background: #065f6b; }
.preferences-save>.m-icon { width: 18px; height: 18px; }
.preferences-trigger:focus-visible,.preferences-close:focus-visible,.preferences-modal button:focus-visible,.preferences-country-picker>summary:focus-visible { outline: 3px solid #086bba; outline-offset: 3px; }
.preferences-search:focus-within { outline: 3px solid #086bba; outline-offset: 2px; }
.preferences-search input:focus { outline: none; }
@media(max-width:575px) {
  .header-nav .container { padding-left: 10px; padding-right: 10px; }
  .header-nav .container>.d-flex { font-size: 12px!important; align-items: center; gap: 8px; }
  .header-nav .icon-link svg { width: 13px; height: 13px; }
  .preferences-trigger { gap: 4px; font-size: 12px; }
  .preferences-trigger__country { font-size: 11px; gap: 4px; }
  .preferences-trigger .preferences-trigger__icon,.preferences-trigger__country .delivery-info__flag { display: none; }
  .preferences-modal .preferences-dialog { width: calc(100% - 20px); margin: 3vh auto; }
  .preferences-modal .preferences-content { max-height: 94vh; max-height: 94dvh; }
  .preferences-head { padding: 18px 16px 16px; gap: 10px; }
  .preferences-head h2 { font-size: 20px; }
  .preferences-head p { font-size: 12px; }
  .preferences-body { padding: 18px 16px; }
  .preferences-languages { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .preferences-country-panel { padding: 10px; }
  .preferences-countries { grid-template-columns: minmax(0,1fr); max-height: 210px; }
  .preferences-footer { padding: 14px 16px; gap: 8px; }
  .preferences-footer button { padding: 10px 14px; }
  .preferences-save { flex: 1; }
}
