/* v1.8.4 city page mobile/tablet stability — fully scoped. */
body.xan-city-guide-page { overflow-x: hidden !important; }
body.xan-city-guide-page .xan-cg,
body.xan-city-guide-page .xan-cg * { box-sizing: border-box; }
body.xan-city-guide-page .xan-cg { width: 100%; min-width: 0; overflow: hidden; }
body.xan-city-guide-page .xan-cg__wrap { width: min(1440px, calc(100% - 32px)) !important; max-width: 100% !important; min-width: 0 !important; margin-inline: auto !important; }
body.xan-city-guide-page .xan-cg :is(article,section,div,form,label,nav,aside) { min-width: 0; }
body.xan-city-guide-page .xan-cg :is(img,picture,video,iframe,svg) { max-width: 100%; }
body.xan-city-guide-page .xan-cg :is(p,li,small,span,strong,a,h1,h2,h3,h4,label,output) { overflow-wrap: anywhere; }
body.xan-city-guide-page .xan-cg input,
body.xan-city-guide-page .xan-cg select,
body.xan-city-guide-page .xan-cg textarea,
body.xan-city-guide-page .xan-cg button { max-width: 100%; }

@media (max-width: 1024px) {
    body.xan-city-guide-page .xan-cg__wrap { width: min(100% - 24px, 920px) !important; }
    body.xan-city-guide-page .xan-cg__preparing { min-height: 0 !important; padding: 42px 28px !important; border-radius: 20px !important; }
    body.xan-city-guide-page .xan-cg__preparing:after { width: 300px; height: 300px; right: -130px; top: -130px; }
    body.xan-city-guide-page .xan-cg :is(.xan-cg-blueprint__intro,.xan-cg-blueprint__insight,.xan-cg-blueprint__verification,.xan-cg-blueprint__closing,.xan-cg-network) { grid-template-columns: minmax(0,1fr) !important; }
    body.xan-city-guide-page .xan-cg :is(.xan-cg-decision ol,.xan-cg-property .xan-cg__cards,.xan-cg-profiles) { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    body.xan-city-guide-page .xan-cg-funnel__options { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
    body.xan-city-guide-page .xan-cg-funnel__form-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    body.xan-city-guide-page .xan-cg-funnel__panel { align-items: stretch !important; flex-direction: column !important; }
}

@media (max-width: 640px) {
    body.xan-city-guide-page .xan-cg { padding-bottom: calc(88px + env(safe-area-inset-bottom)) !important; }
    body.xan-city-guide-page .xan-cg__wrap { width: calc(100% - 14px) !important; }
    body.xan-city-guide-page .xan-cg__preparing { padding: 28px 18px !important; border-radius: 17px !important; }
    body.xan-city-guide-page .xan-cg__preparing h1 { max-width: 100% !important; font-size: clamp(31px,10vw,44px) !important; line-height: 1.06 !important; }
    body.xan-city-guide-page .xan-cg__preparing-lead { font-size: 16px !important; line-height: 1.65 !important; }
    body.xan-city-guide-page .xan-cg__preparing-note { width: 100% !important; padding: 14px !important; }
    body.xan-city-guide-page .xan-cg :is(.xan-cg__section,.xan-cg__side-card,.xan-cg-funnel,.xan-cg-network,.xan-cg-action-band) { padding: 18px 14px !important; border-radius: 16px !important; }
    body.xan-city-guide-page .xan-cg :is(.xan-cg-decision ol,.xan-cg-property .xan-cg__cards,.xan-cg-profiles,.xan-cg-network__cards,.xan-cg__metrics,.xan-cg-funnel__form-grid) { grid-template-columns: minmax(0,1fr) !important; }
    body.xan-city-guide-page .xan-cg-funnel__options { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; overflow: visible !important; }
    body.xan-city-guide-page .xan-cg-funnel__options button { width: 100% !important; min-height: 56px !important; }
    body.xan-city-guide-page .xan-cg :is(.xan-cg__actions,.xan-cg-funnel__actions,.xan-cg-funnel__form-submit) { width: 100% !important; align-items: stretch !important; flex-direction: column !important; }
    body.xan-city-guide-page .xan-cg :is(.xan-cg__btn,.xan-cg-funnel__actions .xan-cg__btn,.xan-cg-funnel__form-submit .xan-cg__btn) { width: 100% !important; min-height: 48px !important; justify-content: center !important; }
    body.xan-city-guide-page .xan-cg :is(input,select,textarea) { width: 100% !important; font-size: 16px !important; }
    body.xan-city-guide-page .xan-cg-city-nav { align-items: stretch !important; flex-direction: column !important; }
    body.xan-city-guide-page .xan-cg-city-nav > div { width: 100% !important; overflow-x: auto !important; overscroll-behavior-inline: contain !important; }
}


/* 1.8.5: clean public city routes use the same full premium template as admin preview. */
.xan-cg.is-public-draft { --xan-public-draft: 1; }
.xan-cg.is-public-draft .xan-cg__hero-kickers span:last-child::after {
    content: ' · HAZIRLANIYOR';
    opacity: .82;
}
@media (max-width: 782px) {
    .xan-cg.is-public-draft .xan-cg__hero-kickers span:last-child::after { display: none; }
}


/* v1.8.6 — first 40 city visual and device stability. Map styles are intentionally untouched. */
body.xan-city-guide-page .xan-cg__hero-picture,
body.xan-city-guide-page .xan-cg__hero-picture img { display:block; width:100%; height:100%; }
body.xan-city-guide-page .xan-cg__hero-img {
    object-position: var(--xan-hero-x,50%) var(--xan-hero-y,50%) !important;
}
body.xan-city-guide-page .xan-cg-region-media {
    position:relative;
    margin:22px 0 18px;
    overflow:hidden;
    border:1px solid rgba(49,92,111,.14);
    border-radius:18px;
    background:#eef4f6;
    aspect-ratio:3/2;
}
body.xan-city-guide-page .xan-cg-region-media__image {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
body.xan-city-guide-page .xan-cg-region-media figcaption {
    position:absolute;
    right:12px;
    bottom:12px;
    max-width:calc(100% - 24px);
    padding:7px 10px;
    border-radius:999px;
    color:#fff;
    background:rgba(23,47,59,.78);
    font-size:11px;
    line-height:1.35;
    backdrop-filter:blur(8px);
}
@media (max-width: 1024px) {
    body.xan-city-guide-page .xan-cg__hero-img {
        object-position: var(--xan-hero-mobile-x,var(--xan-hero-x,50%)) var(--xan-hero-mobile-y,var(--xan-hero-y,50%)) !important;
    }
    body.xan-city-guide-page .xan-cg .xan-cg__hero { min-height:620px !important; }
    body.xan-city-guide-page .xan-cg__hero-copy,
    body.xan-city-guide-page .xan-cg__hero-rail { width:100%; }
    body.xan-city-guide-page .xan-cg__hero-rail { backdrop-filter:none !important; -webkit-backdrop-filter:none !important; }
    body.xan-city-guide-page .xan-cg :is(.xan-cg-blueprint__districts,.xan-cg-blueprint__insight,.xan-cg-blueprint__verification,.xan-cg-blueprint__closing) > * { min-width:0; }
}
@media (max-width: 782px) {
    body.xan-city-guide-page .xan-cg .xan-cg__hero { min-height:720px !important; }
    body.xan-city-guide-page .xan-cg__hero:after { background:linear-gradient(180deg,rgba(18,43,54,.82),rgba(18,43,54,.94)) !important; }
    body.xan-city-guide-page .xan-cg__hero-facts { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
    body.xan-city-guide-page .xan-cg-region-media { border-radius:16px; aspect-ratio:4/3; }
}
@media (max-width: 480px) {
    body.xan-city-guide-page .xan-cg .xan-cg__hero { min-height:760px !important; }
    body.xan-city-guide-page .xan-cg__hero-facts { gap:6px; }
    body.xan-city-guide-page .xan-cg__hero-facts > div { padding:10px 6px !important; }
    body.xan-city-guide-page .xan-cg-region-media { aspect-ratio:1/1; }
    body.xan-city-guide-page .xan-cg-region-media figcaption { right:8px; bottom:8px; max-width:calc(100% - 16px); white-space:normal; border-radius:10px; }
}


/* v1.9.8 — visual fatigue, text clarity, control state and responsive stability.
 * Scoped to public city guide pages. Frozen map and route assets are untouched.
 */
body.xan-city-guide-page,
body.xan-city-guide-page .xan-cg,
body.xan-city-guide-page .xan-cg :is(button,input,select,textarea) {
    font-family: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
body.xan-city-guide-page .xan-cg {
    --xcg-muted:#50666f;
    -webkit-font-smoothing:auto !important;
    -moz-osx-font-smoothing:auto !important;
    text-rendering:auto !important;
}
body.xan-city-guide-page .xan-cg :is(h1,h2,h3,h4,p,li,small,span,strong,a,button,label,summary,output) {
    text-shadow:none !important;
    -webkit-font-smoothing:auto !important;
    text-rendering:auto !important;
}
body.xan-city-guide-page .xan-cg :is(h1,h2,h3,h4,.xan-cg__btn,.xan-cg-funnel__options button,.xan-cg-city-nav a) {
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
}
body.xan-city-guide-page .xan-cg :is(a,button,summary,input,select,textarea),
body.xan-city-guide-page .mxh-header .mxh-menu > li > a {
    transition:none !important;
    transform:none !important;
    filter:none !important;
    backface-visibility:visible !important;
}
body.xan-city-guide-page .xan-cg :is(a,button):hover,
body.xan-city-guide-page .xan-cg :is(a,button):focus,
body.xan-city-guide-page .xan-cg :is(a,button):active {
    transform:none !important;
    filter:none !important;
}
body.xan-city-guide-page .xan-cg :is(a,button,input,select,textarea,summary):focus-visible {
    outline:3px solid rgba(49,92,111,.34) !important;
    outline-offset:3px !important;
}

/* Stable, high-contrast editorial hero. */
body.xan-city-guide-v170 .xan-cg .xan-cg__hero {
    min-height:460px !important;
    grid-template-columns:minmax(0,1.12fr) minmax(320px,.68fr) !important;
    gap:clamp(22px,3vw,42px) !important;
    padding:clamp(26px,3vw,42px) !important;
    border-radius:22px !important;
    background-color:#173744 !important;
    box-shadow:0 18px 42px rgba(23,47,59,.14) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero:after,
body.xan-city-guide-v170 .xan-cg .xan-cg__hero.has-media:after {
    background:linear-gradient(90deg,rgba(15,39,49,.88) 0%,rgba(20,52,64,.70) 54%,rgba(20,52,64,.50) 100%) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero:before {
    opacity:.45 !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy {
    width:100% !important;
    max-width:780px !important;
    padding:clamp(24px,2.4vw,32px) !important;
    border:1px solid rgba(210,231,237,.22) !important;
    border-radius:18px !important;
    background:linear-gradient(135deg,rgba(20,52,64,.94),rgba(31,72,87,.88)) !important;
    box-shadow:0 14px 34px rgba(9,30,39,.22) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
body.xan-city-guide-v170 .xan-cg__hero-kickers {
    margin-bottom:16px !important;
}
body.xan-city-guide-v170 .xan-cg__hero-kickers span {
    min-height:30px !important;
    padding:0 11px !important;
    border-color:rgba(213,234,240,.35) !important;
    color:#f3f8f9 !important;
    background:#24495a !important;
    font-size:10px !important;
    line-height:1 !important;
    font-weight:700 !important;
    letter-spacing:.07em !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero h1 {
    max-width:720px !important;
    margin:0 0 14px !important;
    color:#fff !important;
    font-size:clamp(42px,3.65vw,54px) !important;
    line-height:1.06 !important;
    font-weight:700 !important;
    letter-spacing:-.035em !important;
    text-wrap:balance !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy > p {
    max-width:650px !important;
    margin:0 0 20px !important;
    color:#f0f6f7 !important;
    font-size:clamp(15px,1.05vw,17px) !important;
    line-height:1.56 !important;
    font-weight:500 !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__actions {
    gap:9px !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn {
    min-height:48px !important;
    padding:0 17px !important;
    border:1px solid rgba(255,255,255,.32) !important;
    border-radius:10px !important;
    color:#fff !important;
    background:#356f82 !important;
    box-shadow:none !important;
    font-size:13px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn:hover,
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn:focus-visible {
    color:#fff !important;
    background:#427f93 !important;
    border-color:rgba(255,255,255,.52) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn--light {
    color:#173744 !important;
    background:#fff !important;
    border-color:#fff !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn--light:hover,
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn--light:focus-visible {
    color:#173744 !important;
    background:#eaf2f4 !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn--glass {
    color:#fff !important;
    background:#173f4f !important;
    border-color:rgba(255,255,255,.34) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
body.xan-city-guide-v170 .xan-cg__hero-note {
    margin-top:14px !important;
    color:#dbe9ed !important;
    font-size:11px !important;
    line-height:1.5 !important;
    font-weight:500 !important;
}
body.xan-city-guide-v170 .xan-cg__hero-rail {
    min-height:0 !important;
    padding:clamp(22px,2.2vw,28px) !important;
    border-color:rgba(213,234,240,.26) !important;
    border-radius:18px !important;
    background:rgba(24,60,73,.94) !important;
    box-shadow:0 14px 34px rgba(9,30,39,.18) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
body.xan-city-guide-v170 .xan-cg__hero-rail-label {
    color:#d9e9ed !important;
    font-size:9px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero-rail h2 {
    margin:9px 0 8px !important;
    color:#fff !important;
    font-size:clamp(23px,1.8vw,28px) !important;
    line-height:1.16 !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero-rail > p {
    color:#e5eff2 !important;
    font-size:13px !important;
    line-height:1.55 !important;
    font-weight:400 !important;
}
body.xan-city-guide-v170 .xan-cg__hero-facts > div {
    min-height:76px !important;
    padding:13px 10px !important;
    border-color:rgba(213,234,240,.22) !important;
    background:#173f4f !important;
}
body.xan-city-guide-v170 .xan-cg__hero-facts strong {
    color:#fff !important;
    font-size:22px !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg__hero-facts span {
    color:#d7e6ea !important;
    font-size:9.5px !important;
    line-height:1.35 !important;
    font-weight:500 !important;
}
body.xan-city-guide-v170 .xan-cg__hero-topics span {
    color:#edf6f7 !important;
    background:#315c6f !important;
    font-size:9.5px !important;
    font-weight:600 !important;
}

/* Solid navigation and signal surfaces prevent blur/compositing fatigue. */
body.xan-city-guide-v170 .xan-cg-signals,
body.xan-city-guide-v170 .xan-cg-city-nav {
    background:#fff !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
body.xan-city-guide-v170 .xan-cg-signals span {
    color:#4b626b !important;
    font-weight:600 !important;
}
body.xan-city-guide-v170 .xan-cg-city-nav a {
    color:#435b65 !important;
    font-weight:600 !important;
}
body.xan-city-guide-v170 .xan-cg-city-nav a:hover,
body.xan-city-guide-v170 .xan-cg-city-nav a:focus-visible {
    color:#fff !important;
    background:#315c6f !important;
}

/* Selected states and checkboxes receive a visible check mark. */
body.xan-city-guide-page .xan-cg-funnel__options button[aria-selected="true"] {
    position:relative !important;
    color:#fff !important;
    background:#315c6f !important;
    border-color:#315c6f !important;
}
body.xan-city-guide-page .xan-cg-funnel__options button[aria-selected="true"]::after {
    content:"✓";
    display:grid;
    place-items:center;
    flex:0 0 19px;
    width:19px;
    height:19px;
    margin-left:2px;
    border-radius:50%;
    color:#24495a;
    background:#fff;
    font-size:12px;
    line-height:1;
    font-weight:700;
}
body.xan-city-guide-page .xan-cg-funnel__consent input[type="checkbox"] {
    appearance:none !important;
    -webkit-appearance:none !important;
    display:inline-block !important;
    flex:0 0 20px !important;
    width:20px !important;
    min-width:20px !important;
    max-width:20px !important;
    height:20px !important;
    min-height:20px !important;
    margin:0 !important;
    border:2px solid #315c6f !important;
    border-radius:5px !important;
    background:#fff !important;
    background-position:center !important;
    background-repeat:no-repeat !important;
    background-size:13px 13px !important;
    box-shadow:none !important;
    cursor:pointer !important;
}
body.xan-city-guide-page .xan-cg-funnel__consent input[type="checkbox"]:checked {
    background-color:#315c6f !important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.4' d='M3 8.2 6.4 11.4 13 4.8'/%3E%3C/svg%3E") !important;
}
body.xan-city-guide-page .xan-cg-funnel__consent input[type="checkbox"]:focus-visible {
    outline:3px solid rgba(49,92,111,.28) !important;
    outline-offset:3px !important;
}

/* Avoid fractional vertical centering in the desktop header call-to-action. */
@media (min-width:761px) {
    body.xan-city-guide-page .mxh-header {
        background:linear-gradient(115deg,#1f4b5c,#315c6f 62%,#35697b) !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
    }
    body.xan-city-guide-page .mxh-header .mxh-menu > li:last-child {
        top:0 !important;
        bottom:0 !important;
        height:44px !important;
        margin:auto 0 !important;
        transform:none !important;
    }
}

@media (max-width:1024px) {
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero {
        min-height:0 !important;
        grid-template-columns:minmax(0,1fr) !important;
        gap:18px !important;
        padding:24px !important;
    }
    body.xan-city-guide-v170 .xan-cg__hero-copy,
    body.xan-city-guide-v170 .xan-cg__hero-rail {
        width:100% !important;
    }
}
@media (max-width:782px) {
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero {
        min-height:0 !important;
        padding:18px !important;
        border-radius:18px !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero:after,
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero.has-media:after {
        background:linear-gradient(180deg,rgba(15,39,49,.70),rgba(15,39,49,.92)) !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy {
        padding:22px 18px !important;
        border-radius:15px !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero h1 {
        font-size:clamp(35px,8.8vw,44px) !important;
        line-height:1.08 !important;
        letter-spacing:-.025em !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy > p {
        font-size:15px !important;
        line-height:1.55 !important;
    }
    body.xan-city-guide-v170 .xan-cg__hero-rail {
        display:block !important;
        padding:20px 17px !important;
        border-radius:15px !important;
    }
    body.xan-city-guide-v170 .xan-cg__hero-facts {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}
@media (max-width:480px) {
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero {
        min-height:0 !important;
        padding:12px !important;
        gap:12px !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy {
        padding:20px 15px !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero h1 {
        font-size:clamp(33px,9.6vw,40px) !important;
    }
    body.xan-city-guide-v170 .xan-cg__hero-kickers {
        gap:6px !important;
    }
    body.xan-city-guide-v170 .xan-cg__hero-kickers span {
        min-height:28px !important;
        padding:0 9px !important;
        font-size:9px !important;
    }
    body.xan-city-guide-v170 .xan-cg__hero-facts {
        gap:6px !important;
    }
    body.xan-city-guide-v170 .xan-cg__hero-facts > div {
        min-height:72px !important;
        padding:10px 6px !important;
    }
    body.xan-city-guide-page .xan-cg-funnel__options button[aria-selected="true"]::after {
        flex-basis:18px;
        width:18px;
        height:18px;
    }
}

/* v1.9.9 — premium 81-city page system.
 * Controlled glass surfaces, image-backed district card, consistent section rhythm,
 * crisp text, no transform-based hover movement, and responsive card layouts.
 * Frozen map and route assets remain untouched.
 */
body.xan-city-guide-v170 {
    --xcg-premium-petrol:#315c6f;
    --xcg-premium-dark:#173744;
    --xcg-premium-mid:#24495a;
    --xcg-premium-soft:#eef4f6;
    --xcg-premium-paper:#ffffff;
    --xcg-premium-line:rgba(49,92,111,.14);
    --xcg-premium-shadow:0 16px 42px rgba(23,47,59,.075);
    background:#edf3f5 !important;
}
body.xan-city-guide-v170 .xan-cg {
    background:
        radial-gradient(circle at 12% 4%,rgba(141,179,193,.16),transparent 24%),
        linear-gradient(180deg,#edf4f6 0%,#f8fafb 24%,#eef4f5 100%) !important;
}
body.xan-city-guide-v170 .xan-cg :where(a,button,summary) {
    -webkit-tap-highlight-color:transparent;
}
body.xan-city-guide-v170 .xan-cg :where(a,button) {
    transform:none !important;
    filter:none !important;
}
body.xan-city-guide-v170 .xan-cg :where(a,button):hover,
body.xan-city-guide-v170 .xan-cg :where(a,button):focus-visible {
    transform:none !important;
}

/* Lighter glass hero: the city photo remains visible without sacrificing text contrast. */
body.xan-city-guide-v170 .xan-cg .xan-cg__hero {
    min-height:440px !important;
    border:1px solid rgba(255,255,255,.34) !important;
    border-radius:26px !important;
    box-shadow:0 24px 58px rgba(15,43,54,.16) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero-img {
    filter:saturate(.92) contrast(1.03) brightness(.92) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero:after,
body.xan-city-guide-v170 .xan-cg .xan-cg__hero.has-media:after {
    background:linear-gradient(90deg,rgba(10,31,41,.46) 0%,rgba(18,52,65,.24) 55%,rgba(19,55,69,.14) 100%) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy,
body.xan-city-guide-v170 .xan-cg__hero-rail {
    border:1px solid rgba(225,241,245,.38) !important;
    background:linear-gradient(145deg,rgba(18,54,68,.66),rgba(31,78,94,.49)) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 20px 48px rgba(7,28,36,.16) !important;
    backdrop-filter:blur(6px) saturate(108%) !important;
    -webkit-backdrop-filter:blur(6px) saturate(108%) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy {
    padding:clamp(28px,3.3vw,46px) !important;
    border-radius:22px !important;
}
body.xan-city-guide-v170 .xan-cg__hero-rail {
    padding:clamp(24px,2.6vw,34px) !important;
    border-radius:22px !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero h1 {
    max-width:790px !important;
    font-size:clamp(42px,4.3vw,64px) !important;
    line-height:1.02 !important;
    font-weight:700 !important;
    letter-spacing:-.04em !important;
    text-shadow:0 2px 18px rgba(5,24,31,.20) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy>p {
    max-width:760px !important;
    color:rgba(255,255,255,.92) !important;
    font-size:clamp(15px,1.14vw,18px) !important;
    line-height:1.62 !important;
    font-weight:500 !important;
}
body.xan-city-guide-v170 .xan-cg__hero-kickers span,
body.xan-city-guide-v170 .xan-cg__hero-topics span {
    border-color:rgba(255,255,255,.25) !important;
    background:rgba(23,67,82,.54) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
body.xan-city-guide-v170 .xan-cg__hero-facts>div {
    border-color:rgba(228,242,246,.25) !important;
    background:rgba(14,48,61,.46) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn {
    min-height:48px !important;
    border-radius:12px !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg .xan-cg__hero .xan-cg__btn--glass {
    background:rgba(19,58,72,.60) !important;
}

/* Signals and sticky local navigation become one calm premium control layer. */
body.xan-city-guide-v170 .xan-cg-signals {
    margin-top:14px !important;
    padding:10px 14px !important;
    border:1px solid rgba(255,255,255,.82) !important;
    border-radius:17px !important;
    background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(244,248,249,.92)) !important;
    box-shadow:var(--xcg-premium-shadow) !important;
}
body.xan-city-guide-v170 .xan-cg-signals>div {
    min-height:64px !important;
    padding:10px 18px !important;
}
body.xan-city-guide-v170 .xan-cg-signals strong {
    min-width:40px !important;
    height:40px !important;
    border-radius:11px !important;
    background:linear-gradient(145deg,#24495a,#3c7083) !important;
    box-shadow:0 8px 18px rgba(23,47,59,.12) !important;
    font-size:15px !important;
}
body.xan-city-guide-v170 .xan-cg-signals span {
    color:#536a75 !important;
    font-weight:600 !important;
}
body.xan-city-guide-v170 .xan-cg-city-nav {
    margin-top:14px !important;
    padding:11px 13px 11px 20px !important;
    border:1px solid rgba(255,255,255,.78) !important;
    border-radius:16px !important;
    background:rgba(249,252,253,.92) !important;
    box-shadow:0 12px 34px rgba(23,47,59,.075) !important;
    backdrop-filter:blur(8px) !important;
    -webkit-backdrop-filter:blur(8px) !important;
}
body.xan-city-guide-v170 .xan-cg-city-nav a {
    min-height:40px !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
    font-weight:600 !important;
}
body.xan-city-guide-v170 .xan-cg-city-nav a:hover,
body.xan-city-guide-v170 .xan-cg-city-nav a:focus-visible {
    border-color:rgba(49,92,111,.14) !important;
    color:#24495a !important;
    background:#edf4f6 !important;
    box-shadow:none !important;
}

/* Funnel: clearly separated controls, stable active state and a contained form card. */
body.xan-city-guide-v170 .xan-cg-funnel {
    overflow:hidden !important;
    margin-top:20px !important;
    padding:clamp(26px,3.3vw,44px) !important;
    border:1px solid rgba(49,92,111,.13) !important;
    border-radius:24px !important;
    background:
        radial-gradient(circle at 88% 0,rgba(141,179,193,.19),transparent 28%),
        linear-gradient(145deg,#fff,#f3f8f9) !important;
    box-shadow:0 18px 48px rgba(23,47,59,.075) !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__head {
    max-width:900px !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__head h2 {
    margin:8px 0 10px !important;
    color:#173744 !important;
    font-size:clamp(29px,3vw,42px) !important;
    line-height:1.1 !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__head p {
    color:#5a707a !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__options {
    gap:9px !important;
    margin:24px 0 14px !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__options button {
    min-height:58px !important;
    border:1px solid rgba(49,92,111,.14) !important;
    border-radius:13px !important;
    color:#315c6f !important;
    background:#fff !important;
    box-shadow:0 6px 18px rgba(23,47,59,.035) !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__options button[aria-selected="true"] {
    border-color:#315c6f !important;
    color:#fff !important;
    background:linear-gradient(145deg,#24495a,#315c6f) !important;
    box-shadow:0 10px 24px rgba(23,47,59,.13) !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel {
    min-height:170px !important;
    padding:clamp(24px,2.7vw,34px) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:19px !important;
    background:
        radial-gradient(circle at 90% 10%,rgba(141,179,193,.22),transparent 32%),
        linear-gradient(125deg,#173744,#315c6f 72%,#3c7083) !important;
    box-shadow:0 15px 34px rgba(23,47,59,.12) !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel h3 {
    font-size:clamp(22px,2vw,30px) !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__form {
    margin-top:14px !important;
    padding:clamp(22px,2.6vw,32px) !important;
    border:1px solid rgba(49,92,111,.12) !important;
    border-radius:18px !important;
    background:rgba(255,255,255,.88) !important;
    box-shadow:inset 0 1px 0 #fff !important;
}
body.xan-city-guide-v170 .xan-cg-funnel :where(input,textarea) {
    border-color:rgba(49,92,111,.17) !important;
    border-radius:11px !important;
    background:#fff !important;
    box-shadow:none !important;
}
body.xan-city-guide-v170 .xan-cg-funnel :where(input,textarea):focus {
    border-color:#3c7083 !important;
    box-shadow:0 0 0 3px rgba(60,112,131,.13) !important;
    outline:0 !important;
}

/* Consistent editorial card rhythm for the entire 81-city page. */
body.xan-city-guide-v170 .xan-cg-blueprint {
    gap:clamp(18px,2.2vw,28px) !important;
    margin-top:24px !important;
}
body.xan-city-guide-v170 .xan-cg-blueprint .xan-cg__section:not(.xan-cg-district-showcase),
body.xan-city-guide-v170 .xan-cg-blueprint .xan-cg__side-card,
body.xan-city-guide-v170 .xan-cg-network {
    border:1px solid var(--xcg-premium-line) !important;
    border-radius:22px !important;
    background:linear-gradient(145deg,#fff,#f8fafb) !important;
    box-shadow:var(--xcg-premium-shadow) !important;
}
body.xan-city-guide-v170 .xan-cg-blueprint .xan-cg__section h2,
body.xan-city-guide-v170 .xan-cg-blueprint .xan-cg__side-card h2,
body.xan-city-guide-v170 .xan-cg-network h2 {
    color:#173744 !important;
    font-weight:700 !important;
    letter-spacing:-.026em !important;
}
body.xan-city-guide-v170 .xan-cg-blueprint .xan-cg__eyebrow {
    display:inline-flex !important;
    align-items:center !important;
    min-height:27px !important;
    padding:0 9px !important;
    border:1px solid rgba(49,92,111,.13) !important;
    border-radius:999px !important;
    color:#315c6f !important;
    background:#edf4f6 !important;
    font-size:10px !important;
    line-height:1 !important;
    font-weight:700 !important;
    letter-spacing:.09em !important;
}

/* City overview and office card. */
body.xan-city-guide-v170 .xan-cg-overview {
    background:
        radial-gradient(circle at 92% 92%,rgba(141,179,193,.20),transparent 28%),
        linear-gradient(135deg,#fff,#f1f7f8) !important;
}
body.xan-city-guide-v170 .xan-cg-overview__points span {
    border:1px solid rgba(49,92,111,.12) !important;
    background:#fff !important;
    box-shadow:0 4px 12px rgba(23,47,59,.035) !important;
}
body.xan-city-guide-v170 #xan-city-offices {
    border-color:rgba(255,255,255,.20) !important;
    color:#fff !important;
    background-image:linear-gradient(120deg,rgba(20,54,67,.90),rgba(49,92,111,.64)),url('../images/xan-city-team.webp') !important;
    background-size:cover !important;
    background-position:center !important;
    box-shadow:0 18px 42px rgba(23,47,59,.13) !important;
}
body.xan-city-guide-v170 #xan-city-offices .xan-cg__eyebrow {
    border-color:rgba(255,255,255,.20) !important;
    color:#fff !important;
    background:rgba(255,255,255,.09) !important;
}
body.xan-city-guide-v170 #xan-city-offices a {
    min-height:42px !important;
    border-radius:10px !important;
    background:rgba(255,255,255,.10) !important;
}
body.xan-city-guide-v170 #xan-city-offices a:hover,
body.xan-city-guide-v170 #xan-city-offices a:focus-visible {
    background:rgba(255,255,255,.18) !important;
}

/* Decision flow. */
body.xan-city-guide-v170 .xan-cg-decision {
    position:relative !important;
    overflow:hidden !important;
    background:
        radial-gradient(circle at 96% 8%,rgba(141,179,193,.18),transparent 24%),
        linear-gradient(145deg,#fff,#f4f8f9) !important;
}
body.xan-city-guide-v170 .xan-cg-decision ol {
    gap:12px !important;
}
body.xan-city-guide-v170 .xan-cg-decision li {
    position:relative !important;
    min-height:188px !important;
    padding:22px !important;
    border:1px solid rgba(49,92,111,.12) !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(23,47,59,.045) !important;
}
body.xan-city-guide-v170 .xan-cg-decision li:before {
    position:absolute;
    top:0;
    left:18px;
    right:18px;
    height:3px;
    border-radius:0 0 999px 999px;
    background:linear-gradient(90deg,#8db3c1,#315c6f);
    content:"";
}
body.xan-city-guide-v170 .xan-cg-decision li>span {
    width:40px !important;
    height:36px !important;
    border-radius:10px !important;
    color:#fff !important;
    background:linear-gradient(145deg,#24495a,#3c7083) !important;
}
body.xan-city-guide-v170 .xan-cg-decision li strong {
    margin-top:16px !important;
    font-size:17px !important;
}

/* Property cards. */
body.xan-city-guide-v170 .xan-cg-property {
    overflow:hidden !important;
    border:1px solid rgba(49,92,111,.12) !important;
    border-radius:24px !important;
    background:
        radial-gradient(circle at 8% 0,rgba(141,179,193,.22),transparent 26%),
        linear-gradient(145deg,#e9f1f3,#f6f9fa) !important;
    box-shadow:var(--xcg-premium-shadow) !important;
}
body.xan-city-guide-v170 .xan-cg-property__head h2 {
    color:#173744 !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg-property .xan-cg__cards article {
    min-height:286px !important;
    border:1px solid rgba(49,92,111,.13) !important;
    border-radius:18px !important;
    background:linear-gradient(145deg,#fff,#f7fafb) !important;
    box-shadow:0 10px 28px rgba(23,47,59,.055) !important;
}
body.xan-city-guide-v170 .xan-cg-property .xan-cg__cards article:hover,
body.xan-city-guide-v170 .xan-cg-property .xan-cg__cards article:focus-within {
    border-color:rgba(49,92,111,.26) !important;
    box-shadow:0 14px 34px rgba(23,47,59,.08) !important;
}
body.xan-city-guide-v170 .xan-cg-card-index {
    width:42px !important;
    height:42px !important;
    border-radius:12px !important;
    background:linear-gradient(145deg,#24495a,#3c7083) !important;
    box-shadow:0 8px 18px rgba(23,47,59,.12) !important;
}
body.xan-city-guide-v170 .xan-cg-property .xan-cg__cards .xan-cg__btn {
    margin-top:auto !important;
    border-radius:10px !important;
}

/* Image-backed premium district showcase. */
body.xan-city-guide-v170 .xan-cg-district-showcase {
    position:relative !important;
    isolation:isolate !important;
    overflow:hidden !important;
    min-height:440px !important;
    margin:0 !important;
    padding:clamp(26px,3.3vw,46px) !important;
    border:1px solid rgba(49,92,111,.16) !important;
    border-radius:26px !important;
    background:linear-gradient(135deg,#234c5d,#315c6f 58%,#426f80) !important;
    box-shadow:0 20px 50px rgba(23,47,59,.12) !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__media,
body.xan-city-guide-v170 .xan-cg-district-showcase__shade {
    position:absolute !important;
    inset:0 !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__media { z-index:-3 !important; }
body.xan-city-guide-v170 .xan-cg-district-showcase__image {
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
    filter:saturate(.90) contrast(1.03) brightness(.90) !important;
    transform:none !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__shade {
    z-index:-2 !important;
    background:linear-gradient(115deg,rgba(16,45,57,.58) 0%,rgba(34,78,94,.27) 48%,rgba(30,68,82,.46) 100%) !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__card {
    position:relative !important;
    z-index:1 !important;
    width:min(1200px,100%) !important;
    margin-inline:auto !important;
    padding:clamp(24px,2.7vw,38px) !important;
    border:1px solid rgba(255,255,255,.76) !important;
    border-radius:22px !important;
    background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(244,249,250,.88)) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.94),0 22px 50px rgba(8,33,43,.18) !important;
    backdrop-filter:blur(5px) !important;
    -webkit-backdrop-filter:blur(5px) !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__head {
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:26px !important;
    margin-bottom:24px !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__head>div:first-child { max-width:850px !important; }
body.xan-city-guide-v170 .xan-cg-district-showcase .xan-cg__eyebrow {
    margin-bottom:9px !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase h2 {
    margin:0 0 9px !important;
    color:#132f3c !important;
    font-size:clamp(29px,2.7vw,40px) !important;
    line-height:1.1 !important;
    font-weight:700 !important;
    letter-spacing:-.028em !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__head p {
    max-width:760px !important;
    margin:0 !important;
    color:#536a74 !important;
    font-size:14px !important;
    line-height:1.6 !important;
    font-weight:500 !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__count {
    display:grid !important;
    flex:0 0 122px !important;
    place-items:center !important;
    min-height:96px !important;
    padding:12px !important;
    border:1px solid rgba(49,92,111,.16) !important;
    border-radius:17px !important;
    color:#fff !important;
    background:linear-gradient(145deg,#24495a,#3c7083) !important;
    box-shadow:0 12px 28px rgba(23,47,59,.13) !important;
    text-align:center !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__count strong {
    color:#fff !important;
    font-size:30px !important;
    line-height:1 !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg-district-showcase__count span {
    margin-top:7px !important;
    color:#dcebef !important;
    font-size:10px !important;
    line-height:1.25 !important;
    font-weight:600 !important;
}
body.xan-city-guide-v170 .xan-cg-district-grid {
    display:grid !important;
    grid-template-columns:repeat(auto-fit,minmax(120px,1fr)) !important;
    gap:9px !important;
    margin:0 !important;
}
body.xan-city-guide-v170 .xan-cg-district-grid a {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:0 !important;
    min-height:46px !important;
    padding:9px 11px !important;
    border:1px solid rgba(49,92,111,.15) !important;
    border-radius:12px !important;
    color:#24495a !important;
    background:rgba(255,255,255,.86) !important;
    box-shadow:0 5px 14px rgba(23,47,59,.04) !important;
    font-size:13px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
    text-align:center !important;
    text-decoration:none !important;
}
body.xan-city-guide-v170 .xan-cg-district-grid a:hover,
body.xan-city-guide-v170 .xan-cg-district-grid a:focus-visible {
    border-color:#315c6f !important;
    color:#fff !important;
    background:#315c6f !important;
    box-shadow:0 8px 20px rgba(23,47,59,.11) !important;
}
body.xan-city-guide-v170 .xan-cg-district-featured {
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    gap:15px !important;
    align-items:flex-start !important;
    margin-top:24px !important;
    padding:18px 19px !important;
    border:1px solid rgba(49,92,111,.14) !important;
    border-radius:17px !important;
    background:linear-gradient(135deg,#eaf2f4,#f9fbfc) !important;
}
body.xan-city-guide-v170 .xan-cg-district-featured__icon {
    display:grid !important;
    place-items:center !important;
    width:44px !important;
    height:44px !important;
    border-radius:13px !important;
    color:#fff !important;
    background:linear-gradient(145deg,#24495a,#3c7083) !important;
    box-shadow:0 9px 20px rgba(23,47,59,.13) !important;
}
body.xan-city-guide-v170 .xan-cg-district-featured__icon svg { width:21px !important; height:21px !important; }
body.xan-city-guide-v170 .xan-cg-district-featured__label {
    display:block !important;
    margin:1px 0 9px !important;
    color:#315c6f !important;
    font-size:10px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    letter-spacing:.09em !important;
}
body.xan-city-guide-v170 .xan-cg-district-featured__list {
    display:flex !important;
    flex-wrap:wrap !important;
    gap:7px !important;
}
body.xan-city-guide-v170 .xan-cg-district-featured__list span {
    display:inline-flex !important;
    align-items:center !important;
    min-height:32px !important;
    padding:6px 10px !important;
    border:1px solid rgba(49,92,111,.13) !important;
    border-radius:999px !important;
    color:#35515e !important;
    background:#fff !important;
    font-size:12px !important;
    line-height:1.25 !important;
    font-weight:600 !important;
}

/* District profile cards no longer repeat the same region photo. */
body.xan-city-guide-v170 .xan-cg-profile-section {
    background:
        radial-gradient(circle at 95% 5%,rgba(141,179,193,.17),transparent 24%),
        linear-gradient(145deg,#fff,#f4f8f9) !important;
}
body.xan-city-guide-v170 .xan-cg-profiles {
    gap:12px !important;
    margin-top:24px !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article {
    min-height:174px !important;
    padding:22px !important;
    border:1px solid rgba(49,92,111,.12) !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(23,47,59,.045) !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article>span {
    border:1px solid rgba(49,92,111,.10) !important;
    background:#edf4f6 !important;
}
body.xan-city-guide-v170 .xan-cg-profiles h3 {
    font-size:19px !important;
    font-weight:700 !important;
}

/* Local indicators and valuation card. */
body.xan-city-guide-v170 .xan-cg-market {
    background:
        radial-gradient(circle at 96% 0,rgba(141,179,193,.18),transparent 25%),
        linear-gradient(145deg,#fff,#f4f8f9) !important;
}
body.xan-city-guide-v170 .xan-cg-market .xan-cg__metrics {
    gap:11px !important;
    margin-top:22px !important;
}
body.xan-city-guide-v170 .xan-cg-market .xan-cg__metrics>div {
    min-height:112px !important;
    border:1px solid rgba(49,92,111,.12) !important;
    border-radius:15px !important;
    background:#fff !important;
    box-shadow:0 7px 20px rgba(23,47,59,.04) !important;
}
body.xan-city-guide-v170 .xan-cg__cta {
    min-height:390px !important;
    border:1px solid rgba(255,255,255,.19) !important;
    border-radius:22px !important;
    background-image:linear-gradient(0deg,rgba(17,48,60,.92) 0%,rgba(30,74,89,.70) 58%,rgba(32,76,92,.26) 100%),url('../images/xan-city-analysis.webp') !important;
    box-shadow:0 20px 46px rgba(23,47,59,.14) !important;
}
body.xan-city-guide-v170 .xan-cg__cta>span {
    display:inline-flex !important;
    align-self:flex-start !important;
    min-height:27px !important;
    align-items:center !important;
    padding:0 9px !important;
    border:1px solid rgba(255,255,255,.20) !important;
    border-radius:999px !important;
    color:#fff !important;
    background:rgba(255,255,255,.09) !important;
    font-size:10px !important;
    font-weight:700 !important;
    letter-spacing:.09em !important;
}
body.xan-city-guide-v170 .xan-cg__cta h2 { font-weight:700 !important; }

/* Official source cards and checklist. */
body.xan-city-guide-v170 .xan-cg-official {
    background:
        radial-gradient(circle at 95% 0,rgba(141,179,193,.15),transparent 24%),
        linear-gradient(145deg,#fff,#f4f8f9) !important;
}
body.xan-city-guide-v170 .xan-cg__links {
    gap:9px !important;
    margin-top:20px !important;
}
body.xan-city-guide-v170 .xan-cg__links a {
    min-height:54px !important;
    padding:11px 14px !important;
    border:1px solid rgba(49,92,111,.12) !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 5px 16px rgba(23,47,59,.035) !important;
    font-weight:600 !important;
}
body.xan-city-guide-v170 .xan-cg__links a:hover,
body.xan-city-guide-v170 .xan-cg__links a:focus-visible {
    border-color:rgba(49,92,111,.27) !important;
    color:#315c6f !important;
    background:#f4f8f9 !important;
}
body.xan-city-guide-v170 .xan-cg-local-check {
    overflow:hidden !important;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:22px !important;
    background:
        radial-gradient(circle at 90% 0,rgba(141,179,193,.22),transparent 30%),
        linear-gradient(125deg,#173744,#315c6f 72%,#3c7083) !important;
    box-shadow:0 20px 46px rgba(23,47,59,.13) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check .xan-cg__eyebrow {
    border-color:rgba(255,255,255,.20) !important;
    color:#fff !important;
    background:rgba(255,255,255,.09) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check li {
    border-color:rgba(255,255,255,.17) !important;
    border-radius:13px !important;
    background:rgba(255,255,255,.08) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}

/* Closing CTA, nearby cities, FAQ and network. */
body.xan-city-guide-v170 .xan-cg-action-band {
    overflow:hidden !important;
    border:1px solid rgba(255,255,255,.18) !important;
    border-radius:24px !important;
    background-image:linear-gradient(100deg,rgba(17,49,61,.91),rgba(49,92,111,.62)),url('../images/xan-city-team.webp') !important;
    box-shadow:0 20px 48px rgba(23,47,59,.14) !important;
}
body.xan-city-guide-v170 .xan-cg-nearby {
    background:
        radial-gradient(circle at 95% 5%,rgba(141,179,193,.18),transparent 25%),
        linear-gradient(145deg,#fff,#f4f8f9) !important;
}
body.xan-city-guide-v170 .xan-cg-nearby .xan-cg__chips {
    margin-top:18px !important;
}
body.xan-city-guide-v170 .xan-cg-nearby .xan-cg__chips a {
    border:1px solid rgba(49,92,111,.13) !important;
    border-radius:11px !important;
    background:#fff !important;
    box-shadow:0 4px 14px rgba(23,47,59,.035) !important;
    font-weight:600 !important;
}
body.xan-city-guide-v170 .xan-cg-nearby .xan-cg__chips a:hover,
body.xan-city-guide-v170 .xan-cg-nearby .xan-cg__chips a:focus-visible {
    border-color:#315c6f !important;
    color:#fff !important;
    background:#315c6f !important;
}
body.xan-city-guide-v170 .xan-cg-faq {
    background:linear-gradient(145deg,#fff,#f5f8f9) !important;
}
body.xan-city-guide-v170 .xan-cg-faq details {
    margin-top:9px !important;
    padding:0 15px !important;
    border:1px solid rgba(49,92,111,.12) !important;
    border-radius:12px !important;
    background:#fff !important;
}
body.xan-city-guide-v170 .xan-cg-faq summary {
    position:relative !important;
    min-height:54px !important;
    padding-right:34px !important;
    color:#24495a !important;
    font-weight:700 !important;
    list-style:none !important;
}
body.xan-city-guide-v170 .xan-cg-faq summary::-webkit-details-marker { display:none !important; }
body.xan-city-guide-v170 .xan-cg-faq summary:after {
    position:absolute;
    top:14px;
    right:2px;
    display:grid;
    place-items:center;
    width:26px;
    height:26px;
    border-radius:8px;
    color:#315c6f;
    background:#edf4f6;
    content:"+";
    transform:none;
    font-size:18px;
    line-height:1;
}
body.xan-city-guide-v170 .xan-cg-faq details[open] summary:after { content:"−"; }
body.xan-city-guide-v170 .xan-cg-faq details p {
    padding:0 0 16px !important;
}
body.xan-city-guide-v170 .xan-cg-network {
    overflow:hidden !important;
    background:
        radial-gradient(circle at 6% 4%,rgba(141,179,193,.18),transparent 25%),
        linear-gradient(145deg,#fff,#f3f8f9) !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards article {
    min-height:246px !important;
    border:1px solid rgba(255,255,255,.17) !important;
    border-radius:18px !important;
    background:
        radial-gradient(circle at 88% 8%,rgba(141,179,193,.20),transparent 30%),
        linear-gradient(135deg,#173744,#315c6f) !important;
    box-shadow:0 14px 34px rgba(23,47,59,.12) !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards h3 { font-weight:700 !important; }
body.xan-city-guide-v170 .xan-city-content-meta {
    margin-top:20px !important;
    padding:16px 18px !important;
    border:1px solid rgba(49,92,111,.12) !important;
    border-radius:14px !important;
    background:#f5f8f9 !important;
}

/* Responsive balance for all 81 pages. */
@media (max-width:1100px) {
    body.xan-city-guide-v170 .xan-cg-district-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
    body.xan-city-guide-v170 .xan-cg-decision li { min-height:168px !important; }
}
@media (max-width:1024px) {
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero {
        min-height:0 !important;
        grid-template-columns:minmax(0,1fr) !important;
        gap:18px !important;
        padding:24px !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero:after,
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero.has-media:after {
        background:linear-gradient(180deg,rgba(13,40,51,.28),rgba(14,42,54,.58)) !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy,
    body.xan-city-guide-v170 .xan-cg__hero-rail {
        width:100% !important;
        background:linear-gradient(145deg,rgba(18,54,68,.70),rgba(29,74,89,.56)) !important;
    }
    body.xan-city-guide-v170 .xan-cg-district-showcase {
        min-height:0 !important;
        padding:24px !important;
    }
}
@media (max-width:820px) {
    body.xan-city-guide-v170 .xan-cg-blueprint__intro,
    body.xan-city-guide-v170 .xan-cg-blueprint__insight,
    body.xan-city-guide-v170 .xan-cg-blueprint__closing,
    body.xan-city-guide-v170 .xan-cg-network { gap:14px !important; }
    body.xan-city-guide-v170 .xan-cg-property .xan-cg__cards,
    body.xan-city-guide-v170 .xan-cg-decision ol { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    body.xan-city-guide-v170 .xan-cg-district-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width:760px) {
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero {
        padding:14px !important;
        gap:12px !important;
        border-radius:20px !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy,
    body.xan-city-guide-v170 .xan-cg__hero-rail {
        padding:22px 17px !important;
        border-radius:16px !important;
        backdrop-filter:blur(4px) !important;
        -webkit-backdrop-filter:blur(4px) !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero h1 {
        font-size:clamp(34px,9.3vw,46px) !important;
        line-height:1.05 !important;
        letter-spacing:-.03em !important;
    }
    body.xan-city-guide-v170 .xan-cg .xan-cg__hero-copy>p {
        font-size:14px !important;
        line-height:1.55 !important;
    }
    body.xan-city-guide-v170 .xan-cg-signals { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    body.xan-city-guide-v170 .xan-cg-funnel { padding:22px 15px !important; border-radius:19px !important; }
    body.xan-city-guide-v170 .xan-cg-funnel__options {
        display:flex !important;
        overflow-x:auto !important;
        padding-bottom:4px !important;
        scroll-snap-type:x mandatory !important;
    }
    body.xan-city-guide-v170 .xan-cg-funnel__options button {
        flex:0 0 150px !important;
        scroll-snap-align:start !important;
    }
    body.xan-city-guide-v170 .xan-cg-blueprint .xan-cg__section:not(.xan-cg-district-showcase),
    body.xan-city-guide-v170 .xan-cg-blueprint .xan-cg__side-card,
    body.xan-city-guide-v170 .xan-cg-network { padding:24px 18px !important; border-radius:18px !important; }
    body.xan-city-guide-v170 .xan-cg-property { padding:28px 14px !important; border-radius:19px !important; }
    body.xan-city-guide-v170 .xan-cg-property .xan-cg__cards article { min-height:240px !important; }
    body.xan-city-guide-v170 .xan-cg-district-showcase { padding:14px !important; border-radius:19px !important; }
    body.xan-city-guide-v170 .xan-cg-district-showcase__shade {
        background:linear-gradient(180deg,rgba(21,55,68,.44),rgba(24,62,76,.63)) !important;
    }
    body.xan-city-guide-v170 .xan-cg-district-showcase__card {
        padding:20px 16px !important;
        border-radius:17px !important;
        background:rgba(249,252,253,.92) !important;
    }
    body.xan-city-guide-v170 .xan-cg-district-showcase__head {
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto !important;
        gap:14px !important;
        margin-bottom:18px !important;
    }
    body.xan-city-guide-v170 .xan-cg-district-showcase__count {
        width:84px !important;
        min-height:80px !important;
        flex-basis:auto !important;
    }
    body.xan-city-guide-v170 .xan-cg-district-grid { gap:7px !important; }
    body.xan-city-guide-v170 .xan-cg-district-grid a { min-height:42px !important; padding:8px !important; font-size:12px !important; }
    body.xan-city-guide-v170 .xan-cg__cta { min-height:340px !important; padding:28px 20px !important; }
    body.xan-city-guide-v170 .xan-cg-action-band { padding:30px 20px !important; border-radius:19px !important; }
}
@media (max-width:560px) {
    body.xan-city-guide-v170 .xan-cg-signals { grid-template-columns:1fr !important; padding:8px !important; }
    body.xan-city-guide-v170 .xan-cg-signals>div { border-right:0 !important; border-bottom:1px solid #e2e9eb !important; }
    body.xan-city-guide-v170 .xan-cg-signals>div:last-child { border-bottom:0 !important; }
    body.xan-city-guide-v170 .xan-cg-property .xan-cg__cards,
    body.xan-city-guide-v170 .xan-cg-decision ol,
    body.xan-city-guide-v170 .xan-cg-profiles,
    body.xan-city-guide-v170 .xan-cg-network__cards { grid-template-columns:1fr !important; }
    body.xan-city-guide-v170 .xan-cg-decision li { min-height:0 !important; }
    body.xan-city-guide-v170 .xan-cg-district-showcase__head { grid-template-columns:minmax(0,1fr) !important; }
    body.xan-city-guide-v170 .xan-cg-district-showcase__count {
        grid-template-columns:auto 1fr !important;
        justify-self:start !important;
        width:auto !important;
        min-height:48px !important;
        padding:9px 12px !important;
        gap:8px !important;
    }
    body.xan-city-guide-v170 .xan-cg-district-showcase__count span { margin:0 !important; text-align:left !important; }
    body.xan-city-guide-v170 .xan-cg-district-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    body.xan-city-guide-v170 .xan-cg-district-featured { grid-template-columns:minmax(0,1fr) !important; padding:15px !important; }
    body.xan-city-guide-v170 .xan-cg-market .xan-cg__metrics { grid-template-columns:1fr !important; }
    body.xan-city-guide-v170 .xan-cg-local-check ul { grid-template-columns:1fr !important; }
}
@media (prefers-reduced-motion:reduce) {
    body.xan-city-guide-v170 .xan-cg *,
    body.xan-city-guide-v170 .xan-cg *:before,
    body.xan-city-guide-v170 .xan-cg *:after {
        scroll-behavior:auto !important;
        transition:none !important;
        animation:none !important;
    }
}

/* v1.9.10 — controlled card balance and contrast repair.
 * Narrowly scoped to the shared 81-city page template.
 * No map, route, content, image attachment or publication logic is changed.
 */

/* Shared premium card rules: slogan top-left, title/body balanced in the center,
 * actions anchored to the lower edge. No hover movement.
 */
body.xan-city-guide-v170 .xan-cg :is(
    .xan-cg-decision li,
    .xan-cg-network__cards article,
    .xan-cg-local-check li
) {
    position:relative !important;
    overflow:hidden !important;
    transform:none !important;
}

/* Overview stays light: dark petrol text on white. */
body.xan-city-guide-v170 .xan-cg-overview {
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    min-height:330px !important;
    padding:clamp(30px,4vw,54px) !important;
    color:#173744 !important;
    background:
        radial-gradient(circle at 92% 92%,rgba(141,179,193,.16),transparent 32%),
        linear-gradient(145deg,#ffffff,#f6f9fa) !important;
}
body.xan-city-guide-v170 .xan-cg-overview .xan-cg__eyebrow {
    align-self:flex-start !important;
    margin-bottom:16px !important;
}
body.xan-city-guide-v170 .xan-cg-overview h2 {
    max-width:860px !important;
    margin:0 auto 16px !important;
    text-align:center !important;
    color:#173744 !important;
}
body.xan-city-guide-v170 .xan-cg-overview > p {
    max-width:980px !important;
    margin:0 auto !important;
    text-align:center !important;
    color:#536a75 !important;
    line-height:1.72 !important;
}
body.xan-city-guide-v170 .xan-cg-overview__points {
    justify-content:center !important;
    margin-top:24px !important;
}

/* City office card: image is intentionally blurred only at background level.
 * Every text layer remains crisp and white.
 */
body.xan-city-guide-v170 #xan-city-offices {
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    min-height:330px !important;
    padding:clamp(26px,3vw,40px) !important;
    color:#fff !important;
    isolation:isolate !important;
    background-image:none !important;
}
body.xan-city-guide-v170 #xan-city-offices::before {
    position:absolute !important;
    inset:-10px !important;
    z-index:-2 !important;
    content:"" !important;
    background:url('../images/xan-city-team.webp') center/cover no-repeat !important;
    filter:blur(3px) saturate(.82) brightness(.72) !important;
    transform:scale(1.035) !important;
}
body.xan-city-guide-v170 #xan-city-offices::after {
    position:absolute !important;
    inset:0 !important;
    z-index:-1 !important;
    content:"" !important;
    background:linear-gradient(135deg,rgba(17,49,61,.84),rgba(49,92,111,.62)) !important;
}
body.xan-city-guide-v170 #xan-city-offices :is(h2,h3,p,strong,span,a) {
    color:#fff !important;
    text-shadow:none !important;
}
body.xan-city-guide-v170 #xan-city-offices > .xan-cg__eyebrow {
    align-self:flex-start !important;
    margin-bottom:18px !important;
    border-color:rgba(255,255,255,.38) !important;
    color:#fff !important;
    background:rgba(17,49,61,.42) !important;
}
body.xan-city-guide-v170 #xan-city-offices > h2 {
    max-width:92% !important;
    margin:0 auto 24px !important;
    text-align:center !important;
    color:#fff !important;
}
body.xan-city-guide-v170 #xan-city-offices article {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto auto !important;
    align-items:end !important;
    gap:10px !important;
}
body.xan-city-guide-v170 #xan-city-offices article strong,
body.xan-city-guide-v170 #xan-city-offices article p {
    grid-column:1/-1 !important;
    text-align:center !important;
}
body.xan-city-guide-v170 #xan-city-offices article a {
    min-height:46px !important;
    padding:0 16px !important;
    border:1px solid rgba(255,255,255,.36) !important;
    border-radius:11px !important;
    background:rgba(17,49,61,.50) !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 #xan-city-offices article a:first-of-type {
    justify-self:start !important;
}
body.xan-city-guide-v170 #xan-city-offices article a:last-of-type {
    justify-self:end !important;
}

/* Four-step decision cards: no one-sided pile-up. */
body.xan-city-guide-v170 .xan-cg-decision li {
    display:grid !important;
    grid-template-rows:auto 1fr auto !important;
    align-content:stretch !important;
    min-height:224px !important;
    padding:24px 22px !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.20) !important;
    background:
        linear-gradient(145deg,rgba(17,49,61,.88),rgba(49,92,111,.68)),
        url('../images/xan-city-office-lobby.webp') center/cover no-repeat !important;
}
body.xan-city-guide-v170 .xan-cg-decision li > span {
    justify-self:start !important;
    align-self:start !important;
    color:#fff !important;
    background:rgba(17,49,61,.62) !important;
    border:1px solid rgba(255,255,255,.24) !important;
}
body.xan-city-guide-v170 .xan-cg-decision li strong {
    align-self:end !important;
    margin:24px 0 10px !important;
    text-align:center !important;
    color:#fff !important;
}
body.xan-city-guide-v170 .xan-cg-decision li p {
    margin:0 !important;
    text-align:center !important;
    color:rgba(255,255,255,.90) !important;
    line-height:1.58 !important;
}

/* Local checklist was losing contrast on some installations.
 * Restore a premium image-backed dark card with crisp white text.
 */
body.xan-city-guide-v170 .xan-cg-local-check {
    position:relative !important;
    overflow:hidden !important;
    isolation:isolate !important;
    color:#fff !important;
    background-image:none !important;
}
body.xan-city-guide-v170 .xan-cg-local-check::before {
    position:absolute !important;
    inset:-12px !important;
    z-index:-2 !important;
    content:"" !important;
    background:url('../images/xan-city-analysis.webp') center/cover no-repeat !important;
    filter:blur(4px) brightness(.62) saturate(.78) !important;
    transform:scale(1.04) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check::after {
    position:absolute !important;
    inset:0 !important;
    z-index:-1 !important;
    content:"" !important;
    background:linear-gradient(125deg,rgba(14,43,54,.94),rgba(49,92,111,.72)) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check :is(h2,p,li,span,a) {
    color:#fff !important;
    text-shadow:none !important;
}
body.xan-city-guide-v170 .xan-cg-local-check > div:first-child {
    text-align:center !important;
}
body.xan-city-guide-v170 .xan-cg-local-check > div:first-child .xan-cg__eyebrow {
    float:none !important;
    display:inline-flex !important;
    margin:0 0 14px !important;
    border-color:rgba(255,255,255,.34) !important;
    color:#fff !important;
    background:rgba(17,49,61,.42) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check > div:first-child p {
    max-width:900px !important;
    margin:10px auto 0 !important;
}
body.xan-city-guide-v170 .xan-cg-local-check li {
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    align-items:center !important;
    min-height:92px !important;
    border:1px solid rgba(255,255,255,.20) !important;
    background:rgba(17,49,61,.44) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check li > span {
    color:#173744 !important;
    background:#fff !important;
}
body.xan-city-guide-v170 .xan-cg-local-check li p {
    margin:0 !important;
    text-align:left !important;
}
body.xan-city-guide-v170 .xan-cg-local-check__actions {
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:12px !important;
    margin-top:20px !important;
}
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn:first-child {
    margin-right:auto !important;
}
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn:last-child {
    margin-left:auto !important;
}

/* Funnel selection panel: slogan top-left, title/description centered,
 * action button anchored to the right. */
body.xan-city-guide-v170 .xan-cg-funnel__panel {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    grid-template-rows:auto 1fr auto !important;
    align-items:center !important;
    gap:12px 28px !important;
    background:
        linear-gradient(120deg,rgba(17,49,61,.90),rgba(49,92,111,.68)),
        url('../images/xan-city-office-lobby.webp') center/cover no-repeat !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel > :first-child {
    grid-column:1/-1 !important;
    justify-self:start !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel :is(h3,p) {
    grid-column:1/-1 !important;
    max-width:960px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel .xan-cg__btn,
body.xan-city-guide-v170 .xan-cg-funnel__panel .xan-cg-funnel__actions {
    grid-column:2 !important;
    justify-self:end !important;
}

/* Network cards: image-backed, centered content, number at top-left,
 * first card action left and second card action right.
 */
body.xan-city-guide-v170 .xan-cg-network__cards article {
    display:grid !important;
    grid-template-rows:auto 1fr auto auto !important;
    min-height:286px !important;
    padding:26px 28px !important;
    color:#fff !important;
    background:
        linear-gradient(140deg,rgba(17,49,61,.90),rgba(49,92,111,.66)),
        url('../images/xan-city-team.webp') center/cover no-repeat !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards article > span {
    justify-self:start !important;
    align-self:start !important;
    color:#fff !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards article :is(h3,p) {
    max-width:92% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
    color:#fff !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards article h3 {
    align-self:end !important;
    margin-top:24px !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards article p {
    color:rgba(255,255,255,.90) !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards article .xan-cg__btn {
    margin-top:24px !important;
    color:#173744 !important;
    background:#fff !important;
    border-color:#fff !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards article:first-child .xan-cg__btn {
    justify-self:start !important;
}
body.xan-city-guide-v170 .xan-cg-network__cards article:last-child .xan-cg__btn {
    justify-self:end !important;
}

/* No blur is applied to text-bearing layers. */
body.xan-city-guide-v170 .xan-cg :is(
    #xan-city-offices,
    .xan-cg-decision li,
    .xan-cg-local-check,
    .xan-cg-funnel__panel,
    .xan-cg-network__cards article
) :is(h2,h3,p,strong,span,a,button) {
    filter:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}

/* Responsive containment without changing the desktop information architecture. */
@media (max-width:1024px) {
    body.xan-city-guide-v170 #xan-city-offices article {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    body.xan-city-guide-v170 .xan-cg-funnel__panel {
        grid-template-columns:minmax(0,1fr) !important;
    }
    body.xan-city-guide-v170 .xan-cg-funnel__panel .xan-cg__btn,
    body.xan-city-guide-v170 .xan-cg-funnel__panel .xan-cg-funnel__actions {
        grid-column:1 !important;
        justify-self:end !important;
    }
}
@media (max-width:640px) {
    body.xan-city-guide-v170 .xan-cg-overview,
    body.xan-city-guide-v170 #xan-city-offices {
        min-height:0 !important;
    }
    body.xan-city-guide-v170 #xan-city-offices article {
        grid-template-columns:minmax(0,1fr) !important;
    }
    body.xan-city-guide-v170 #xan-city-offices article a,
    body.xan-city-guide-v170 #xan-city-offices article a:first-of-type,
    body.xan-city-guide-v170 #xan-city-offices article a:last-of-type {
        width:100% !important;
        justify-self:stretch !important;
    }
    body.xan-city-guide-v170 .xan-cg-local-check__actions {
        align-items:stretch !important;
        flex-direction:column !important;
    }
    body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn {
        width:100% !important;
        margin:0 !important;
    }
    body.xan-city-guide-v170 .xan-cg-network__cards article .xan-cg__btn,
    body.xan-city-guide-v170 .xan-cg-network__cards article:first-child .xan-cg__btn,
    body.xan-city-guide-v170 .xan-cg-network__cards article:last-child .xan-cg__btn {
        width:100% !important;
        justify-self:stretch !important;
    }
}



/* v1.9.11 — funnel panel balance + local checklist image/contrast hard fix.
 * Narrow scope: funnel panels and local checklist only.
 * Fixes hidden tab panels becoming visible and restores image-backed premium card contrast.
 */
body.xan-city-guide-v170 .xan-cg-funnel__panel[hidden]{display:none !important;}
body.xan-city-guide-v170 .xan-cg-funnel__panels{display:grid !important;gap:14px !important;}
body.xan-city-guide-v170 .xan-cg-funnel__panel{
    position:relative !important;
    isolation:isolate !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:18px 28px !important;
    min-height:158px !important;
    padding:22px 26px !important;
    border:1px solid rgba(210,231,237,.20) !important;
    border-radius:18px !important;
    background:none !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
    background:url('../images/xan-city-office-lobby.webp') center/cover no-repeat !important;
    transform:scale(1.01) !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:linear-gradient(90deg,rgba(11,39,49,.92) 0%,rgba(25,68,82,.84) 56%,rgba(49,92,111,.72) 100%) !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel > *{position:relative !important;z-index:2 !important;}
body.xan-city-guide-v170 .xan-cg-funnel__panel > div{
    max-width:760px !important;
    margin-inline:auto !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel > div > span{
    align-self:flex-start !important;
    margin-bottom:10px !important;
    color:#d9ebef !important;
    font-size:10px !important;
    font-weight:700 !important;
    letter-spacing:.09em !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel h3{
    margin:0 0 8px !important;
    text-align:center !important;
    color:#fff !important;
    font-size:clamp(22px,2vw,28px) !important;
    line-height:1.18 !important;
    text-wrap:balance !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel p{
    margin:0 !important;
    text-align:center !important;
    color:rgba(255,255,255,.90) !important;
    font-size:14px !important;
    line-height:1.56 !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel > .xan-cg__btn,
body.xan-city-guide-v170 .xan-cg-funnel__panel > .xan-cg-funnel__actions{
    justify-self:end !important;
    align-self:center !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__actions{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:flex-end !important;
    gap:10px !important;
}
body.xan-city-guide-v170 .xan-cg-funnel__panel .xan-cg__btn{
    min-height:46px !important;
    padding:0 18px !important;
    border-radius:11px !important;
    white-space:nowrap !important;
}

body.xan-city-guide-v170 .xan-cg-local-check{
    position:relative !important;
    isolation:isolate !important;
    overflow:hidden !important;
    color:#fff !important;
    background:none !important;
    border-radius:20px !important;
}
body.xan-city-guide-v170 .xan-cg-local-check::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
    background:url('../images/xan-city-analysis.webp') center/cover no-repeat !important;
    transform:scale(1.02) !important;
    filter:blur(2.5px) saturate(.84) brightness(.70) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:linear-gradient(135deg,rgba(12,39,49,.93),rgba(49,92,111,.74)) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check > *{position:relative !important;z-index:2 !important;}
body.xan-city-guide-v170 .xan-cg-local-check > div:first-child{
    max-width:860px !important;
    margin:0 auto !important;
    text-align:center !important;
}
body.xan-city-guide-v170 .xan-cg-local-check > div:first-child .xan-cg__eyebrow{
    display:inline-flex !important;
    margin:0 0 14px !important;
    border:1px solid rgba(255,255,255,.32) !important;
    color:#fff !important;
    background:rgba(17,49,61,.35) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check h2{
    color:#fff !important;
    text-align:center !important;
    text-wrap:balance !important;
}
body.xan-city-guide-v170 .xan-cg-local-check > div:first-child p{
    color:rgba(255,255,255,.90) !important;
    text-align:center !important;
    max-width:900px !important;
    margin:10px auto 0 !important;
}
body.xan-city-guide-v170 .xan-cg-local-check ul{margin:22px 0 !important;}
body.xan-city-guide-v170 .xan-cg-local-check li{
    min-height:96px !important;
    border:1px solid rgba(255,255,255,.18) !important;
    background:rgba(255,255,255,.09) !important;
    backdrop-filter:blur(8px) !important;
    -webkit-backdrop-filter:blur(8px) !important;
}
body.xan-city-guide-v170 .xan-cg-local-check li > span{
    color:#173744 !important;
    background:#fff !important;
}
body.xan-city-guide-v170 .xan-cg-local-check li p{
    color:#fff !important;
    font-size:13px !important;
    line-height:1.6 !important;
}
body.xan-city-guide-v170 .xan-cg-local-check__actions{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:12px !important;
}
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn:first-child{margin-right:auto !important;}
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn:last-child{margin-left:auto !important;}
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn{min-height:48px !important;}

@media (max-width:1024px){
    body.xan-city-guide-v170 .xan-cg-funnel__panel{
        grid-template-columns:minmax(0,1fr) !important;
        min-height:0 !important;
    }
    body.xan-city-guide-v170 .xan-cg-funnel__panel > .xan-cg__btn,
    body.xan-city-guide-v170 .xan-cg-funnel__panel > .xan-cg-funnel__actions{
        justify-self:end !important;
    }
}
@media (max-width:640px){
    body.xan-city-guide-v170 .xan-cg-funnel__panel{
        padding:18px 16px !important;
        gap:14px !important;
    }
    body.xan-city-guide-v170 .xan-cg-funnel__panel > .xan-cg__btn,
    body.xan-city-guide-v170 .xan-cg-funnel__panel > .xan-cg-funnel__actions,
    body.xan-city-guide-v170 .xan-cg-funnel__actions .xan-cg__btn{
        width:100% !important;
        justify-self:stretch !important;
    }
    body.xan-city-guide-v170 .xan-cg-funnel__actions{
        justify-content:stretch !important;
    }
    body.xan-city-guide-v170 .xan-cg-local-check__actions{
        flex-direction:column !important;
        align-items:stretch !important;
    }
    body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn,
    body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn:first-child,
    body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn:last-child{
        width:100% !important;
        margin:0 !important;
    }
}


/* v1.9.13 — city/region profile image cards + page typography and contrast repair.
 * Uses each city's already imported region image. No media IDs, map or routes are changed.
 */
body.xan-city-guide-page .xan-cg {
    font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
    font-synthesis:none !important;
    font-kerning:normal !important;
    font-optical-sizing:auto !important;
    -webkit-font-smoothing:antialiased !important;
    -moz-osx-font-smoothing:grayscale !important;
    text-rendering:optimizeLegibility !important;
}
body.xan-city-guide-page .xan-cg :is(h1,h2,h3,h4,strong,.xan-cg__btn,button) {
    font-family:inherit !important;
    font-style:normal !important;
    font-variation-settings:normal !important;
    letter-spacing:-.018em !important;
    text-shadow:none !important;
    -webkit-text-stroke:0 transparent !important;
}
body.xan-city-guide-page .xan-cg :is(p,li,label,summary,small,span) {
    font-family:inherit !important;
    font-style:normal !important;
    letter-spacing:0 !important;
    text-shadow:none !important;
}
body.xan-city-guide-page .xan-cg h1 { font-weight:700 !important; }
body.xan-city-guide-page .xan-cg h2 { font-weight:700 !important; }
body.xan-city-guide-page .xan-cg h3 { font-weight:650 !important; }
body.xan-city-guide-page .xan-cg :is(p,li,label,summary) { font-weight:400 !important; }
body.xan-city-guide-page .xan-cg :is(.xan-cg__btn,button,strong) { font-weight:700 !important; }
body.xan-city-guide-page .xan-cg :is(a,button,.xan-cg__btn):hover,
body.xan-city-guide-page .xan-cg :is(a,button,.xan-cg__btn):focus,
body.xan-city-guide-page .xan-cg :is(a,button,.xan-cg__btn):active {
    transform:none !important;
    filter:none !important;
    text-shadow:none !important;
}

/* Local checklist: force crisp white typography and visible button labels. */
body.xan-city-guide-v170 .xan-cg-local-check h2 {
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    opacity:1 !important;
    visibility:visible !important;
    font-size:clamp(30px,3vw,42px) !important;
    line-height:1.12 !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg-local-check :is(p,li) {
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    opacity:1 !important;
}
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn {
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    border-color:rgba(255,255,255,.34) !important;
    background:#315c6f !important;
}
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn--light {
    color:#173744 !important;
    -webkit-text-fill-color:#173744 !important;
    border-color:#fff !important;
    background:#fff !important;
}
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn :is(span,strong),
body.xan-city-guide-v170 .xan-cg-local-check__actions .xan-cg__btn--light :is(span,strong) {
    color:inherit !important;
    -webkit-text-fill-color:inherit !important;
}

/* Region profile section: city-specific image cards with alternate crop positions. */
body.xan-city-guide-v170 .xan-cg-profile-section {
    position:relative !important;
    overflow:hidden !important;
    padding:clamp(30px,4vw,48px) !important;
    border:1px solid rgba(49,92,111,.13) !important;
    border-radius:22px !important;
    background:linear-gradient(145deg,#fff,#f2f7f8) !important;
    box-shadow:0 16px 40px rgba(23,47,59,.08) !important;
}
body.xan-city-guide-v170 .xan-cg-profile-section > .xan-cg__eyebrow {
    display:inline-flex !important;
    margin-bottom:12px !important;
}
body.xan-city-guide-v170 .xan-cg-profile-section > h2 {
    margin:0 !important;
    color:#173744 !important;
    font-size:clamp(31px,3.2vw,43px) !important;
    line-height:1.12 !important;
    font-weight:700 !important;
}
body.xan-city-guide-v170 .xan-cg-profile-section > p {
    max-width:900px !important;
    margin:12px 0 0 !important;
    color:#5a6f78 !important;
    font-size:15px !important;
    line-height:1.65 !important;
}
body.xan-city-guide-v170 .xan-cg-profiles {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
    margin-top:24px !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article {
    position:relative !important;
    isolation:isolate !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-rows:auto 1fr auto !important;
    align-content:stretch !important;
    min-height:226px !important;
    padding:22px !important;
    border:1px solid rgba(255,255,255,.22) !important;
    border-radius:18px !important;
    color:#fff !important;
    background:#173744 !important;
    box-shadow:0 14px 30px rgba(23,47,59,.13) !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article::before {
    content:"" !important;
    position:absolute !important;
    inset:-5px !important;
    z-index:-2 !important;
    background-image:var(--xan-profile-image,url('../images/xan-city-analysis.webp')) !important;
    background-size:cover !important;
    background-position:center !important;
    filter:blur(1.5px) saturate(.88) brightness(.72) !important;
    transform:scale(1.035) !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article::after {
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:-1 !important;
    background:linear-gradient(145deg,rgba(13,42,53,.91),rgba(49,92,111,.64)) !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article:nth-child(3n+1)::before { background-position:22% center !important; }
body.xan-city-guide-v170 .xan-cg-profiles article:nth-child(3n+2)::before { background-position:50% center !important; }
body.xan-city-guide-v170 .xan-cg-profiles article:nth-child(3n)::before { background-position:78% center !important; }
body.xan-city-guide-v170 .xan-cg-profiles article > span {
    justify-self:start !important;
    align-self:start !important;
    margin:0 !important;
    padding:6px 9px !important;
    border:1px solid rgba(255,255,255,.28) !important;
    border-radius:999px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background:rgba(17,49,61,.42) !important;
    font-size:10px !important;
    font-weight:700 !important;
    letter-spacing:.05em !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article h3 {
    align-self:end !important;
    margin:26px auto 8px !important;
    max-width:94% !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    text-align:center !important;
    font-size:clamp(19px,1.7vw,24px) !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    text-wrap:balance !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article p {
    margin:0 auto !important;
    max-width:96% !important;
    color:rgba(255,255,255,.91) !important;
    -webkit-text-fill-color:rgba(255,255,255,.91) !important;
    text-align:center !important;
    font-size:13px !important;
    line-height:1.62 !important;
    font-weight:400 !important;
}
body.xan-city-guide-v170 .xan-cg-profiles article:hover,
body.xan-city-guide-v170 .xan-cg-profiles article:focus-within {
    transform:none !important;
    filter:none !important;
    box-shadow:0 14px 30px rgba(23,47,59,.13) !important;
}

@media (max-width:1024px) {
    body.xan-city-guide-v170 .xan-cg-profiles { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:640px) {
    body.xan-city-guide-v170 .xan-cg-profile-section { padding:22px 14px !important; border-radius:18px !important; }
    body.xan-city-guide-v170 .xan-cg-profiles { grid-template-columns:minmax(0,1fr) !important; gap:10px !important; }
    body.xan-city-guide-v170 .xan-cg-profiles article { min-height:210px !important; padding:20px 17px !important; }
}
