.location-utility{display:flex;justify-content:flex-end;align-items:center;background:#151917;color:white;padding:0 3.4vw;min-height:34px}
.service-strip{min-height:34px;height:auto}
.project-location-trigger{display:flex;align-items:center;gap:9px;min-height:34px;max-width:100%;background:none;border:0;padding:5px 0;color:inherit;font:14px/1.3 Arial,sans-serif;cursor:pointer}
.project-location-trigger svg{width:17px;height:17px;flex-shrink:0}
.project-location-trigger strong{font-weight:400;text-decoration:underline;text-underline-offset:3px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-location-trigger>span:first-of-type{color:#c4cbc3}
.home-header-tools .project-location-trigger{min-height:44px;padding:8px 0;white-space:nowrap}
.site-header.is-scrolled .home-header-tools .project-location-trigger>span:first-of-type{color:#69706c}
.site-language-trigger{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:48px;min-height:44px;padding:8px 7px;border:0;border-left:1px solid currentColor;background:transparent;color:inherit;font:13px/1 Arial,sans-serif;cursor:pointer}
.site-language-trigger strong{font-weight:600;letter-spacing:.04em}
.site-language-trigger>span:last-child{font-size:11px;opacity:.72;transform:translateY(-1px);transition:transform .18s ease}
.site-language-trigger[aria-expanded="true"]>span:last-child{transform:translateY(1px) rotate(180deg)}
.site-language-trigger:hover strong{text-decoration:underline;text-underline-offset:4px}
.site-language-menu[hidden]{display:none!important}
.site-language-menu{position:fixed;z-index:34;width:170px;padding:6px;background:#fff;color:#151917;border:1px solid rgba(21,25,23,.14);box-shadow:0 12px 35px rgba(10,18,14,.17);font:14px/1.3 Arial,sans-serif}
.site-language-menu::before{content:"";position:absolute;top:-6px;right:18px;width:10px;height:10px;background:#fff;border-top:1px solid rgba(21,25,23,.14);border-left:1px solid rgba(21,25,23,.14);transform:rotate(45deg)}
.site-language-menu button{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:42px;padding:10px 11px;border:0;background:transparent;color:inherit;font:14px/1.2 Arial,sans-serif;cursor:pointer;text-align:left}
.site-language-menu button:hover,.site-language-menu button:focus-visible{background:#f2f4f1}
.site-language-menu button.is-active{font-weight:600}
.site-language-menu button.is-active::before{content:"✓";width:14px;flex:0 0 14px}
.site-language-menu button:not(.is-active)::before{content:"";width:14px;flex:0 0 14px}
.site-language-menu button small{margin-left:auto;color:#69706c;font-size:10px;letter-spacing:.08em}
.location-suggestion[hidden]{display:none!important}
.location-suggestion{position:fixed;z-index:32;width:min(292px,calc(100vw - 24px));padding:15px 42px 15px 16px;background:#fff;color:#151917;border:1px solid rgba(21,25,23,.14);box-shadow:0 12px 35px rgba(10,18,14,.17);font:14px/1.4 Arial,sans-serif}
.location-suggestion::before{content:"";position:absolute;top:-6px;right:23px;width:10px;height:10px;background:#fff;border-top:1px solid rgba(21,25,23,.14);border-left:1px solid rgba(21,25,23,.14);transform:rotate(45deg)}
.location-suggestion-close{position:absolute;top:9px;right:9px;width:28px;height:28px;padding:0;border:0;background:transparent;color:#69706c;font-size:20px;line-height:1;cursor:pointer}
.location-suggestion p{margin:0;font-size:15px;line-height:1.35}
.location-suggestion p strong{font-weight:600}
.location-suggestion-loading{display:flex;align-items:center;gap:10px;min-height:34px}
.location-suggestion-loading[hidden]{display:none!important}
.location-suggestion-loading>span{width:15px;height:15px;flex:0 0 15px;border:1.5px solid #d8ddd8;border-top-color:#151917;border-radius:50%;animation:locationSpin .8s linear infinite}
.location-suggestion-actions{display:flex;align-items:center;gap:16px;margin-top:12px}
.location-suggestion-actions button,.location-suggestion-manual{min-height:32px;padding:6px 11px;border:0;background:transparent;color:#151917;cursor:pointer;font:600 13px/1 Arial,sans-serif}
.location-suggestion-actions .location-suggestion-confirm{background:#151917;color:#fff}
.location-suggestion-actions [data-location-suggestion-manual],.location-suggestion-manual{text-decoration:underline;text-underline-offset:3px;padding-inline:0}
.location-suggestion [data-location-suggestion-fallback] p{margin-bottom:8px}
@keyframes locationSpin{to{transform:rotate(360deg)}}
.project-location-dialog{padding:28px;border:1px solid #d9ded8;border-radius:5px;width:min(500px,calc(100vw - 32px));max-height:calc(100svh - 32px);overflow:auto;background:#fff;color:#151917;font-family:Arial,sans-serif}
.project-location-dialog::backdrop{background:#15191788}
.project-location-open{overflow:hidden}
.location-dialog-head{display:flex;align-items:start;gap:20px;justify-content:space-between}
.location-dialog-head h2{font-size:25px;line-height:1.2;letter-spacing:-.02em;font-weight:500;margin:0}
.location-dialog-head button{border:0;background:transparent;font-size:28px;padding:0 5px;cursor:pointer;line-height:1}
.project-location-dialog>p{font-size:16px;line-height:1.5;color:#656c67;margin:16px 0 24px}
.project-location-form{display:grid;gap:18px}
.project-location-form label{display:grid;gap:8px;font-size:14px;font-weight:500}
.project-location-form input,.project-location-form select{width:100%;min-height:46px;border:1px solid #c8cfc6;background:#fff;border-radius:3px;padding:10px 12px;font:16px Arial,sans-serif;color:#151917;box-sizing:border-box}
.project-location-form [hidden]{display:none!important}
.project-location-form .location-help{font-size:14px;line-height:1.5;color:#656c67;margin:0}
.location-dialog-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:6px}
.location-dialog-actions button{font:14px Arial,sans-serif;min-height:44px;padding:10px 14px;border:0;cursor:pointer;background:transparent;text-decoration:underline;text-underline-offset:3px}
.location-dialog-actions .location-save{background:#151917;color:white;text-decoration:none;border-radius:3px;padding-inline:18px}
.project-location-field{display:grid;gap:8px;margin-block:4px;font-size:14px}
.project-location-field>button{display:flex;gap:9px;align-items:center;text-align:left;min-height:46px;padding:10px 12px;background:transparent;border:1px solid #bfc8bc;color:inherit;border-radius:3px;font:14px Arial,sans-serif;cursor:pointer;width:100%}
.project-location-field svg{width:18px;height:18px;flex-shrink:0}
.project-location-field strong{font-weight:500;overflow-wrap:anywhere}
.project-location-field button>span{margin-left:auto;text-decoration:underline;text-underline-offset:3px}
.project-location-field button:hover{border-color:currentColor}
@media(max-width:1500px){.home-header-tools .project-location-trigger>span:first-of-type{display:none}}
@media(max-width:1200px){.home-header-tools .project-location-trigger{min-width:44px;justify-content:center}.home-header-tools .project-location-trigger strong,.home-header-tools .project-location-trigger>span:last-child{display:none}.home-header-tools .site-language-trigger{min-width:42px;padding-inline:5px}}
@media(max-width:800px){.location-utility,.service-strip{justify-content:center}.project-location-trigger{font-size:13px}.project-location-trigger>span:first-of-type{display:none}.project-location-trigger strong{max-width:65vw}.home-header-tools .project-location-trigger strong{display:none}.location-suggestion{width:min(292px,calc(100vw - 24px))}.location-suggestion::before{right:auto;left:calc(50% - 5px)}.site-language-menu{width:156px}.project-location-dialog{padding:22px}.location-dialog-head h2{font-size:23px}}
@media(max-width:450px){.home-header-tools .project-location-trigger{min-width:40px}.home-header-tools .site-language-trigger{min-width:38px}}
@media(prefers-reduced-motion:reduce){.location-suggestion-loading>span{animation-duration:1.6s}}
