/* Phase 3B – market pages (KL Areas / Other Cities / area archive / city archive) */

.page-shell--kl-areas,
.page-shell--other-cities,
.page-market-archive {
    position: relative;
}

.page-market-archive .page-market-hero,
.page-market-archive .page-market-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
    gap: 22px;
    align-items: start;
}

.page-market-archive .page-market-hero__aside-copy,
.page-market-archive .page-market-toolbar__status,
.page-market-archive .page-market-toolbar__support,
.page-market-archive .page-market-toolbar__filters,
.page-market-archive .page-market-toolbar__sort {
    display: grid;
    gap: 12px;
}

.page-market-archive .page-market-hero__media,
.page-market-archive .site-photo-card__media,
.site-city-page__photo {
    overflow: hidden;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.04);
    aspect-ratio: 16 / 10;
}

.page-market-archive .page-market-hero__media img,
.page-market-archive .site-photo-card__media img,
.site-city-page__photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.page-market-archive .region-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.page-market-archive .site-photo-card--compare {
    display: grid;
    gap: 0;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
}

.page-market-archive .site-photo-card__body {
    display: grid;
    gap: 12px;
    padding: 18px;
}

.page-market-archive .site-photo-card__topline,
.page-market-archive .site-photo-card__identity,
.page-market-archive .site-photo-card__meta,
.page-market-archive .site-photo-card__compare-row,
.page-market-archive .site-photo-card__compare-item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.page-market-archive .site-photo-card__name {
    margin: 0;
    color: #fff4d6;
    font-size: 1.15rem;
    line-height: 1.15;
}

.page-market-archive .site-photo-card__summary,
.page-market-archive .site-photo-card__meta {
    color: rgba(241, 231, 205, 0.68);
    font-size: 14px;
}

.page-market-archive .site-photo-card__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.page-market-archive .site-photo-card__compare-item {
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(212, 175, 55, 0.10);
}

