
/* Portfolio city search V30 — interface only; no editorial content. */
.portfolio-city-search{position:relative;max-width:760px}
.portfolio-city-search label{display:block;font-weight:750;line-height:1.25}
.portfolio-city-search input[type="search"],.portfolio-city-search-input{display:block;width:100%;min-width:0;box-sizing:border-box}
.portfolio-search-results{position:relative;z-index:40;width:100%;margin:.5rem 0 0;border:1px solid rgba(15,23,42,.16);border-radius:14px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.12);overflow:hidden}
.portfolio-search-results[hidden]{display:none}
.portfolio-search-results a[role="option"]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.82rem .95rem;text-decoration:none;color:#14222d;background:#fff;font-weight:700}
.portfolio-search-results a[role="option"]+a[role="option"]{border-top:1px solid rgba(15,23,42,.08)}
.portfolio-search-results a[role="option"] small{font-size:.78rem;font-weight:650;opacity:.65}
.portfolio-search-results a[role="option"]:hover,.portfolio-search-results a[role="option"]:focus,.portfolio-search-results a[aria-selected="true"]{outline:0;background:#f2f6f8}
.portfolio-search-message{display:block;padding:.82rem .95rem;font-size:.92rem;line-height:1.4;color:#293844;background:#fff}
.portfolio-search-hit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .9rem;align-items:center;margin:.55rem 0 0;padding:.9rem 1rem;border:1px solid rgba(15,23,42,.16);border-radius:14px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.09);color:#14222d;text-decoration:none}
.portfolio-search-hit[hidden]{display:none}
.portfolio-search-hit__label{grid-column:1;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.62}
.portfolio-search-hit__city{grid-column:1;font-size:1.08rem;line-height:1.2;font-weight:850}
.portfolio-search-hit__province{grid-column:1;font-size:.85rem;opacity:.7}
.portfolio-search-hit__action{grid-column:2;grid-row:1/4;align-self:center;font-weight:850;white-space:nowrap}
.family-city-search.portfolio-city-search{margin:1.1rem 0 0;max-width:700px}
.family-city-search.portfolio-city-search>label{font-size:.9rem}
.family-city-search.portfolio-city-search input{margin-top:.42rem;min-height:52px;padding:.72rem .86rem;border-radius:10px}
.inner-hero .family-city-search.portfolio-city-search,.pagehero .family-city-search.portfolio-city-search,.city-hero .family-city-search.portfolio-city-search{margin-top:1.15rem}
.searchbox.portfolio-city-search .portfolio-search-hit,.finder .portfolio-search-hit,.city-finder .portfolio-search-hit{max-width:100%}
@media(max-width:640px){
 .portfolio-search-hit{grid-template-columns:1fr;padding:.85rem .9rem}
 .portfolio-search-hit__action{grid-column:1;grid-row:auto;margin-top:.35rem}
 .portfolio-search-results a[role="option"]{padding:.82rem .85rem}
 .hero-actions{gap:.6rem;flex-wrap:wrap}
 .hero-actions .btn,.hero-actions .button{width:auto;min-width:0;padding:.72rem 1rem}
 .family-city-search.portfolio-city-search input{min-height:50px}
}
