/* City hub v2 (/minsk/, /gomel/, …). Inlined in <head> by inc/city-hub-v2.php. Root rem is 10px: use px. */
.hub{--hub-primary:#0a65fc;--hub-primary-d:#0850c9;--hub-ink:#0f172a;--hub-muted:#475569;--hub-soft-ink:#64748b;--hub-line:#e2e8f0;--hub-bg:#f8fafc;--hub-soft:#eef4ff;--hub-radius:14px;--hub-header-offset:89px;--hub-ease:cubic-bezier(.23,1,.32,1);--hub-container-max:var(--rw-container,1280px);--hub-content-max:var(--rw-content,1040px);color:var(--hub-ink);font-size:16px;line-height:1.5;background:var(--hub-bg)}
@media (max-width:991px){.hub{--hub-header-offset:0px}}
.hub *,.hub *::before,.hub *::after{box-sizing:border-box}
.hub ul{list-style:none;margin:0;padding:0}
.hub li{list-style:none;line-height:inherit}
.hub a{text-decoration:none}
/* Shell widths owned by css/rework-layout.css (--rw-container / --rw-content). */
.hub-h2{font-size:26px;line-height:1.2;font-weight:800;letter-spacing:-.01em;margin:0;color:var(--hub-ink)}
.hub-h3{font-size:18px;line-height:1.3;font-weight:800;margin:0 0 14px;color:var(--hub-ink)}

/* Hero */
.hub-hero{padding:calc(var(--hub-header-offset) + 28px) 0 28px;background:linear-gradient(180deg,#e9f1ff 0%,#f4f8ff 55%,var(--hub-bg) 100%);border-bottom:1px solid #e6edf8}
.hub-crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--hub-soft-ink);margin:0 0 12px}
.hub-crumbs a{color:var(--hub-soft-ink)}
.hub-crumbs a:hover{color:var(--hub-primary)}
.hub-hero__title{font-size:clamp(28px,3.6vw,44px);line-height:1.1;font-weight:800;letter-spacing:-.02em;margin:0 0 10px;color:var(--hub-ink);text-wrap:balance}
.hub-hero__lead{font-size:17px;color:var(--hub-muted);margin:0 0 20px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.hub-hero__lead strong{color:var(--hub-ink);font-weight:800;font-variant-numeric:tabular-nums}
.hub-hero__updated{display:inline-flex;align-items:center;gap:6px}
.hub-live{width:8px;height:8px;border-radius:50%;background:#10b981;box-shadow:0 0 0 0 rgba(16,185,129,.5);animation:hubPulse 2.4s ease-out infinite}
@keyframes hubPulse{0%{box-shadow:0 0 0 0 rgba(16,185,129,.45)}70%{box-shadow:0 0 0 8px rgba(16,185,129,0)}100%{box-shadow:0 0 0 0 rgba(16,185,129,0)}}

.hub-search{display:flex;align-items:center;gap:6px;max-width:780px;background:#fff;border:1px solid var(--hub-line);border-radius:14px;padding:6px 6px 6px 14px;box-shadow:0 1px 2px rgba(15,23,42,.05),0 12px 32px -18px rgba(10,101,252,.35);transition:border-color .16s ease,box-shadow .2s ease}
.hub-search:focus-within{border-color:var(--hub-primary);box-shadow:0 0 0 4px rgba(10,101,252,.14),0 12px 32px -18px rgba(10,101,252,.35)}
.hub-search__icon{display:inline-flex;color:var(--hub-soft-ink)}
.hub-search__icon svg,.hub-search__city svg{fill:currentColor}
.hub .hub-search__input{flex:1;min-width:0;height:48px;border:0;outline:0;background:transparent;font-size:16px;color:var(--hub-ink);padding:0 4px;margin:0;box-shadow:none}
.hub .hub-search__input::placeholder{color:#94a3b8}
.hub-search__city-wrap{position:relative;flex:0 0 auto;z-index:50}
.hub-search__city{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:14px;font-weight:600;color:var(--hub-muted);background:#f1f5f9;border:0;border-radius:999px;padding:6px 10px 6px 12px;cursor:pointer;font-family:inherit;line-height:1.2;min-height:36px}
.hub-search__city:hover,.hub-search__city-wrap.is-open .hub-search__city{background:#e8eef8;color:var(--hub-ink)}
.hub-search__city-caret{opacity:.55}
.hub-search__city-wrap.is-open .hub-search__city-caret{transform:rotate(180deg)}
.hub-search__city-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:60;display:none;flex-direction:column;gap:6px;min-width:220px;max-width:min(280px,calc(100vw - 32px));max-height:min(400px,70vh);margin:0;padding:8px;background:#fff;border:1px solid var(--hub-line);border-radius:12px;box-shadow:0 18px 40px -24px rgba(15,23,42,.55)}
.hub-search__city-wrap.is-open .hub-search__city-panel,.hub-search__city-panel:not([hidden]){display:flex}
.hub-search__city-panel[hidden]{display:none!important}
.hub-search__city-filter{display:block;width:100%;height:40px;margin:0;padding:0 12px;border:1px solid var(--hub-line);border-radius:10px;background:#f8fafc;color:var(--hub-ink);font-size:14px;font-family:inherit;box-sizing:border-box}
.hub-search__city-filter:focus{outline:0;border-color:var(--hub-primary);box-shadow:0 0 0 3px rgba(10,101,252,.16);background:#fff}
.hub-search__city-list{position:static;z-index:auto;min-width:0;max-height:min(300px,calc(70vh - 64px));overflow:auto;margin:0;padding:0;list-style:none;background:transparent;border:0;border-radius:0;box-shadow:none}
.hub-search__city-list a{display:block;padding:10px 12px;border-radius:8px;color:var(--hub-ink);font-size:14px;font-weight:600;text-decoration:none}
.hub-search__city-list a:hover{background:var(--hub-soft);color:var(--hub-primary)}
.hub-search__city-list [aria-current="page"] a{background:#0f172a;color:#fff}
.hub-search__city-empty{margin:0;padding:10px 12px;font-size:13px;font-weight:600;color:var(--hub-soft-ink)}
.hub .hub-search__btn{height:48px;padding:0 26px;border:0;border-radius:10px;background:var(--hub-primary);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .16s ease,transform .16s var(--hub-ease)}
.hub .hub-search__btn:hover{background:var(--hub-primary-d)}
.hub .hub-search__btn:active{transform:scale(.97)}

/* Alert dialog */
/* Alert dialog — centered over viewport (theme resets can break native dialog centering). */
.hub-alert-dialog{position:fixed;inset:0;margin:auto;border:0;border-radius:16px;padding:0;width:min(420px,calc(100vw - 32px));max-height:min(90vh,640px);overflow:auto;box-shadow:0 28px 60px -28px rgba(15,23,42,.55);background:#fff;color:var(--hub-ink)}
.hub-alert-dialog::backdrop{background:rgba(15,23,42,.45)}
.hub-alert-dialog__form{padding:22px 22px 18px;margin:0;box-sizing:border-box}
.hub-alert-dialog__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 8px}
.hub-alert-dialog__title{margin:0;font-size:18px;line-height:1.3;font-weight:800;color:var(--hub-ink)}
.hub-alert-dialog__close{border:0;background:transparent;font-size:24px;line-height:1;color:var(--hub-soft-ink);cursor:pointer;padding:0 4px}
.hub-alert-dialog__text{margin:0 0 14px;font-size:14px;color:var(--hub-muted)}
.hub-alert-dialog__label{display:block;font-size:13px;font-weight:600;color:var(--hub-soft-ink);margin:0 0 4px}
.hub-alert-dialog__input{display:block;width:100%;max-width:100%;height:44px;border:1px solid var(--hub-line);border-radius:10px;padding:0 12px;font-size:16px;margin:0 0 12px;background:#fff;color:var(--hub-ink);box-sizing:border-box}
.hub-alert-dialog__city{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--hub-ink)}
.hub-alert-dialog__err{margin:0 0 10px;font-size:13px;color:#b91c1c}
.hub-alert-dialog__actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:4px}
.hub-btn--ghost{background:#fff;border:1px solid var(--hub-line);color:var(--hub-ink)}
.hub-btn--ghost:hover{background:var(--hub-bg)}

.hub-chips{display:flex;gap:8px;margin:16px 0 0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding:2px 0 4px}
.hub-chips::-webkit-scrollbar{display:none}
.hub-chip{flex:0 0 auto;scroll-snap-align:start;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--hub-line);background:#fff;color:var(--hub-ink);font-size:15px;font-weight:600;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .16s var(--hub-ease),background-color .16s ease,border-color .16s ease,color .16s ease}
.hub-chip:hover{border-color:#b9cdf3;color:var(--hub-ink)}
.hub-chip:active{transform:scale(.97)}
.hub-chip__n{font-size:13px;font-weight:600;color:var(--hub-soft-ink);font-variant-numeric:tabular-nums}
.hub-chip.is-active{background:var(--hub-ink);border-color:var(--hub-ink);color:#fff}
.hub-chip.is-active .hub-chip__n{color:rgba(255,255,255,.7)}
.hub-chip:focus-visible,.hub-btn:focus-visible,.hub-save:focus-visible,.hub-link:focus-visible,.hub-role:focus-visible,.hub-sticky__btn:focus-visible,.hub-links__toggle:focus-visible{outline:3px solid rgba(10,101,252,.45);outline-offset:2px}

.hub-stats{display:flex;flex-wrap:wrap;gap:12px 36px;margin:22px 0 0;padding:0}
.hub-stats div{margin:0}
.hub-stats dt{font-size:13px;font-weight:500;color:var(--hub-soft-ink);margin:0}
.hub-stats dd{font-size:22px;font-weight:800;color:var(--hub-ink);margin:2px 0 0;font-variant-numeric:tabular-nums}

/* Layout */
.hub-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding-block:32px 8px}
.hub-layout__main,.hub-layout__aside{min-width:0}
@media (min-width:992px){.hub-layout{grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start}}

/* Feed */
.hub-feed__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;margin:0 0 16px}
.hub-feed__count{margin:0;font-size:15px;color:var(--hub-soft-ink);font-variant-numeric:tabular-nums}
.hub-list{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.hub-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hub-card{position:relative;min-width:0}
.hub-card__in{position:relative;display:flex;flex-direction:column;gap:6px;height:100%;background:#fff;border:1px solid var(--hub-line);border-radius:var(--hub-radius);padding:16px 16px 14px;transition:border-color .16s ease,box-shadow .2s var(--hub-ease),transform .2s var(--hub-ease)}
@media (hover:hover) and (pointer:fine){.hub-card__in:hover{border-color:#c4d5f5;box-shadow:0 14px 34px -22px rgba(15,23,42,.45);transform:translateY(-2px)}}
.hub-card__top{display:flex;align-items:center;gap:8px;min-height:20px}
.hub-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:700;line-height:1;padding:4px 8px;border-radius:999px}
.hub-badge--new{background:#e3f7ec;color:#047857}
.hub-card__date{font-size:13px;color:var(--hub-soft-ink)}
.hub-card__title{font-size:17px;line-height:1.3;font-weight:700;margin:0;color:var(--hub-ink)}
.hub-card__link{color:var(--hub-ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hub-card__link::after{content:"";position:absolute;inset:0;border-radius:var(--hub-radius)}
.hub-card__link:hover{color:var(--hub-primary)}
.hub-card__link:focus-visible{outline:none}
.hub-card__link:focus-visible::after{outline:3px solid rgba(10,101,252,.45);outline-offset:2px}
.hub-card__company{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;color:var(--hub-muted);min-width:0}
.hub-card__company-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hub-card__logo{flex:0 0 24px;width:24px;height:24px;border-radius:6px}
.hub-card__logo--ph,.hub-company__logo--ph{position:relative;overflow:hidden;display:inline-grid;place-items:center;background:var(--hub-soft);color:var(--hub-primary);line-height:0}
.hub-card__logo--ph .hub-logo-ph,.hub-company__logo--ph .hub-logo-ph{width:58%;height:58%;display:block;fill:none;stroke:currentColor}
.hub-card__logo--ph img,.hub-company__logo--ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;border:1px solid var(--hub-line);border-radius:inherit}
.hub-card__salary{margin:2px 0 0;font-size:17px;font-weight:800;color:var(--hub-ink);font-variant-numeric:tabular-nums}
.hub-card__salary.is-empty{font-size:15px;font-weight:600;color:var(--hub-soft-ink)}
.hub-card__meta{display:flex;flex-wrap:wrap;gap:6px}
.hub-card__meta li{font-size:13px;color:var(--hub-muted);background:#f1f5f9;border-radius:6px;padding:2px 8px}
.hub-card__actions{position:relative;z-index:1;display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:10px}
.hub-card__actions .hub-btn{flex:1}

.hub-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid var(--hub-line);background:#fff;color:var(--hub-ink);font-size:15px;font-weight:700;line-height:1.2;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .16s var(--hub-ease),background-color .16s ease,border-color .16s ease,color .16s ease}
.hub-btn:hover{border-color:var(--hub-primary);color:var(--hub-primary)}
.hub-btn:active{transform:scale(.97)}
.hub-btn--primary{background:var(--hub-primary);border-color:var(--hub-primary);color:#fff}
.hub-btn--primary:hover{background:var(--hub-primary-d);border-color:var(--hub-primary-d);color:#fff}
.hub-btn--ghost{background:#fff}
.hub-btn--wide{width:100%}
.hub-btn__n{font-weight:600;opacity:.8}
.hub-btn[hidden]{display:none}
.hub-btn.is-busy{pointer-events:none;opacity:.7}

.hub-save{flex:0 0 44px;width:44px;height:44px;display:inline-grid;place-items:center;border-radius:10px;border:1px solid var(--hub-line);background:#fff;color:var(--hub-soft-ink);cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent;transition:color .16s ease,border-color .16s ease,transform .16s var(--hub-ease)}
.hub-save svg{fill:none;stroke:currentColor;stroke-width:1.8}
.hub-save:hover{color:#e11d48;border-color:#fecdd3}
.hub-save:active{transform:scale(.92)}
.hub-save[aria-pressed="true"]{color:#e11d48;border-color:#fecdd3;background:#fff1f2}
.hub-save[aria-pressed="true"] svg{fill:currentColor}
.hub-save.is-pop svg{animation:hubPop .32s var(--hub-ease)}
@keyframes hubPop{0%{transform:scale(1)}40%{transform:scale(1.28)}100%{transform:scale(1)}}

.hub-feed__more{display:grid;gap:10px;margin:20px 0 0}
@media (min-width:640px){.hub-feed__more{grid-template-columns:1fr 1fr}.hub-feed__more [data-hub-more][hidden]+[data-hub-all]{grid-column:1/-1}}

/* Skeleton while the feed changes */
.hub-skel{list-style:none;height:186px;border-radius:var(--hub-radius);border:1px solid var(--hub-line);background:#fff linear-gradient(90deg,rgba(241,245,249,0) 0,#f1f5f9 40%,rgba(241,245,249,0) 80%) no-repeat;background-size:200% 100%;animation:hubShimmer 1.1s linear infinite}
@keyframes hubShimmer{0%{background-position:150% 0}100%{background-position:-50% 0}}
.hub-list.is-swapping{opacity:.001}
.hub-list{transition:opacity .18s ease}

/* Alerts */
.hub-alert{border-radius:16px;padding:20px;color:#fff;background:linear-gradient(135deg,#0a65fc 0%,#3b82f6 100%);box-shadow:0 18px 40px -24px rgba(10,101,252,.7)}
.hub-alert__title{font-size:18px;line-height:1.3;font-weight:800;margin:0 0 6px;color:#fff}
.hub-alert__text{font-size:14px;line-height:1.5;margin:0 0 14px;color:rgba(255,255,255,.88)}
.hub-alert .hub-btn--primary{background:#fff;border-color:#fff;color:var(--hub-primary)}
.hub-alert .hub-btn--primary:hover{background:#eef4ff;color:var(--hub-primary-d)}
.hub-alert-inline{grid-column:1/-1;list-style:none}
@media (min-width:992px){.hub-alert-inline{display:none}}
@media (max-width:991px){.hub-alert--aside{display:none}}

/* Aside boxes */
.hub-box{background:#fff;border:1px solid var(--hub-line);border-radius:16px;padding:20px;margin:16px 0 0;overflow:hidden;min-width:0}
@media (max-width:991px){.hub-layout__aside .hub-box:first-of-type{margin-top:0}}
.hub-companies__list{display:grid;gap:2px;min-width:0;max-width:100%}
.hub-companies__list > li{min-width:0;max-width:100%}
.hub-company{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;column-gap:10px;min-width:0;max-width:100%;width:100%;min-height:52px;padding:8px;margin:0;border-radius:10px;color:var(--hub-ink);transition:background-color .16s ease;box-sizing:border-box}
a.hub-company:hover{background:var(--hub-bg);color:var(--hub-ink)}
.hub-company__logo{width:36px;height:36px;border-radius:8px;font-size:14px}
.hub-company__name{min-width:0;font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hub-company__n{justify-self:end;min-width:1.5em;font-size:13px;font-weight:700;line-height:1.25;color:var(--hub-soft-ink);white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right}
.hub-roles__list{display:flex;flex-wrap:wrap;gap:8px}
.hub-role{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;background:var(--hub-soft);color:var(--hub-primary-d);font-size:14px;font-weight:600;transition:background-color .16s ease,transform .16s var(--hub-ease)}
.hub-role:hover{background:#dde9ff;color:var(--hub-primary-d)}
.hub-role:active{transform:scale(.97)}
.hub-role__n{font-size:12px;font-weight:700;background:#fff;border-radius:999px;padding:1px 7px;color:var(--hub-muted)}

/* Empty state */
.hub-empty{background:#fff;border:1px dashed #cbd5e1;border-radius:16px;padding:28px 20px;text-align:center}
.hub-empty__title{font-size:20px;font-weight:800;margin:0 0 6px}
.hub-empty__text{color:var(--hub-muted);margin:0 auto 18px;max-width:520px}
.hub-empty__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}

/* Lower sections */
.hub-section{padding:40px 0}
.hub-cv{content-visibility:auto;contain-intrinsic-size:auto 640px}
.hub-articles{padding-bottom:8px}
.hub-articles .rework-city-articles{margin:0;padding:0;background:none}
@media (max-width:767px){
	.hub .hub-articles .rework-city-articles__grid ul.row{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:82%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:0 16px 8px;scroll-padding-left:16px;scrollbar-width:none}
	.hub .hub-articles .rework-city-articles__grid ul.row::-webkit-scrollbar{display:none}
	.hub .hub-articles .rework-city-articles__grid ul.row>li{width:auto;max-width:none;padding:0;margin:0;scroll-snap-align:start}
}

.hub-about__grid{display:grid;gap:16px;margin-top:16px}
@media (min-width:992px){.hub-about__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.hub-about__block{background:#fff;border:1px solid var(--hub-line);border-radius:16px;padding:20px;color:var(--hub-muted);line-height:1.6}
.hub-about__block p{margin:0 0 10px}
.hub-about__block p:last-child{margin-bottom:0}

.hub-faq .hub-h2{margin-bottom:12px}
.hub-faq__item{border-bottom:1px solid var(--hub-line)}
.hub-faq__q{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:18px 0;font-size:17px;font-weight:700;line-height:1.35;cursor:pointer;list-style:none;color:var(--hub-ink)}
.hub-faq__q::-webkit-details-marker{display:none}
.hub-faq__q:hover{color:var(--hub-primary)}
.hub-faq__icon{position:relative;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--hub-soft);transition:transform .22s var(--hub-ease),background-color .16s ease}
.hub-faq__icon::before,.hub-faq__icon::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:var(--hub-primary);border-radius:2px}
.hub-faq__icon::after{transform:rotate(90deg)}
.hub-faq__item[open] .hub-faq__icon{transform:rotate(45deg)}
.hub-faq__a{padding:0 44px 18px 0;color:var(--hub-muted);line-height:1.65}
.hub-faq__a p{margin:0 0 10px}
.hub-faq__a p:last-child{margin-bottom:0}
.hub-faq__a a{color:var(--hub-primary);font-weight:600}
.hub-faq__item[open] .hub-faq__a{animation:hubFaqIn .24s var(--hub-ease)}
@keyframes hubFaqIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

.hub-links{padding-top:16px;padding-bottom:56px}
.hub-links__grid{display:grid;gap:16px}
@media (min-width:992px){.hub-links__grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}}
.hub-links__block{background:#fff;border:1px solid var(--hub-line);border-radius:16px;padding:20px}
.hub-links__list{display:flex;flex-wrap:wrap;gap:8px}
.hub-link{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--hub-line);background:#fff;color:var(--hub-ink);font-size:14px;font-weight:500;transition:border-color .16s ease,color .16s ease}
.hub-link:hover{border-color:var(--hub-primary);color:var(--hub-primary)}
@media (pointer:coarse){.hub-link{min-height:44px}}
.hub-links__block.is-collapsed .is-extra{display:none}
.hub-links__toggle{display:inline-flex;align-items:center;min-height:44px;margin:8px 0 0;padding:0;border:0;background:none;color:var(--hub-primary);font-size:15px;font-weight:700;cursor:pointer}

/* Mobile sticky bar */
.hub-sticky{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:990;display:flex;gap:8px;padding:8px;border-radius:16px;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);border:1px solid var(--hub-line);box-shadow:0 18px 40px -18px rgba(15,23,42,.45);transform:translateY(calc(100% + 32px));transition:transform .28s var(--hub-ease);pointer-events:none}
.hub-sticky.is-visible{transform:none;pointer-events:auto}
.hub .hub-sticky__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 10px;border:0;border-radius:10px;background:#f1f5f9;color:var(--hub-ink);font-size:15px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .16s var(--hub-ease)}
.hub .hub-sticky__btn:active{transform:scale(.97)}
.hub-sticky__btn svg{fill:currentColor}
.hub .hub-sticky__btn--primary{background:var(--hub-primary);color:#fff}
.hub .hub-sticky__btn--primary:hover{color:#fff}
@media (min-width:992px){.hub-sticky{display:none}}

.hub-toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:995;max-width:calc(100% - 32px);transform:translate(-50%,12px);opacity:0;padding:12px 16px;border-radius:12px;background:var(--hub-ink);color:#fff;font-size:14px;font-weight:600;box-shadow:0 12px 30px -12px rgba(15,23,42,.6);transition:opacity .2s ease,transform .24s var(--hub-ease);pointer-events:none}
.hub-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.hub-toast a{color:#93c5fd;pointer-events:auto}

/* Reveal on scroll (classes set by js/city-hub.js; the hero is never animated) */
.hub-js .hub-reveal{opacity:0;transform:translateY(12px)}
.hub-js .hub-reveal.is-in{opacity:1;transform:none;transition:opacity .26s var(--hub-ease),transform .26s var(--hub-ease);transition-delay:var(--hub-d,0ms)}
.hub-js .hub-reveal.is-instant{transition:none}

/* Mobile */
@media (max-width:767px){
	.hub-hero{padding:calc(var(--hub-header-offset) + 16px) 0 18px}
	.hub-crumbs{display:none}
	.hub-hero__lead{font-size:15px;margin-bottom:14px;gap:2px 6px}
	.hub-hero__dot{display:none}
	.hub-hero__updated{flex-basis:100%;font-size:14px;color:var(--hub-soft-ink)}
	.hub-search{padding-left:12px;flex-wrap:wrap}
	.hub-search__city-wrap{order:3;width:100%;margin-top:2px}
	.hub-search__city{width:100%;justify-content:center}
	.hub-search__city-panel{left:0;right:0;min-width:0;max-width:none}
	.hub .hub-search__btn{padding:0 18px}
	.hub-chips{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;scroll-padding-left:16px}
	.hub-stats{display:none}
	.hub-layout{padding-top:24px}
	.hub-h2{font-size:22px}
	.hub-section{padding:32px 0}
	.hub-faq__q{font-size:16px}
	.hub-faq__a{padding-right:0}
	.hub-links{padding-bottom:104px}
}

.hub .rework-city-articles__footer{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
@media (max-width:767px){
	.hub .hub-articles .rework-city-articles__grid ul.row{display:grid;grid-auto-flow:column;grid-auto-columns:82%;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px}
}

@media (prefers-reduced-motion:reduce){
	.hub *,.hub *::before,.hub *::after{animation:none!important;transition:none!important}
	.hub-js .hub-reveal{opacity:1;transform:none}
	.hub-sticky,.hub-toast{transition:none}
}

/* City SEO guide */
.hub-guide__prose{margin-top:12px;color:var(--hub-muted);line-height:1.65}
.hub-guide__prose p,.hub-guide__card p,.hub-guide__step p,.hub-guide__take p,.hub-guide__note{margin:0 0 10px;color:var(--hub-muted);line-height:1.65}
.hub-guide__prose p:last-child,.hub-guide__card p:last-child,.hub-guide__step p:last-child,.hub-guide__take p:last-child{margin-bottom:0}
.hub-guide__h{margin-top:28px}
.hub-guide h4.hub-h3{font-size:18px}
.hub-guide__stats,.hub-guide__bands,.hub-guide__bars,.hub-guide__chips,.hub-guide__steps,.hub-guide__links{list-style:none;margin:0;padding:0}
.hub-guide__stats{display:grid;gap:12px;margin-top:16px}
.hub-guide__stat,.hub-guide__card,.hub-guide__band,.hub-guide__step{background:#fff;border:1px solid var(--hub-line);border-radius:16px;padding:20px}
.hub-guide__stat b{display:block;font-size:22px;line-height:1.15;font-weight:800;letter-spacing:-.02em;color:var(--hub-ink);font-variant-numeric:tabular-nums}
.hub-guide__stat span{display:block;margin-top:6px;font-size:14px;line-height:1.4;color:var(--hub-muted)}
.hub-guide__card{margin-top:16px}
.hub-guide__bars{display:grid;gap:12px;margin-top:14px}
.hub-guide__bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:baseline}
.hub-guide__bar-label{font-size:14px;font-weight:600;color:var(--hub-ink)}
.hub-guide__bar-pct{font-size:14px;font-weight:700;color:var(--hub-ink);font-variant-numeric:tabular-nums}
.hub-guide__track{grid-column:1/-1;height:6px;border-radius:999px;background:#e8eef8;overflow:hidden}
.hub-guide__fill{display:block;height:100%;border-radius:inherit;background:var(--hub-primary)}
.hub-guide__note{margin-top:12px}
.hub-guide__split,.hub-guide__bands,.hub-guide__blocks{display:grid;gap:12px;margin-top:16px}
.hub-guide__split .hub-guide__card,.hub-guide__blocks .hub-guide__card{margin-top:0}
.hub-guide__band b{display:block;font-size:22px;line-height:1.15;font-weight:800;color:var(--hub-ink);font-variant-numeric:tabular-nums}
.hub-guide__band b small{font-size:14px;font-weight:700;color:var(--hub-soft-ink)}
.hub-guide__band-title{display:block;margin-top:6px;font-size:15px;font-weight:700;color:var(--hub-ink)}
.hub-guide__band p{margin-top:8px;font-size:14px}
.hub-guide__group{margin-top:16px}
.hub-guide__group .hub-h3{margin-bottom:0}
.hub-guide__chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.hub-guide__chips span.hub-link{cursor:default}
.hub-guide__chips span.hub-link:hover{border-color:var(--hub-line);color:var(--hub-ink)}
.hub-guide__chips a.hub-link{cursor:pointer}
.hub-guide__steps{display:grid;gap:12px;margin-top:16px}
.hub-guide__step{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start}
.hub-guide__step .hub-h3{margin-bottom:6px}
.hub-guide__n{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--hub-soft);color:var(--hub-primary);font-size:15px;font-weight:800}
.hub-guide a:not(.hub-link){color:var(--hub-primary);font-weight:600}
.hub-guide a:not(.hub-link):hover{color:var(--hub-primary-d)}
.hub-guide__take{margin-top:20px;padding:20px;border-radius:16px;background:var(--hub-soft)}
.hub-guide__take .hub-h3{margin-bottom:8px}
.hub-guide__links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.hub-guide__src{margin:16px 0 0;font-size:13px;line-height:1.5;color:var(--hub-soft-ink)}
.hub-guide__src a{color:var(--hub-soft-ink);font-weight:600;text-decoration:underline;text-underline-offset:2px}
@media (min-width:768px){
	.hub-guide__stats,.hub-guide__bands{grid-template-columns:repeat(3,minmax(0,1fr))}
	.hub-guide__split{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
	.hub-guide__stat,.hub-guide__card,.hub-guide__band,.hub-guide__step,.hub-guide__take{padding:16px}
	.hub-guide__stat b,.hub-guide__band b{font-size:20px}
}