.page-market-archive .site-photo-card__compare-item strong {
    color: rgba(241, 231, 205, 0.58);
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.page-market-archive .site-photo-card__compare-item span,
.page-market-archive .site-photo-card__cta {
    color: #fff4d6;
    font-weight: 700;
}

.page-market-archive .page-market-toolbar {
    grid-template-columns: minmax(0, 1fr) minmax(260px, auto);
}

.page-market-archive .page-market-toolbar__filters {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: end;
}

.page-market-archive .page-market-toolbar label {
    display: grid;
    gap: 8px;
    color: rgba(241, 231, 205, 0.76);
    font-size: 13px;
    font-weight: 600;
}

.page-market-archive .page-market-toolbar select,
.page-market-archive .page-market-toolbar button {
    min-height: 46px;
    padding: 0 14px;
    border-radius: 14px;
    border: 1px solid rgba(212, 175, 55, 0.14);
    background: rgba(14, 19, 29, 0.96);
    color: #fff4d6;
}

.page-market-archive .page-market-toolbar button {
    font-weight: 700;
    cursor: pointer;
}

.page-market-archive .page-market-toolbar button:hover {
    border-color: rgba(212, 175, 55, 0.32);
}

.page-shell--kl-areas .market-intro-grid--kl,
.page-shell--other-cities .market-intro-grid--other-cities {
    margin-top: 4px;
}

.page-shell--kl-areas .market-hub-grid--kl,
.page-shell--other-cities .market-hub-grid--other-cities {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.page-shell .market-hub-card {
    position: relative;
    overflow: hidden;
    min-height: 100%;
}

.page-shell .market-hub-card::before {
    content: "";
    position: absolute;
    inset: auto -50px -50px auto;
    width: 170px;
    height: 170px;
    border-radius: 999px;
    filter: blur(8px);
    opacity: 0.22;
    pointer-events: none;
}

.page-shell .market-hub-card--kl::before {
    background: radial-gradient(circle, rgba(87, 139, 255, 0.45), transparent 68%);
}

.page-shell .market-hub-card--other-cities::before {
    background: radial-gradient(circle, rgba(215, 176, 74, 0.48), transparent 68%);
}

.page-shell .market-hub-card__title {
    font-size: 1.38rem;
}

.page-shell .market-hub-card__meta,
.page-shell .site-link-card__meta,
.page-shell .site-area-spotlight__meta-row {
    color: rgba(241, 231, 205, 0.60);
    font-size: 13px;
}

.page-shell .market-hub-card__chips {
    margin-top: auto;
}

.page-shell .market-intro-card,
.page-shell .site-compare-card,
.page-shell .site-link-card,
.page-shell .site-info-card {
    min-height: 100%;
}

.page-shell .site-link-card {
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.page-shell .site-link-card:hover,
.page-shell .market-hub-card:hover {
    transform: translateY(-2px);
    border-color: rgba(212, 175, 55, 0.26);
}

.page-market-archive--other-cities .page-market-hero__main,
.page-shell--other-cities .page-masthead__main {
    background:
        radial-gradient(circle at top right, rgba(215, 176, 74, 0.12), transparent 34%),
        linear-gradient(180deg, rgba(13, 19, 28, 0.96), rgba(9, 13, 21, 0.98));
}

.page-market-archive--kl .page-market-hero__main,
.page-shell--kl-areas .page-masthead__main {
    background:
        radial-gradient(circle at top right, rgba(87, 139, 255, 0.12), transparent 34%),
        linear-gradient(180deg, rgba(13, 19, 28, 0.96), rgba(9, 13, 21, 0.98));
}

.page-market-archive .region-grid-empty,
.site-city-page .page-empty-state {
    margin-top: 8px;
}

.site-city-page {
    display: grid;
    gap: 28px;
}

.site-city-page__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.site-city-page__stat {
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(212, 175, 55, 0.12);
    display: grid;
    gap: 6px;
}

.site-city-page__price-groups,
.site-city-page__hotel-grid,
.site-city-page__related-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.site-city-page__price-group,
.site-city-page__hotel,
.site-city-page__related {
    display: grid;
    gap: 14px;
    padding: 22px;
}

.site-city-page__prices-head,
.site-city-page__hotel-head,
.site-city-page__related-head {
    display: grid;
    gap: 8px;
}

.site-city-page__price-table {
    width: 100%;
    border-collapse: collapse;
}

.site-city-page__price-table th,
.site-city-page__price-table td {
    padding: 12px 0;
    border-bottom: 1px solid rgba(212, 175, 55, 0.08);
    text-align: left;
}

.site-city-page__related-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #f0d78a;
    font-weight: 700;
    text-decoration: none;
}

@media (max-width: 1024px) {
    .page-market-archive .region-grid,
    .page-shell .market-hub-grid--kl,
    .page-shell .market-hub-grid--other-cities,
    .page-market-archive .page-market-toolbar__filters,
    .site-city-page__price-groups,
    .site-city-page__hotel-grid,
    .site-city-page__related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .page-market-archive .page-market-hero,
    .page-market-archive .page-market-toolbar,
    .page-market-archive .page-market-toolbar__filters,
    .page-market-archive .region-grid,
    .page-shell .market-hub-grid--kl,
    .page-shell .market-hub-grid--other-cities,
    .site-city-page__stats,
    .site-city-page__price-groups,
    .site-city-page__hotel-grid,
    .site-city-page__related-grid {
        grid-template-columns: 1fr;
    }

    .page-market-archive .site-photo-card__compare-row {
        flex-direction: column;
        align-items: stretch;
    }
}


/* -------------------------------------------------------------------------
 * Extracted from main.css during round-2 cleanup
 * Scope: region/result summary + region hero visual variants
 * ------------------------------------------------------------------------- */
.region-results-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:16px 18px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}
.region-results-summary strong{font-size:15px;color:#fff}
.region-results-summary span{font-size:14px;color:var(--site-muted);max-width:60ch}
.region-intro-summary{font-size:16px;color:#eef1f5}
.site-chiprow--wrap{flex-wrap:wrap;gap:10px}
.site-chip--accent{border-color:var(--site-accent-glow);color:var(--klsv-ui-accent-strong);background:rgba(216,180,108,.08)}
.region-hero__trust{margin-top:18px}
.region-hero__note{margin-top:10px;max-width:62ch}
.site-hero--region{min-height:420px}
.site-hero__media--region{opacity:.72;filter:saturate(1.02)}


/* -------------------------------------------------------------------------
 * Extracted from main.css (cleanup round 3)
 * Scope: market / city / region pages only
 * ------------------------------------------------------------------------- */
.region-hero__eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 16px;border-radius:999px;border:1px solid var(--site-accent-glow);background:var(--site-accent-soft);color:var(--klsv-ui-accent-strong);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.region-search-zone{padding:32px}
.region-intro-text{margin-bottom:16px}
.region-intro-text p{font-size:15px;line-height:1.8;color:var(--site-muted)}
.region-hero__flags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}
.region-hero__flag{font-size:22px;line-height:1}
.region-hero__flag-label{font-size:14px;color:var(--site-muted);font-weight:600}
.site-header__region-dropdown{border-top:1px solid var(--site-line);padding-top:16px}
.site-header__region-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 18px;background:rgba(255,255,255,.03);border:1px solid var(--site-line);border-radius:var(--site-radius-md);color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.site-header__dropdown-icon{font-size:14px;color:var(--site-muted)}
.site-header__region-list{display:block;margin-top:8px;max-height:50vh;overflow-y:auto;border-radius:var(--site-radius-md);border:1px solid var(--site-line);background:var(--site-panel)}
.site-header__region-list[hidden]{display:none}
.site-header__region-item{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--site-line);color:var(--site-text);font-size:15px;transition:.15s}
.site-header__region-item:last-child{border-bottom:none}
.site-header__region-item:hover,.site-header__region-item:active{background:rgba(255,255,255,.04)}
.site-header__region-name{flex:1;font-weight:600}
.site-header__region-flags{font-size:14px}
.site-header__region-count{font-size:12px;color:var(--site-accent);font-weight:700;min-width:24px;text-align:center;padding:2px 8px;border-radius:999px;background:var(--site-accent-soft)}
.region-about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:start}
.region-about-text p{font-size:15px;line-height:1.8;color:var(--site-muted)}
.region-about-highlights{display:grid;gap:10px;margin-top:18px}
.region-highlight{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--site-radius-md);background:rgba(255,255,255,.02);border:1px solid var(--site-line);font-size:14px;color:var(--site-text)}
.region-highlight__icon{color:var(--site-accent);font-weight:700;font-size:16px;flex-shrink:0}
.region-about-geo{display:grid;gap:14px}
.region-results-summary{align-items:flex-start}
#browse-areas,#latest-updates,#site-guides,#region-results,#region-notes,#region-faq{scroll-margin-top:92px}

