/* Yacht presentation: quiet surfaces, original image proportions, one clear
   contact path. Kept separate from the broker workspace and legacy styles. */
html[data-theme] .listing-editorial {
  --listing-surface: var(--modern-surface, #fff);
  --listing-canvas: var(--modern-canvas, #f5f7f8);
  --listing-ink: var(--modern-ink, #0b2032);
  --listing-copy: var(--modern-copy, #4c6376);
  --listing-line: var(--modern-line, #d9e3e8);
  padding: 36px 0 72px !important;
  background: var(--listing-surface) !important;
  color: var(--listing-ink);
}
html[data-theme] .page-shell:has(.listing-editorial)::before { display: none; }
html[data-theme] .listing-editorial .listing-detail-container {
  width: min(1440px, calc(100% - 80px));
  display: grid; gap: 0; min-width: 0;
}
html[data-theme] .listing-editorial .listing-detail-back {
  color: var(--listing-copy) !important; font-size: 14px; font-weight: 500;
  min-height: 32px; display: inline-flex; align-items: center; gap: 8px;
}
html[data-theme] .listing-editorial .listing-detail-header {
  padding: 24px 0 30px; gap: 32px; align-items: center;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 300px);
}
html[data-theme] .listing-editorial .listing-detail-title-block { gap: 8px; }
html[data-theme] .listing-editorial .eyebrow,
html[data-theme] .listing-editorial .panel-label {
  color: var(--modern-gold-strong, #806027) !important; font-size: 11px;
  line-height: 1.5; font-weight: 650; margin: 0; text-transform: uppercase;
}
html[data-theme] .listing-editorial .listing-detail-title-block h1 {
  font-family: var(--font-display, Georgia, serif); font-size: clamp(32px, 3.6vw, 54px) !important;
  line-height: 1.1 !important; font-weight: 500; color: var(--listing-ink) !important;
  margin: 0; max-width: 100%; text-wrap: initial; overflow-wrap: anywhere;
}
html[data-theme] .listing-editorial .listing-detail-location { color: var(--listing-copy) !important; font-size: 15px; margin: 4px 0 0; }
html[data-theme] .listing-editorial .listing-detail-price-block { gap: 10px; }
html[data-theme] .listing-editorial .detail-price {
  color: var(--listing-ink) !important; font-size: clamp(24px, 2.3vw, 34px) !important;
  font-weight: 550; line-height: 1.15; white-space: normal;
}
html[data-theme] .listing-editorial .listing-availability { font-size: 12px; color: var(--listing-copy); max-width: 28ch; line-height: 1.5; }
.yacht-gallery { min-width: 0; width: 100%; }
.yacht-gallery-stage {
  width: 100%; position: relative; height: min(66vh, 720px); min-height: 300px;
  background: #edf1f3; overflow: hidden; border-radius: 5px;
}
.yacht-gallery-open {
  display: block; width: 100%; height: 100%; position: relative;
  padding: 0; border: 0; border-radius: 0; cursor: zoom-in;
  background: transparent; box-shadow: none; transform: none;
}
.yacht-gallery-open img { width: 100%; height: 100%; object-fit: contain; display: block; }
.yacht-gallery-enlarge {
  position: absolute; left: 20px; bottom: 18px; display: inline-flex; align-items: center;
  gap: 8px; padding: 10px 14px; border-radius: 4px; background: #fff;
  color: #163446; box-shadow: 0 1px 8px #0b20321a; font-size: 13px; font-weight: 600;
}
.yacht-gallery-enlarge > span { font-size: 20px; line-height: 1; }
.yacht-gallery-count {
  position: absolute; right: 20px; bottom: 18px; padding: 9px 12px;
  background: #102b3be8; color: #fff; border-radius: 4px; pointer-events: none;
  font-size: 13px; font-variant-numeric: tabular-nums; line-height: 1.4;
}
.yacht-gallery-arrow {
  position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px;
  display: grid; place-items: center; padding: 0 0 4px; border-radius: 50%;
  border: 1px solid #ccd5dac9; background: #fffffff2; color: #163446;
  font-family: Arial, sans-serif; font-size: 34px; line-height: 1; cursor: pointer;
  box-shadow: 0 1px 6px #0b20321a;
}
.yacht-gallery-previous { left: 16px; }
.yacht-gallery-next { right: 16px; }
.yacht-gallery-strip {
  display: flex; gap: 10px; overflow-x: auto; max-width: 100%; padding: 12px 2px 8px;
  overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #a0b4be transparent;
  scroll-padding-inline: 3px;
}
.yacht-gallery-thumbnail {
  flex: 0 0 110px; width: 110px; height: 72px; padding: 3px;
  border: 1px solid transparent; border-radius: 4px; background: transparent;
  cursor: pointer; box-shadow: none; transform: none;
}
.yacht-gallery-thumbnail img { display: block; width: 100%; height: 100%; object-fit: contain; background: #edf1f3; border-radius: 2px; opacity: .8; }
.yacht-gallery-thumbnail.is-selected { border-color: #173e51; background: #173e51; }
.yacht-gallery-thumbnail.is-selected img, .yacht-gallery-thumbnail:hover img { opacity: 1; }
html[data-theme] .listing-editorial .yacht-gallery-caption { color: var(--listing-copy); font-size: 12px; line-height: 1.5; margin: 4px 0 0; }
.yacht-gallery-error { color: #9a332c; font-size: 14px; padding: 8px 0; }
.yacht-gallery [hidden], .yacht-photo-dialog [hidden] { display: none !important; }
.yacht-gallery :is(button, [tabindex]):focus-visible,
.listing-video-launch:focus-visible { outline: 3px solid #218ba5; outline-offset: 3px; }
.yacht-photo-dialog {
  position: fixed; inset: 0; width: min(1600px, 100vw); max-width: 100vw;
  height: min(100dvh, 1100px); max-height: 100dvh; margin: auto;
  padding: 0; border: 0; border-radius: 0; color: #f5f8fa; background: #0a1720;
  box-shadow: 0 0 0 1px #ffffff1a;
}
.yacht-photo-dialog::backdrop { background: #061018ee; }
.yacht-photo-dialog:fullscreen { width: 100vw; height: 100dvh; max-height: none; }
.yacht-photo-viewer { height: 100%; display: grid; grid-template-rows: auto minmax(0,1fr) auto; }
.yacht-photo-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 24px; border-bottom: 1px solid #ffffff26; }
.yacht-photo-toolbar p { font: 500 14px/1.4 var(--font-sans); color: #f5f8fa !important; margin: 0; }
.yacht-photo-toolbar > div { display: flex; gap: 8px; flex-shrink: 0; }
.yacht-photo-toolbar button { min-width: 44px; min-height: 44px; padding: 8px 12px; border: 1px solid #ffffff35; border-radius: 4px; background: transparent; color: #f5f8fa; cursor: pointer; font: 500 14px/1.4 var(--font-sans); }
.yacht-photo-toolbar button span { margin-left: 6px; color: inherit; }
.yacht-photo-canvas { min-width: 0; min-height: 0; position: relative; display: grid; place-items: center; padding: 20px 76px; }
.yacht-photo-canvas img { width: 100%; height: 100%; min-height: 0; max-height: 100%; object-fit: contain; }
.yacht-photo-error { position: absolute; inset: auto 76px 20px; margin: 0; padding: 12px; background: #102b3b; color: #fff !important; font: 400 14px/1.5 var(--font-sans); text-align: center; }
.yacht-photo-canvas button { position: absolute; top: 50%; transform: translateY(-50%); width: 48px; height: 56px; border: 1px solid #ffffff35; border-radius: 4px; background: #163344a8; color: #fff; cursor: pointer; font: 36px/1 Arial,sans-serif; padding: 0 0 5px; }
.yacht-photo-previous { left: 16px; }
.yacht-photo-next { right: 16px; }
.yacht-photo-footer { display: flex; justify-content: space-between; gap: 16px; padding: 16px 24px; border-top: 1px solid #ffffff26; font: 400 13px/1.4 var(--font-sans); }
.yacht-photo-footer span { color: #e1e8ed !important; }
.yacht-photo-footer > :last-child { flex-shrink: 0; font-variant-numeric: tabular-nums; }
body:has(.yacht-photo-dialog[open]) { overflow: hidden; }
html[data-theme] .listing-editorial .listing-editorial-facts { display: flex; flex-wrap: wrap; align-items: center; padding: 22px 0; margin-top: 14px; border-block: 1px solid var(--listing-line); gap: 20px 38px; }
.listing-editorial-facts > div:not(.listing-detail-action-strip) { display: grid; gap: 4px; min-width: 72px; }
html[data-theme] .listing-editorial .listing-editorial-facts span { color: var(--listing-copy); font-size: 12px; }
html[data-theme] .listing-editorial .listing-editorial-facts strong { font-size: 17px; font-weight: 600; color: var(--listing-ink); }
html[data-theme] .listing-editorial .listing-detail-action-strip { margin-left: auto; display: flex; gap: 8px; background: transparent; border: 0; border-radius: 0; }
html[data-theme] .listing-editorial .listing-detail-action-strip button { font-size: 13px; font-weight: 500; border: 1px solid var(--listing-line) !important; border-radius: 4px !important; min-height: 40px; background: var(--listing-surface); color: var(--listing-ink); padding: 8px 16px; }
html[data-theme] .listing-editorial .listing-detail-action-strip button.is-active { color: #71501b !important; background: #fbf3e1; }
html[data-theme] .listing-editorial .listing-detail-content-grid { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: clamp(32px, 5vw, 80px); padding-top: 44px; }
html[data-theme] .listing-editorial .listing-detail-main-stack { display: grid; gap: 42px; min-width: 0; }
html[data-theme] .listing-editorial .listing-editorial-section { min-width: 0; background: transparent !important; border: 0 !important; box-shadow: none; padding: 0; }
.listing-editorial-heading { margin-bottom: 22px; }
html[data-theme] .listing-editorial .listing-editorial-heading h2 { font: 500 clamp(28px, 2.5vw, 36px)/1.15 var(--font-display,Georgia,serif); margin: 7px 0 0; color: var(--listing-ink) !important; }
html[data-theme] .listing-editorial .listing-editorial-description { font-size: 16px; line-height: 1.85; color: var(--listing-copy) !important; max-width: 78ch; white-space: pre-line; margin: 0; overflow-wrap: anywhere; }
html[data-theme] .listing-editorial .listing-feature-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; padding-left: 20px; margin: 22px 0 0; color: var(--listing-copy); font-size: 14px; line-height: 1.6; }
html[data-theme] .listing-editorial .listing-detail-inquiry-aside { position: static; display: grid; gap: 18px; min-width: 0; }
html[data-theme] .listing-editorial .listing-detail-inquiry-aside .panel { background: var(--listing-canvas) !important; border: 1px solid var(--listing-line) !important; border-radius: 5px !important; padding: 24px; box-shadow: none; }
html[data-theme] .listing-editorial .listing-detail-broker-card { position: static; gap: 16px; }
html[data-theme] .listing-editorial .listing-detail-broker-mark { align-items: center; gap: 12px; }
html[data-theme] .listing-editorial .listing-detail-broker-mark img { width: 52px; height: 52px; border-radius: 4px; flex: 0 0 52px; object-fit: contain; }
html[data-theme] .listing-editorial .listing-detail-broker-mark .panel-label { font-size: 10px; line-height: 1.4; }
html[data-theme] .listing-editorial .listing-detail-broker-mark h3 { font-size: 17px; font-weight: 600; line-height: 1.4; color: var(--listing-ink) !important; margin: 4px 0 0; }
html[data-theme] .listing-editorial .listing-detail-broker-mark span { font-size: 12px; color: var(--listing-copy) !important; font-weight: 400; }
html[data-theme] .listing-editorial .listing-detail-broker-contact { padding: 0; border: 0; gap: 10px; }
html[data-theme] .listing-editorial .listing-detail-broker-contact span { font-size: 13px; line-height: 1.65; color: var(--listing-copy) !important; font-weight: 400; }
html[data-theme] .listing-editorial .btn { min-height: 44px; font-size: 14px; padding: 10px 16px; font-weight: 550; box-shadow: none; }
html[data-theme] .listing-editorial .inquiry-panel h2 { font: 500 25px/1.25 var(--font-display,Georgia,serif); color: var(--listing-ink); margin: 6px 0 10px; }
html[data-theme] .listing-editorial .listing-inquiry-intro { font-size: 13px; line-height: 1.65; color: var(--listing-copy); margin: 0 0 18px; }
html[data-theme] .listing-editorial .form-grid { gap: 14px; }
html[data-theme] .listing-editorial .input-shell { gap: 6px; }
html[data-theme] .listing-editorial .input-shell :is(label, span) { font-size: 12px; color: var(--listing-ink); font-weight: 500; }
html[data-theme] .listing-editorial .input-shell .listing-field-optional { color: var(--listing-copy); font-weight: 400; }
html[data-theme] .listing-editorial .input-shell :is(input, textarea) { min-width: 0; width: 100%; padding: 11px 12px; font: 400 14px/1.5 var(--font-sans); border: 1px solid var(--listing-line); border-radius: 4px; background: var(--listing-surface); color: var(--listing-ink); }
html[data-theme] .listing-editorial .input-shell textarea { min-height: 110px; resize: vertical; }
.listing-inquiry-options summary { cursor: pointer; font-size: 12px; line-height: 1.6; padding: 4px 0; }
html[data-theme] .listing-editorial .listing-inquiry-options summary span { font-weight: 400; color: var(--listing-copy); }
.listing-inquiry-options[open] .form-grid { margin-top: 14px; }
html[data-theme] .listing-editorial .listing-spec-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 36px; margin: 0; }
.listing-spec-list > div { display: grid; grid-template-columns: minmax(80px, .8fr) 1.2fr; gap: 16px; padding: 15px 0; border-bottom: 1px solid var(--listing-line); font-size: 14px; line-height: 1.5; }
html[data-theme] .listing-editorial .listing-spec-list dt { color: var(--listing-copy); }
html[data-theme] .listing-editorial .listing-spec-list dd { color: var(--listing-ink); margin: 0; font-weight: 500; overflow-wrap: anywhere; }
html[data-theme] .listing-editorial .listing-media-note { font-size: 12px; line-height: 1.7; color: var(--listing-copy); margin: 16px 0 0; }
.listing-video-grid { display: grid; gap: 24px; }
.listing-video-card { min-width: 0; }
.listing-video-player { aspect-ratio: 16 / 9; overflow: hidden; background: #132c3d; border-radius: 5px; }
.listing-video-launch { position: relative; display: grid; place-content: center; width: 100%; height: 100%; border: 0; padding: 0; cursor: pointer; background: #132c3d; }
.listing-video-launch::after { content: ""; position: absolute; inset: 0; background: #09223230; }
.listing-video-launch img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.listing-video-play { position: relative; z-index: 1; display: grid; place-items: center; width: 62px; height: 62px; border: 1px solid #ffffffa6; border-radius: 50%; background: #fffffff0; color: #163e53; font-size: 22px; padding-left: 3px; }
.listing-video-play-label { position: relative; z-index: 1; color: #fff; text-shadow: 0 1px 5px #000; margin-top: 12px; font-size: 13px; font-weight: 600; }
.listing-video-player :is(iframe,video) { display: block; width: 100%; height: 100%; border: 0; object-fit: contain; }
.listing-video-caption { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding-top: 12px; }
html[data-theme] .listing-editorial .listing-video-caption h3 { color: var(--listing-ink); font-size: 14px; line-height: 1.5; font-weight: 500; margin: 0; }
html[data-theme] .listing-editorial .listing-video-caption a { flex-shrink: 0; color: var(--listing-copy); font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.yacht-gallery-plans .yacht-gallery-stage { height: auto; aspect-ratio: 16 / 9; min-height: 220px; background: #fff; border: 1px solid var(--listing-line); }
.yacht-gallery-plans .yacht-gallery-open { position: absolute; inset: 0; padding: 28px; }
.yacht-gallery-plans .yacht-gallery-open img { object-fit: contain; }
.yacht-gallery-deck-tabs { gap: 8px; padding-top: 16px; }
.yacht-gallery-deck-tabs .yacht-gallery-thumbnail { flex: 0 0 auto; width: auto; height: auto; min-height: 44px; padding: 9px 16px; border: 1px solid var(--listing-line); color: var(--listing-copy); background: var(--listing-surface); font-size: 13px; }
.yacht-gallery-deck-tabs .yacht-gallery-thumbnail.is-selected { color: #fff; border-color: #163e53; background: #163e53; }
.listing-floorplan-downloads { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.listing-floorplan-downloads a { font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
.listing-match-disclosure { border-block: 1px solid var(--listing-line); padding: 18px 0; }
.listing-match-disclosure summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; cursor: pointer; font-size: 15px; font-weight: 500; }
.listing-match-disclosure[open] > :not(summary) { margin-top: 20px; }
.listing-concierge-note { display: flex; align-items: center; justify-content: space-between; gap: 24px; border-block: 1px solid var(--listing-line); padding: 24px 0; }
html[data-theme] .listing-editorial .listing-concierge-note h3 { font-size: 17px; font-weight: 500; margin: 0 0 6px; color: var(--listing-ink); }
html[data-theme] .listing-editorial .listing-concierge-note p { margin: 0; color: var(--listing-copy); font-size: 14px; }
.listing-concierge-note .text-link { flex-shrink: 0; font-size: 13px; }
.listing-related-section { padding-top: 60px; margin-top: 50px; border-top: 1px solid var(--listing-line); }
.listing-related-section > .text-link { display: inline-block; margin-top: 24px; font-size: 14px; }
.listing-related-section .listing-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }

/* Tiles fill their frames proportionally; the detail gallery preserves the full photo. */
html[data-theme] .page-shell-main .listing-card-media { position: relative; overflow: hidden; aspect-ratio: 3 / 2; height: auto; min-height: 0 !important; background: #edf1f3 !important; }
html[data-theme] .page-shell-main .listing-card-image { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover !important; object-position: center; transform: none !important; }
html[data-theme] .page-shell-main .listing-card:hover .listing-card-image { transform: none !important; }
html[data-theme] .page-shell-main .listing-art-topline { left: 12px; right: 12px; top: 12px; }
html[data-theme] .page-shell-main .listing-art-tag { font-size: 10px; padding: 5px 8px; }
html[data-theme] .page-shell-main .listing-card .match-score-badge.is-neutral,
html[data-theme] .page-shell-main .listing-card-foot > .status-badge { display: none; }
html[data-theme] .page-shell-main .listing-headline h3 { font-size: 21px !important; line-height: 1.35; font-weight: 500; }
html[data-theme] .page-shell-main .listing-price { font-size: 17px !important; font-weight: 500; }
html[data-theme] .page-shell-main .listing-body { padding: 20px; gap: 14px; }
html[data-theme] .page-shell-main .listing-copy,
html[data-theme] .page-shell-main .listing-highlight { display: none; }
html[data-theme] .page-shell-main .listing-overline { font-size: 10px; line-height: 1.5; margin-bottom: 6px; }
html[data-theme] .page-shell-main .listing-meta { font-size: 12px; line-height: 1.6; }
html[data-theme] .page-shell-main .listing-quick-facts { gap: 8px 14px; padding: 12px 0 0; }
html[data-theme] .page-shell-main .listing-quick-facts span { font-size: 12px; background: transparent !important; padding: 0; min-height: 0; border: 0; }

html[data-theme="dark"] .listing-editorial { --listing-surface: #102633; --listing-canvas: #142e3d; --listing-ink: #eef4f6; --listing-copy: #b9cbd5; --listing-line: #34505e; }
html[data-theme="dark"] .listing-editorial .eyebrow,
html[data-theme="dark"] .listing-editorial .panel-label { color: #d9bd7e !important; }
html[data-theme="dark"] .listing-editorial .yacht-gallery-stage { background: #0a1923; }
html[data-theme="dark"] .listing-editorial .yacht-gallery-plans .yacht-gallery-stage { background: #fff; }
html[data-theme="dark"] .listing-editorial .yacht-gallery-thumbnail img { background: #10212e; }
html[data-theme="dark"] .listing-editorial .yacht-gallery-thumbnail.is-selected { border-color: #d9bd7e; background: #d9bd7e; }
html[data-theme="dark"] .listing-editorial .yacht-gallery-deck-tabs .yacht-gallery-thumbnail.is-selected { background: #d9bd7e; border-color: #d9bd7e; color: #102633; }
html[data-theme="dark"] .listing-editorial .listing-detail-action-strip button.is-active { color: #f4d896 !important; background: #4a402b; }

/* Horizon keeps buyer-facing pages light while preserving the broker's theme
   preference. The fullscreen photo viewer retains its separate dark canvas. */
html[data-theme] .site-shell:not(.site-shell-platform) .listing-editorial {
  --listing-surface: #fff;
  --listing-canvas: #f8fafb;
  --listing-ink: #173f52;
  --listing-copy: #496471;
  --listing-line: #dbe5e9;
  color-scheme: light;
}
html[data-theme] .site-shell:not(.site-shell-platform) .listing-editorial :is(.eyebrow, .panel-label) { color: #7e622f !important; }
html[data-theme] .site-shell:not(.site-shell-platform) .listing-editorial :is(.yacht-gallery-stage, .yacht-gallery-thumbnail img) { background: #edf1f3; }
html[data-theme] .site-shell:not(.site-shell-platform) .listing-editorial .yacht-gallery-plans .yacht-gallery-stage { background: #fff; }
html[data-theme] .site-shell:not(.site-shell-platform) .listing-editorial .yacht-gallery-thumbnail.is-selected { border-color: #173e51; background: #173e51; }
html[data-theme] .site-shell:not(.site-shell-platform) .listing-editorial .yacht-gallery-deck-tabs .yacht-gallery-thumbnail.is-selected { color: #fff; border-color: #163e53; background: #163e53; }
html[data-theme] .site-shell:not(.site-shell-platform) .listing-editorial .listing-detail-action-strip button.is-active { color: #71501b !important; background: #fbf3e1 !important; }

@media (max-width: 1080px) {
  html[data-theme] .listing-editorial .listing-detail-container { width: calc(100% - 48px); }
  html[data-theme] .listing-editorial .listing-detail-content-grid { grid-template-columns: minmax(0,1fr) 300px; gap: 32px; }
  html[data-theme] .listing-editorial .listing-detail-inquiry-aside .panel { padding: 20px; }
  html[data-theme] .listing-editorial .listing-spec-list { grid-template-columns: 1fr; }
  .listing-concierge-note { align-items: start; flex-direction: column; gap: 14px; }
}
@media (max-width: 800px) {
  html[data-theme] .listing-editorial { padding-top: 22px !important; }
  html[data-theme] .listing-editorial .listing-detail-content-grid { grid-template-columns: 1fr; padding-top: 32px; gap: 38px; }
  html[data-theme] .listing-editorial .listing-detail-header { grid-template-columns: minmax(0,1fr); gap: 20px; padding: 18px 0 24px; }
  html[data-theme] .listing-editorial .listing-detail-price-block { justify-items: start; text-align: left; gap: 4px; }
  html[data-theme] .listing-editorial .listing-availability { max-width: none; }
  .yacht-gallery-stage { min-height: 0; height: auto; aspect-ratio: 3 / 2; }
  .yacht-gallery-open { position: absolute; inset: 0; }
  html[data-theme] .listing-editorial .listing-spec-list { grid-template-columns: 1fr 1fr; }
  html[data-theme] .listing-editorial .listing-detail-inquiry-aside { grid-template-columns: 1fr 1.2fr; align-items: start; }
  .yacht-gallery-plans .yacht-gallery-stage { min-height: 190px; }
}
@media (max-width: 560px) {
  html[data-theme] .listing-editorial .listing-detail-container { width: calc(100% - 32px); }
  html[data-theme] .listing-editorial .listing-detail-header { gap: 18px; }
  html[data-theme] .listing-editorial .listing-detail-title-block h1 { font-size: 34px !important; }
  html[data-theme] .listing-editorial .listing-detail-location { font-size: 13px; }
  .yacht-gallery-stage { aspect-ratio: 4 / 3; }
  .yacht-gallery-enlarge { bottom: 10px; left: 10px; padding: 8px 10px; font-size: 11px; }
  .yacht-gallery-enlarge > span { font-size: 16px; }
  .yacht-gallery-count { bottom: 10px; right: 10px; padding: 7px 9px; font-size: 11px; }
  .yacht-gallery-arrow { width: 44px; height: 44px; border-radius: 4px; font-size: 29px; }
  .yacht-gallery-previous { left: 8px; }
  .yacht-gallery-next { right: 8px; }
  .yacht-gallery-thumbnail { flex-basis: 88px; width: 88px; height: 60px; }
  html[data-theme] .listing-editorial .listing-editorial-facts { gap: 18px 24px; padding: 20px 0; }
  html[data-theme] .listing-editorial .listing-editorial-facts > div:not(.listing-detail-action-strip) { min-width: calc(50% - 24px); }
  html[data-theme] .listing-editorial .listing-detail-action-strip { margin: 0; width: 100%; }
  html[data-theme] .listing-editorial .listing-detail-action-strip button { flex: 1; }
  html[data-theme] .listing-editorial .listing-detail-main-stack { gap: 34px; }
  html[data-theme] .listing-editorial .listing-detail-inquiry-aside { grid-template-columns: 1fr; }
  html[data-theme] .listing-editorial .listing-spec-list,
  html[data-theme] .listing-editorial .listing-feature-list { grid-template-columns: 1fr; }
  html[data-theme] .listing-editorial .listing-editorial-description { font-size: 15px; line-height: 1.8; }
  .yacht-photo-toolbar { padding: 8px 12px; }
  .yacht-photo-toolbar p { font-size: 12px; }
  .yacht-photo-toolbar button { padding: 8px; font-size: 18px; }
  .yacht-photo-toolbar button span { display: none; }
  .yacht-photo-canvas { padding: 12px 4px 64px; }
  .yacht-photo-error { inset: auto 12px 64px; font-size: 12px; }
  .yacht-photo-canvas button { top: auto; bottom: 8px; transform: none; height: 44px; width: 56px; }
  .yacht-photo-previous { left: calc(50% - 64px); }
  .yacht-photo-next { right: calc(50% - 64px); }
  .yacht-photo-footer { padding: 12px; font-size: 11px; }
  .yacht-gallery-plans .yacht-gallery-open { padding: 12px; }
  .yacht-gallery-plans .yacht-gallery-enlarge { font-size: 10px; }
  .listing-video-caption { display: grid; gap: 6px; }
  .listing-related-section { padding-top: 32px; margin-top: 34px; }
  .listing-related-section .listing-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .listing-editorial *, .yacht-photo-dialog * { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
