
.lang-switcher{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:#ddd;flex-shrink:0;border:1px solid #525052;border-radius:999px;padding:5px 7px;font-size:10px;letter-spacing:.08em}
.lang-switcher .lang-icon{font-size:14px;color:#d4af78;margin:0 3px 0 2px}
.lang-switcher a{color:#bdbbbb;padding:6px 7px;border-radius:12px;font-weight:700;transition:background .2s}
.lang-switcher a.current,.lang-switcher a:hover{background:#c7a36c;color:#141414}
.mobile-language{padding:12px 0 4px}
.mobile-language .lang-switcher{max-width:fit-content}
.i18n-desc{font-size:14px;line-height:1.9;color:#777}
.site-nav .nav-links{gap:16px}
.site-nav{gap:20px}
.site-nav .nav-links a{letter-spacing:.09em;font-size:9px}
.site-nav .nav-cta{padding:14px 14px;font-size:9px}
.market-card .market-action{color:#e5c48d;font-size:11px;letter-spacing:.07em;font-weight:700;margin-top:12px}
.contact-layout .email-option{grid-column:1/-1}
@media (max-width:1370px){.site-nav .nav-links{gap:11px}.site-nav .nav-links a{font-size:8.5px;letter-spacing:.04em}.site-nav{gap:13px;padding:0 22px}}
@media (max-width:1100px){.site-nav .nav-links,.site-nav>.nav-cta,.site-nav>.lang-switcher{display:none}.site-nav .hamb{display:block;margin-left:auto}.hamb-menu.open{display:grid}}
@media (max-width:780px){.contact-layout{grid-template-columns:1fr}.site-nav .brandname b{font-size:13px}.hero-visuals{min-height:440px}}
@media (max-width:600px){.hero-visuals{min-height:500px}.lang-switcher a{font-size:12px}}

/* Refined, slightly warmer charcoal palette (old #101114 --> #1c2024) */
:root{--ink:#22252a;--coal:#252930;--coal2:#34363b;--paper:#fbfaf7;--cream:#f5f2ed;--line:#e5e1da}
.site-nav,.footer{background:#1b1e22}
.hero,.subhero,.plain-hero,.cta-section{background:#1c2024}
.market-other{background:#24272b}
.full-logo-box{background:#1b1e22}
.hamb-menu.open{background:#22252a}
.hero-photo:after{background:linear-gradient(90deg,#1c2024 0%,transparent 33%),linear-gradient(0deg,rgba(0,0,0,.27),transparent 60%)}
.subhero .photo:after{background:linear-gradient(90deg,#1c2024 0,transparent 50%),linear-gradient(0deg,rgba(0,0,0,.06),transparent)}
.hero-tile:after{background:linear-gradient(90deg,#20222849,transparent 42%),linear-gradient(0deg,#15191dbd,transparent 58%)}
.site-nav .nav-links a{color:#efebe6}
.site-nav{border-bottom-color:#383635}
.hero p.desc,.subhero p.desc{color:#d4ceca}
.footer .footer-bottom{color:#afaaa5}
.lang-switcher{border-color:#74664f;background:#ffffff09}
.lang-switcher a{color:#f0ebe5}
.lang-switcher a.current,.lang-switcher a:hover{background:#d3ae75;color:#16181b}
/* Long French/German navigation remains legible without squeezing the layout. */
.site-nav .nav-links{gap:12px}
.site-nav .nav-links a{font-size:9px;letter-spacing:.035em}
.site-nav .nav-cta{font-size:9px;letter-spacing:.07em;padding:13px 14px}
@media(max-width:1450px){.site-nav{gap:12px;padding:0 24px}.site-nav .nav-links{gap:9px}.site-nav .nav-links a{font-size:8.6px}}
@media(max-width:1260px){.site-nav .nav-links,.site-nav>.nav-cta,.site-nav>.lang-switcher{display:none}.site-nav .hamb{display:block;margin-left:auto}.hamb-menu.open{display:grid}}


/* v4 — premium image refinement. Lighter photos, restrained charcoal overlays. */
.hero-tile img{filter:brightness(1.04) contrast(1.045) saturate(1.035)}
.hero-tile-commercial img{filter:brightness(1.04) contrast(1.035) saturate(1.065);object-position:center 50%}
.hero-tile:hover img{filter:brightness(1.12) contrast(1.045) saturate(1.08)}
.hero-tile:after{background:linear-gradient(90deg,rgba(20,23,28,.21),transparent 45%),linear-gradient(0deg,rgba(15,19,23,.64),transparent 55%)}
.hero-photo>img{filter:brightness(.93) contrast(1.05) saturate(1.04)}
.hero-photo:after{background:linear-gradient(90deg,#1c2024 0%,transparent 38%),linear-gradient(0deg,rgba(0,0,0,.15),transparent 65%)}
.market-card>img{filter:brightness(1.055) contrast(1.045) saturate(1.035)}
.market-card:after{background:linear-gradient(180deg,rgba(15,18,22,.035) 2%,rgba(17,19,24,.38) 48%,rgba(13,16,20,.83) 100%)}
.market-card:hover>img{filter:brightness(1.11) contrast(1.05) saturate(1.07);transform:scale(1.045)}
.division-card .bg{opacity:.33;filter:grayscale(.18) brightness(1.08) contrast(1.05)}
.project img,.split-img,.feature-image img{filter:brightness(1.045) contrast(1.025) saturate(1.02)}
/* Keep text legible on all images. */
.hero-tile-label,.market-card h3,.market-card p{position:relative}