@media(max-width:1024px){
  .region-search-zone{padding:24px}
  .region-about-grid{grid-template-columns:1fr}
}

@media(max-width:1100px){
  .site-hero__grid{grid-template-columns:1fr}
}

@media(max-width:767px){
  .site-profile-spotlight__meta,.site-area-spotlight__meta-row{align-items:flex-start}
  .site-link-card__meta{margin-top:4px}
}


/* -------------------------------------------------------------------------
 * round4: main.css -> front-market.css cleanup
 * ------------------------------------------------------------------------- */
.region-about-text p{max-width:var(--site-reading-max)}

@media(max-width:1024px){
  .region-results-summary{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media(max-width:767px){
  .region-results-summary{padding:14px 16px}
}

/* Phase 4 Round 4 */
.page-market-archive .site-photo-card__name { color: var(--site-ink); }
.page-market-archive .site-photo-card__summary,
.page-market-archive .site-photo-card__meta { color: var(--site-copy); }
.page-market-archive .site-photo-card__compare-item {
    background: rgba(124, 139, 122, 0.06);
    border: 1px solid rgba(122, 134, 123, 0.12);
}
.page-market-archive .page-market-hero__media,
.page-market-archive .site-photo-card__media,
.site-city-page__photo {
    background: rgba(240, 236, 229, 0.92);
}
