/* Post-only visual revision. Shared homepage header/footer retain their existing implementation. */
.city-destination-post .cd-post-main{--PS-post-overlap:38px;background:var(--cd-warm);min-width:0}
/* Frame height is independent of source dimensions; children cannot enlarge or escape it. */
.city-destination-post .cd-post-banner{display:block;position:relative;width:100%;max-width:none;aspect-ratio:1500/408;max-height:408px;padding:0;margin:0;overflow:hidden}
.city-destination-post .cd-post-banner picture{display:block;position:absolute;inset:0;width:100%!important;height:100%!important;max-width:100%;max-height:100%!important;object-position:var(--PS-banner-focal-position,center center);margin:0}
.city-destination-post .cd-post-banner .cd-post-banner-image,.city-destination-post .cd-post-banner img{display:block;position:absolute;inset:0;float:none;width:100%!important;height:100%!important;max-width:100%;max-height:100%!important;min-height:0;aspect-ratio:auto;object-fit:cover;object-position:var(--PS-banner-focal-position,center center);margin:0}
.PS-content-surface{position:relative;isolation:isolate;padding:0 28px 56px;display:flow-root;min-width:0}
.PS-background{position:absolute;inset:0;z-index:-1;overflow:clip;pointer-events:none}
.cd .PS-background .PS-background-image{position:sticky;top:0;width:100%;height:100vh;min-height:500px;max-width:none;object-fit:cover}
.cd .PS-post-card{position:relative;z-index:1;max-width:1050px;margin:calc(-1 * var(--PS-post-overlap)) auto 0;padding:38px 42px 48px;background:#fff;border-radius:18px;box-shadow:0 6px 30px #27372c12;min-width:0}
.cd .PS-no-banner{padding-top:32px}
.cd .PS-no-banner .PS-post-card{margin-top:0}
.PS-post-card .cd-post-heading{text-align:center;margin-bottom:28px}
.cd .PS-post-card .cd-post-heading h1{font-size:clamp(30px,3.2vw,48px);font-weight:600;line-height:1.16;margin:14px 0 16px}
.PS-post-card .cd-post-category{text-transform:uppercase;letter-spacing:.04em}
.cd .PS-post-card .cd-post-category a{color:var(--cd-green);text-decoration:none}
.cd .PS-post-card .cd-post-category a:hover{text-decoration:underline}
.cd .PS-post-card .cd-post-content{line-height:1.8;text-align:left}
/* Low specificity preserves editor styles, including inherited alignment on groups/columns. */
:where(.PS-justify) :where(p):not(:where([class*="has-text-align-"],[class*="alignleft"],[class*="alignright"],[class*="aligncenter"],[style*="text-align"],[style*="text-align"] *,[align],[align] *,[class*="has-text-align-"] *,[class*="alignleft"] *,[class*="alignright"] *,[class*="aligncenter"] *)){text-align:justify}
.PS-post-card .cd-post-content :where(img,video){height:auto}
.PS-post-card .cd-post-content :where(.wp-block-columns,.wp-block-column){min-width:0}
.PS-post-card .cd-post-content :where(.wp-block-table table){width:100%}
.PS-post-card .cd-post-content :where(.aligncenter){display:block;margin-inline:auto}
.PS-post-card .cd-post-content :where(figcaption){font-size:.85em;line-height:1.5;color:var(--cd-muted)}
@media(max-width:680px),(hover:none),(prefers-reduced-motion:reduce){
  .cd .PS-background .PS-background-image{position:absolute;inset:0;height:100%;min-height:0;object-fit:cover}
}
@media(max-width:680px){
  .city-destination-post .cd-post-main{--PS-post-overlap:16px}
  .PS-content-surface{padding:0 12px 28px}
  .cd .PS-post-card{margin-top:calc(-1 * var(--PS-post-overlap));border-radius:12px;padding:26px 20px 32px}
  .cd .PS-no-banner{padding-top:20px}
  .cd .PS-post-card .cd-post-heading h1{font-size:clamp(28px,7vw,36px)}
  .cd .PS-post-card .cd-post-content{font-size:17px;line-height:1.75}
}

/* Post-only taxonomy placement and counter-display backstop; stored content/stats remain intact. */
.city-destination-post .cd-post-taxonomies{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 24px;margin-top:30px;padding-top:18px;border-top:1px solid var(--cd-line)}
.city-destination-post .cd-post-taxonomies .cd-post-category,.city-destination-post .cd-post-taxonomies .cd-post-tags{margin:0}
.city-destination-post .cd-post-content :is(.post-views,.pvc-post-views,.post-views-count){display:none!important}

/* Fill takes priority: preserve a picture's existing inline focal position on its inner img. */
.city-destination-post .cd-post-banner picture > img{object-position:inherit}
/* The card stays outside clipping and crosses the actual full-frame photograph. */
.city-destination-post .PS-with-banner{--PS-cover-gutter:28px}
.city-destination-post .PS-with-banner .PS-post-card{margin-top:calc(-1 * var(--PS-post-overlap))}
/* Only verified default artwork: bottom-align the cover crop and protect its lower logo.
   Cover scales with width even above 1500px; retain two SOURCE pixels of safe photo overlap. */
.city-destination-post .PS-inherited-default.PS-default-logo-measured{--PS-banner-focal-position:center bottom}
.city-destination-post .PS-inherited-default.PS-default-logo-measured + .PS-with-banner .PS-post-card{margin-top:max(calc(-1 * var(--PS-post-overlap)),calc((100% + 2 * var(--PS-cover-gutter)) * -.001333333333))}
@media(max-width:680px){.city-destination-post .PS-with-banner{--PS-cover-gutter:12px}}
