.city-page .city-hero-art{background-image:linear-gradient(0deg,#102a4e8c,#102a4e08 75%),url("assets/city-landmark-sprite.png");background-size:cover,400% 500%;background-position:center,var(--landmark-x) var(--landmark-y);background-repeat:no-repeat;color:#fff;text-shadow:0 1px 8px #132a4c88}
.city-page .city-hero-art:before,.city-page .city-hero-art:after{border-color:#ffffff66}
.city-page .city-hero-art small{z-index:2;font-size:12px;letter-spacing:.04em;background:#132a4c99;padding:6px 10px;border-radius:30px}
.city-qr-trigger,.city-qr-inline{cursor:pointer}
.city-qr-inline{border:0;background:none;color:#2457eb;padding:0 3px;text-decoration:underline;font:inherit}
.city-footer-contact{border:0;padding:0;margin-top:12px;background:none;color:#a8c0d0;text-align:left;font:inherit;cursor:pointer}
.city-qr-dialog[hidden]{display:none}
.city-qr-dialog{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#0b1c32a8}
.city-qr-panel{position:relative;width:min(420px,100%);padding:30px 24px 24px;border-radius:18px;background:white;text-align:center;box-shadow:0 24px 80px #07152d55;color:#17304d}
.city-qr-panel h2{margin:0 0 8px;font-size:24px}
.city-qr-panel p{margin:0 0 18px;color:#526378}
.city-qr-panel img{display:block;width:min(280px,80vw);height:auto;max-height:55vh;object-fit:contain;margin:0 auto 14px}
.city-qr-panel span{font-size:14px;color:#526378}
.city-qr-close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:30px;line-height:1;color:#526378;cursor:pointer}
@media(max-width:767px){.city-page .city-hero-art small{bottom:10px}}
.city-page .city-hero-art{min-width:320px;min-height:260px}
.city-page.city-layout-3 .city-hero-inner{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr)}
.city-page.city-layout-3 .city-hero-art{min-height:260px}
.city-page.city-layout-2 .city-hero-art{min-height:260px}
@media(max-width:767px){.city-page .city-hero-art,.city-page.city-layout-2 .city-hero-art,.city-page.city-layout-3 .city-hero-art{width:100%;min-width:0;min-height:220px}.city-page.city-layout-3 .city-hero-inner{grid-template-columns:1fr}}
