/* Small standalone behaviour and accessibility additions to the original CSS. */
.map-loading{display:flex;align-items:center;justify-content:center;height:100%;min-height:300px;background:#f5efdd;color:#777}
.map-loading a{display:block;margin:12px;color:#222}
.copy-form-status:not(:empty){margin-top:20px;padding:15px;background:#fff6d9;border-left:3px solid #f7cb45;line-height:1.5}
.copy-form-status a{color:#222;text-decoration:underline}
.cat-nav .has-dropdown:focus-within>ul,.top-nav .has-dropdown:focus-within>ul{visibility:visible;opacity:1}
.copy-city-results a{display:block;padding:10px 0}
.copy-city-results{margin-top:20px}
.copy-cart{text-align:center;padding:20px 0}
.copy-cart .btn{margin-top:20px}
.geo-confirm-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.modal:focus{outline:none}
a:focus-visible,button:focus-visible{outline:2px solid #c89300;outline-offset:4px}
@media(max-width:767px){.modal-form .form-inline{display:block}.modal-form .form-inline>.form-group{width:100%}.cookie-info{max-width:calc(100vw - 20px)}.copy-form-status{font-size:13px}}

/* Map availability gate: the widget loads after the visitor shares their location. */
.contacts-map{position:relative}
.map-gate{position:absolute;top:0;left:0;right:0;bottom:0;z-index:900;background:#eef1f4;display:-webkit-flex;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;min-height:460px;transition:opacity .4s}
.map-gate.gone{opacity:0;pointer-events:none}
.map-gate-icon{width:44px;height:57px;background:url(../img/icon_marker.svg) no-repeat center/contain}
.map-gate-title{font-size:19px;font-weight:700;color:#111;margin:16px 0 8px}
.map-gate-text{font-size:13px;line-height:1.55;color:#5d5f63;max-width:320px}
.map-gate-text:empty{display:none}
.map-gate-note{font-size:11px;color:#8b8c90;margin-top:12px}
.map-gate .btn{margin-top:16px;padding:11px 28px;font-size:14px}
.map-gate-wait{display:flex;align-items:center;gap:10px;font-size:13px;color:#5d5f63;margin-top:16px}
.map-gate-spin{width:22px;height:22px;border-radius:50%;border:3px solid #d0d0d0;border-top-color:#fcc400;animation:map-gate-spin 1s linear infinite;flex-shrink:0}
@keyframes map-gate-spin{to{transform:rotate(360deg)}}
@media(max-width:767px){.map-gate{min-height:300px}}
