:root {
  color-scheme: light;
  --bg: #f5f6f8;
  --surface: #ffffff;
  --surface-2: #f1f3f6;
  --surface-3: #e8edf3;
  --text: #101828;
  --muted: #6b7280;
  --line: #dde3ea;
  --line-strong: #cfd6df;
  --accent: #ff7a00;
  --accent-2: #ff9d2e;
  --success: #16a34a;
  --danger: #dc2626;
  --warning: #d97706;
  --header: rgba(255,255,255,.92);
  --hero-text: #f8fafc;
  --shadow: 0 18px 55px rgba(15, 23, 42, .08);
  --shadow-strong: 0 22px 60px rgba(15, 23, 42, .14);
  --radius-xl: 28px;
  --radius-lg: 22px;
  --radius-md: 16px;
  --radius-sm: 12px;
  --container: 1520px;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #050608;
  --surface: #0b0d10;
  --surface-2: #111418;
  --surface-3: #181c22;
  --text: #f3f4f6;
  --muted: #98a2b3;
  --line: #23272f;
  --line-strong: #343a45;
  --header: rgba(6,7,9,.92);
  --shadow: 0 20px 60px rgba(0,0,0,.24);
  --shadow-strong: 0 28px 70px rgba(0,0,0,.32);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, select, textarea { font: inherit; color: inherit; }
button { touch-action: manipulation; }
::selection { background: var(--accent); color: #fff; }

.container {
  width: min(var(--container), calc(100% - 40px));
  margin-inline: auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 90;
  background: var(--header);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
}

.nav {
  min-height: 78px;
  display: flex;
  align-items: center;
  gap: 28px;
  position: relative;
}
.brand { display: flex; align-items: center; min-width: 208px; }
.brand img { width: 190px; height: 54px; object-fit: contain; object-position: left center; }
.logo-dark { display: none; }
:root[data-theme="dark"] .logo-light { display: none; }
:root[data-theme="dark"] .logo-dark { display: block; }

.nav-links {
  display: flex;
  align-items: center;
  gap: 26px;
  white-space: nowrap;
  font-size: .95rem;
  font-weight: 640;
}
.nav-links a {
  position: relative;
  padding: 28px 0;
  color: var(--text);
}
.nav-links a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: 18px;
  height: 2px;
  background: var(--accent);
  border-radius: 999px;
  transition: right .2s ease;
}
.nav-links a:hover::after,
.nav-links a:focus-visible::after { right: 0; }

.nav-actions { margin-left: auto; display: flex; align-items: center; gap: 10px; }
.mobile-menu-btn {
  display: none;
  width: 42px;
  height: 42px;
  padding: 9px;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.mobile-menu-btn span {
  display: block;
  height: 2px;
  margin: 5px 0;
  border-radius: 999px;
  background: var(--text);
}

.btn,
.icon-btn {
  border: 1px solid var(--line);
  background: var(--surface);
  color: var(--text);
  border-radius: var(--radius-sm);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 18px;
  font-weight: 760;
  cursor: pointer;
}
.btn:hover,
.icon-btn:hover { transform: translateY(-1px); border-color: var(--line-strong); box-shadow: var(--shadow); }
.btn-primary {
  background: linear-gradient(135deg, var(--accent), var(--accent-2));
  color: #fff;
  border-color: transparent;
}
.btn-compact { padding: 10px 15px; }
.wide { width: 100%; }
.icon-btn {
  width: 44px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  cursor: pointer;
  font-size: 1rem;
}
.btn:focus-visible,
.icon-btn:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid rgba(255, 122, 0, .22);
  outline-offset: 2px;
}

.home-shell { padding-top: 22px; }
.desktop-only { }
.mobile-only { display: none !important; }
.hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 370px;
  gap: 18px;
  align-items: start;
}
.hero-column {
  display: grid;
  gap: 10px;
  align-content: start;
}
.hero-card {
  position: relative;
  min-height: clamp(560px, 44vw, 720px);
  overflow: hidden;
  border-radius: var(--radius-xl);
  border: 1px solid var(--line);
  background: #050608;
  box-shadow: var(--shadow-strong);
  isolation: isolate;
}
.hero-slider {
  position: absolute;
  inset: 0;
  z-index: -3;
  overflow: hidden;
  border-radius: inherit;
  background: #050608;
}
.hero-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  opacity: 0;
  transition: opacity .7s ease;
}
.hero-slide.is-active {
  opacity: 1;
}
.hero-nav {
  position: absolute;
  top: 43%;
  z-index: 6;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.38);
  background: rgba(6,8,12,.52);
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 10px 25px rgba(0,0,0,.22);
  transition: background .18s ease, transform .18s ease, border-color .18s ease;
}
.hero-nav:hover {
  background: rgba(255,122,0,.88);
  border-color: rgba(255,122,0,.95);
  transform: translateY(-1px);
}
.hero-nav-prev { left: 16px; }
.hero-nav-next { right: 16px; }
.hero-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.hero-dots-below {
  padding: 2px 0 6px;
}
.hero-mobile-shell {
  padding: 16px 0 0;
}
.hero-dot {
  width: 8px;
  height: 8px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  cursor: pointer;
  box-shadow: 0 1px 4px rgba(0,0,0,.35);
  transition: width .18s ease, background .18s ease, transform .18s ease;
}
.hero-dot.is-active {
  width: 24px;
  background: var(--accent);
}
.hero-overlay { display: none; }
.hero-glow { display: none; }
.hero-content {
  min-height: clamp(560px, 44vw, 720px);
  padding: 42px 42px 34px;
  color: var(--hero-text);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  max-width: min(1140px, calc(100% - 84px));
}
.hero-copy-card {
  width: min(100%, 680px);
  padding: 28px 28px 24px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(8, 10, 14, .78), rgba(8, 10, 14, .55));
  border: 1px solid rgba(255, 255, 255, .10);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .28);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.hero-copy-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}
.hero-copy-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.05);
  color: rgba(255,255,255,.88);
  font-size: .8rem;
  font-weight: 700;
}
.hero-kicker,
.overline {
  font-size: .74rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 840;
  color: var(--accent);
}
.hero-kicker {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #ffc18d;
}
.status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 7px rgba(255, 122, 0, .10);
}
.hero-content h1 {
  margin: 12px 0 16px;
  max-width: 760px;
  font-size: clamp(3.2rem, 5vw, 6rem);
  line-height: .9;
  letter-spacing: -.065em;
}
.hero-content h1 span { color: var(--accent); }
.hero-content > p {
  margin: 0;
  max-width: 680px;
  color: rgba(248, 250, 252, .96);
  font-size: 1.12rem;
}
.hero-search {
  display: grid;
  grid-template-columns: minmax(220px, 1.45fr) minmax(140px, 1fr) minmax(150px, 1fr) minmax(150px, 1fr) 170px;
  width: min(100%, 1060px);
  max-width: 1060px;
  padding: 8px;
  gap: 0;
  background: rgba(10, 12, 16, .94);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.24);
}
.hero-search-desktop {
  margin-top: 18px;
}
.hero-search-mobile {
  width: 100%;
  max-width: none;
  grid-template-columns: 1fr;
  gap: 0;
}
.search-field {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 3px;
  min-width: 0;
  min-height: 82px;
  padding: 8px 16px;
  border-right: 1px solid rgba(255,255,255,.10);
}
.search-field span {
  font-size: .7rem;
  font-weight: 760;
  color: rgba(255,255,255,.68);
}
.search-field select,
.quick-filter select,
.quick-filter input,
.field input,
.field select,
.field textarea {
  border: 0;
  outline: none;
  background: transparent;
}
.search-field select {
  appearance: none;
  width: 100%;
  height: 36px;
  min-width: 0;
  padding-right: 24px;
  font-weight: 700;
  color: #fff;
  background-image: linear-gradient(45deg, transparent 50%, #cbd5e1 50%), linear-gradient(135deg, #cbd5e1 50%, transparent 50%);
  background-position: calc(100% - 10px) 12px, calc(100% - 6px) 12px;
  background-size: 4px 4px, 4px 4px;
  background-repeat: no-repeat;
}
.search-field option { color: #111827; }
.hero-search-btn {
  width: 100%;
  min-width: 160px;
  min-height: 82px;
  border-radius: 14px;
  font-size: 1.05rem;
}
.type-shortcuts {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin-top: 22px;
  max-width: 1040px;
}
.type-shortcuts-desktop {
  margin-top: 16px;
}
.type-shortcuts-mobile {
  margin-top: 14px;
}
.shortcut-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 102px;
  padding: 14px 10px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: linear-gradient(180deg, rgba(11, 14, 19, .60), rgba(8, 11, 15, .56));
  font-weight: 760;
  text-align: center;
  backdrop-filter: blur(10px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.shortcut-card:hover {
  border-color: rgba(255, 122, 0, .55);
  background: linear-gradient(180deg, rgba(29, 19, 10, .72), rgba(16, 13, 10, .66));
  transform: translateY(-1px);
}
.shortcut-card > span:last-child {
  max-width: 100%;
  text-wrap: balance;
}
.shortcut-icon {
  width: 52px;
  height: 52px;
  display: inline-grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255, 122, 0, .20), rgba(255, 122, 0, .10));
  border: 1px solid rgba(255, 160, 84, .16);
}
.shortcut-icon img {
  width: 28px;
  height: 28px;
  display: block;
  object-fit: contain;
}

.home-rail { display: grid; gap: 14px; align-content: start; min-width: 0; }
.home-content-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 370px;
  gap: 18px;
  align-items: start;
}
.home-main-content {
  min-width: 0;
}
.home-secondary-rail {
  display: grid;
  gap: 14px;
  position: sticky;
  top: 98px;
  align-self: start;
  padding-top: 32px;
}
.rail-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 20px;
  box-shadow: var(--shadow);
}
.rail-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
.rail-title h2,
.rail-card h2 {
  margin: 0;
  font-size: 1.15rem;
  letter-spacing: -.02em;
}
.rail-title a { font-size: .77rem; font-weight: 760; color: var(--muted); }
.quick-card-hero {
  min-height: 0;
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 20px;
  overflow: visible;
  background:
    radial-gradient(circle at top right, rgba(255,122,0,.10), transparent 30%),
    linear-gradient(180deg, rgba(10,12,16,.98), rgba(7,9,14,.96));
}
.quick-card-top { display: grid; gap: 16px; }
.quick-card-title p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.55;
}
.quick-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.quick-stat {
  min-height: 72px;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
  display: grid;
  align-content: center;
  gap: 4px;
}
.quick-stat strong { font-size: 1.1rem; letter-spacing: -.03em; }
.quick-stat span { color: var(--muted); font-size: .73rem; }
.quick-filter { display: grid; gap: 11px; }
.quick-filter-rich {
  gap: 12px;
}
.quick-filter-rich > label,
.quick-filter-rich .filter-grid-2 > label {
  display: grid;
  gap: 7px;
  min-height: unset;
  padding: 0;
  border: 0;
  background: transparent;
}
.quick-filter-rich label > span {
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
}
.filter-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.quick-filter-rich select,
.quick-filter-rich input {
  width: 100%;
  min-width: 0;
  min-height: 50px;
  padding: 0 14px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(16,20,28,.95), rgba(11,14,19,.95));
  color: var(--text);
  text-align: left;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.02);
}
.quick-filter-rich input::placeholder { color: rgba(203,213,225,.45); }
.quick-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 4px;
}
.btn-muted {
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.10);
  color: var(--text);
}
.btn-muted:hover {
  background: rgba(255,255,255,.06);
}
.quick-card-foot { margin-top: 18px; }
.quick-card-compact {
  align-self: stretch;
}
.quick-card-compact .quick-card-title {
  margin-bottom: 4px;
}
.quick-card-compact .quick-card-title p {
  max-width: 290px;
  margin-top: 6px;
  font-size: .78rem;
  line-height: 1.45;
}
.quick-filter-compact {
  gap: 10px;
}
.compact-filter-block {
  display: grid;
  gap: 7px;
}
.compact-filter-head {
  color: var(--muted);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.quick-filter-compact select,
.quick-filter-compact input {
  min-height: 46px;
}
.quick-filter-compact .quick-actions .btn {
  min-height: 48px;
}
.quick-card-foot-compact {
  margin-top: 10px;
}
.quick-card-foot-compact .quick-insights {
  gap: 6px;
}
.quick-card-foot-compact .quick-insights span {
  min-height: 28px;
  padding: 0 10px;
  font-size: .68rem;
}
.quick-insights {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.quick-insights span {
  min-height: 32px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: var(--muted);
  font-size: .74rem;
  font-weight: 700;
}

.popular-card { padding-bottom: 12px; }
.popular-list { display: grid; }
.popular-list a {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-top: 1px solid var(--line);
  min-height: 92px;
}
.place-thumb {
  width: 110px;
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: #050608;
  position: relative;
  overflow: hidden;
}
.place-thumb::after { display: none; }
.place-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  display: block;
  background: #050608;
}
.place-copy { display: grid; min-width: 0; }
.place-copy strong {
  font-size: .88rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.place-copy small { color: var(--muted); font-size: .7rem; }
.place-count { font-size: .72rem; color: var(--muted); white-space: nowrap; }

.trust-card { display: flex; align-items: flex-start; gap: 14px; }
.trust-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  border: 2px solid var(--accent);
  color: var(--accent);
  font-size: 1.2rem;
  font-weight: 900;
  flex: 0 0 auto;
}
.trust-card p { margin: 6px 0 10px; color: var(--muted); font-size: .84rem; }
.trust-link { font-size: .84rem; font-weight: 760; color: var(--accent); }

.metric-strip {
  margin: 18px 0 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  overflow: hidden;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: var(--shadow);
}
.metric-strip > div {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 18px 20px;
  border-right: 1px solid var(--line);
}
.metric-strip > div:last-child { border-right: 0; }
.metric-strip strong { font-size: 1.25rem; }
.metric-strip span { font-size: .8rem; color: var(--muted); }

.section { padding: 32px 0; }
.listing-section { content-visibility: auto; contain-intrinsic-size: 760px; }
.section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
}
.section-head h2 {
  margin: 4px 0 2px;
  font-size: 1.7rem;
  letter-spacing: -.04em;
}
.section-head p { margin: 0; color: var(--muted); font-size: .92rem; }
.section-link,
.results-pill {
  font-size: .82rem;
  font-weight: 760;
}
.section-link { color: var(--muted); }
.section-link span { color: var(--accent); }
.results-pill {
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--surface);
  color: var(--muted);
}
.cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.cards-main { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.card {
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: var(--surface);
  box-shadow: var(--shadow);
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.card:hover {
  transform: translateY(-3px);
  border-color: rgba(255,122,0,.32);
  box-shadow: var(--shadow-strong);
}
.card-link { display: block; height: 100%; }
.card-media {
  position: relative;
  aspect-ratio: 16 / 10.5;
  background: linear-gradient(135deg, #1b2430, #374151 45%, #c47b32 100%);
}
.card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.media-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: rgba(255,255,255,.9);
  font-size: 1.1rem;
  font-weight: 900;
  letter-spacing: .18em;
}
.card-badges {
  position: absolute;
  inset: 12px 12px auto 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: .68rem;
  font-weight: 820;
  letter-spacing: .04em;
}
.badge-dark {
  background: rgba(12, 16, 24, .82);
  color: #fff;
  border: 1px solid rgba(255,255,255,.18);
}
.badge-accent {
  background: rgba(255,122,0,.18);
  color: #fff;
  border: 1px solid rgba(255, 166, 71, .42);
}
.favorite-dot {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(8,10,14,.65);
  border: 1px solid rgba(255,255,255,.18);
  color: #fff;
}
.card-body { padding: 14px 14px 16px; }
.card-title-row h3 {
  margin: 0;
  font-size: 1rem;
  line-height: 1.26;
  letter-spacing: -.02em;
}
.meta.location-meta {
  margin-top: 5px;
  color: var(--muted);
  font-size: .84rem;
}
.spec-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 12px;
  margin-top: 12px;
  color: var(--muted);
  font-size: .78rem;
}
.spec-row span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.card-foot {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 8px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.price { font-size: 1.02rem; font-weight: 860; letter-spacing: -.02em; }
.agency-name {
  max-width: 42%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--muted);
  font-size: .7rem;
}
.empty {
  display: grid;
  gap: 6px;
  padding: 56px 28px;
  text-align: center;
  border-radius: 18px;
  border: 1px dashed var(--line-strong);
  background: var(--surface);
}
.empty span { color: var(--muted); }

.location-section { padding-bottom: 48px; }
.region-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.region-card {
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: var(--surface);
}
.region-card summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px;
}
.region-card summary::-webkit-details-marker { display: none; }
.region-card summary span:first-child { display: grid; gap: 3px; }
.region-card summary strong { font-size: .9rem; }
.region-card summary small { font-size: .72rem; color: var(--muted); }
.summary-plus {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  border: 1px solid var(--line);
  color: var(--accent);
  transition: transform .2s ease;
}
.region-card[open] .summary-plus { transform: rotate(45deg); }
.neighborhood-links {
  display: grid;
  gap: 4px;
  padding: 0 16px 16px;
}
.neighborhood-links a {
  padding: 6px 9px;
  border-radius: 9px;
  color: var(--muted);
  font-size: .8rem;
}
.neighborhood-links a:hover { background: var(--surface-2); color: var(--text); }

.footer {
  margin-top: 28px;
  padding: 34px 0 18px;
  border-top: 1px solid var(--line);
  background: var(--surface);
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  gap: 40px;
}
.footer-grid > div { display: grid; align-content: start; gap: 7px; }
.footer-grid strong { margin-bottom: 6px; }
.footer-grid a,
.footer-grid span,
.footer-brand p { color: var(--muted); font-size: .8rem; }
.footer-brand {
  display: grid !important;
  grid-template-columns: 96px 1fr !important;
  gap: 14px;
  align-items: center !important;
  max-width: 560px;
}
.footer-logo-wrap {
  width: 88px;
  height: 85px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer-logo-wrap img { width: 88px !important; height: 85px !important; object-fit: contain; }
.footer-brand p { margin: 0; }
.footer-bottom {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: .74rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.footer-bottom a { color: var(--muted); }
.footer-bottom a:hover { color: var(--text); }

.auth-shell {
  min-height: calc(100vh - 78px);
  padding: 18px 18px 26px;
  display: flex;
  align-items: center;
}
.auth-stage {
  width: min(1320px, 100%);
  max-height: calc(100vh - 122px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  border-radius: 34px;
  overflow: auto;
  border: 1px solid rgba(255, 122, 0, .18);
  background:
    radial-gradient(circle at 18% 14%, rgba(255, 122, 0, .12), transparent 34%),
    radial-gradient(circle at 84% 9%, rgba(255, 170, 84, .09), transparent 28%),
    linear-gradient(135deg, rgba(8, 10, 14, .99), rgba(5, 8, 12, .99));
  box-shadow: 0 24px 80px rgba(0, 0, 0, .34);
}
.auth-showcase {
  position: relative;
  padding: 34px 30px;
  background:
    radial-gradient(circle at 62% 75%, rgba(255, 122, 0, .09), transparent 34%),
    radial-gradient(circle at 75% 24%, rgba(255, 184, 118, .07), transparent 22%);
}
.auth-showcase::before {
  content: "";
  position: absolute;
  inset: auto -80px -160px auto;
  width: 560px;
  height: 560px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 122, 0, .10), transparent 66%);
  pointer-events: none;
}
.auth-showcase::after {
  content: "";
  position: absolute;
  left: 38%;
  bottom: -170px;
  width: 470px;
  height: 470px;
  border-radius: 50%;
  border: 1px solid rgba(255, 122, 0, .08);
  box-shadow: 0 0 0 46px rgba(255, 122, 0, .03), 0 0 0 92px rgba(255, 122, 0, .018);
  pointer-events: none;
}
.auth-showcase-inner {
  position: relative;
  z-index: 1;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.auth-brand-lockup img { width: 210px; height: auto; object-fit: contain; }
.auth-status-pill {
  align-self: flex-end;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(54, 224, 143, .22);
  background: rgba(18, 54, 33, .42);
  color: #acf3ce;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .8rem;
  font-weight: 800;
}
.auth-status-pill span,
.secure-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #36e08f;
  box-shadow: 0 0 18px rgba(54, 224, 143, .52);
  flex: 0 0 auto;
}
.auth-copy { max-width: 760px; }
.auth-overline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  color: #ffb066;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .84rem;
  font-weight: 800;
}
.auth-overline::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ff7a00;
}
.auth-copy h1 {
  margin: 0 0 14px;
  max-width: 700px;
  font-size: clamp(2.55rem, 4vw, 4.6rem);
  line-height: .96;
  letter-spacing: -.055em;
}
.auth-copy h1 span,
.auth-copy h1 .accent { color: #ff7a00; }
.auth-copy p {
  margin: 0;
  max-width: 790px;
  color: rgba(226, 231, 237, .88);
  font-size: 1.02rem;
  line-height: 1.55;
}
.auth-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 2px;
}
.auth-feature-card {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 14px;
  padding: 15px 15px 14px;
  border-radius: 20px;
  border: 1px solid rgba(255, 122, 0, .16);
  background: linear-gradient(180deg, rgba(18, 12, 7, .50), rgba(10, 10, 12, .56));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.auth-feature-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  border: 1px solid rgba(255, 160, 84, .20);
  background: linear-gradient(180deg, rgba(61, 32, 8, .96), rgba(31, 18, 8, .96));
  color: #ff9d3f;
  font-size: 1.18rem;
  font-weight: 900;
}
.auth-feature-card strong {
  display: block;
  margin-bottom: 6px;
  font-size: 1rem;
}
.auth-feature-card p {
  margin: 0;
  color: rgba(202, 209, 219, .78);
  font-size: .88rem;
  line-height: 1.42;
}
.auth-panel {
  position: relative;
  padding: 38px 34px 26px;
  border-left: 1px solid rgba(255, 122, 0, .14);
  background: linear-gradient(180deg, rgba(4, 7, 11, .96), rgba(3, 6, 10, .99));
  display: flex;
  flex-direction: column;
}
.auth-panel-head {
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 122, 0, .12);
}
.auth-panel-kicker {
  margin-bottom: 18px;
  color: #ffb066;
  text-transform: uppercase;
  letter-spacing: .2em;
  font-size: .84rem;
  font-weight: 800;
}
.auth-panel-title-row {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}
.auth-panel-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  border: 1px solid rgba(255, 160, 84, .18);
  background: linear-gradient(180deg, rgba(48, 27, 10, .82), rgba(27, 19, 11, .80));
  color: #ff9d3f;
  font-size: 1.25rem;
}
.auth-panel h2 {
  margin: 0 0 8px;
  font-size: clamp(2rem, 2.85vw, 3.2rem);
  line-height: .98;
  letter-spacing: -.04em;
}
.auth-panel-head p,
.auth-credit span,
.auth-secure-note {
  color: rgba(200, 208, 219, .82);
}
.auth-panel-head p { margin: 0; font-size: 1rem; line-height: 1.45; }
.auth-form {
  display: grid;
  gap: 14px;
  margin-top: 22px;
}
.auth-field { gap: 8px; }
.auth-field label {
  color: #f6f9ff;
  font-size: .92rem;
  font-weight: 760;
}
.auth-input-wrap {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  min-height: 58px;
  border-radius: 16px;
  border: 1px solid rgba(255, 122, 0, .18);
  background: rgba(10, 12, 16, .86);
  overflow: hidden;
}
.auth-input-icon {
  display: grid;
  place-items: center;
  height: 100%;
  color: #ff9d3f;
  font-size: 1.02rem;
  font-weight: 900;
}
.auth-input-wrap input {
  padding: 0 16px 0 0;
  height: 100%;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #eef6ff;
  box-shadow: none !important;
}
.auth-input-wrap input::placeholder { color: rgba(181, 190, 201, .52); }
.auth-input-wrap:focus-within {
  border-color: rgba(255, 160, 84, .74);
  box-shadow: 0 0 0 3px rgba(255, 122, 0, .12);
}
.auth-submit {
  min-height: 60px;
  justify-content: space-between;
  padding: 0 22px;
  border-radius: 16px;
  margin-top: 4px;
  background: linear-gradient(90deg, #ff7a00, #ff8f1f 55%, #ffae4c) !important;
  color: #fff;
  box-shadow: 0 12px 28px rgba(255, 122, 0, .22);
}
.auth-submit:hover { filter: brightness(1.04); }
.auth-panel-meta {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 122, 0, .12);
}
.auth-secure-note {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  font-size: .92rem;
}
.auth-credit {
  display: grid;
  gap: 5px;
  font-size: .88rem;
}
.auth-credit strong {
  color: #dce9f9;
  font-size: .94rem;
}
.auth-flash,
.flash {
  padding: 14px 16px;
  border-radius: 16px;
  margin-top: 16px;
  margin-bottom: 0;
  background: rgba(255, 206, 94, .14);
  border: 1px solid rgba(255, 206, 94, .28);
  color: #ffd978;
}


.panel-shell { padding: 28px 0; }
.panel-grid { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 24px; }
.sidebar {
  position: sticky;
  top: 98px;
  height: max-content;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: var(--surface);
  box-shadow: var(--shadow);
}
.sidebar a {
  display: block;
  padding: 11px 12px;
  border-radius: 10px;
  font-weight: 720;
}
.sidebar a:hover { background: var(--surface-2); }
.side-card {
  padding: 22px;
  border-radius: 20px;
}
.table-wrap { overflow: auto; border-radius: 16px; }
.table {
  width: 100%;
  min-width: 820px;
  border-collapse: collapse;
}
.table th,
.table td {
  padding: 13px 14px;
  text-align: left;
  border-bottom: 1px solid var(--line);
}
.table th {
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--muted);
}
.actions { display: flex; flex-wrap: wrap; gap: 8px; }
.status {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 820;
  background: var(--surface-2);
}
.status.approved { color: var(--success); }
.status.rejected { color: var(--danger); }
.status.pending { color: var(--warning); }
.stat-grid,
.score-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 22px;
}
.stat {
  padding: 18px;
  border-radius: 16px;
}
.stat strong,
.audit-score,
.score-box strong { display: block; font-weight: 900; }
.stat strong { font-size: 2rem; }
.audit-score { font-size: 3.2rem; }
.score-box {
  padding: 15px;
  text-align: center;
  border-radius: 14px;
  background: var(--surface-2);
}
.score-box strong { font-size: 2rem; }
.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}
.span-2 { grid-column: 1 / -1; }
.field { display: grid; gap: 7px; }
.field label { font-size: .8rem; font-weight: 720; color: var(--muted); }
.field input,
.field select,
.field textarea {
  width: 100%;
  padding: 12px 13px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background: var(--surface-2);
}
.field input:focus,
.field select:focus,
.field textarea:focus { border-color: rgba(255, 122, 0, .42); }
.form-actions { display: flex; gap: 9px; margin-top: 18px; }

.tech-form-elevated {
  border-color: rgba(255,122,0,.14);
  border-radius: 26px;
  padding: 22px;
}
.tech-form-intro {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:20px;
}
.tech-form-intro-card {
  padding:16px 16px 15px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,122,0,.04), rgba(255,255,255,.01));
}
.tech-form-intro-card strong {
  display:block;
  margin-bottom:6px;
  font-size:.95rem;
}
.tech-form-intro-card p {
  margin:0;
  color:var(--muted);
  font-size:.83rem;
  line-height:1.5;
}
.form-grid-12 {
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:14px;
}
.field-span-12 { grid-column: span 12; }
.field-span-6 { grid-column: span 6; }
.field-span-4 { grid-column: span 4; }
.field-span-3 { grid-column: span 3; }
.field-span-2 { grid-column: span 2; }
.field {
  min-width:0;
}
.field label {
  font-size:.79rem;
  letter-spacing:.01em;
}
.field input,
.field select,
.field textarea {
  min-height:52px;
  padding:13px 14px;
  border-radius:14px;
  border-color:rgba(255,255,255,.08);
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 98%, #000),var(--surface-2));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.02);
}
.field textarea {
  min-height:120px;
  resize:vertical;
}
.field input::placeholder,
.field textarea::placeholder { color: rgba(181,190,201,.58); }
.tech-form-actions {
  position:sticky;
  bottom:16px;
  z-index:12;
  padding:14px;
  border:1px solid rgba(255,122,0,.12);
  border-radius:18px;
  background:rgba(8,10,14,.92);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.listing-gallery {
  display: grid;
  gap: 12px;
}
.gallery-main {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 10;
  border-radius: 22px;
  border: 1px solid var(--line);
  background: var(--surface);
  box-shadow: var(--shadow);
}
.gallery-main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.gallery-count {
  position: absolute;
  right: 14px;
  bottom: 14px;
  min-width: 64px;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(5,6,8,.76);
  color: #fff;
  border: 1px solid rgba(255,255,255,.16);
  text-align: center;
  font-size: .8rem;
  font-weight: 760;
}
.gallery-thumbs {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(112px, 1fr);
  gap: 9px;
  overflow-x: auto;
  padding: 2px 2px 7px;
  scrollbar-width: thin;
}
.gallery-thumb {
  padding: 0;
  overflow: hidden;
  aspect-ratio: 16 / 10;
  border-radius: 13px;
  border: 2px solid transparent;
  background: var(--surface-2);
  cursor: pointer;
}
.gallery-thumb.is-active { border-color: var(--accent); }
.gallery-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.detail-hero { padding: 26px 0 48px; }
.breadcrumbs {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  color: var(--muted);
  font-size: .8rem;
}
.breadcrumbs a:hover { color: var(--text); }
.detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 22px;
  align-items: start;
}
.detail-image {
  overflow: hidden;
  aspect-ratio: 16 / 10;
  border-radius: 22px;
}
.detail-image img { width: 100%; height: 100%; object-fit: cover; }
.detail-title { padding: 24px 2px 12px; }
.detail-title h1 {
  margin: 7px 0 9px;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1.03;
  letter-spacing: -.05em;
}
.detail-specs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin: 7px 0 16px;
}
.detail-specs > div {
  padding: 14px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: var(--surface);
}
.detail-specs strong,
.detail-specs span { display: block; }
.detail-specs span { margin-top: 2px; font-size: .72rem; color: var(--muted); }
.description-card,
.detail-card {
  padding: 20px;
  border-radius: 18px;
}
.description-card h2 { margin-top: 0; font-size: 1.25rem; }
.description-card p { color: var(--text); }
.detail-sidebar {
  position: sticky;
  top: 98px;
  display: grid;
  gap: 12px;
}
.detail-price { margin: 4px 0 2px; font-size: 2rem; }
.divider { height: 1px; margin: 17px 0; background: var(--line); }
.verified-card { display: flex; align-items: flex-start; gap: 12px; }
.verified-card p { margin: 3px 0 0; color: var(--muted); }
.nowrap { white-space: nowrap; }

@media (max-width: 1380px) {
  .hero-layout { grid-template-columns: minmax(0, 1fr) 340px; }
  .home-content-layout { grid-template-columns: minmax(0, 1fr) 340px; }
  .hero-copy-card { width: min(100%, 620px); }
  .hero-search-desktop { grid-template-columns: minmax(190px, 1.25fr) minmax(120px, 1fr) minmax(120px, 1fr) 160px; }
  .hero-search-desktop .search-field:nth-of-type(4) { display: none; }
  .cards,
  .cards-main,
  .region-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .type-shortcuts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}


@media (max-width: 1180px) {
  .auth-stage { grid-template-columns: 1fr; max-height: none; }
  .auth-panel { border-left: 0; border-top: 1px solid rgba(255, 122, 0, .14); }
}

@media (max-width: 1080px) {
  .nav-links { display: none; }
  .mobile-menu-btn { display: block; margin-left: auto; order: 2; }
  .nav-actions { margin-left: 0; order: 3; }
  .nav[data-menu-open="1"] .nav-links {
    display: flex;
    position: absolute;
    top: 78px;
    left: 0;
    right: 0;
    padding: 10px 20px 18px;
    flex-wrap: wrap;
    gap: 8px 20px;
    background: var(--surface);
    border-bottom: 1px solid var(--line);
  }
  .nav[data-menu-open="1"] .nav-links a { padding: 8px 0; }
  .nav[data-menu-open="1"] .nav-links a::after { bottom: 2px; }
  .hero-layout,
  .home-content-layout,
  .panel-grid,
  .detail-grid { grid-template-columns: 1fr; }
  .home-rail { grid-template-columns: 1fr; }
  .quick-card-hero { height: auto; min-height: 0; }
  .home-secondary-rail {
    position: static;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
    padding-top: 0;
  }
  .trust-card { grid-column: 1 / -1; }
  .sidebar,
  .detail-sidebar { position: static; }
  .detail-sidebar { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
}

@media (max-width: 760px) {
  .desktop-only { display: none !important; }
  .mobile-only { display: block !important; }
  .container { width: min(100% - 22px, var(--container)); }
  .site-header .nav { min-height: 70px; gap: 8px; }
  .brand { min-width: 0; }
  .brand img { width: 150px; height: 44px; }
  .mobile-menu-btn { width: 38px; height: 38px; }
  .nav-actions .icon-btn,
  .nav-actions .login-link { display: none; }
  .btn-compact { padding: 9px 11px; font-size: .78rem; }
  .hero-card,
  .hero-content { min-height: 460px; }
  .hero-content {
    padding: 18px 18px 18px;
    justify-content: flex-end;
    width: 100%;
    max-width: 100%;
  }
  .hero-copy-card {
    width: 100%;
    padding: 18px 18px 16px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(8, 10, 14, .72), rgba(8, 10, 14, .58));
  }
  .hero-copy-meta { margin-top: 14px; gap: 8px; }
  .hero-copy-meta span { min-height: 30px; padding: 0 10px; font-size: .72rem; }
  .hero-content h1 { font-size: 3rem; }
  .hero-content > p { font-size: .96rem; }
  .hero-search-mobile {
    grid-template-columns: 1fr;
    border-radius: 18px;
  }
  .search-field {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.10);
  }
  .search-location,
  .hero-search-btn { grid-column: 1 / -1; }
  .hero-search-mobile .hero-search-btn { min-height: 62px; }
  .quick-stats,
  .filter-grid-2,
  .quick-actions { grid-template-columns: 1fr; }
  .type-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .shortcut-card { min-height: 86px; }
  .home-rail,
  .home-secondary-rail,
  .footer-grid,
  .detail-sidebar { grid-template-columns: 1fr; }
  .metric-strip { grid-template-columns: 1fr 1fr; }
  .metric-strip > div:nth-child(2) { border-right: 0; }
  .metric-strip > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .cards,
  .cards-main,
  .region-grid,
  .form-grid,
  .detail-specs,
  .score-grid,
  .stat-grid { grid-template-columns: 1fr 1fr; }
  .popular-list a { grid-template-columns: 88px minmax(0, 1fr) auto; gap: 10px; min-height: 80px; }
  .place-thumb { width: 88px; height: 54px; border-radius: 14px; }
  .section { padding: 26px 0; }
  .section-head { align-items: flex-start; }
  .section-head p,
  .section-link { display: none; }
  .card-foot { flex-direction: column; align-items: flex-start; }
  .agency-name { max-width: 100%; }
  .footer-brand { grid-template-columns: 76px 1fr !important; }
  .footer-logo-wrap img { width: 70px !important; height: 68px !important; }
  .auth-shell { min-height: auto; padding: 14px 10px 24px; }
  .auth-stage { border-radius: 24px; }
  .auth-showcase,
  .auth-panel { padding: 22px 16px; }
  .auth-brand-lockup img { width: 170px; }
  .auth-status-pill { align-self: flex-start; min-height: 40px; padding: 0 14px; font-size: .75rem; }
  .auth-copy h1 { font-size: 2.35rem; }
  .auth-copy p { font-size: .96rem; }
  .auth-feature-grid { grid-template-columns: 1fr; gap: 10px; }
  .auth-feature-card { grid-template-columns: 52px minmax(0, 1fr); gap: 10px; padding: 14px 13px; }
  .auth-feature-icon { width: 44px; height: 44px; border-radius: 14px; }
  .auth-panel-head { padding-bottom: 18px; }
  .auth-panel-title-row { grid-template-columns: 48px minmax(0, 1fr); gap: 12px; }
  .auth-panel-icon { width: 46px; height: 46px; border-radius: 14px; font-size: 1.1rem; }
  .auth-panel h2 { font-size: 2.2rem; }
  .auth-panel-head p { font-size: .96rem; }
  .auth-input-wrap { min-height: 56px; grid-template-columns: 44px minmax(0, 1fr); border-radius: 16px; }
  .auth-submit { min-height: 56px; border-radius: 16px; }
}


@media (max-width: 760px) {
  .desktop-only { display: none !important; }
  .mobile-only { display: block !important; }
  .hero-nav { width: 38px; height: 38px; top: 39%; font-size: 1.7rem; }
  .hero-nav-prev { left: 10px; }
  .hero-nav-next { right: 10px; }
  .hero-dots-below { padding-top: 0; }
}

@media (max-width: 500px) {
  .cards,
  .cards-main,
  .region-grid,
  .form-grid,
  .detail-specs,
  .score-grid,
  .stat-grid { grid-template-columns: 1fr; }
  .hero-content h1 { font-size: 3.05rem; }
  .hero-search { grid-template-columns: 1fr; }
  .search-location { grid-column: auto; }
  .metric-strip { grid-template-columns: 1fr 1fr; }
  .nav-actions { gap: 4px; }
  .nav-actions .btn-primary { font-size: .72rem; }
  .footer-bottom { gap: 6px; }
}

@media (prefers-reduced-motion: reduce) {
  * {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
  .hero-slide { transform: none !important; }
}

/* v14 admin demo portfolio visibility */
.admin-demo-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin: 22px 0 6px;
  padding: 20px 22px;
  border: 1px solid rgba(255,122,0,.18);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,122,0,.08), rgba(255,255,255,.015));
  box-shadow: var(--shadow);
}
.admin-demo-card h2 { margin: 4px 0 6px; font-size: 1.2rem; }
.admin-demo-card p { margin: 0; color: var(--muted); max-width: 760px; }
.admin-section-spaced { margin-top: 28px; }
.admin-listing-table td { vertical-align: middle; }
.admin-list-thumb {
  width: 86px;
  height: 58px;
  object-fit: cover;
  border-radius: 10px;
  border: 1px solid var(--line);
  background: var(--surface-2);
}
.admin-list-thumb-empty { display: grid; place-items: center; color: var(--muted); }
.demo-badge {
  display: inline-flex;
  margin-top: 6px;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(255,122,0,.14);
  border: 1px solid rgba(255,122,0,.24);
  color: var(--accent);
  font-size: .66rem;
  font-weight: 850;
  letter-spacing: .08em;
}
.admin-empty { padding: 30px 16px; text-align: center; color: var(--muted); }
@media (max-width: 760px) {
  .admin-demo-card { align-items: stretch; flex-direction: column; }
  .admin-demo-card form .btn { width: 100%; }
  .admin-list-thumb { width: 72px; height: 50px; }
}

/* ============================================================
   ETRIVIO v17 — Admin Console, advanced footer & listing detail
   ============================================================ */
.footer-advanced {
  position: relative;
  overflow: hidden;
  margin-top: 40px;
  padding: 38px 0 18px;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,122,0,.10), transparent 30%),
    linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 92%, #000));
}
.footer-advanced::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 40px 40px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.8), transparent 78%);
}
.footer-topline,
.footer-grid-advanced,
.footer-bottom-advanced { position: relative; z-index: 1; }
.footer-topline {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 26px;
  margin-bottom: 28px;
  border-bottom: 1px solid var(--line);
}
.footer-topline h2 {
  margin: 5px 0 0;
  max-width: 720px;
  font-size: clamp(1.7rem, 3vw, 2.75rem);
  letter-spacing: -.045em;
}
.footer-grid-advanced {
  grid-template-columns: minmax(300px, 1.55fr) repeat(3, minmax(150px, .7fr));
  gap: 36px;
}
.footer-brand-advanced {
  display: grid !important;
  grid-template-columns: 90px minmax(0,1fr) !important;
  align-items: start !important;
  max-width: none;
}
.footer-socials {
  display: flex;
  gap: 10px;
  margin-top: 16px;
}
.social-btn {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  border: 1px solid rgba(255,122,0,.22);
  background: rgba(255,122,0,.08);
  color: var(--accent);
  transition: transform .16s ease, background .16s ease, border-color .16s ease;
}
.social-btn:hover {
  transform: translateY(-2px);
  background: rgba(255,122,0,.16);
  border-color: rgba(255,122,0,.48);
}
.social-btn svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}
.social-btn[aria-label="Facebook"] svg { fill: currentColor; stroke: none; }
.footer-bottom-advanced {
  justify-content: space-between;
  gap: 18px;
}
.footer-security { margin-left: auto; }

.admin-panel-grid { grid-template-columns: 270px minmax(0,1fr); gap: 22px; }
.tech-sidebar {
  position: sticky;
  top: 98px;
  padding: 14px;
  border: 1px solid rgba(255,122,0,.14);
  background:
    radial-gradient(circle at 30% 0%, rgba(255,122,0,.10), transparent 30%),
    linear-gradient(180deg, rgba(9,11,15,.96), rgba(6,8,11,.98));
  box-shadow: 0 20px 50px rgba(0,0,0,.20);
}
.sidebar-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 12px 18px;
  margin-bottom: 8px;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.sidebar-brand > div { display:grid; }
.sidebar-brand strong { letter-spacing: .12em; font-size: .92rem; }
.sidebar-brand small { color: var(--muted); font-size: .68rem; }
.sidebar-orb {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: radial-gradient(circle at 34% 30%, #ffb066, #ff7a00 55%, #7b2f00 100%);
  box-shadow: 0 0 24px rgba(255,122,0,.25);
}
.tech-sidebar a {
  position: relative;
  padding: 12px 13px;
  margin: 3px 0;
  border: 1px solid transparent;
  color: color-mix(in srgb, var(--text) 88%, transparent);
}
.tech-sidebar a:hover,
.tech-sidebar a.active {
  background: rgba(255,122,0,.08);
  border-color: rgba(255,122,0,.18);
  color: var(--text);
}
.admin-command-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 28px 30px;
  margin-bottom: 20px;
  border-radius: 24px;
  border: 1px solid rgba(255,122,0,.16);
  background:
    radial-gradient(circle at 80% 20%, rgba(255,122,0,.16), transparent 26%),
    linear-gradient(135deg, rgba(12,14,18,.98), rgba(7,9,13,.98));
  box-shadow: var(--shadow);
}
.admin-command-hero::after {
  content: "";
  position: absolute;
  right: -100px;
  bottom: -130px;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  border: 1px solid rgba(255,122,0,.10);
  box-shadow: 0 0 0 42px rgba(255,122,0,.025), 0 0 0 84px rgba(255,122,0,.014);
}
.admin-command-hero h1 { margin: 4px 0 6px; font-size: clamp(2rem,3.3vw,3.25rem); letter-spacing: -.05em; }
.admin-command-hero p { margin:0; color:var(--muted); }
.system-ready {
  position: relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(54,224,143,.22);
  background:rgba(54,224,143,.07);
  color:#8fe8b8;
  font-size:.78rem;
  font-weight:800;
  white-space:nowrap;
}
.system-ready span { width:9px;height:9px;border-radius:50%;background:#36e08f;box-shadow:0 0 16px rgba(54,224,143,.55); }
.tech-stat-grid .stat {
  position: relative;
  overflow: hidden;
  border-color: rgba(255,122,0,.10);
  background: linear-gradient(180deg, rgba(15,17,21,.94), rgba(9,11,14,.98));
}
.stat-icon {
  width: 34px;
  height: 34px;
  display:grid;
  place-items:center;
  margin-bottom: 12px;
  border-radius: 12px;
  color: var(--accent);
  background: rgba(255,122,0,.10);
  border:1px solid rgba(255,122,0,.12);
}
.admin-action-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin: 18px 0 8px;
}
.admin-action-card {
  display:grid;
  gap:6px;
  min-height:128px;
  padding:18px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--surface);
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.admin-action-card:hover { transform:translateY(-2px); border-color:rgba(255,122,0,.34); background:color-mix(in srgb,var(--surface) 92%, var(--accent)); }
.admin-action-card > span { color:var(--accent); font-size:1.35rem; }
.admin-action-card small { color:var(--muted); line-height:1.4; }
.admin-two-column { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
.tech-form-card,
.tech-result-card {
  border-color: rgba(255,122,0,.12);
  background: linear-gradient(180deg, color-mix(in srgb,var(--surface) 96%, #000), var(--surface));
}
.form-section-title {
  display:flex;
  align-items:center;
  gap:12px;
  padding: 2px 0 14px;
  margin: 4px 0 18px;
  border-bottom:1px solid var(--line);
}
.form-section-title:not(:first-child){ margin-top:30px; }
.form-section-title > span {
  width:38px;height:38px;display:grid;place-items:center;border-radius:12px;
  color:var(--accent);background:rgba(255,122,0,.09);border:1px solid rgba(255,122,0,.14);font-weight:850;font-size:.8rem;
}
.form-section-title > div { display:grid; }
.form-section-title small { color:var(--muted);font-size:.74rem; }
.tech-table-wrap { border-color: rgba(255,122,0,.10); background:var(--surface); }
.tech-table-wrap .table tbody tr:hover { background: rgba(255,122,0,.035); }
.role-chip {
  display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:.72rem;font-weight:800;
}
.btn-danger-soft { color:#ff8484; border-color:rgba(255,90,90,.20); background:rgba(255,70,70,.06); }
.btn-danger-soft:hover { border-color:rgba(255,90,90,.40); background:rgba(255,70,70,.10); }
.admin-head-actions { display:flex;align-items:center;gap:10px;flex-wrap:wrap; }

.detail-title-top { display:flex;align-items:center;justify-content:space-between;gap:16px; }
.listing-id { color:var(--muted);font-size:.8rem;font-weight:700; }
.detail-section-head { display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:16px; }
.detail-section-head h2 { margin:4px 0 0; }
.detail-updated { color:var(--muted);font-size:.75rem; }
.property-info-card,
.property-features-card { margin-top:16px; }
.property-info-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:16px;overflow:hidden; }
.property-info-row { display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:10px 14px;border-bottom:1px solid var(--line); }
.property-info-row:nth-child(odd) { border-right:1px solid var(--line); }
.property-info-row span { color:var(--muted);font-size:.8rem; }
.property-info-row strong { text-align:right;font-size:.84rem; }
.feature-columns { display:grid;gap:20px; }
.feature-group h3 { margin:0 0 10px;font-size:1rem; }
.feature-chip-list { display:flex;flex-wrap:wrap;gap:8px; }
.feature-chip { display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:.76rem; }
.location-card { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px; }
.location-card h2 { margin:4px 0; }
.mini-facts { display:grid;gap:10px; }
.mini-facts h3 { margin:0 0 4px; }
.mini-facts > div { display:flex;justify-content:space-between;gap:16px;padding-top:10px;border-top:1px solid var(--line); }
.mini-facts span { color:var(--muted);font-size:.78rem; }
.mini-facts strong { text-align:right;font-size:.82rem; }

@media (max-width: 1180px) {
  .footer-grid-advanced { grid-template-columns:1.4fr repeat(2,1fr); }
  .footer-grid-advanced > div:last-child { grid-column:2 / -1; }
  .admin-action-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-two-column { grid-template-columns:1fr; }
}
@media (max-width: 1080px) {
  .admin-panel-grid { grid-template-columns:1fr; }
  .tech-sidebar { position:static;display:flex;flex-wrap:wrap;gap:6px; }
  .sidebar-brand { width:100%; }
  .tech-sidebar a { margin:0; }
}
@media (max-width: 760px) {
  .footer-topline { align-items:flex-start;flex-direction:column; }
  .footer-grid-advanced { grid-template-columns:1fr; }
  .footer-grid-advanced > div:last-child { grid-column:auto; }
  .footer-brand-advanced { grid-template-columns:76px 1fr !important; }
  .footer-bottom-advanced { flex-direction:column;align-items:flex-start; }
  .footer-security { margin-left:0; }
  .admin-command-hero { padding:22px 18px;align-items:flex-start;flex-direction:column; }
  .admin-action-grid { grid-template-columns:1fr 1fr; }
  .property-info-grid { grid-template-columns:1fr; }
  .property-info-row:nth-child(odd) { border-right:0; }
  .detail-title-top,.detail-section-head,.location-card { align-items:flex-start;flex-direction:column; }
}
@media (max-width: 500px) {
  .admin-action-grid { grid-template-columns:1fr; }
}

/* =========================================================
   v18 - Modern Emlak Detay Sistemi
   ========================================================= */
.detail-page-v18 { padding-top: 22px; }
.detail-premium-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 30px;
  align-items: end;
  margin-bottom: 18px;
  padding: 26px 28px;
  border: 1px solid rgba(255,122,0,.14);
  border-radius: 24px;
  background:
    radial-gradient(circle at 100% 0, rgba(255,122,0,.10), transparent 34%),
    linear-gradient(135deg, color-mix(in srgb,var(--surface) 96%, #000), var(--surface));
  box-shadow: var(--shadow);
}
.detail-premium-copy { min-width: 0; }
.detail-head-badges { display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px; }
.detail-head-badges span {
  display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;
  border:1px solid var(--line);background:var(--surface-2);font-size:.67rem;font-weight:850;letter-spacing:.06em;
}
.detail-head-badges .detail-sale-badge { color:#fff;border-color:rgba(255,122,0,.45);background:linear-gradient(135deg,#ff6b00,#ff962f); }
.detail-premium-head h1 { margin:0;max-width:960px;font-size:clamp(2.2rem,4vw,4.2rem);line-height:.98;letter-spacing:-.055em; }
.detail-location-line { margin:12px 0 0;color:var(--muted);font-size:.95rem; }
.detail-head-price { min-width:260px;text-align:right;display:grid;gap:3px; }
.detail-head-price > span { color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800; }
.detail-head-price strong { color:var(--accent);font-size:clamp(1.9rem,3vw,3rem);letter-spacing:-.04em; }
.detail-head-price small { color:var(--muted);font-size:.72rem; }
.detail-grid-v18 { grid-template-columns:minmax(0,1fr) 350px;gap:20px; }
.listing-gallery-v18 { margin-bottom:14px; }
.gallery-main-v18 { border-color:rgba(255,122,0,.12);border-radius:24px;background:#050608; }
.gallery-tech-badge {
  position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;
  border-radius:999px;background:rgba(5,6,8,.72);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:.66rem;font-weight:850;letter-spacing:.08em;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.gallery-thumbs-v18 { grid-auto-columns:minmax(108px,140px); }
.gallery-thumbs-v18 .gallery-thumb { border-radius:12px;opacity:.72;transition:opacity .16s ease,border-color .16s ease,transform .16s ease; }
.gallery-thumbs-v18 .gallery-thumb:hover,.gallery-thumbs-v18 .gallery-thumb.is-active { opacity:1;transform:translateY(-1px); }
.detail-section-nav {
  position:sticky;top:86px;z-index:20;display:flex;gap:8px;overflow-x:auto;padding:9px;margin:16px 0;
  border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--bg) 88%, transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  scrollbar-width:none;
}
.detail-section-nav::-webkit-scrollbar { display:none; }
.detail-section-nav a { display:inline-flex;align-items:center;gap:7px;white-space:nowrap;min-height:38px;padding:7px 11px;border-radius:11px;color:var(--muted);font-size:.75rem;font-weight:780; }
.detail-section-nav a span { color:var(--accent);font-weight:900; }
.detail-section-nav a:hover { color:var(--text);background:var(--surface-2); }
.detail-kpi-grid { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:0 0 16px; }
.detail-kpi-grid > div { min-width:0;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow); }
.detail-kpi-grid span,.detail-kpi-grid strong { display:block; }
.detail-kpi-grid span { color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;font-weight:760; }
.detail-kpi-grid strong { margin-top:5px;font-size:.96rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.detail-category-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.detail-category-card {
  scroll-margin-top:150px;overflow:hidden;border:1px solid rgba(255,122,0,.10);border-radius:20px;background:var(--surface);box-shadow:var(--shadow);
}
.detail-category-head { display:flex;align-items:center;gap:12px;padding:16px 17px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(255,122,0,.035),transparent); }
.detail-category-icon { width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:13px;color:var(--accent);background:rgba(255,122,0,.08);border:1px solid rgba(255,122,0,.14);font-weight:900;font-size:1.05rem; }
.detail-category-head small { display:block;color:var(--muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.10em;font-weight:800; }
.detail-category-head h2 { margin:2px 0 0;font-size:1.05rem;letter-spacing:-.02em; }
.detail-category-rows { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }
.detail-category-rows > div { min-height:58px;padding:10px 13px;border-bottom:1px solid var(--line); }
.detail-category-rows > div:nth-child(odd) { border-right:1px solid var(--line); }
.detail-category-rows span,.detail-category-rows strong { display:block; }
.detail-category-rows span { color:var(--muted);font-size:.69rem; }
.detail-category-rows strong { margin-top:4px;font-size:.84rem;line-height:1.35;word-break:break-word; }

.detail-dual-stack {
  display:grid;
  gap:16px;
  margin-bottom:14px;
}
.detail-mega-card {
  scroll-margin-top:150px;
  overflow:hidden;
  border:1px solid rgba(255,122,0,.11);
  border-radius:22px;
  background:
    radial-gradient(circle at top right, rgba(255,122,0,.06), transparent 28%),
    linear-gradient(180deg, color-mix(in srgb,var(--surface) 98%, #000), var(--surface));
  box-shadow:var(--shadow);
}
.detail-mega-card-primary { border-color:rgba(255,122,0,.16); }
.detail-mega-card-secondary { border-color:rgba(90,156,255,.12); }
.detail-mega-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:20px 22px 16px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,122,0,.04), transparent);
}
.detail-mega-head h2 {
  margin:4px 0 0;
  font-size:1.35rem;
  letter-spacing:-.03em;
}
.detail-mega-head .meta {
  margin:7px 0 0;
  max-width:760px;
}
.detail-mega-chip {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(255,122,0,.18);
  background:rgba(255,122,0,.08);
  color:var(--accent);
  font-size:.74rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.detail-mega-chip.is-muted {
  color:#9eb1ca;
  background:rgba(90,156,255,.08);
  border-color:rgba(90,156,255,.16);
}
.detail-mega-section-list {
  display:grid;
  gap:14px;
  padding:0 16px 16px;
}
.detail-mega-subsection {
  overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.015), rgba(255,255,255,.005));
}
.detail-mega-subhead {
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 18px 14px;
  background:linear-gradient(180deg, rgba(255,122,0,.03), transparent);
}
.detail-mega-subhead h3 {
  margin:2px 0 0;
  font-size:1.02rem;
  letter-spacing:-.02em;
}
.detail-mega-subhead small {
  display:block;
  color:var(--muted);
  font-size:.64rem;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:800;
}
.detail-mega-rows {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  padding:14px;
}
.detail-mega-rows > div {
  min-height:76px;
  padding:14px 15px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:14px;
  background:linear-gradient(180deg, color-mix(in srgb,var(--surface-2) 92%, transparent), color-mix(in srgb,var(--surface) 98%, #000));
}
.detail-mega-rows strong {
  font-size:.88rem;
}

.tech-detail-section { scroll-margin-top:150px;margin-top:14px;border-color:rgba(255,122,0,.10); }
.tech-detail-section .detail-section-head p { margin:5px 0 0; }
.feature-columns-v18 { grid-template-columns:repeat(3,minmax(0,1fr));align-items:start; }
.feature-group-v18 { padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2); }
.feature-group-title { display:flex;align-items:center;gap:9px;margin-bottom:10px; }
.feature-group-title > span { width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:rgba(255,122,0,.08);color:var(--accent);font-weight:900; }
.feature-group-title h3 { margin:0; }
.feature-group-v18 .feature-chip { background:var(--surface); }
.detail-description-text { color:var(--text);font-size:.96rem;line-height:1.75; }
.location-card-v18 { scroll-margin-top:150px;border-color:rgba(255,122,0,.10); }
.detail-sidebar-v18 { gap:12px; }
.price-card-v18 { border-color:rgba(255,122,0,.18);background:linear-gradient(180deg,rgba(255,122,0,.045),var(--surface)); }
.price-card-v18 .detail-price { color:var(--accent);font-size:2.25rem;letter-spacing:-.045em; }
.contact-action-stack { display:grid;gap:8px;margin-top:16px; }
.verified-card-v18 { border-color:rgba(54,224,143,.16); }
.mini-facts-v18 > div { min-height:42px;align-items:center; }
.detail-security-card { display:grid;gap:5px;border-color:rgba(255,122,0,.12);background:linear-gradient(135deg,rgba(255,122,0,.06),var(--surface)); }
.detail-security-card > span { color:var(--accent);font-size:.64rem;letter-spacing:.12em;font-weight:850; }
.detail-security-card strong { font-size:.98rem; }
.detail-security-card small { color:var(--muted);line-height:1.45; }

/* v18 - panel işlem geri bildirimi */
.panel-command-busy { opacity:.78;pointer-events:none; }
.panel-command-spinner { width:16px;height:16px;display:inline-block;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:etrivio-spin .7s linear infinite;vertical-align:-3px;margin-right:7px; }
@keyframes etrivio-spin { to { transform:rotate(360deg); } }
.admin-request-status { position:fixed;right:18px;bottom:18px;z-index:140;display:none;align-items:center;gap:10px;max-width:min(420px,calc(100vw - 36px));padding:12px 15px;border:1px solid rgba(255,122,0,.24);border-radius:14px;background:rgba(9,11,15,.94);color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.28);font-size:.82rem;font-weight:700; }
.admin-request-status.is-visible { display:flex; }

@media (max-width:1180px) {
  .detail-kpi-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .feature-columns-v18 { grid-template-columns:1fr; }
  .detail-mega-rows { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tech-form-intro { grid-template-columns:1fr; }
  .form-grid-12 { grid-template-columns:repeat(6,minmax(0,1fr)); }
  .field-span-12 { grid-column:span 6; }
  .field-span-6 { grid-column:span 6; }
  .field-span-4 { grid-column:span 3; }
  .field-span-3 { grid-column:span 3; }
  .field-span-2 { grid-column:span 2; }
}
@media (max-width:1080px) {
  .detail-premium-head { grid-template-columns:1fr;align-items:start; }
  .detail-head-price { min-width:0;text-align:left; }
  .detail-grid-v18 { grid-template-columns:1fr; }
  .detail-sidebar-v18 { position:static;grid-template-columns:repeat(2,minmax(0,1fr)); }
  .price-card-v18 { grid-column:1 / -1; }
}
@media (max-width:760px) {
  .detail-premium-head { padding:20px 18px;border-radius:20px; }
  .detail-premium-head h1 { font-size:2.3rem; }
  .detail-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .detail-category-grid { grid-template-columns:1fr; }
  .detail-category-rows { grid-template-columns:1fr; }
  .detail-category-rows > div:nth-child(odd) { border-right:0; }
  .detail-sidebar-v18 { grid-template-columns:1fr; }
  .detail-section-nav { top:74px;margin-inline:-2px; }
  .gallery-main-v18 { border-radius:18px; }
  .detail-mega-head { flex-direction:column; align-items:flex-start; padding:18px 16px 14px; }
  .detail-mega-subhead { padding:14px 15px; }
  .detail-mega-rows { grid-template-columns:1fr; }
  .detail-mega-rows > div:nth-child(odd) { border-right:0; }
  .tech-form-elevated { padding:18px 16px; border-radius:22px; }
  .form-grid-12 { grid-template-columns:1fr; }
  .field-span-12, .field-span-6, .field-span-4, .field-span-3, .field-span-2 { grid-column:span 1; }
  .tech-form-actions { position:static; padding:0; border:0; background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none; }
}
.gallery-nav {
  position:absolute;top:50%;z-index:3;width:44px;height:44px;display:grid;place-items:center;transform:translateY(-50%);
  border-radius:50%;border:1px solid rgba(255,255,255,.20);background:rgba(5,6,8,.62);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.gallery-nav:hover { background:rgba(255,122,0,.78);border-color:rgba(255,176,102,.58);transform:translateY(-50%) scale(1.03); }
.gallery-nav-prev { left:14px; }
.gallery-nav-next { right:14px; }
@media (max-width:760px){ .gallery-nav{width:38px;height:38px;font-size:1.45rem}.gallery-nav-prev{left:9px}.gallery-nav-next{right:9px} }
.detail-head-badges span { text-transform:uppercase; }

/* =========================================================
   ETRIVIO v19 — Detail intelligence, admin table & audit lab
   ========================================================= */
.detail-intel-strip {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:1px;
  margin:-4px 0 18px;
  overflow:hidden;
  border:1px solid rgba(255,122,0,.12);
  border-radius:18px;
  background:var(--line);
  box-shadow:var(--shadow);
}
.detail-intel-strip > div {
  min-width:0;
  padding:14px 15px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 97%,#000),var(--surface));
}
.detail-intel-strip small,
.detail-intel-strip strong { display:block; }
.detail-intel-strip small { margin-top:7px;color:var(--muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800; }
.detail-intel-strip strong { margin-top:3px;font-size:.83rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.intel-dot { width:7px;height:7px;display:block;border-radius:50%;background:#78808d;box-shadow:0 0 0 5px rgba(120,128,141,.08); }
.intel-dot.is-live { background:#36e08f;box-shadow:0 0 0 5px rgba(54,224,143,.08),0 0 14px rgba(54,224,143,.38); }

.detail-category-card { position:relative; }
.detail-category-card::before { content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);opacity:.55; }
.detail-category-core::before { background:#ff7a00; }
.detail-category-structure::before { background:#4da7ff; }
.detail-category-comfort::before { background:#c77dff; }
.detail-category-legal::before { background:#f4c95d; }
.detail-category-land::before { background:#6ddc91; }
.detail-category-location::before { background:#54d7d0; }
.detail-category-card:hover { border-color:rgba(255,122,0,.24);transform:translateY(-1px);transition:transform .16s ease,border-color .16s ease; }
.detail-category-rows > div { background:linear-gradient(180deg,transparent,rgba(255,255,255,.008)); }
.detail-category-rows strong { color:color-mix(in srgb,var(--text) 96%,transparent); }

/* Admin ilan tablosu: her ilan tek satır, yatay kaydırma destekli */
.tech-table-wrap { overflow-x:auto;overscroll-behavior-inline:contain; }
.admin-listing-table {
  min-width:1420px;
  table-layout:fixed;
}
.admin-listing-table th,
.admin-listing-table td { white-space:nowrap; }
.admin-listing-table th:nth-child(1),.admin-listing-table td:nth-child(1){width:105px;}
.admin-listing-table th:nth-child(2),.admin-listing-table td:nth-child(2){width:390px;}
.admin-listing-table th:nth-child(3),.admin-listing-table td:nth-child(3){width:185px;}
.admin-listing-table th:nth-child(4),.admin-listing-table td:nth-child(4){width:110px;}
.admin-listing-table th:nth-child(5),.admin-listing-table td:nth-child(5){width:105px;}
.admin-listing-table th:nth-child(6),.admin-listing-table td:nth-child(6){width:90px;}
.admin-listing-table th:nth-child(7),.admin-listing-table td:nth-child(7){width:410px;}
.admin-listing-table td:nth-child(2) strong,
.admin-listing-table td:nth-child(3) {
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
}
.admin-listing-table td:nth-child(2) strong { max-width:360px; }
.admin-listing-table td:nth-child(3) { max-width:180px; }
.admin-listing-table .meta { display:inline-block;max-width:360px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom; }
.admin-listing-table .actions { flex-wrap:nowrap;align-items:center;gap:7px; }
.admin-listing-table .actions form { margin:0;display:inline-flex; }
.admin-listing-table .actions .btn { min-height:42px;padding:9px 13px;font-size:.82rem;white-space:nowrap; }
.admin-listing-table tr { height:92px; }
.admin-listing-table td { padding-top:12px;padding-bottom:12px; }
.admin-listing-table .btn-danger-soft { order:9; }

/* Panel komut geri bildirimi kalıcı kilit oluşturmasın */
.panel-command-busy { opacity:.88; }
.panel-command-busy:not(.audit-form) { pointer-events:auto; }
.panel-command-busy button[data-busy="1"] { cursor:wait; }

/* SEO / PageSpeed laboratuvarı */
.audit-form { margin-bottom:16px; }
.audit-result-card { margin-top:16px; }
.audit-result-head { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px; }
.audit-result-head h2 { margin:4px 0 0;font-size:1.25rem;word-break:break-word; }
.audit-mini-metrics { display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px; }
.audit-mini-metrics span { padding:7px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);color:var(--muted);font-size:.74rem;font-weight:750; }
.audit-check-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
.audit-check { display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;padding:11px;border-radius:13px;border:1px solid var(--line);background:var(--surface-2); }
.audit-check > span { width:28px;height:28px;display:grid;place-items:center;border-radius:9px;font-weight:900; }
.audit-check.is-ok > span { color:#8fe8b8;background:rgba(54,224,143,.10); }
.audit-check.is-fail > span { color:#ff9696;background:rgba(255,80,80,.10); }
.audit-check strong,.audit-check small { display:block; }
.audit-check small { margin-top:3px;color:var(--muted);font-size:.7rem;line-height:1.35;word-break:break-word; }
.audit-warning { margin:0 0 14px;padding:12px 14px;border-radius:13px;border:1px solid rgba(255,178,78,.22);background:rgba(255,145,35,.07);color:#ffc27d;font-size:.8rem;line-height:1.45; }
.audit-score-grid { margin-bottom:18px; }
.audit-metric-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
.audit-metric-list > div { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2); }
.audit-metric-list span { color:var(--muted);font-size:.76rem; }
.audit-metric-list strong { font-size:.82rem;text-align:right; }
.audit-error strong { color:inherit; }

@media (min-width:1500px) {
  .admin-panel-grid { grid-template-columns:270px minmax(0,1fr); }
  .panel-shell.container:has(.admin-panel-grid) { width:min(1720px,calc(100% - 34px)); }
}
@media (max-width:1080px) {
  .detail-intel-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .detail-intel-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .audit-check-grid,.audit-metric-list { grid-template-columns:1fr; }
  .audit-result-head { align-items:flex-start;flex-direction:column; }
}


/* v22 - Aynı kullanıcıya ait diğer ilanlar */
.related-listings-section {
  margin-top: 34px;
  padding: 24px;
  border: 1px solid rgba(255,122,0,.12);
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(255,122,0,.055), transparent 28%),
    linear-gradient(180deg, color-mix(in srgb,var(--surface) 98%, #000), var(--surface));
  box-shadow: var(--shadow);
}
.related-listings-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.related-listings-head h2 {
  margin:4px 0 5px;
  font-size:1.55rem;
  letter-spacing:-.035em;
}
.related-listings-head p {
  margin:0;
  color:var(--muted);
  font-size:.88rem;
}
.related-count {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid rgba(255,122,0,.16);
  background:rgba(255,122,0,.07);
  color:var(--accent);
  font-size:.76rem;
  font-weight:800;
  white-space:nowrap;
}
.related-listings-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.related-listings-grid .listing-card {
  min-width:0;
}
.related-listings-grid .listing-card:has(.badge-accent) {
  border-color:rgba(255,122,0,.30);
  box-shadow:0 18px 45px rgba(255,122,0,.08);
}
.related-listings-grid .card-title-row h3 {
  min-height:2.55em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
@media (max-width:1180px) {
  .related-listings-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .related-listings-section { padding:18px 14px; border-radius:20px; }
  .related-listings-head { align-items:flex-start; flex-direction:column; gap:10px; }
  .related-listings-grid { grid-template-columns:1fr; }
}



/* v25 homepage stability fix: filter panel must never control/crop hero height */
.hero-layout > .hero-column,
.hero-layout > .home-rail { min-width: 0; }
.quick-card-compact .quick-actions { margin-top: 2px; }
.quick-card-compact .quick-card-foot { margin-top: 12px; }
@media (min-width: 1081px) {
  .home-rail { padding-top: 0; }
  .quick-card-hero { max-height: none; }
}

/* =========================================================
   ETRIVIO v26 — Admin table containment + live image manager
   ========================================================= */
.admin-panel-grid > section {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.admin-panel-grid .tech-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  scrollbar-gutter: stable;
}
.admin-listing-table {
  width: 100%;
  min-width: 1080px;
  table-layout: fixed;
}
.admin-listing-table th:nth-child(1),.admin-listing-table td:nth-child(1){width:80px;}
.admin-listing-table th:nth-child(2),.admin-listing-table td:nth-child(2){width:320px;}
.admin-listing-table th:nth-child(3),.admin-listing-table td:nth-child(3){width:145px;}
.admin-listing-table th:nth-child(4),.admin-listing-table td:nth-child(4){width:90px;}
.admin-listing-table th:nth-child(5),.admin-listing-table td:nth-child(5){width:80px;}
.admin-listing-table th:nth-child(6),.admin-listing-table td:nth-child(6){width:70px;}
.admin-listing-table th:nth-child(7),.admin-listing-table td:nth-child(7){width:295px;}
.admin-listing-table td:nth-child(2) strong { max-width:300px; }
.admin-listing-table td:nth-child(3) { max-width:140px; }
.admin-listing-table .meta { max-width:300px; }
.admin-listing-table .actions { gap:6px; }
.admin-listing-table .actions .btn {
  min-height:38px;
  padding:8px 10px;
  font-size:.76rem;
}
.admin-listing-table tr { height:84px; }
.admin-list-thumb { width:64px; height:46px; border-radius:10px; object-fit:cover; }

.image-form-grid { align-items:start; }
.image-upload-field,
.image-gallery-field { min-width:0; }
.image-file-control {
  display:grid;
  gap:8px;
  padding:14px;
  border:1px dashed rgba(255,122,0,.28);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,122,0,.04),rgba(255,255,255,.01));
}
.image-file-control input[type="file"] {
  min-height:auto;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.image-file-control span {
  color:var(--muted);
  font-size:.76rem;
  line-height:1.45;
}
.image-main-preview {
  position:relative;
  min-height:220px;
  margin-top:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.008));
}
.image-main-preview img {
  width:100%;
  height:220px;
  display:block;
  object-fit:cover;
}
.image-main-preview > span {
  position:absolute;
  left:12px;
  bottom:12px;
  min-height:30px;
  display:inline-flex;
  align-items:center;
  padding:0 10px;
  border-radius:999px;
  background:rgba(5,6,8,.76);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  font-size:.72rem;
  font-weight:800;
  backdrop-filter:blur(8px);
}
.image-preview-empty {
  min-height:220px;
  display:grid;
  place-content:center;
  gap:5px;
  text-align:center;
  color:var(--muted);
}
.image-preview-empty strong { color:var(--text); }
.image-preview-empty small { font-size:.78rem; }
.image-manager-panel {
  margin-top:10px;
  padding:14px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:18px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,#000),var(--surface));
}
.image-manager-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.image-manager-head > div { display:grid; gap:4px; min-width:0; }
.image-manager-head strong { font-size:.92rem; }
.image-manager-head span:not(.image-count-badge) { color:var(--muted); font-size:.74rem; line-height:1.45; }
.image-count-badge {
  flex:0 0 auto;
  min-height:32px;
  display:inline-flex;
  align-items:center;
  padding:0 11px;
  border-radius:999px;
  border:1px solid rgba(255,122,0,.20);
  background:rgba(255,122,0,.08);
  color:var(--accent);
  font-size:.74rem;
  font-weight:850;
}
.image-manager-subtitle {
  margin:12px 0 9px;
  color:var(--muted);
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.image-manager-note {
  padding:16px;
  border:1px dashed rgba(255,255,255,.10);
  border-radius:14px;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.55;
  text-align:center;
}
.image-sort-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.image-sort-card {
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:15px;
  background:rgba(255,255,255,.018);
  cursor:grab;
  transition:transform .14s ease,border-color .14s ease,opacity .14s ease;
}
.image-sort-card:hover { border-color:rgba(255,122,0,.28); transform:translateY(-1px); }
.image-sort-card.is-dragging { opacity:.48; transform:scale(.98); }
.image-sort-card-new { border-color:rgba(90,156,255,.16); }
.image-sort-thumb {
  position:relative;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#050608;
}
.image-sort-thumb img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.image-cover-badge,
.image-sort-index {
  position:absolute;
  top:8px;
  min-height:26px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  backdrop-filter:blur(8px);
}
.image-cover-badge {
  left:8px;
  padding:0 9px;
  background:rgba(255,122,0,.86);
  color:#fff;
  font-size:.65rem;
  font-weight:850;
}
.image-sort-index {
  right:8px;
  width:26px;
  background:rgba(5,6,8,.72);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  font-size:.68rem;
  font-weight:850;
}
.image-sort-controls {
  min-height:42px;
  display:grid;
  grid-template-columns:30px minmax(0,1fr) 30px;
  align-items:center;
  gap:5px;
  padding:6px 7px;
}
.image-sort-controls > span {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:center;
  color:var(--muted);
  font-size:.67rem;
}
.image-order-btn {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:9px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  color:var(--text);
  cursor:pointer;
}
.image-order-btn:hover { border-color:rgba(255,122,0,.30); color:var(--accent); }
.image-manager-new-title { margin-top:16px; }

@media (max-width:1380px) {
  .admin-listing-table { min-width:1040px; }
  .image-sort-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1080px) {
  .admin-panel-grid > section { overflow:visible; }
  .image-sort-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .image-main-preview,
  .image-main-preview img,
  .image-preview-empty { min-height:190px; height:190px; }
  .image-sort-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .image-manager-head { flex-direction:column; }
}


/*
   ETRIVIO v27 — Form media expansion + mobile detail overflow fix
*/
.field-span-8 { grid-column: span 8; }
.image-form-grid { align-items:start; }
.image-upload-field { grid-column: span 5; }
.image-gallery-field { grid-column: span 7; }
.image-file-control { min-height: 92px; }
.image-file-control input[type="file"] { width:100%; }
.image-main-preview {
  min-height: 300px;
  border-color: rgba(255,122,0,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
}
.image-main-preview img,
.image-preview-empty {
  min-height: 300px;
  height: 300px;
}
.image-main-preview img {
  object-fit: contain;
  background:#050608;
  padding:10px;
}
.image-manager-panel { padding:18px; }
.image-sort-grid {
  grid-template-columns: repeat(auto-fill, minmax(128px, 1fr));
  gap:12px;
}
.image-sort-thumb {
  aspect-ratio: 16 / 10;
  background:#050608;
}
.image-sort-thumb img {
  object-fit: contain;
  background:#050608;
  padding:6px;
}
.image-sort-controls { min-height: 46px; }
.compact-description-textarea {
  min-height: 180px !important;
  max-height: 260px;
}
.description-field { gap:9px; }
.detail-page-v18,
.detail-page-v18 > *,
.detail-page-v18 .detail-grid-v18,
.detail-page-v18 .detail-grid-v18 > div,
.detail-page-v18 .detail-sidebar-v18,
.detail-page-v18 .detail-dual-stack,
.detail-page-v18 .detail-mega-card,
.detail-page-v18 .related-listings-section,
.detail-page-v18 .listing-gallery-v18,
.detail-page-v18 .gallery-main-v18,
.detail-page-v18 .detail-section-nav,
.detail-page-v18 .detail-intel-strip,
.detail-page-v18 .detail-kpi-grid,
.detail-page-v18 .breadcrumbs {
  min-width:0;
  max-width:100%;
}
.detail-page-v18 .detail-section-nav { overflow-x:auto; overscroll-behavior-inline:contain; }

@media (max-width:1180px) {
  .field-span-8 { grid-column: span 6; }
  .image-upload-field,
  .image-gallery-field { grid-column: span 6; }
}

@media (max-width:760px) {
  body { overflow-x:hidden; }
  .container.detail-hero.detail-page-v18 { width:min(var(--container), calc(100% - 24px)); }
  .detail-page-v18,
  .detail-grid-v18,
  .detail-grid-v18 > div,
  .detail-sidebar-v18 { overflow-x:clip; }
  .field-span-8 { grid-column: span 1; }
  .image-upload-field,
  .image-gallery-field { grid-column: span 1; }
  .image-main-preview,
  .image-main-preview img,
  .image-preview-empty {
    min-height: 220px;
    height: 220px;
  }
  .image-manager-panel { padding:14px; }
  .image-sort-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .compact-description-textarea {
    min-height: 140px !important;
    max-height: 220px;
  }
  .detail-section-nav { padding:8px; gap:6px; }
  .detail-section-nav a { min-height:34px; padding:7px 10px; font-size:.72rem; }
  .detail-premium-head,
  .detail-intel-strip,
  .detail-mega-card,
  .description-card,
  .related-listings-section { max-width:100%; }
  .detail-mega-section-list { padding:0 12px 12px; }
  .detail-mega-rows,
  .detail-category-rows { grid-template-columns:1fr; }
  .detail-mega-rows > div,
  .detail-category-rows > div { min-width:0; }
  .detail-head-badges,
  .breadcrumbs { flex-wrap:wrap; row-gap:4px; }
  .detail-head-price strong { word-break:break-word; }
}


/* v28 — compact single-line footer topline */
.footer-topline {
  align-items: center;
  gap: 18px;
  padding-bottom: 18px;
  margin-bottom: 20px;
}
.footer-topline-copy {
  min-width: 0;
  flex: 1 1 auto;
}
.footer-topline-title,
.footer-topline h2 {
  margin: 0;
  max-width: none;
  font-size: clamp(1.45rem, 2.45vw, 2.35rem);
  line-height: 1.08;
  letter-spacing: -.045em;
  white-space: nowrap;
}
.footer-topline .overline { display: none !important; }
.footer-topline .btn {
  flex: 0 0 auto;
  min-height: 56px;
  padding-inline: 24px;
}
@media (max-width: 1100px) {
  .footer-topline-title,
  .footer-topline h2 { white-space: normal; }
}
@media (max-width: 760px) {
  .footer-topline {
    padding-bottom: 16px;
    margin-bottom: 18px;
  }
  .footer-topline-copy,
  .footer-topline .btn { width: 100%; }
}


/* v29 — light theme home/hero parity fix */
:root[data-theme="light"] .hero-card {
  background: linear-gradient(180deg, #f8fafc, #eef2f7);
  border-color: rgba(15, 23, 42, .08);
  box-shadow: 0 22px 60px rgba(15, 23, 42, .10);
}
:root[data-theme="light"] .hero-copy-card {
  background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(248,250,252,.68));
  border-color: rgba(255,255,255,.65);
  box-shadow: 0 18px 46px rgba(15, 23, 42, .10);
}
:root[data-theme="light"] .hero-kicker {
  color: #b45309;
}
:root[data-theme="light"] .status-dot {
  box-shadow: 0 0 0 7px rgba(255, 122, 0, .14);
}
:root[data-theme="light"] .hero-content,
:root[data-theme="light"] .hero-content h1,
:root[data-theme="light"] .hero-content > p {
  color: #101828;
}
:root[data-theme="light"] .hero-content > p {
  color: #344054;
}
:root[data-theme="light"] .hero-copy-meta span {
  border-color: rgba(15,23,42,.10);
  background: rgba(255,255,255,.55);
  color: #344054;
}
:root[data-theme="light"] .hero-search {
  background: rgba(255,255,255,.92);
  border-color: rgba(15,23,42,.08);
  box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
}
:root[data-theme="light"] .search-field {
  border-right-color: rgba(15,23,42,.08);
}
:root[data-theme="light"] .search-field span {
  color: #667085;
}
:root[data-theme="light"] .search-field select {
  color: #101828;
  background-image: linear-gradient(45deg, transparent 50%, #667085 50%), linear-gradient(135deg, #667085 50%, transparent 50%);
}
:root[data-theme="light"] .shortcut-card {
  border-color: rgba(15,23,42,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.80), rgba(247,249,252,.74));
  color: #101828;
  box-shadow: 0 14px 28px rgba(15, 23, 42, .06);
}
:root[data-theme="light"] .shortcut-card:hover {
  border-color: rgba(255,122,0,.36);
  background: linear-gradient(180deg, rgba(255,250,244,.95), rgba(255,255,255,.88));
}
:root[data-theme="light"] .shortcut-icon {
  background: linear-gradient(180deg, rgba(255,122,0,.14), rgba(255,122,0,.08));
  border-color: rgba(255,122,0,.14);
}
:root[data-theme="light"] .quick-card-hero {
  background:
    radial-gradient(circle at top right, rgba(255,122,0,.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,248,251,.96));
}
:root[data-theme="light"] .quick-stat {
  border-color: rgba(15,23,42,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.90), rgba(248,250,252,.84));
}
:root[data-theme="light"] .quick-filter-rich select,
:root[data-theme="light"] .quick-filter-rich input {
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  border-color: rgba(15,23,42,.10);
  color: #101828;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
:root[data-theme="light"] .quick-filter-rich input::placeholder {
  color: #98a2b3;
}
:root[data-theme="light"] .btn-muted {
  background: rgba(15,23,42,.03);
  border-color: rgba(15,23,42,.08);
  color: #344054;
}
:root[data-theme="light"] .btn-muted:hover {
  background: rgba(15,23,42,.06);
}
:root[data-theme="light"] .quick-insights span {
  border-color: rgba(15,23,42,.08);
  background: rgba(255,255,255,.74);
  color: #475467;
}
:root[data-theme="light"] .place-thumb {
  border-color: rgba(15,23,42,.08);
  background: #eef2f6;
}
:root[data-theme="light"] .place-thumb img {
  background: #eef2f6;
}
:root[data-theme="light"] .hero-nav {
  border-color: rgba(15,23,42,.10);
  background: rgba(255,255,255,.72);
  color: #101828;
  box-shadow: 0 10px 25px rgba(15, 23, 42, .14);
}
:root[data-theme="light"] .hero-nav:hover {
  color: #fff;
}
:root[data-theme="light"] .hero-dot {
  background: rgba(15,23,42,.24);
  box-shadow: 0 1px 4px rgba(15, 23, 42, .16);
}
:root[data-theme="light"] .rail-title a:hover,
:root[data-theme="light"] .trust-link:hover {
  color: var(--text);
}


/* ============================================================
   ETRIVIO v31 — Mobile navigation & footer refinement
   ============================================================ */
.mobile-menu-head,
.mobile-menu-tools,
.mobile-menu-close { display:none; }

@media (max-width:1080px) {
  .site-header { overflow:visible; }
  .nav { z-index:2; }
  .nav[data-menu-open="1"] .nav-links {
    display:grid;
    position:absolute;
    top:calc(100% + 10px);
    left:0;
    right:0;
    padding:16px;
    gap:14px;
    border:1px solid var(--line);
    border-radius:22px;
    background:color-mix(in srgb,var(--surface) 96%, transparent);
    box-shadow:0 24px 60px rgba(0,0,0,.22);
    backdrop-filter:blur(22px) saturate(140%);
    -webkit-backdrop-filter:blur(22px) saturate(140%);
  }
  .nav[data-menu-open="1"] .nav-links::before {
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    pointer-events:none;
    background:radial-gradient(circle at 86% 0%, rgba(255,122,0,.11), transparent 32%);
  }
  .mobile-menu-head {
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:2px 2px 12px;
    border-bottom:1px solid var(--line);
  }
  .mobile-menu-head > div { display:grid; gap:3px; }
  .mobile-menu-head strong { font-size:1.08rem; }
  .mobile-menu-close {
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border:1px solid var(--line);
    border-radius:12px;
    background:var(--surface-2);
    color:var(--text);
    font-size:1.45rem;
    cursor:pointer;
  }
  .mobile-nav-grid {
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .nav[data-menu-open="1"] .nav-links .mobile-nav-grid > a {
    min-height:48px;
    display:flex;
    align-items:center;
    padding:0 14px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--surface-2);
    color:var(--text);
    font-size:.9rem;
    font-weight:720;
  }
  .nav[data-menu-open="1"] .nav-links .mobile-nav-grid > a:hover {
    border-color:rgba(255,122,0,.34);
    background:color-mix(in srgb,var(--surface-2) 90%,var(--accent));
  }
  .nav[data-menu-open="1"] .nav-links .mobile-nav-grid > a::after { display:none; }
  .mobile-menu-tools {
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding-top:2px;
  }
  .mobile-theme-control {
    grid-column:1 / -1;
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--surface-2);
    color:var(--text);
    font-weight:720;
    cursor:pointer;
  }
  .mobile-menu-btn {
    position:relative;
    border:1px solid var(--line);
    border-radius:13px;
    background:var(--surface);
    transition:background .16s ease,border-color .16s ease;
  }
  .mobile-menu-btn span { transition:transform .18s ease,opacity .18s ease; }
  .nav[data-menu-open="1"] .mobile-menu-btn span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
  .nav[data-menu-open="1"] .mobile-menu-btn span:nth-child(2) { opacity:0; }
  .nav[data-menu-open="1"] .mobile-menu-btn span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
}

@media (max-width:760px) {
  .site-header .nav { min-height:66px; }
  .brand img { width:142px; height:42px; }
  .mobile-menu-btn { width:40px; height:40px; padding:9px; }
  .nav-actions { display:none; }
  .nav[data-menu-open="1"] .nav-links {
    top:calc(100% + 8px);
    left:0;
    right:0;
    padding:14px;
    border-radius:20px;
  }
  .mobile-nav-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  .nav[data-menu-open="1"] .nav-links .mobile-nav-grid > a {
    min-height:46px;
    padding:0 12px;
    font-size:.84rem;
  }
  .mobile-menu-tools .btn { min-height:44px; padding:10px 12px; font-size:.82rem; }

  .footer-advanced {
    margin-top:28px;
    padding:28px 0 16px;
  }
  .footer-topline {
    align-items:center;
    text-align:center;
    gap:14px;
  }
  .footer-topline-title,
  .footer-topline h2 {
    font-size:1.45rem;
    line-height:1.12;
    text-align:center;
  }
  .footer-topline .btn {
    width:min(100%,340px);
    min-height:50px;
    margin-inline:auto;
  }
  .footer-grid-advanced {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .footer-grid-advanced > div {
    padding:16px;
    border:1px solid var(--line);
    border-radius:18px;
    background:color-mix(in srgb,var(--surface) 96%,transparent);
    text-align:center;
    align-content:start;
    justify-items:center;
  }
  .footer-grid-advanced > div:first-child,
  .footer-grid-advanced > div:last-child {
    grid-column:1 / -1;
  }
  .footer-brand-advanced {
    display:flex !important;
    flex-direction:column;
    align-items:center !important;
    justify-content:center;
    text-align:center;
    gap:10px;
  }
  .footer-logo-wrap {
    width:88px;
    height:82px;
    margin-inline:auto;
  }
  .footer-logo-wrap img {
    width:84px !important;
    height:80px !important;
  }
  .footer-brand-advanced > div {
    width:100%;
    display:grid;
    justify-items:center;
  }
  .footer-brand-advanced p {
    max-width:520px;
    text-align:center;
    line-height:1.6;
  }
  .footer-socials {
    width:100%;
    justify-content:center;
    align-items:center;
    gap:12px;
    margin-top:14px;
  }
  .social-btn {
    width:48px;
    height:48px;
    border-radius:15px;
  }
  .social-btn svg { width:22px; height:22px; }
  .footer-grid-advanced > div > strong {
    width:100%;
    margin-bottom:8px;
    color:var(--text);
    text-align:center;
  }
  .footer-grid-advanced > div > a,
  .footer-grid-advanced > div > span {
    width:100%;
    padding:5px 0;
    text-align:center;
  }
  .footer-bottom-advanced {
    align-items:center;
    justify-content:center;
    gap:8px;
    text-align:center;
  }
  .footer-bottom-advanced > span { width:100%; text-align:center; }
  .footer-security { margin-left:0; color:var(--text); font-weight:700; }
}

@media (max-width:480px) {
  .mobile-nav-grid { grid-template-columns:1fr; }
  .mobile-menu-tools { grid-template-columns:1fr; }
  .mobile-theme-control { grid-column:auto; }
  .footer-grid-advanced { grid-template-columns:1fr; }
  .footer-grid-advanced > div,
  .footer-grid-advanced > div:first-child,
  .footer-grid-advanced > div:last-child { grid-column:auto; }
}

/* v32 — hero banner alignment and visual clarity fix */
.hero-card {
  min-height: clamp(540px, 42vw, 680px);
}
.hero-content {
  max-width: min(1160px, calc(100% - 132px));
  padding-left: 66px;
  padding-right: 66px;
}
.hero-copy-card {
  width: min(100%, 640px);
}
.hero-slider {
  background: #040507;
}
.hero-slide {
  object-fit: cover;
  object-position: center center;
  image-rendering: auto;
  filter: saturate(1.06) contrast(1.03) brightness(1.04);
  transform: scale(1.015);
  transform-origin: center center;
}
.hero-nav {
  top: 50%;
  width: 52px;
  height: 52px;
  background: rgba(6, 8, 12, .64);
}
.hero-nav-prev { left: 18px; }
.hero-nav-next { right: 18px; }
.hero-nav,
.hero-nav:hover {
  transform: translateY(-50%);
}
.hero-nav:hover {
  transform: translateY(-50%) scale(1.04);
}

@media (max-width: 1180px) {
  .hero-content {
    max-width: min(100%, calc(100% - 110px));
    padding-left: 56px;
    padding-right: 56px;
  }
  .hero-copy-card {
    width: min(100%, 600px);
  }
  .hero-nav {
    width: 48px;
    height: 48px;
    font-size: 1.9rem;
  }
}

@media (max-width: 760px) {
  .hero-content {
    padding-left: 16px;
    padding-right: 16px;
    max-width: 100%;
  }
  .hero-copy-card {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
  .hero-slide {
    transform: scale(1.02);
    object-position: center 46%;
  }
  .hero-nav {
    top: 50%;
    width: 40px;
    height: 40px;
    font-size: 1.75rem;
  }
  .hero-nav-prev { left: 8px; }
  .hero-nav-next { right: 8px; }
}

:root[data-theme="light"] .hero-nav {
  background: rgba(255,255,255,.78);
}

/* v33 — premium hero arrows + aligned sidebar height + media fit improvements */
:root {
  --hero-equal-height: clamp(560px, 42vw, 690px);
}

@media (min-width: 1081px) {
  .hero-layout {
    align-items: stretch;
  }
  .hero-column,
  .home-rail {
    min-height: var(--hero-equal-height);
  }
  .home-rail {
    display: flex;
  }
  .home-rail > .quick-card-hero {
    flex: 1 1 auto;
    min-height: var(--hero-equal-height);
    height: 100%;
  }
}

.hero-card,
.hero-content {
  min-height: var(--hero-equal-height);
}

.hero-content {
  max-width: min(100%, calc(100% - 156px));
  padding-left: 78px;
  padding-right: 78px;
}

.hero-copy-card {
  width: min(100%, 620px);
  margin-left: 18px;
}

.hero-search-desktop,
.type-shortcuts-desktop {
  width: min(100%, 1048px);
}

.hero-slide {
  object-fit: cover !important;
  object-position: center center;
  filter: saturate(1.08) contrast(1.04) brightness(1.05);
  transform: scale(1.03);
}
.hero-slide:nth-child(1) { object-position: center 52%; }
.hero-slide:nth-child(2) { object-position: center 50%; }
.hero-slide:nth-child(3) { object-position: center 54%; }

.hero-nav {
  top: 50%;
  width: 58px;
  height: 58px;
  border: 1px solid rgba(255,255,255,.24);
  background: linear-gradient(180deg, rgba(15, 18, 24, .82), rgba(8, 10, 14, .66));
  box-shadow:
    0 18px 34px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 -1px 0 rgba(0,0,0,.22);
  backdrop-filter: blur(18px) saturate(1.15);
  -webkit-backdrop-filter: blur(18px) saturate(1.15);
  font-size: 0;
  transform: translateY(-50%);
}
.hero-nav::before {
  display: block;
  font-size: 2rem;
  line-height: 1;
  font-weight: 500;
  color: rgba(255,255,255,.96);
  text-shadow: 0 2px 8px rgba(0,0,0,.28);
}
.hero-nav::after {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: inherit;
  border: 1px solid rgba(255,255,255,.08);
  pointer-events: none;
}
.hero-nav-prev { left: 8px; }
.hero-nav-prev::before { content: '‹'; }
.hero-nav-next { right: 14px; }
.hero-nav-next::before { content: '›'; }
.hero-nav:hover {
  background: linear-gradient(180deg, rgba(255, 122, 0, .92), rgba(239, 108, 0, .88));
  border-color: rgba(255, 167, 97, .96);
  transform: translateY(-50%) scale(1.04);
}
.hero-nav:hover::after {
  border-color: rgba(255,255,255,.18);
}

.place-thumb {
  width: 112px;
  height: 72px;
  border-radius: 18px;
  background: #050608;
}
.place-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: center center;
  transform: scale(1.02);
}

@media (max-width: 1380px) {
  .hero-content {
    max-width: min(100%, calc(100% - 138px));
    padding-left: 68px;
    padding-right: 68px;
  }
  .hero-copy-card {
    width: min(100%, 590px);
    margin-left: 14px;
  }
}

@media (max-width: 1180px) {
  .hero-content {
    max-width: min(100%, calc(100% - 124px));
    padding-left: 62px;
    padding-right: 62px;
  }
  .hero-copy-card {
    margin-left: 10px;
  }
  .hero-nav {
    width: 52px;
    height: 52px;
  }
  .hero-nav::before {
    font-size: 1.82rem;
  }
}

@media (max-width: 1080px) {
  .hero-column,
  .home-rail,
  .home-rail > .quick-card-hero {
    min-height: 0;
    height: auto;
  }
  .hero-content {
    max-width: 100%;
    padding-left: 22px;
    padding-right: 22px;
  }
  .hero-copy-card {
    width: min(100%, 640px);
    margin-left: 0;
  }
  .hero-nav-prev { left: 10px; }
  .hero-nav-next { right: 10px; }
}

@media (max-width: 760px) {
  :root {
    --hero-equal-height: 500px;
  }
  .hero-card,
  .hero-content {
    min-height: var(--hero-equal-height);
  }
  .hero-content {
    padding: 16px 14px 18px;
    max-width: 100%;
  }
  .hero-copy-card {
    width: calc(100% - 22px);
    margin: 0 auto;
    padding: 20px 18px 16px;
    border-radius: 24px;
  }
  .hero-content h1 {
    font-size: clamp(2.7rem, 12vw, 4rem);
    line-height: .92;
  }
  .hero-content > p {
    font-size: .98rem;
  }
  .hero-slide {
    transform: scale(1.06);
    object-position: center 50%;
  }
  .hero-nav {
    width: 42px;
    height: 42px;
    top: 42%;
  }
  .hero-nav::before {
    font-size: 1.45rem;
  }
  .hero-nav-prev { left: 6px; }
  .hero-nav-next { right: 6px; }
  .place-thumb {
    width: 96px;
    height: 64px;
    border-radius: 16px;
  }
  .place-thumb img {
    transform: scale(1.03);
  }
}

@media (max-width: 500px) {
  :root {
    --hero-equal-height: 470px;
  }
  .hero-card,
  .hero-content {
    min-height: var(--hero-equal-height);
  }
  .hero-copy-card {
    width: calc(100% - 14px);
    padding: 18px 16px 14px;
  }
  .hero-content h1 {
    font-size: 2.85rem;
  }
  .hero-content > p {
    font-size: .94rem;
  }
  .hero-nav {
    width: 38px;
    height: 38px;
    top: 41%;
  }
  .hero-nav::before {
    font-size: 1.3rem;
  }
  .place-thumb {
    width: 92px;
    height: 60px;
  }
}

:root[data-theme="light"] .hero-nav {
  border-color: rgba(24, 34, 56, .14);
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(244,247,251,.86));
  box-shadow:
    0 14px 28px rgba(15, 23, 42, .12),
    inset 0 1px 0 rgba(255,255,255,.85);
}
:root[data-theme="light"] .hero-nav::before {
  color: #172033;
  text-shadow: none;
}
:root[data-theme="light"] .hero-nav::after {
  border-color: rgba(17, 24, 39, .06);
}

/* ============================================================
   ETRIVIO v34 — premium search, portfolio pages, audit lab,
   timed access UI and public content protection
   ============================================================ */

/* Public copy deterrence. Form controls remain selectable/editable. */
body[data-copy-protected="1"],
body[data-copy-protected="1"] *:not(input):not(textarea):not(select):not(option):not([contenteditable="true"]):not([data-copy-allowed]) {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
body[data-copy-protected="1"] img {
  -webkit-user-drag: none;
  user-drag: none;
}
@media print {
  body[data-copy-protected="1"] main,
  body[data-copy-protected="1"] footer { visibility: hidden !important; }
}

/* Premium hero search */
.hero-search-desktop {
  gap: 8px;
  padding: 10px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(8,10,14,.92), rgba(8,10,14,.82));
  border-color: rgba(255,255,255,.14);
  box-shadow: 0 24px 55px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: blur(18px) saturate(130%);
  -webkit-backdrop-filter: blur(18px) saturate(130%);
}
.hero-search-desktop .search-field {
  min-height: 74px;
  padding: 9px 14px;
  border-right: 0;
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 15px;
  background: rgba(255,255,255,.025);
  transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.hero-search-desktop .search-field:hover,
.hero-search-desktop .search-field:focus-within {
  border-color: rgba(255,122,0,.30);
  background: rgba(255,122,0,.045);
}
.hero-search-desktop .search-field span {
  color: rgba(255,255,255,.56);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: .64rem;
}
.hero-search-desktop .hero-search-btn {
  min-height: 74px;
  border-radius: 16px;
  box-shadow: 0 12px 26px rgba(255,122,0,.22);
}
.hero-search-desktop .hero-search-btn span {
  margin-right: 5px;
}
:root[data-theme="light"] .hero-search-desktop {
  background: rgba(255,255,255,.90);
  border-color: rgba(15,23,42,.08);
  box-shadow: 0 22px 50px rgba(15,23,42,.11), inset 0 1px 0 rgba(255,255,255,.9);
}
:root[data-theme="light"] .hero-search-desktop .search-field {
  background: rgba(248,250,252,.86);
  border-color: rgba(15,23,42,.07);
}
:root[data-theme="light"] .hero-search-desktop .search-field span { color:#667085; }

/* Hero image crop tuning: desktop preserves architecture and horizon, mobile prioritizes subject. */
.hero-slide:nth-child(1) { object-position: 52% 52%; }
.hero-slide:nth-child(2) { object-position: 50% 50%; }
.hero-slide:nth-child(3) { object-position: 48% 54%; }
@media (max-width:760px) {
  .hero-slide:nth-child(1) { object-position: 58% 50%; }
  .hero-slide:nth-child(2) { object-position: 54% 49%; }
  .hero-slide:nth-child(3) { object-position: 56% 51%; }
  .hero-search-mobile {
    padding: 9px;
    gap: 7px;
    border-radius: 22px;
    background: rgba(8,10,14,.90);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }
  .hero-search-mobile .search-field {
    min-height: 62px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 14px;
    padding: 8px 13px;
  }
  :root[data-theme="light"] .hero-search-mobile {
    background: rgba(255,255,255,.92);
  }
  :root[data-theme="light"] .hero-search-mobile .search-field {
    border-color: rgba(15,23,42,.08);
  }
}

/* Bigger / more modern Popular Regions cards */
.popular-card {
  padding: 22px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 90% 0%, rgba(255,122,0,.055), transparent 30%),
    var(--surface);
}
.popular-list { gap: 2px; }
.popular-list a {
  grid-template-columns: 128px minmax(0,1fr) auto;
  gap: 16px;
  min-height: 112px;
  padding: 14px 0;
  transition: transform .18s ease, background .18s ease;
}
.popular-list a:hover {
  transform: translateX(2px);
}
.place-thumb {
  width: 128px;
  height: 82px;
  border-radius: 18px;
  border-color: rgba(255,122,0,.13);
  box-shadow: 0 10px 25px rgba(0,0,0,.15);
}
.place-thumb img {
  object-fit: cover !important;
  object-position: center center;
  transform: none !important;
}
.place-copy strong { font-size: .96rem; }
.place-copy small { font-size: .75rem; }
.place-count {
  padding: 6px 9px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--surface-2);
  font-weight: 740;
}
@media (max-width:760px) {
  .popular-card { padding:18px 16px; }
  .popular-list a {
    grid-template-columns: 104px minmax(0,1fr) auto;
    min-height: 94px;
    gap: 12px;
    padding: 11px 0;
  }
  .place-thumb { width:104px; height:70px; border-radius:16px; }
  .place-count { font-size:.67rem; padding:5px 7px; }
}
@media (max-width:430px) {
  .popular-list a { grid-template-columns: 92px minmax(0,1fr); }
  .place-thumb { width:92px; height:64px; }
  .place-count { grid-column:2; justify-self:start; margin-top:-4px; }
}

/* User public portfolio page */
.portfolio-public-page { padding-top:28px; padding-bottom:44px; }
.portfolio-public-hero {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  padding:34px;
  border:1px solid rgba(255,122,0,.15);
  border-radius:30px;
  background:
    radial-gradient(circle at 82% 5%, rgba(255,122,0,.13), transparent 32%),
    linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--surface) 92%,#000));
  box-shadow:var(--shadow);
}
.portfolio-public-hero h1 { margin:7px 0 10px; font-size:clamp(2rem,4vw,4rem); letter-spacing:-.055em; line-height:.98; }
.portfolio-public-hero p { max-width:760px; color:var(--muted); margin:0; }
.portfolio-public-meta { display:flex; flex-wrap:wrap; gap:9px; margin-top:18px; }
.portfolio-public-meta span { min-height:36px; padding:0 13px; display:inline-flex; align-items:center; gap:6px; border-radius:999px; border:1px solid var(--line); background:var(--surface-2); font-size:.76rem; }
.portfolio-public-meta strong { color:var(--accent); }
.portfolio-public-badge { min-width:220px; padding:16px 18px; border-radius:18px; border:1px solid rgba(255,122,0,.18); background:rgba(255,122,0,.06); display:grid; gap:4px; }
.portfolio-public-badge span { color:var(--muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.1em; font-weight:800; }
.portfolio-public-badge strong { color:var(--accent); font-size:.95rem; overflow-wrap:anywhere; }
@media (max-width:760px) {
  .portfolio-public-page { padding-top:16px; }
  .portfolio-public-hero { padding:22px 18px; border-radius:24px; align-items:flex-start; flex-direction:column; }
  .portfolio-public-badge { width:100%; min-width:0; }
}

/* User URL & timed access admin UI */
.slug-input-wrap {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  min-height:52px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface-2);
  overflow:hidden;
}
.slug-input-wrap > span { padding:0 0 0 14px; color:var(--muted); font-size:.8rem; white-space:nowrap; }
.slug-input-wrap input { border:0 !important; box-shadow:none !important; background:transparent !important; }
.slug-input-wrap.compact > span { padding-left:12px; }
.access-rule-note { display:flex; gap:10px; padding:14px; border:1px solid rgba(255,122,0,.13); border-radius:14px; background:rgba(255,122,0,.045); color:var(--muted); font-size:.8rem; }
.access-rule-note strong { color:var(--text); white-space:nowrap; }
.portfolio-url-chip { display:inline-flex; min-height:30px; align-items:center; padding:4px 9px; border-radius:999px; border:1px solid rgba(255,122,0,.18); background:rgba(255,122,0,.06); color:var(--accent); font-size:.72rem; font-weight:800; }
.access-window { display:grid; gap:3px; min-width:180px; color:var(--muted); font-size:.72rem; }
.user-access-table td { vertical-align:middle; }

/* Modern separated SEO / PageSpeed lab */
.audit-command-hero { margin-bottom:16px; }
.audit-hero-badge { min-width:120px; padding:12px 15px; border:1px solid rgba(255,122,0,.16); border-radius:16px; background:rgba(255,122,0,.055); display:grid; gap:2px; text-align:right; }
.audit-hero-badge strong { color:var(--accent); font-size:1rem; }
.audit-hero-badge span { color:var(--muted); font-size:.7rem; }
.audit-form-modern { margin-bottom:16px; }
.audit-dashboard { display:grid; grid-template-columns:240px minmax(0,1fr); gap:14px; margin-bottom:14px; }
.audit-score-hero { min-height:190px; border:1px solid rgba(255,122,0,.15); border-radius:22px; background:linear-gradient(160deg,rgba(255,122,0,.10),var(--surface)); padding:22px; display:flex; flex-direction:column; justify-content:space-between; box-shadow:var(--shadow); }
.audit-score-hero strong { display:inline-block; font-size:4rem; line-height:.9; letter-spacing:-.08em; }
.audit-score-hero small { color:var(--muted); }
.audit-score-hero p { margin:0; color:var(--muted); font-size:.76rem; }
.audit-group-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.audit-group-card { padding:15px; border:1px solid var(--line); border-radius:16px; background:var(--surface); display:grid; gap:8px; align-content:center; }
.audit-group-card span { color:var(--muted); font-size:.75rem; }
.audit-group-card strong { font-size:1.15rem; }
.audit-progress { height:5px; border-radius:999px; background:var(--surface-3); overflow:hidden; }
.audit-progress i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--accent),#ffb25f); }
.seo-serp-preview { margin-top:16px; padding:16px; border:1px solid var(--line); border-radius:16px; background:var(--surface-2); display:grid; gap:5px; }
.seo-serp-preview span { color:var(--success); font-size:.74rem; }
.seo-serp-preview strong { font-size:1.08rem; color:#5d82d8; }
:root[data-theme="dark"] .seo-serp-preview strong { color:#8ab4f8; }
.seo-serp-preview p { margin:0; color:var(--muted); font-size:.82rem; }
.seo-check-groups { display:grid; gap:16px; }
.seo-check-group h3 { margin:0 0 9px; font-size:.9rem; }
.audit-recommendation-card { margin-top:14px; }
.audit-recommendations { margin:0; padding-left:20px; display:grid; gap:9px; color:var(--muted); }
.audit-recommendations li::marker { color:var(--accent); font-weight:800; }
.score-box { position:relative; }
.score-box small { color:var(--muted); font-size:.65rem; }
.score-good strong { color:#22c55e; }
.score-needs strong { color:#f59e0b; }
.score-poor strong { color:#ef4444; }
.metric-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.metric-card { min-height:96px; padding:14px; border:1px solid var(--line); border-radius:16px; background:var(--surface-2); display:grid; align-content:center; gap:7px; }
.metric-card span { color:var(--muted); font-size:.75rem; }
.metric-card strong { font-size:1.12rem; }
.metric-good { border-color:rgba(34,197,94,.18); }
.metric-needs { border-color:rgba(245,158,11,.20); }
.metric-poor { border-color:rgba(239,68,68,.20); }
.opportunity-list { display:grid; gap:8px; }
.opportunity-list article { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; padding:13px 14px; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); }
.opportunity-list article p { margin:5px 0 0; color:var(--muted); font-size:.74rem; line-height:1.45; }
.opportunity-list article > span { color:var(--accent); font-size:.78rem; font-weight:800; white-space:nowrap; }
.diagnostic-row { border-left:3px solid var(--line) !important; }
.diagnostic-good { border-left-color:#22c55e !important; }
.diagnostic-needs { border-left-color:#f59e0b !important; }
.diagnostic-poor { border-left-color:#ef4444 !important; }
.audit-source-note { margin-top:14px; padding:12px 14px; border-radius:14px; border:1px dashed var(--line); color:var(--muted); font-size:.75rem; }
@media (max-width:1180px) {
  .audit-dashboard { grid-template-columns:1fr; }
  .audit-group-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .audit-group-grid,.metric-card-grid { grid-template-columns:1fr; }
  .audit-hero-badge { min-width:0; width:100%; text-align:left; }
  .opportunity-list article { grid-template-columns:1fr; }
}
.agency-access-meta { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.agency-access-meta a,.agency-access-meta span { min-height:30px; display:inline-flex; align-items:center; padding:5px 9px; border-radius:999px; border:1px solid rgba(255,122,0,.16); background:rgba(255,122,0,.05); color:var(--muted); font-size:.7rem; font-weight:750; }
.agency-access-meta a { color:var(--accent); }

/* ============================================================
   ETRIVIO v35 — hero panel width/height normalization
   ============================================================ */
:root {
  --hero-panel-max: 1060px;
  --hero-equal-height: clamp(600px, 41vw, 720px);
}

@media (min-width: 1081px) {
  .hero-layout {
    align-items: start;
  }
  .hero-card,
  .home-rail > .quick-card-hero {
    height: var(--hero-equal-height);
    min-height: var(--hero-equal-height);
    max-height: var(--hero-equal-height);
  }
  .home-rail {
    min-height: var(--hero-equal-height);
  }
  .home-rail > .quick-card-hero {
    overflow: hidden;
  }
}

.hero-content {
  width: 100%;
  max-width: none;
  min-height: var(--hero-equal-height);
  padding-left: 76px;
  padding-right: 76px;
  align-items: flex-start;
}

/* The three main hero blocks now share exactly the same visual width. */
.hero-copy-card,
.hero-search-desktop,
.type-shortcuts-desktop {
  width: min(100%, var(--hero-panel-max));
  max-width: var(--hero-panel-max);
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
}

.hero-copy-card {
  padding-right: 34px;
}
.hero-copy-card > * {
  max-width: 760px;
}

/* Prevent the Search button from escaping the search panel. */
.hero-search-desktop {
  grid-template-columns:
    minmax(0, 1.48fr)
    minmax(0, 1fr)
    minmax(0, 1fr)
    minmax(0, 1fr)
    minmax(150px, .86fr);
  overflow: hidden;
  gap: 8px;
}
.hero-search-desktop > * {
  min-width: 0;
  max-width: 100%;
}
.hero-search-desktop .hero-search-btn {
  min-width: 0;
  width: 100%;
  max-width: 100%;
  padding-inline: 16px;
}

.type-shortcuts-desktop {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

/* Use the full banner area without the extra zoom that caused visible cropping. */
.hero-slider,
.hero-slide {
  width: 100%;
  height: 100%;
}
.hero-slide {
  inset: 0;
  object-fit: cover !important;
  object-position: center center;
  transform: none !important;
  filter: saturate(1.07) contrast(1.035) brightness(1.035);
}
.hero-slide:nth-child(1) { object-position: 50% 50%; }
.hero-slide:nth-child(2) { object-position: 50% 50%; }
.hero-slide:nth-child(3) { object-position: 50% 52%; }

@media (max-width: 1380px) and (min-width: 1081px) {
  :root {
    --hero-panel-max: 940px;
  }
  .hero-content {
    padding-left: 66px;
    padding-right: 66px;
  }
  .hero-search-desktop {
    grid-template-columns:
      minmax(0, 1.42fr)
      minmax(0, 1fr)
      minmax(0, 1fr)
      minmax(148px, .82fr);
  }
  .hero-search-desktop .search-field:nth-of-type(4) {
    display: none;
  }
  .type-shortcuts-desktop {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (max-width: 1180px) and (min-width: 1081px) {
  :root {
    --hero-panel-max: 850px;
  }
  .hero-content {
    padding-left: 60px;
    padding-right: 60px;
  }
}

@media (max-width: 1080px) {
  :root {
    --hero-equal-height: 560px;
    --hero-panel-max: 100%;
  }
  .hero-card,
  .hero-content,
  .home-rail > .quick-card-hero {
    height: auto;
    max-height: none;
  }
  .hero-card,
  .hero-content {
    min-height: var(--hero-equal-height);
  }
  .hero-content {
    padding-left: 22px;
    padding-right: 22px;
  }
  .hero-copy-card,
  .hero-search-desktop,
  .type-shortcuts-desktop {
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 760px) {
  :root {
    --hero-equal-height: 500px;
  }
  .hero-card,
  .hero-content {
    min-height: var(--hero-equal-height);
  }
  .hero-content {
    padding: 16px 14px 18px;
    align-items: stretch;
  }
  .hero-copy-card {
    width: calc(100% - 22px);
    max-width: calc(100% - 22px);
    margin-inline: auto;
  }
  .hero-slide {
    object-fit: cover !important;
    transform: none !important;
  }
  .hero-slide:nth-child(1) { object-position: 56% 50%; }
  .hero-slide:nth-child(2) { object-position: 53% 50%; }
  .hero-slide:nth-child(3) { object-position: 55% 51%; }
  .hero-search-mobile {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }
  .hero-search-mobile .hero-search-btn {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
}

@media (max-width: 500px) {
  :root {
    --hero-equal-height: 470px;
  }
  .hero-copy-card {
    width: calc(100% - 14px);
    max-width: calc(100% - 14px);
  }
}

/* ============================================================
   ETRIVIO v35 PREMIUM — generated visual applied to v35
   Desktop nav + hero + premium search + mobile hero treatment
   ============================================================ */

/* Desktop navigation refresh — mobile menu stays unchanged */
@media (min-width:1081px) {
  .site-header {
    background:rgba(5,7,10,.94);
    border-bottom:1px solid rgba(255,255,255,.08);
    box-shadow:0 10px 34px rgba(0,0,0,.18);
  }
  .site-header .nav {
    min-height:82px;
    gap:26px;
  }
  .brand {
    min-width:230px;
  }
  .brand img {
    width:202px;
    height:58px;
  }
  .nav-links {
    gap:10px;
    align-items:center;
  }
  .nav-links a {
    min-height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 15px;
    border-radius:13px;
    color:#f8fafc;
    font-weight:760;
    letter-spacing:-.01em;
    border:1px solid transparent;
    transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
  }
  .nav-links a::after { display:none; }
  .nav-links a:hover {
    background:rgba(255,255,255,.045);
    border-color:rgba(255,255,255,.08);
    transform:translateY(-1px);
  }
  .nav-links a:first-child {
    padding-left:17px;
    padding-right:17px;
    background:linear-gradient(180deg,rgba(255,122,0,.11),rgba(255,122,0,.055));
    border-color:rgba(255,122,0,.30);
    color:#ffd2ab;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 8px 22px rgba(255,122,0,.06);
  }
  .nav-links a:first-child::before {
    content:'⌂';
    margin-right:9px;
    color:var(--accent);
    font-size:1.05rem;
    line-height:1;
  }
  .nav-links a:last-child::before {
    content:'⌄';
    order:2;
    margin-left:8px;
    color:#aeb7c6;
    font-size:.85rem;
  }
  .nav-actions {
    gap:12px;
  }
  .nav-actions .icon-btn,
  .nav-actions .btn {
    min-height:48px;
    border-radius:13px;
  }
  .nav-actions .icon-btn {
    width:48px;
    border-color:rgba(255,255,255,.09);
    background:rgba(255,255,255,.025);
  }
  .nav-actions .btn-compact {
    padding-inline:18px;
  }
  .nav-actions .btn[href$="/panel"],
  .nav-actions .btn[href$="/admin"] {
    background:rgba(255,255,255,.025);
    border-color:rgba(255,255,255,.10);
  }
  .nav-actions .btn-primary {
    padding-inline:22px;
    box-shadow:0 10px 24px rgba(255,122,0,.18);
  }
  :root[data-theme="light"] .site-header {
    background:rgba(255,255,255,.94);
    border-bottom-color:rgba(15,23,42,.08);
    box-shadow:0 10px 30px rgba(15,23,42,.06);
  }
  :root[data-theme="light"] .nav-links a { color:#172033; }
  :root[data-theme="light"] .nav-links a:hover {
    background:#f6f8fb;
    border-color:#e3e7ed;
  }
  :root[data-theme="light"] .nav-links a:first-child { color:#9a4300; }
}

/* Full-bleed hero image */
.hero-card {
  background:#050608;
  border-color:rgba(255,255,255,.10);
}
.hero-slider {
  inset:-1px;
  width:calc(100% + 2px);
  height:calc(100% + 2px);
}
.hero-slide {
  width:100%;
  height:100%;
  object-fit:cover !important;
  object-position:center center;
  transform:scale(1.018) !important;
  filter:saturate(1.12) contrast(1.045) brightness(1.04);
}
.hero-slide:nth-child(1) { object-position:50% 51%; }
.hero-slide:nth-child(2) { object-position:50% 50%; }
.hero-slide:nth-child(3) { object-position:50% 52%; }

/* Premium copy card */
.hero-copy-card {
  background:
    radial-gradient(circle at 92% 82%,rgba(255,122,0,.14),transparent 30%),
    linear-gradient(135deg,rgba(13,15,21,.88),rgba(16,19,29,.72));
  border-color:rgba(255,255,255,.11);
  box-shadow:0 24px 62px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(20px) saturate(1.16);
  -webkit-backdrop-filter:blur(20px) saturate(1.16);
}

/* Premium search panel, matching the generated layout */
.hero-search {
  border-radius:22px;
  background:rgba(8,11,16,.91);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 22px 48px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(18px) saturate(1.15);
  -webkit-backdrop-filter:blur(18px) saturate(1.15);
}
.hero-search-desktop {
  padding:10px;
  gap:8px;
}
.hero-search-desktop .search-field,
.hero-search-mobile .search-field {
  position:relative;
  overflow:hidden;
  min-height:70px;
  padding:10px 16px 10px 56px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:15px;
  background:linear-gradient(180deg,rgba(18,22,29,.86),rgba(12,15,20,.82));
}
.hero-search-desktop .search-field::before,
.hero-search-mobile .search-field::before {
  position:absolute;
  left:17px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  color:var(--accent);
  font-size:1.25rem;
  font-weight:850;
  line-height:1;
}
.hero-search .search-field:nth-of-type(1)::before { content:'⌖'; }
.hero-search .search-field:nth-of-type(2)::before { content:'▤'; }
.hero-search .search-field:nth-of-type(3)::before { content:'⌂'; }
.hero-search .search-field:nth-of-type(4)::before { content:'▥'; }
.hero-search-desktop .search-field span,
.hero-search-mobile .search-field span {
  color:#aab4c3;
  font-size:.68rem;
  letter-spacing:.02em;
}
.hero-search-desktop .search-field select,
.hero-search-mobile .search-field select {
  color:#f8fafc;
  font-size:.92rem;
}
.hero-search-desktop .hero-search-btn {
  min-height:70px;
  border-radius:15px;
  box-shadow:0 12px 30px rgba(255,122,0,.22);
  font-size:1.05rem;
}

/* Photo-backed property shortcuts */
.type-shortcuts-desktop {
  gap:10px;
}
.type-shortcuts-desktop .shortcut-card {
  position:relative;
  min-height:120px;
  overflow:hidden;
  justify-content:flex-end;
  padding:18px 12px 15px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.11);
  background-color:#0a0d12;
  background-size:cover;
  background-position:center;
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}
.type-shortcuts-desktop .shortcut-card::before {
  content:'';
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(180deg,rgba(4,7,12,.16) 4%,rgba(4,7,12,.42) 45%,rgba(4,7,12,.94) 100%);
}
.type-shortcuts-desktop .shortcut-card:nth-child(1) { background-image:url('/assets/img/regions/bitez.webp'); }
.type-shortcuts-desktop .shortcut-card:nth-child(2) { background-image:url('/assets/img/banners/bodrum-hero-1-768.webp'); }
.type-shortcuts-desktop .shortcut-card:nth-child(3) { background-image:url('/assets/img/regions/yalikavak.webp'); }
.type-shortcuts-desktop .shortcut-card:nth-child(4) { background-image:url('/assets/img/regions/gundogan.webp'); }
.type-shortcuts-desktop .shortcut-card:nth-child(5) { background-image:url('/assets/img/regions/gumusluk.webp'); }
.type-shortcuts-desktop .shortcut-card:nth-child(6) { background-image:url('/assets/img/regions/turkbuku.webp'); }
.type-shortcuts-desktop .shortcut-card > * {
  position:relative;
  z-index:1;
}
.type-shortcuts-desktop .shortcut-icon {
  width:48px;
  height:48px;
  border-radius:15px;
  background:rgba(24,18,16,.70);
  border-color:rgba(255,139,43,.28);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.type-shortcuts-desktop .shortcut-card > span:last-child {
  color:#fff;
  text-shadow:0 2px 8px rgba(0,0,0,.65);
}

/* Premium arrows */
.hero-nav {
  width:56px;
  height:56px;
  top:50%;
  border:1px solid rgba(255,255,255,.28);
  background:linear-gradient(180deg,rgba(30,24,28,.82),rgba(10,12,18,.72));
  box-shadow:0 16px 34px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08),0 0 0 5px rgba(7,9,13,.24);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  transform:translateY(-50%);
}
.hero-nav:hover {
  transform:translateY(-50%) scale(1.04);
}
.hero-nav-prev { left:16px; }
.hero-nav-next { right:16px; }

/* Light theme equivalents */
:root[data-theme="light"] .hero-copy-card {
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(245,248,252,.76));
}
:root[data-theme="light"] .hero-search {
  background:rgba(255,255,255,.90);
  border-color:rgba(15,23,42,.09);
}
:root[data-theme="light"] .hero-search-desktop .search-field,
:root[data-theme="light"] .hero-search-mobile .search-field {
  background:linear-gradient(180deg,#fff,#f6f8fb);
  border-color:rgba(15,23,42,.08);
}
:root[data-theme="light"] .hero-search-desktop .search-field span,
:root[data-theme="light"] .hero-search-mobile .search-field span { color:#667085; }
:root[data-theme="light"] .hero-search-desktop .search-field select,
:root[data-theme="light"] .hero-search-mobile .search-field select { color:#172033; }

/* Mobile banner copied from the approved generated appearance */
@media (max-width:760px) {
  .home-shell { padding-top:12px; }
  .hero-card {
    min-height:760px;
    border-radius:28px;
  }
  .hero-content {
    min-height:760px;
    justify-content:flex-end;
    padding:16px 12px 18px;
  }
  .hero-slide {
    transform:scale(1.035) !important;
  }
  .hero-slide:nth-child(1) { object-position:46% center; }
  .hero-slide:nth-child(2) { object-position:48% center; }
  .hero-slide:nth-child(3) { object-position:47% center; }
  .hero-copy-card {
    width:calc(100% - 28px);
    max-width:640px;
    margin:0 auto 8px;
    padding:22px 18px 18px;
    border-radius:26px;
    background:
      radial-gradient(circle at 92% 8%,rgba(255,122,0,.15),transparent 32%),
      linear-gradient(145deg,rgba(13,15,20,.88),rgba(10,15,24,.79));
    border:1px solid rgba(255,255,255,.11);
    box-shadow:0 24px 50px rgba(0,0,0,.30),0 0 0 1px rgba(255,122,0,.07);
  }
  .hero-kicker {
    font-size:.68rem;
    letter-spacing:.13em;
  }
  .hero-content h1 {
    margin:13px 0 14px;
    font-size:clamp(2.8rem,12.5vw,4.35rem);
    line-height:.91;
  }
  .hero-content > p {
    font-size:1rem;
    line-height:1.55;
  }
  .hero-copy-meta {
    display:flex !important;
    gap:7px;
    margin-top:15px;
  }
  .hero-copy-meta span {
    min-height:31px;
    padding:0 10px;
    font-size:.66rem;
  }
  .hero-nav {
    top:40%;
    width:44px;
    height:44px;
  }
  .hero-nav-prev { left:10px; }
  .hero-nav-next { right:10px; }
  .hero-mobile-shell {
    padding:18px 0 0;
  }
  .hero-search-mobile {
    gap:12px;
    padding:16px;
    border-radius:24px;
    background:linear-gradient(180deg,rgba(10,13,18,.96),rgba(7,10,15,.96));
    border-color:rgba(255,255,255,.10);
  }
  .hero-search-mobile .search-field {
    min-height:78px;
    padding-left:62px;
    padding-right:18px;
    border-bottom:1px solid rgba(255,255,255,.10);
    border-radius:16px;
  }
  .hero-search-mobile .search-field::before {
    left:19px;
    font-size:1.45rem;
  }
  .hero-search-mobile .search-field span {
    font-size:.78rem;
  }
  .hero-search-mobile .search-field select {
    font-size:1.05rem;
  }
  .hero-search-mobile .hero-search-btn {
    min-height:68px;
    border-radius:16px;
    font-size:1.25rem;
  }
  .type-shortcuts-mobile {
    margin-top:14px;
  }
}

@media (max-width:500px) {
  .hero-card,
  .hero-content { min-height:700px; }
  .hero-content { min-height:700px; }
  .hero-copy-card {
    width:calc(100% - 18px);
    padding:20px 16px 16px;
  }
  .hero-content h1 {
    font-size:2.9rem;
  }
  .hero-content > p {
    font-size:.94rem;
  }
  .hero-copy-meta span {
    font-size:.62rem;
    padding-inline:8px;
  }
  .hero-nav {
    top:38%;
    width:40px;
    height:40px;
  }
}


/* ============================================================
   ETRIVIO v36 — premium banner/media fit/category visuals
   Applied on top of v35 premium package
   ============================================================ */
:root {
  --hero-v36-height: clamp(560px, 41vw, 690px);
  --hero-v36-mobile-height: 560px;
}

.hero-layout {
  align-items: stretch;
  gap: 20px;
}
.hero-column,
.home-rail,
.home-rail > .quick-card-hero,
.hero-card,
.hero-content {
  min-height: var(--hero-v36-height);
}
.hero-card {
  position: relative;
  overflow: hidden;
  border-radius: 32px;
}
.hero-slider {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.hero-slide {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
  filter: saturate(1.14) contrast(1.06) brightness(1.03);
}
.hero-slide:nth-child(1) { object-position: 52% 50% !important; }
.hero-slide:nth-child(2) { object-position: 52% 50% !important; }
.hero-slide:nth-child(3) { object-position: 54% 51% !important; }
.hero-content {
  position: relative;
  display: grid;
  grid-template-rows: auto auto auto;
  align-content: start;
  gap: 22px;
  padding: 46px 58px 30px;
}
.hero-copy-card {
  width: min(100%, 860px);
  min-height: 380px;
  margin-left: 46px;
  padding: 34px 40px 32px;
  border-radius: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hero-content h1 {
  max-width: 12ch;
  line-height: .90;
  letter-spacing: -.055em;
}
.hero-content > p,
.hero-copy-card > p {
  max-width: 38ch;
  font-size: clamp(1rem, 1.2vw, 1.16rem);
  line-height: 1.48;
}
.hero-copy-meta { display: none !important; }

.hero-search {
  width: 100%;
}
.hero-search-desktop {
  display: grid;
  grid-template-columns: minmax(240px, 1.3fr) repeat(3, minmax(180px, 1fr)) minmax(184px, .95fr);
  gap: 10px;
  padding: 10px;
  border-radius: 24px;
  align-items: stretch;
}
.hero-search-desktop .search-field {
  min-width: 0;
  min-height: 78px;
  padding-right: 16px;
}
.hero-search-desktop .search-field select {
  width: 100%;
  text-overflow: ellipsis;
}
.hero-search-desktop .hero-search-btn {
  width: 100%;
  min-width: 0;
  min-height: 78px;
  font-size: 1.22rem;
}

.hero-nav {
  z-index: 4;
  top: 56%;
  width: 62px;
  height: 62px;
}
.hero-nav-prev { left: 20px; }
.hero-nav-next { right: 20px; }
.hero-nav::before {
  font-size: 2rem;
  font-weight: 700;
}

.type-shortcuts {
  gap: 14px;
}
.type-shortcuts-desktop {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
}
.shortcut-card {
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
}
.shortcut-card[data-type="daire"] { background-image: url('/assets/img/categories/daire.webp'); }
.shortcut-card[data-type="villa"] { background-image: url('/assets/img/categories/villa.webp'); }
.shortcut-card[data-type="mustakil"] { background-image: url('/assets/img/categories/mustakil.webp'); }
.shortcut-card[data-type="rezidans"] { background-image: url('/assets/img/categories/rezidans.webp'); }
.shortcut-card[data-type="arsa"] { background-image: url('/assets/img/categories/arsa.webp'); }
.shortcut-card[data-type="isyeri"] { background-image: url('/assets/img/categories/isyeri.webp'); }
.shortcut-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8,12,18,.18) 0%, rgba(8,12,18,.30) 42%, rgba(5,8,13,.88) 100%);
}
.type-shortcuts-desktop .shortcut-card,
.type-shortcuts-mobile .shortcut-card {
  min-height: 154px;
  padding: 18px 16px 18px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 18px 40px rgba(0,0,0,.20);
  justify-content: flex-end;
}
.type-shortcuts-desktop .shortcut-card > *,
.type-shortcuts-mobile .shortcut-card > * {
  position: relative;
  z-index: 1;
}
.type-shortcuts-desktop .shortcut-icon,
.type-shortcuts-mobile .shortcut-icon {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  background: rgba(26,22,19,.74);
  border-color: rgba(255,145,54,.36);
}
.type-shortcuts-desktop .shortcut-card > span:last-child,
.type-shortcuts-mobile .shortcut-card > span:last-child {
  color: #fff;
  font-size: clamp(1rem,1.14vw,1.08rem);
  text-shadow: 0 2px 10px rgba(0,0,0,.58);
}
.type-shortcuts-mobile {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.popular-card {
  padding: 24px 22px 18px;
}
.popular-list {
  display: grid;
  gap: 14px;
}
.popular-list > a {
  display: grid;
  grid-template-columns: 132px minmax(0,1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 12px 0;
}
.place-thumb {
  width: 132px;
  height: 84px;
  border-radius: 18px;
  overflow: hidden;
}
.place-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  transform: scale(1.02);
  filter: saturate(1.08) contrast(1.04);
}
.place-copy strong {
  font-size: 1.22rem;
}
.place-copy small,
.place-count {
  font-size: .98rem;
}

@media (min-width: 1081px) {
  .site-header .nav {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 26px;
  }
  .nav-links {
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 10px;
  }
  .nav-links a {
    white-space: nowrap;
    min-height: 48px;
    padding-inline: 16px;
  }
  .nav-links a:last-child::before {
    content: none;
  }
}

@media (max-width: 1180px) {
  .hero-content {
    padding: 38px 36px 26px;
  }
  .hero-copy-card {
    margin-left: 18px;
    width: min(100%, 760px);
  }
  .hero-search-desktop {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .hero-search-desktop .hero-search-btn {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .container.home-shell {
    width: min(var(--container), calc(100% - 16px));
  }
  .hero-column,
  .hero-card,
  .hero-content {
    min-height: var(--hero-v36-mobile-height);
  }
  .hero-card {
    min-height: var(--hero-v36-mobile-height);
    border-radius: 30px;
  }
  .hero-slide:nth-child(1) { object-position: 58% 50% !important; }
  .hero-slide:nth-child(2) { object-position: 58% 50% !important; }
  .hero-slide:nth-child(3) { object-position: 60% 51% !important; }
  .hero-content {
    padding: 132px 12px 18px;
    gap: 14px;
    justify-content: end;
    align-content: end;
  }
  .hero-copy-card {
    width: calc(100% - 30px);
    min-height: auto;
    margin: 0 auto;
    padding: 24px 20px 22px;
    border-radius: 28px;
    background:
      radial-gradient(circle at 88% 14%, rgba(255,122,0,.16), transparent 30%),
      linear-gradient(145deg, rgba(11,13,19,.90), rgba(8,14,24,.82));
  }
  .hero-content h1 {
    font-size: clamp(2.65rem, 12vw, 4.1rem);
  }
  .hero-content > p,
  .hero-copy-card > p {
    max-width: 100%;
    font-size: 1rem;
    line-height: 1.5;
  }
  .hero-nav {
    top: 32%;
    width: 50px;
    height: 50px;
  }
  .hero-nav-prev { left: 10px; }
  .hero-nav-next { right: 10px; }
  .hero-nav::before { font-size: 1.7rem; }
  .hero-dots-below {
    margin-top: 12px;
  }
  .hero-search-mobile {
    padding: 16px;
    gap: 10px;
    border-radius: 24px;
  }
  .hero-search-mobile .search-field {
    min-height: 72px;
    padding: 10px 16px 10px 58px;
    border-radius: 16px;
  }
  .hero-search-mobile .search-field::before {
    left: 18px;
    font-size: 1.38rem;
  }
  .hero-search-mobile .hero-search-btn {
    min-height: 60px;
    border-radius: 16px;
    font-size: 1.08rem;
  }
  .type-shortcuts-mobile .shortcut-card {
    min-height: 132px;
  }
  .popular-list > a {
    grid-template-columns: 104px minmax(0,1fr) auto;
    gap: 14px;
  }
  .place-thumb {
    width: 104px;
    height: 72px;
    border-radius: 16px;
  }
}

@media (max-width: 520px) {
  :root {
    --hero-v36-mobile-height: 540px;
  }
  .hero-content {
    padding-top: 128px;
  }
  .hero-copy-card {
    width: calc(100% - 22px);
    padding: 22px 18px 20px;
  }
  .hero-kicker {
    font-size: .68rem;
    letter-spacing: .12em;
  }
  .hero-nav {
    top: 31%;
    width: 48px;
    height: 48px;
  }
  .type-shortcuts-mobile {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

/* ============================================================
   ETRIVIO v36.1 — hero/media/category final alignment refresh
   Desktop + mobile hero background fit, premium copy card,
   3-column mobile categories, full-cover dark overlay.
   ============================================================ */
:root {
  --hero-v36-height: clamp(620px, 43vw, 760px);
  --hero-v36-mobile-height: 500px;
}

.hero-layout {
  align-items: stretch;
  gap: 22px;
}
.hero-column,
.hero-card,
.hero-content,
.home-rail,
.home-rail > .quick-card-hero {
  min-height: var(--hero-v36-height);
}
.hero-card {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  background: #09111c;
  box-shadow: 0 28px 70px rgba(0, 0, 0, .28);
}
.hero-slider,
.hero-slider::before {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.hero-slider::before {
  content: '';
  z-index: 1;
  background:
    radial-gradient(circle at 10% 14%, rgba(0,0,0,.12), transparent 28%),
    linear-gradient(90deg, rgba(6,9,16,.18) 0%, rgba(6,9,16,.04) 35%, rgba(6,9,16,.16) 100%);
  pointer-events: none;
}
.hero-slide {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
  filter: saturate(1.12) contrast(1.05) brightness(1.03);
}
.hero-slide:nth-child(1) { object-position: 50% 50% !important; }
.hero-slide:nth-child(2) { object-position: 52% 50% !important; }
.hero-slide:nth-child(3) { object-position: 50% 50% !important; }
.hero-overlay {
  z-index: 2;
  background: linear-gradient(180deg, rgba(6,8,14,.04) 0%, rgba(6,8,14,.10) 34%, rgba(6,8,14,.30) 100%);
}
.hero-glow { z-index: 2; }
.hero-content {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-rows: auto auto auto;
  gap: 18px;
  align-content: start;
  padding: 52px 58px 28px;
}
.hero-copy-card {
  width: min(100%, 760px);
  max-width: 58%;
  min-height: clamp(280px, 28vw, 380px);
  margin-left: 56px;
  padding: 36px 40px 34px;
  border-radius: 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background:
    radial-gradient(circle at 82% 24%, rgba(255, 125, 28, .18), transparent 32%),
    linear-gradient(140deg, rgba(16, 19, 28, .84), rgba(11, 16, 27, .68));
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 22px 50px rgba(0,0,0,.26);
  backdrop-filter: blur(16px);
}
.hero-content h1 {
  max-width: 10ch;
  line-height: .90;
  letter-spacing: -.055em;
}
.hero-copy-card p,
.hero-content > p {
  max-width: 26ch;
  font-size: clamp(1rem, 1.15vw, 1.18rem);
  line-height: 1.45;
}
.hero-search-desktop {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(0, 1fr)) minmax(200px, .95fr);
  gap: 10px;
  width: 100%;
  padding: 10px;
  border-radius: 26px;
  align-items: stretch;
}
.hero-search-desktop .search-field,
.hero-search-desktop .hero-search-btn {
  min-height: 80px;
}
.hero-search-desktop .hero-search-btn {
  min-width: 0;
  width: 100%;
}
.hero-nav {
  z-index: 4;
  top: 50%;
  transform: translateY(-50%);
  width: 66px;
  height: 66px;
  border-radius: 50%;
  background: linear-gradient(180deg, rgba(44, 42, 51, .70), rgba(24, 24, 31, .60));
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 10px 26px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.05);
  backdrop-filter: blur(10px);
}
.hero-nav::before {
  font-size: 2rem;
  font-weight: 700;
}
.hero-nav-prev { left: 14px; }
.hero-nav-next { right: 14px; }

.type-shortcuts {
  gap: 14px;
}
.type-shortcuts-desktop {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
}
.shortcut-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-size: cover !important;
  background-repeat: no-repeat;
  background-position: center center !important;
  border-radius: 22px;
}
.shortcut-card::before,
.shortcut-card::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
}
.shortcut-card::before {
  z-index: 0;
  background: linear-gradient(180deg, rgba(8,12,18,.06) 0%, rgba(8,12,18,.16) 38%, rgba(6,9,16,.78) 100%);
}
.shortcut-card::after {
  z-index: 0;
  background: radial-gradient(circle at 50% 12%, rgba(255,153,56,.12), transparent 28%);
}
.type-shortcuts-desktop .shortcut-card,
.type-shortcuts-mobile .shortcut-card {
  min-height: 152px;
  padding: 18px 16px 18px;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 20px 40px rgba(0,0,0,.20);
  justify-content: flex-end;
}
.type-shortcuts-desktop .shortcut-card > *,
.type-shortcuts-mobile .shortcut-card > * {
  position: relative;
  z-index: 1;
}
.type-shortcuts-desktop .shortcut-icon,
.type-shortcuts-mobile .shortcut-icon {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background: rgba(20, 18, 18, .58);
  border-color: rgba(255,155,63,.34);
  box-shadow: 0 10px 24px rgba(0,0,0,.22);
}
.type-shortcuts-desktop .shortcut-card > span:last-child,
.type-shortcuts-mobile .shortcut-card > span:last-child {
  color: #fff;
  font-size: clamp(1rem, 1.12vw, 1.08rem);
  text-shadow: 0 2px 10px rgba(0,0,0,.55);
}
.shortcut-card[data-type="daire"] { background-image: url('/assets/img/categories/daire.webp') !important; }
.shortcut-card[data-type="villa"] { background-image: url('/assets/img/categories/villa.webp') !important; }
.shortcut-card[data-type="mustakil"] { background-image: url('/assets/img/categories/mustakil.webp') !important; }
.shortcut-card[data-type="rezidans"] { background-image: url('/assets/img/categories/rezidans.webp') !important; }
.shortcut-card[data-type="arsa"] { background-image: url('/assets/img/categories/arsa.webp') !important; }
.shortcut-card[data-type="isyeri"] { background-image: url('/assets/img/categories/isyeri.webp') !important; }

@media (max-width: 1280px) {
  .hero-copy-card {
    max-width: 62%;
    margin-left: 48px;
  }
}

@media (max-width: 1180px) {
  .hero-content {
    padding: 42px 34px 24px;
  }
  .hero-copy-card {
    max-width: 68%;
    width: min(100%, 700px);
    margin-left: 34px;
    padding: 30px 32px;
  }
  .hero-search-desktop {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .hero-search-desktop .hero-search-btn {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  :root {
    --hero-v36-mobile-height: 468px;
  }
  .container.home-shell {
    width: min(var(--container), calc(100% - 16px));
  }
  .hero-layout {
    gap: 14px;
  }
  .hero-column,
  .hero-card,
  .hero-content {
    min-height: var(--hero-v36-mobile-height);
  }
  .hero-card {
    min-height: var(--hero-v36-mobile-height);
    border-radius: 28px;
  }
  .hero-slide,
  .hero-slide:nth-child(1),
  .hero-slide:nth-child(2),
  .hero-slide:nth-child(3) {
    object-fit: cover !important;
    object-position: center center !important;
  }
  .hero-content {
    padding: 98px 12px 18px;
    gap: 12px;
    justify-content: flex-end;
    align-content: end;
  }
  .hero-copy-card {
    width: calc(100% - 24px);
    max-width: none;
    min-height: auto;
    margin: 0 auto;
    padding: 22px 20px 20px;
    border-radius: 26px;
    background:
      radial-gradient(circle at 82% 18%, rgba(255,132,30,.18), transparent 28%),
      linear-gradient(145deg, rgba(11,13,19,.88), rgba(8,14,24,.76));
  }
  .hero-content h1 {
    font-size: clamp(2.7rem, 11vw, 4rem);
    line-height: .92;
  }
  .hero-copy-card p,
  .hero-content > p {
    max-width: 100%;
    font-size: 1rem;
    line-height: 1.44;
  }
  .hero-nav {
    top: 36%;
    width: 50px;
    height: 50px;
  }
  .hero-nav::before {
    font-size: 1.7rem;
  }
  .hero-nav-prev { left: 10px; }
  .hero-nav-next { right: 10px; }
  .hero-dots-below { margin-top: 10px; }
  .hero-search-mobile {
    padding: 16px;
    gap: 10px;
    border-radius: 24px;
  }
  .hero-search-mobile .search-field {
    min-height: 72px;
    padding: 10px 16px 10px 58px;
    border-radius: 16px;
  }
  .hero-search-mobile .search-field::before {
    left: 18px;
    font-size: 1.35rem;
  }
  .hero-search-mobile .hero-search-btn {
    min-height: 60px;
    border-radius: 16px;
    font-size: 1.08rem;
  }
  .type-shortcuts-mobile {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  .type-shortcuts-mobile .shortcut-card {
    min-height: 138px;
    aspect-ratio: 1 / 1.02;
    padding: 14px 12px 14px;
  }
  .type-shortcuts-mobile .shortcut-icon {
    width: 50px;
    height: 50px;
    border-radius: 16px;
  }
  .type-shortcuts-mobile .shortcut-card > span:last-child {
    font-size: .95rem;
  }
}

@media (max-width: 520px) {
  :root {
    --hero-v36-mobile-height: 438px;
  }
  .hero-content {
    padding-top: 96px;
  }
  .hero-copy-card {
    width: calc(100% - 18px);
    padding: 20px 18px 18px;
  }
  .hero-kicker {
    font-size: .72rem;
    letter-spacing: .12em;
  }
  .hero-content h1 {
    font-size: clamp(2.4rem, 10.8vw, 3.7rem);
  }
  .hero-nav {
    top: 36%;
    width: 48px;
    height: 48px;
  }
  .type-shortcuts-mobile {
    gap: 10px;
  }
  .type-shortcuts-mobile .shortcut-card {
    min-height: 124px;
  }
}


/* v36.2 — hero section compact height tuning to reveal category cards
   Only adjusts the three stacked sections in the banner area.
   No functional or visual changes outside home hero spacing. */
@media (min-width: 761px) {
  :root {
    --hero-equal-height: clamp(500px, 38vw, 610px);
  }

  .hero-content {
    padding-top: 30px;
    padding-bottom: 18px;
  }

  .hero-copy-card {
    width: min(100%, 600px);
    padding: 22px 24px 18px;
  }

  .hero-content h1 {
    margin: 10px 0 12px;
    font-size: clamp(3rem, 4.6vw, 5.2rem);
  }

  .hero-content > p {
    max-width: 560px;
    font-size: 1rem;
    line-height: 1.45;
  }

  .hero-search-desktop {
    margin-top: 12px;
  }

  .hero-search {
    padding: 6px;
    border-radius: 18px;
  }

  .search-field,
  .hero-search-btn {
    min-height: 72px;
  }

  .type-shortcuts-desktop {
    margin-top: 12px;
  }

  .type-shortcuts {
    gap: 10px;
  }

  .shortcut-card {
    min-height: 88px;
    padding: 10px 8px;
    gap: 8px;
  }

  .shortcut-icon {
    width: 46px;
    height: 46px;
  }
}


/* v36.3 — minimum-height compression for the 3 stacked hero sections
   Goal: reveal the category cards in the same viewport.
   Only tightens hero copy, search bar and category shortcuts. */
@media (min-width: 761px) {
  :root {
    --hero-equal-height: clamp(450px, 34vw, 540px);
  }

  .hero-content {
    padding-top: 18px;
    padding-bottom: 10px;
    gap: 10px;
  }

  .hero-copy-card {
    width: min(100%, 560px);
    padding: 18px 22px 16px;
    border-radius: 30px;
  }

  .hero-content h1 {
    margin: 8px 0 10px;
    font-size: clamp(2.65rem, 4.05vw, 4.55rem);
    line-height: .95;
  }

  .hero-content > p {
    max-width: 480px;
    font-size: .96rem;
    line-height: 1.38;
    margin: 0;
  }

  .hero-metadata,
  .hero-tags {
    gap: 8px;
  }

  .hero-tag,
  .hero-metadata .badge,
  .hero-copy-card .badge {
    min-height: 34px;
    padding: 8px 14px;
    font-size: .86rem;
  }

  .hero-search-desktop {
    margin-top: 8px;
    gap: 6px;
  }

  .hero-search {
    padding: 5px;
    border-radius: 16px;
  }

  .search-field,
  .hero-search-btn {
    min-height: 64px;
  }

  .search-field {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .search-field span {
    font-size: .76rem;
    margin-bottom: 4px;
  }

  .search-field select,
  .search-field input {
    font-size: .98rem;
  }

  .type-shortcuts-desktop {
    margin-top: 8px;
  }

  .type-shortcuts {
    gap: 8px;
  }

  .shortcut-card {
    min-height: 78px;
    padding: 8px 8px;
    gap: 6px;
    border-radius: 20px;
  }

  .shortcut-icon {
    width: 40px;
    height: 40px;
  }

  .shortcut-card > span:last-child {
    font-size: .9rem;
  }
}

/* v36.4 — desktop hero compact-stack correction
   Only the three banner content blocks are tightened so category cards remain visible. */
@media (min-width: 761px) {
  :root {
    --hero-equal-height: clamp(560px, 38vw, 650px);
    --hero-v36-height: clamp(560px, 38vw, 650px);
  }

  .hero-column,
  .hero-card,
  .hero-content,
  .home-rail,
  .home-rail > .quick-card-hero {
    min-height: var(--hero-v36-height) !important;
  }

  .hero-card,
  .home-rail > .quick-card-hero {
    height: var(--hero-v36-height) !important;
    max-height: var(--hero-v36-height) !important;
  }

  .hero-content {
    padding: 14px 54px 12px !important;
    gap: 8px !important;
    align-content: start !important;
    justify-content: start !important;
  }

  .hero-copy-card {
    width: min(100%, 600px) !important;
    max-width: 600px !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 0 0 46px !important;
    padding: 18px 24px 16px !important;
    border-radius: 28px !important;
  }

  .hero-kicker {
    margin: 0 !important;
  }

  .hero-content h1 {
    margin: 8px 0 10px !important;
    font-size: clamp(2.85rem, 4vw, 4.6rem) !important;
    line-height: .92 !important;
  }

  .hero-copy-card p,
  .hero-content > p {
    margin: 0 !important;
    max-width: 500px !important;
    font-size: .96rem !important;
    line-height: 1.38 !important;
  }

  .hero-search-desktop {
    margin-top: 4px !important;
    padding: 5px !important;
    gap: 5px !important;
    border-radius: 16px !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    min-height: 62px !important;
    height: 62px !important;
  }

  .hero-search-desktop .search-field {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }

  .hero-search-desktop .search-field span {
    margin-bottom: 2px !important;
    font-size: .68rem !important;
  }

  .type-shortcuts-desktop {
    margin-top: 4px !important;
    gap: 8px !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 100px !important;
    height: 100px !important;
    padding: 8px !important;
    gap: 5px !important;
    border-radius: 18px !important;
  }

  .type-shortcuts-desktop .shortcut-icon {
    width: 40px !important;
    height: 40px !important;
    border-radius: 14px !important;
  }

  .type-shortcuts-desktop .shortcut-icon img {
    width: 24px !important;
    height: 24px !important;
  }

  .type-shortcuts-desktop .shortcut-card > span:last-child {
    font-size: .88rem !important;
    line-height: 1.15 !important;
  }
}

/* v36.5 — banner three-block fit + arrow placement (desktop only) */
@media (min-width: 761px) {
  :root {
    --hero-equal-height: clamp(500px, 35vw, 580px);
    --hero-v36-height: clamp(500px, 35vw, 580px);
  }

  .hero-column,
  .hero-card,
  .hero-content,
  .home-rail,
  .home-rail > .quick-card-hero {
    min-height: var(--hero-v36-height) !important;
  }

  .hero-card,
  .home-rail > .quick-card-hero {
    height: var(--hero-v36-height) !important;
    max-height: var(--hero-v36-height) !important;
  }

  .hero-content {
    padding: 10px 46px 10px !important;
    gap: 6px !important;
    align-content: start !important;
    justify-content: start !important;
  }

  .hero-copy-card {
    width: min(52%, 600px) !important;
    max-width: 600px !important;
    min-height: 0 !important;
    margin: 0 0 0 56px !important;
    padding: 14px 20px 13px !important;
  }

  .hero-content h1 {
    margin: 6px 0 8px !important;
    font-size: clamp(2.55rem, 3.65vw, 4.15rem) !important;
    line-height: .92 !important;
  }

  .hero-copy-card p,
  .hero-content > p {
    margin: 0 !important;
    font-size: .92rem !important;
    line-height: 1.34 !important;
  }

  .hero-search-desktop {
    margin-top: 2px !important;
    padding: 4px !important;
    gap: 4px !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    height: 58px !important;
    min-height: 58px !important;
  }

  .type-shortcuts-desktop {
    margin-top: 2px !important;
    gap: 7px !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 92px !important;
    height: 92px !important;
    padding: 7px !important;
    gap: 4px !important;
  }

  .type-shortcuts-desktop .shortcut-icon {
    width: 38px !important;
    height: 38px !important;
  }

  .hero-nav {
    top: 25% !important;
    width: 54px !important;
    height: 54px !important;
    transform: translateY(-50%) !important;
  }

  .hero-nav-prev {
    left: 12px !important;
    right: auto !important;
  }

  .hero-nav-next {
    left: calc(56px + min(52%, 600px) + 72px) !important;
    right: auto !important;
  }

  .hero-nav:hover {
    transform: translateY(-50%) scale(1.04) !important;
  }
}

/* v36.6 — desktop hero three-block spacing refinement */
@media (min-width: 761px) {
  :root {
    --hero-v36-height: clamp(500px, 35vw, 580px);
  }

  .hero-column,
  .hero-card,
  .hero-content,
  .home-rail,
  .home-rail > .quick-card-hero {
    min-height: var(--hero-v36-height) !important;
  }

  .hero-card,
  .home-rail > .quick-card-hero {
    height: var(--hero-v36-height) !important;
    max-height: var(--hero-v36-height) !important;
  }

  .hero-content {
    padding: 18px 46px 8px !important;
    gap: 10px !important;
    align-content: start !important;
    justify-content: start !important;
  }

  .hero-copy-card {
    width: min(52%, 600px) !important;
    max-width: 600px !important;
    min-height: 0 !important;
    margin: 0 0 0 56px !important;
    padding: 12px 20px 11px !important;
  }

  .hero-content h1 {
    margin: 5px 0 7px !important;
    font-size: clamp(2.45rem, 3.55vw, 4rem) !important;
    line-height: .92 !important;
  }

  .hero-copy-card p,
  .hero-content > p {
    margin: 0 !important;
    font-size: .90rem !important;
    line-height: 1.28 !important;
  }

  .hero-search-desktop {
    margin-top: 0 !important;
    padding: 4px !important;
    gap: 4px !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    height: 54px !important;
    min-height: 54px !important;
  }

  .hero-search-desktop .search-field {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  .hero-search-desktop .search-field span {
    margin-bottom: 1px !important;
    font-size: .66rem !important;
  }

  .type-shortcuts-desktop {
    margin-top: 0 !important;
    gap: 7px !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 82px !important;
    height: 82px !important;
    padding: 6px !important;
    gap: 4px !important;
    border-radius: 17px !important;
  }

  .type-shortcuts-desktop .shortcut-icon {
    width: 34px !important;
    height: 34px !important;
  }

  .type-shortcuts-desktop .shortcut-icon img {
    width: 20px !important;
    height: 20px !important;
  }

  .type-shortcuts-desktop .shortcut-card > span:last-child {
    font-size: .82rem !important;
    line-height: 1.1 !important;
  }
}

/* v36.7 — hero vertical rebalance */
@media (min-width: 761px) {
  :root {
    --hero-v367-height: clamp(585px, 39vw, 660px);
  }

  .hero-column,
  .hero-card,
  .hero-content,
  .home-rail,
  .home-rail > .quick-card-hero {
    min-height: var(--hero-v367-height) !important;
  }

  .hero-card,
  .home-rail > .quick-card-hero {
    height: var(--hero-v367-height) !important;
    max-height: var(--hero-v367-height) !important;
  }

  .hero-content {
    padding: 34px 44px 16px !important;
    gap: 12px !important;
    align-content: start !important;
    justify-content: start !important;
  }

  .hero-copy-card {
    width: min(55%, 650px) !important;
    max-width: 650px !important;
    min-height: 0 !important;
    margin: 10px 0 0 64px !important;
    padding: 18px 24px 18px !important;
  }

  .hero-content h1 {
    margin: 8px 0 10px !important;
    font-size: clamp(2.65rem, 3.8vw, 4.2rem) !important;
    line-height: .92 !important;
  }

  .hero-copy-card p,
  .hero-content > p {
    margin: 0 !important;
    font-size: .96rem !important;
    line-height: 1.34 !important;
  }

  .hero-search-desktop {
    margin-top: 2px !important;
    padding: 5px !important;
    gap: 5px !important;
    border-radius: 24px !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    height: 64px !important;
    min-height: 64px !important;
  }

  .hero-search-desktop .search-field {
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }

  .hero-search-desktop .search-field span {
    margin-bottom: 2px !important;
    font-size: .7rem !important;
  }

  .type-shortcuts-desktop {
    margin-top: 2px !important;
    gap: 8px !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 96px !important;
    height: 96px !important;
    padding: 8px !important;
    gap: 6px !important;
    border-radius: 19px !important;
  }

  .type-shortcuts-desktop .shortcut-icon {
    width: 38px !important;
    height: 38px !important;
  }

  .type-shortcuts-desktop .shortcut-icon img {
    width: 22px !important;
    height: 22px !important;
  }

  .type-shortcuts-desktop .shortcut-card > span:last-child {
    font-size: .87rem !important;
    line-height: 1.1 !important;
  }
}

/* v36.8 — desktop hero three-block balance */
@media (min-width: 761px) {
  :root {
    --hero-v368-height: clamp(600px, 40vw, 670px);
    --hero-v368-copy-width: min(55%, 650px);
    --hero-v368-top-space: 28px;
    --hero-v368-bottom-space: 18px;
  }

  .hero-column,
  .hero-card,
  .hero-content,
  .home-rail,
  .home-rail > .quick-card-hero {
    min-height: var(--hero-v368-height) !important;
  }

  .hero-card,
  .home-rail > .quick-card-hero {
    height: var(--hero-v368-height) !important;
    max-height: var(--hero-v368-height) !important;
  }

  .hero-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    height: 100% !important;
    gap: 0 !important;
    padding: 44px 40px var(--hero-v368-bottom-space) !important;
  }

  .hero-copy-card {
    width: var(--hero-v368-copy-width) !important;
    max-width: 650px !important;
    min-height: 0 !important;
    margin: var(--hero-v368-top-space) 0 0 58px !important;
    padding: 18px 24px 18px !important;
  }

  .hero-content h1 {
    margin: 8px 0 10px !important;
    font-size: clamp(2.7rem, 3.85vw, 4.3rem) !important;
    line-height: .92 !important;
  }

  .hero-copy-card p,
  .hero-content > p {
    margin: 0 !important;
    font-size: .97rem !important;
    line-height: 1.36 !important;
  }

  .hero-search-desktop {
    margin: 14px 0 12px !important;
    padding: 6px !important;
    gap: 6px !important;
    border-radius: 24px !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    height: 74px !important;
    min-height: 74px !important;
  }

  .hero-search-desktop .search-field {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .type-shortcuts-desktop {
    margin-top: 0 !important;
    gap: 8px !important;
    align-items: stretch !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 100px !important;
    height: 100px !important;
    padding: 8px !important;
    gap: 6px !important;
    border-radius: 18px !important;
  }

  .type-shortcuts-desktop .shortcut-icon {
    width: 36px !important;
    height: 36px !important;
  }

  .type-shortcuts-desktop .shortcut-icon img {
    width: 21px !important;
    height: 21px !important;
  }

  .type-shortcuts-desktop .shortcut-card > span:last-child {
    font-size: .86rem !important;
    line-height: 1.08 !important;
  }

  .hero-nav {
    top: 198px !important;
    transform: translateY(-50%) !important;
    width: 64px !important;
    height: 64px !important;
  }

  .hero-nav-prev { left: 14px !important; }
  .hero-nav-next { right: 14px !important; }
}

/* v36.9 — hero icon scale, tighter block spacing, edge arrows */
@media (min-width: 761px) {
  .hero-content {
    padding: 34px 38px 18px !important;
    gap: 0 !important;
  }

  .hero-copy-card {
    margin: 28px 0 0 58px !important;
    padding: 18px 24px 16px !important;
  }

  .hero-search-desktop {
    margin: 10px 0 8px !important;
  }

  .type-shortcuts-desktop {
    margin-top: 0 !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 106px !important;
    height: 106px !important;
  }

  .type-shortcuts-desktop .shortcut-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 14px !important;
  }

  .type-shortcuts-desktop .shortcut-icon img {
    width: 24px !important;
    height: 24px !important;
  }

  .hero-nav {
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 62px !important;
    height: 62px !important;
  }

  .hero-nav-prev { left: 6px !important; }
  .hero-nav-next { right: 6px !important; }
}

/* v36.10 — hero blocks aligned to supplied reference image */
@media (min-width: 761px) {
  .hero-content {
    padding: 22px 42px 24px !important;
    gap: 0 !important;
    justify-content: flex-start !important;
  }

  .hero-copy-card,
  .hero-search-desktop,
  .type-shortcuts-desktop {
    width: min(100%, 1390px) !important;
    max-width: min(100%, 1390px) !important;
  }

  .hero-copy-card {
    width: min(100%, 720px) !important;
    max-width: min(100%, 720px) !important;
    margin: 34px 0 0 118px !important;
    padding: 22px 30px 18px !important;
    border-radius: 28px !important;
  }

  .hero-copy-card > * {
    max-width: 100% !important;
  }

  .hero-content h1 {
    font-size: clamp(3.8rem, 4.8vw, 5.25rem) !important;
    line-height: .92 !important;
    margin: 6px 0 12px !important;
  }

  .hero-copy-card p,
  .hero-content > p {
    max-width: 100% !important;
    font-size: 1rem !important;
    line-height: 1.36 !important;
  }

  .hero-search-desktop {
    margin: 18px 0 14px 16px !important;
    padding: 8px !important;
    gap: 10px !important;
    border-radius: 24px !important;
    grid-template-columns:
      minmax(0, 1.5fr)
      minmax(0, 1fr)
      minmax(0, 1fr)
      minmax(0, 1fr)
      minmax(210px, .96fr) !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    height: 78px !important;
    min-height: 78px !important;
    border-radius: 18px !important;
  }

  .hero-search-desktop .search-field {
    padding: 12px 18px !important;
  }

  .hero-search-desktop .hero-search-btn {
    padding-inline: 24px !important;
  }

  .type-shortcuts-desktop {
    margin-top: 4px !important;
    margin-left: 12px !important;
    gap: 12px !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 126px !important;
    height: 126px !important;
    padding: 10px 10px 12px !important;
    gap: 8px !important;
    border-radius: 22px !important;
  }

  .type-shortcuts-desktop .shortcut-icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 16px !important;
  }

  .type-shortcuts-desktop .shortcut-icon img {
    width: 26px !important;
    height: 26px !important;
  }

  .type-shortcuts-desktop .shortcut-card > span:last-child {
    font-size: .92rem !important;
    line-height: 1.12 !important;
  }

  .hero-nav {
    top: 42% !important;
    width: 70px !important;
    height: 70px !important;
    transform: translateY(-50%) !important;
  }

  .hero-nav-prev { left: 18px !important; }
  .hero-nav-next { right: 18px !important; }
}

/* v36.10.1 — pixel fine-tune for hero layout */
@media (min-width: 761px) {
  .hero-content {
    padding: 28px 44px 26px !important;
    gap: 0 !important;
    justify-content: flex-start !important;
  }

  .hero-copy-card {
    width: min(100%, 700px) !important;
    max-width: min(100%, 700px) !important;
    margin: 44px 0 0 132px !important;
    padding: 24px 34px 22px !important;
    border-radius: 30px !important;
  }

  .hero-content h1 {
    font-size: clamp(4rem, 4.95vw, 5.35rem) !important;
    line-height: .91 !important;
    margin: 8px 0 14px !important;
  }

  .hero-copy-card p,
  .hero-content > p {
    max-width: 585px !important;
    font-size: 1.02rem !important;
    line-height: 1.38 !important;
  }

  .hero-search-desktop {
    width: min(100%, 1405px) !important;
    max-width: min(100%, 1405px) !important;
    margin: 22px 0 16px 20px !important;
    padding: 9px !important;
    gap: 12px !important;
    border-radius: 25px !important;
    grid-template-columns:
      minmax(0, 1.55fr)
      minmax(0, 1fr)
      minmax(0, 1fr)
      minmax(0, 1.02fr)
      minmax(230px, 1fr) !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    height: 80px !important;
    min-height: 80px !important;
    border-radius: 18px !important;
  }

  .hero-search-desktop .search-field {
    padding: 13px 20px !important;
  }

  .hero-search-desktop .hero-search-btn {
    padding-inline: 30px !important;
    font-size: 1.05rem !important;
  }

  .type-shortcuts-desktop {
    width: min(100%, 1405px) !important;
    max-width: min(100%, 1405px) !important;
    margin-top: 6px !important;
    margin-left: 18px !important;
    gap: 14px !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 134px !important;
    height: 134px !important;
    padding: 12px 12px 14px !important;
    gap: 8px !important;
    border-radius: 24px !important;
  }

  .type-shortcuts-desktop .shortcut-icon {
    width: 52px !important;
    height: 52px !important;
    border-radius: 17px !important;
  }

  .type-shortcuts-desktop .shortcut-icon img {
    width: 28px !important;
    height: 28px !important;
  }

  .type-shortcuts-desktop .shortcut-card > span:last-child {
    font-size: .98rem !important;
    line-height: 1.1 !important;
  }

  .hero-nav {
    top: 43.5% !important;
    width: 72px !important;
    height: 72px !important;
    transform: translateY(-50%) !important;
  }

  .hero-nav-prev { left: 14px !important; }
  .hero-nav-next { right: 14px !important; }
}

/* v36.10.2 — hero alignment / arrow removal fine tune */
@media (min-width: 761px) {
  .hero-content {
    padding: 22px 44px 24px !important;
    gap: 0 !important;
    align-items: flex-start !important;
  }

  .hero-nav {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .hero-copy-card {
    margin: 34px 0 0 58px !important;
    width: min(100%, 860px) !important;
    max-width: min(100%, 860px) !important;
    padding: 22px 34px 20px !important;
  }

  .hero-search-desktop,
  .type-shortcuts-desktop {
    width: min(calc(100% - 116px), 1368px) !important;
    max-width: min(calc(100% - 116px), 1368px) !important;
    margin-left: 58px !important;
  }

  .hero-search-desktop {
    margin-top: 18px !important;
    margin-bottom: 12px !important;
    padding: 9px !important;
    gap: 12px !important;
    border-radius: 25px !important;
    grid-template-columns:
      minmax(310px, 1.95fr)
      minmax(180px, 1.08fr)
      minmax(180px, 1.08fr)
      minmax(170px, 1fr)
      minmax(260px, 1.12fr) !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    height: 82px !important;
    min-height: 82px !important;
  }

  .hero-search-desktop .search-field span,
  .hero-search-desktop .search-field select,
  .hero-search-desktop .hero-search-btn span {
    white-space: nowrap !important;
  }

  .type-shortcuts-desktop {
    margin-top: 0 !important;
    gap: 14px !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 138px !important;
    height: 138px !important;
    padding: 12px 12px 14px !important;
  }
}


/* v36.11 — hero left alignment fix + maintenance mode */
@media (min-width: 761px) {
  .hero-content {
    padding: 24px 34px 32px !important;
    gap: 0 !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    max-width: 100% !important;
  }

  .hero-copy-card {
    width: min(100%, 1160px) !important;
    max-width: calc(100% - 68px) !important;
    margin: 30px 0 0 34px !important;
    padding: 24px 40px 24px !important;
    align-self: flex-start !important;
  }

  .hero-search-desktop,
  .type-shortcuts-desktop {
    width: calc(100% - 68px) !important;
    max-width: calc(100% - 68px) !important;
    margin-left: 34px !important;
    margin-right: 0 !important;
    align-self: flex-start !important;
  }

  .hero-search-desktop {
    margin-top: 18px !important;
    margin-bottom: 14px !important;
    padding: 10px !important;
    gap: 10px !important;
    border-radius: 24px !important;
    grid-template-columns:
      minmax(0, 1.55fr)
      minmax(0, 0.9fr)
      minmax(0, 0.9fr)
      minmax(0, 0.95fr)
      minmax(210px, 0.95fr) !important;
  }

  .hero-search-desktop > *,
  .type-shortcuts-desktop > * {
    min-width: 0 !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    height: 82px !important;
    min-height: 82px !important;
  }

  .hero-search-desktop .search-field {
    padding: 13px 18px !important;
  }

  .hero-search-desktop .search-field span,
  .hero-search-desktop .search-field select,
  .hero-search-desktop .hero-search-btn,
  .hero-search-desktop .hero-search-btn span {
    white-space: nowrap !important;
  }

  .hero-search-desktop .hero-search-btn {
    width: 100% !important;
    justify-content: center !important;
    padding-inline: 24px !important;
  }

  .type-shortcuts-desktop {
    margin-top: 0 !important;
    gap: 12px !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }

  .type-shortcuts-desktop .shortcut-card {
    min-height: 134px !important;
    height: 134px !important;
    padding: 12px 10px 14px !important;
  }
}

.maintenance-body {
  min-height: 100vh;
  margin: 0;
  background:
    radial-gradient(circle at top left, rgba(255,122,0,.18), transparent 32%),
    radial-gradient(circle at bottom right, rgba(77,167,255,.12), transparent 28%),
    #05070b;
  color: var(--text);
}

.maintenance-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 28px;
}

.maintenance-shell {
  width: min(100%, 960px);
}

.maintenance-card {
  position: relative;
  overflow: hidden;
  padding: clamp(24px, 4vw, 42px);
  border-radius: 32px;
  background: linear-gradient(180deg, rgba(12,16,23,.92), rgba(8,10,16,.96));
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 28px 60px rgba(0,0,0,.34);
}

.maintenance-card::before {
  content: "";
  position: absolute;
  inset: auto -120px -120px auto;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,122,0,.28), transparent 70%);
  pointer-events: none;
}

.maintenance-brand {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.maintenance-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(255,122,0,.14);
  border: 1px solid rgba(255,122,0,.28);
  color: #ffd3ad;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: .78rem;
}

.maintenance-copy {
  margin-top: 30px;
}

.maintenance-copy h1 {
  margin: 10px 0 14px;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: .98;
  letter-spacing: -.04em;
}

.maintenance-copy p {
  margin: 0;
  max-width: 760px;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.65;
}

.maintenance-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 28px;
}

.maintenance-contact {
  display: grid;
  gap: 5px;
  min-height: 92px;
  padding: 18px 18px 16px;
  border-radius: 22px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  text-decoration: none;
  color: inherit;
}

.maintenance-contact strong {
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: #ffb36d;
}

.maintenance-contact span {
  color: var(--text);
  line-height: 1.5;
  word-break: break-word;
}

.maintenance-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.maintenance-socials {
  display: flex;
  gap: 10px;
  margin-top: 18px;
}

@media (max-width: 760px) {
  .maintenance-page { padding: 16px; }
  .maintenance-card { border-radius: 24px; padding: 22px 18px; }
  .maintenance-info-grid { grid-template-columns: 1fr; }
  .maintenance-brand img { width: 180px; height: auto; }
}

/* v36.12 — maintenance controls and communication UI */
.maintenance-admin-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 18px;
  padding: 16px 18px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.012));
}
.maintenance-admin-strip.is-active {
  border-color: rgba(255,122,0,.34);
  background: linear-gradient(180deg, rgba(255,122,0,.10), rgba(255,122,0,.035));
}
.maintenance-admin-strip.is-expired {
  border-color: rgba(244,201,93,.30);
  background: linear-gradient(180deg, rgba(244,201,93,.08), rgba(244,201,93,.025));
}
.maintenance-admin-state {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.maintenance-admin-state > div {
  display: grid;
  gap: 3px;
}
.maintenance-admin-state strong { font-size: .96rem; }
.maintenance-admin-state small { color: var(--muted); line-height: 1.4; }
.maintenance-status-dot {
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
  border-radius: 50%;
  background: #7b8492;
  box-shadow: 0 0 0 6px rgba(123,132,146,.10);
}
.maintenance-admin-strip.is-active .maintenance-status-dot,
.maintenance-status-badge.is-active > span {
  background: #ff7a00;
  box-shadow: 0 0 0 6px rgba(255,122,0,.12), 0 0 18px rgba(255,122,0,.28);
}
.maintenance-admin-strip.is-expired .maintenance-status-dot,
.maintenance-status-badge.is-expired > span {
  background: #f4c95d;
  box-shadow: 0 0 0 6px rgba(244,201,93,.10);
}
.maintenance-toggle-inline { margin: 0; flex: 0 0 auto; }
.maintenance-checkbox-row {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 70px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.018);
  cursor: pointer;
}
.maintenance-checkbox-row input {
  width: 21px;
  height: 21px;
  flex: 0 0 21px;
  accent-color: #ff7a00;
}
.maintenance-checkbox-row span { display: grid; gap: 4px; }
.maintenance-checkbox-row small { color: var(--muted); line-height: 1.45; }
.admin-hero-status-stack {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  gap: 10px;
}
.maintenance-quick-toggle { margin: 0; }
.maintenance-status-badge {
  appearance: none;
  border: 1px solid var(--line);
  border-radius: 999px;
  min-height: 38px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--text);
  background: rgba(255,255,255,.025);
  font: inherit;
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .035em;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, transform .16s ease;
}
.maintenance-status-badge:hover { transform: translateY(-1px); border-color: rgba(255,122,0,.38); }
.maintenance-status-badge > span {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;
  background: #5e6876;
}
.maintenance-status-badge.is-active {
  border-color: rgba(255,122,0,.30);
  background: rgba(255,122,0,.08);
  color: #ffd1a6;
}
.maintenance-status-badge.is-expired {
  border-color: rgba(244,201,93,.28);
  background: rgba(244,201,93,.06);
  color: #f7df9a;
}
.maintenance-until {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
  min-height: 48px;
  padding: 0 16px;
  border-radius: 15px;
  border: 1px solid rgba(255,122,0,.22);
  background: rgba(255,122,0,.07);
}
.maintenance-until span {
  color: #ffb36d;
  font-size: .74rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .09em;
}
.maintenance-until strong { font-size: .92rem; color: #fff; }
.btn-whatsapp {
  color: #fff;
  border-color: rgba(37,211,102,.40);
  background: linear-gradient(135deg, #1fbd5b, #169b49);
  box-shadow: 0 12px 26px rgba(22,155,73,.18);
}
.btn-whatsapp:hover {
  color: #fff;
  border-color: rgba(63,234,128,.60);
  background: linear-gradient(135deg, #25d366, #1baa52);
}
@media (max-width: 760px) {
  .maintenance-admin-strip { align-items: stretch; flex-direction: column; }
  .maintenance-toggle-inline .btn { width: 100%; }
  .admin-hero-status-stack { width: 100%; align-items: stretch; }
  .maintenance-status-badge { width: 100%; justify-content: center; }
  .maintenance-until { width: 100%; justify-content: space-between; gap: 8px; }
  .maintenance-actions .btn { width: 100%; justify-content: center; }
}

/* v36.12.1 — desktop hero search icon overlap + left alignment fix */
@media (min-width: 761px) {
  .hero-content {
    padding: 24px 34px 28px !important;
    gap: 14px !important;
    align-content: start !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
  }

  .hero-copy-card {
    width: min(100%, 980px) !important;
    max-width: calc(100% - 120px) !important;
    margin: 22px 0 0 34px !important;
    padding: 24px 34px 24px !important;
    align-self: flex-start !important;
  }

  .hero-search-desktop,
  .type-shortcuts-desktop {
    width: calc(100% - 68px) !important;
    max-width: calc(100% - 68px) !important;
    margin-left: 34px !important;
    margin-right: 0 !important;
    align-self: flex-start !important;
  }

  .hero-search-desktop {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
    padding: 10px !important;
    gap: 10px !important;
    border-radius: 24px !important;
    grid-template-columns:
      minmax(220px, 1.18fr)
      minmax(170px, 0.88fr)
      minmax(170px, 0.88fr)
      minmax(170px, 0.88fr)
      minmax(190px, 0.92fr) !important;
  }

  .hero-search-desktop .search-field,
  .hero-search-desktop .hero-search-btn {
    min-height: 82px !important;
    height: 82px !important;
  }

  .hero-search-desktop .search-field {
    padding: 12px 16px 12px 58px !important;
  }

  .hero-search-desktop .search-field::before {
    left: 18px !important;
    width: 24px !important;
    height: 24px !important;
    font-size: 1.08rem !important;
  }

  .hero-search-desktop .search-field span {
    display: block !important;
    margin-bottom: 2px !important;
    font-size: .66rem !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }

  .hero-search-desktop .search-field select {
    width: 100% !important;
    height: 32px !important;
    padding-right: 26px !important;
    font-size: .88rem !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .hero-search-desktop .hero-search-btn {
    min-width: 190px !important;
    width: 100% !important;
    justify-content: center !important;
    padding-inline: 24px !important;
  }

  .type-shortcuts-desktop {
    margin-top: 0 !important;
    gap: 12px !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

/* v36.13 — Agency Help Center + user profile */
.user-tech-sidebar { align-self:start; }
.help-center { min-width:0; }
.help-hero {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:18px;
  padding:28px 30px;
  border:1px solid var(--line);
  border-radius:26px;
  background:
    radial-gradient(circle at 92% 10%, rgba(255,122,0,.14), transparent 30%),
    linear-gradient(150deg, rgba(15,18,25,.98), rgba(8,11,17,.96));
  box-shadow:0 24px 52px rgba(0,0,0,.18);
}
.help-hero h1 { margin:5px 0 8px; font-size:clamp(2rem,3.2vw,3.2rem); letter-spacing:-.04em; }
.help-hero p { margin:0; max-width:780px; color:var(--muted); line-height:1.6; }
.help-hero-badge {
  flex:0 0 auto;
  width:130px;
  min-height:100px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:2px;
  border-radius:20px;
  border:1px solid rgba(255,122,0,.28);
  background:rgba(255,122,0,.08);
}
.help-hero-badge strong { font-size:2rem; color:var(--accent); }
.help-hero-badge span { color:var(--muted); font-size:.72rem; text-align:center; }
.help-jump-nav {
  position:sticky;
  top:82px;
  z-index:20;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(8,11,16,.88);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.help-jump-nav a {
  min-height:38px;
  display:inline-flex;
  align-items:center;
  padding:0 14px;
  border-radius:12px;
  color:var(--muted);
  text-decoration:none;
  font-size:.82rem;
  font-weight:760;
}
.help-jump-nav a:hover { color:#fff; background:rgba(255,122,0,.10); }
.help-note-card {
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin-bottom:18px;
  padding:16px 18px;
  border:1px solid rgba(255,122,0,.22);
  border-radius:18px;
  background:rgba(255,122,0,.055);
}
.help-note-icon {
  width:36px;height:36px;flex:0 0 36px;
  display:grid;place-items:center;border-radius:12px;
  color:#fff;background:linear-gradient(135deg,#ff7a00,#ff9e3d);font-weight:900;
}
.help-note-card p { margin:4px 0 0;color:var(--muted);line-height:1.55; }
.help-section {
  scroll-margin-top:150px;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);
  gap:24px;
  align-items:center;
  margin:0 0 20px;
  padding:26px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.022),rgba(255,255,255,.012));
}
.help-section-copy { display:grid;grid-template-columns:54px 1fr;gap:16px;min-width:0; }
.help-step-number {
  width:48px;height:48px;display:grid;place-items:center;border-radius:16px;
  color:var(--accent);background:rgba(255,122,0,.09);border:1px solid rgba(255,122,0,.22);font-weight:900;
}
.help-section h2 { margin:4px 0 10px;font-size:clamp(1.45rem,2vw,2rem);letter-spacing:-.03em; }
.help-section p { margin:0;color:var(--muted);line-height:1.6; }
.help-steps { margin:16px 0 0;padding-left:20px;color:var(--muted); }
.help-steps li { margin:0 0 9px;padding-left:3px;line-height:1.55; }
.help-steps strong { color:var(--text); }
.help-tip,.help-warning,.profile-security-note {
  margin-top:16px;padding:14px 16px;border-radius:15px;line-height:1.5;font-size:.88rem;
}
.help-tip { border:1px solid rgba(255,122,0,.20);background:rgba(255,122,0,.055);color:var(--muted); }
.help-tip strong { color:#ffb46d; }
.help-warning { border:1px solid rgba(255,96,96,.20);background:rgba(255,80,80,.055);color:#e4a8a8; }
.help-warning strong { color:#ff8c8c; }
.help-visual { margin:0;min-width:0; }
.help-visual img {
  display:block;width:100%;height:auto;aspect-ratio:900/520;object-fit:contain;
  border-radius:20px;box-shadow:0 18px 38px rgba(0,0,0,.20);
}
.help-visual figcaption { margin-top:8px;color:var(--muted);font-size:.76rem;text-align:center; }
.help-status-guide { margin-top:24px; }
.help-status-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.help-status-grid > div { padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface); }
.help-status-grid strong { display:block;margin:12px 0 5px; }
.help-status-grid p { margin:0;color:var(--muted);font-size:.82rem;line-height:1.5; }
.profile-command-hero { align-items:center; }
.profile-layout { display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:20px;align-items:start; }
.profile-form { margin:0; }
.profile-security-note { display:grid;gap:5px;border:1px solid rgba(46,164,255,.20);background:rgba(46,164,255,.055);color:var(--muted); }
.profile-security-note strong { color:#8ecaff; }
.profile-account-card {
  position:sticky;top:90px;
  padding:22px;border:1px solid var(--line);border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
}
.profile-account-card h2 { margin:7px 0 18px;font-size:1.6rem; }
.profile-meta-list { display:grid;gap:0;border-top:1px solid var(--line); }
.profile-meta-list > div { display:grid;gap:5px;padding:14px 0;border-bottom:1px solid var(--line); }
.profile-meta-list span { color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:750; }
.profile-meta-list strong,.profile-meta-list a { color:var(--text);font-size:.9rem;text-decoration:none;word-break:break-word; }
.profile-meta-list a:hover { color:var(--accent); }

:root[data-theme="light"] .help-hero,
:root[data-theme="light"] .help-jump-nav,
:root[data-theme="light"] .help-section,
:root[data-theme="light"] .profile-account-card {
  background:rgba(255,255,255,.92);
  box-shadow:0 18px 40px rgba(15,23,42,.08);
}
:root[data-theme="light"] .help-jump-nav a:hover { color:#111827; }

@media (max-width:1100px) {
  .help-section { grid-template-columns:1fr; }
  .help-visual { order:-1; }
  .help-status-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .profile-layout { grid-template-columns:1fr; }
  .profile-account-card { position:static; }
}
@media (max-width:760px) {
  .help-hero { align-items:flex-start;flex-direction:column;padding:22px 18px; }
  .help-hero-badge { width:100%;min-height:74px;grid-template-columns:auto auto;justify-content:center;gap:10px; }
  .help-jump-nav { position:static;overflow:auto;flex-wrap:nowrap; }
  .help-jump-nav a { white-space:nowrap; }
  .help-section { padding:18px 14px;border-radius:20px; }
  .help-section-copy { grid-template-columns:1fr; }
  .help-step-number { width:42px;height:42px; }
  .help-status-grid { grid-template-columns:1fr; }
  .profile-layout { gap:14px; }
}

/* v36.13.1 — hero copy card width reduction + centered bottom text */
@media (min-width: 761px) {
  .hero-copy-card {
    width: fit-content !important;
    max-width: min(100%, 860px) !important;
    min-width: 0 !important;
    margin: 22px 0 0 34px !important;
    padding: 24px 34px 24px !important;
  }

  .hero-copy-card p,
  .hero-copy-card > p {
    max-width: 700px !important;
    margin: 16px auto 0 !important;
    text-align: center !important;
  }
}

/* v36.13.2 — help in main navigation + tighter hero copy card */
@media (min-width: 761px) {
  .hero-copy-card {
    width: min(100%, 780px) !important;
    max-width: min(calc(100% - 68px), 780px) !important;
    min-width: 0 !important;
    margin: 22px 0 0 34px !important;
    padding: 24px 32px 22px !important;
  }

  .hero-copy-card p,
  .hero-copy-card > p {
    width: 100% !important;
    max-width: 660px !important;
    margin: 14px auto 0 !important;
    text-align: center !important;
  }
}

/* v36.13.5 — hero copy card narrowed to align near the Emlak Tipi field end */
@media (min-width: 761px) {
  .hero-copy-card {
    width: min(100%, 620px) !important;
    max-width: min(calc(100% - 68px), 620px) !important;
    min-width: 0 !important;
    margin: 22px 0 0 34px !important;
    padding: 24px 30px 22px !important;
  }

  .hero-copy-card p,
  .hero-copy-card > p {
    width: 100% !important;
    max-width: 100% !important;
    margin: 14px auto 0 !important;
    text-align: center !important;
  }
}

/* v36.13.6 — smaller hero headline; Help removed from public/main navigation */
@media (min-width: 761px) {
  .hero-copy-card h1,
  .hero-content h1 {
    font-size: clamp(3.1rem, 4vw, 4.45rem) !important;
    line-height: .92 !important;
    margin: 8px 0 12px !important;
  }
}

/* v36.13.7 — five-image hero rotation */
.hero-slide:nth-child(4) { object-position: 52% 51% !important; }
.hero-slide:nth-child(5) { object-position: 54% 50% !important; }
@media (max-width: 760px) {
  .hero-slide:nth-child(4) { object-position: 60% 50% !important; }
  .hero-slide:nth-child(5) { object-position: 62% 50% !important; }
}

/* v36.13.8 — admin light-theme parity + neighborhood-specific popular images */
:root[data-theme="light"] .tech-sidebar {
  border-color: rgba(255,122,0,.18);
  background:
    radial-gradient(circle at 30% 0%, rgba(255,122,0,.08), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f6f8fb 100%);
  box-shadow: 0 18px 44px rgba(15,23,42,.10);
}
:root[data-theme="light"] .sidebar-brand {
  border-bottom-color: var(--line);
}
:root[data-theme="light"] .tech-sidebar a {
  color: color-mix(in srgb, var(--text) 88%, transparent);
}
:root[data-theme="light"] .tech-sidebar a:hover,
:root[data-theme="light"] .tech-sidebar a.active {
  color: var(--text);
  background: rgba(255,122,0,.08);
  border-color: rgba(255,122,0,.18);
}
:root[data-theme="light"] .admin-command-hero {
  border-color: rgba(255,122,0,.18);
  background:
    radial-gradient(circle at 80% 20%, rgba(255,122,0,.10), transparent 28%),
    linear-gradient(135deg, #ffffff 0%, #f5f7fa 100%);
  box-shadow: 0 18px 48px rgba(15,23,42,.09);
}
:root[data-theme="light"] .admin-command-hero::after {
  border-color: rgba(255,122,0,.10);
  box-shadow: 0 0 0 42px rgba(255,122,0,.025), 0 0 0 84px rgba(255,122,0,.012);
}
:root[data-theme="light"] .tech-stat-grid .stat {
  border-color: rgba(255,122,0,.12);
  background: linear-gradient(180deg, #ffffff 0%, #f5f7fa 100%);
  box-shadow: 0 10px 28px rgba(15,23,42,.06);
}
:root[data-theme="light"] .stat-icon {
  background: rgba(255,122,0,.08);
  border-color: rgba(255,122,0,.16);
}
:root[data-theme="light"] .system-ready {
  border-color: rgba(22,163,74,.20);
  background: rgba(22,163,74,.07);
  color: #15803d;
}
:root[data-theme="light"] .maintenance-status-badge.is-off {
  background: #ffffff;
  border-color: var(--line-strong);
  color: var(--text);
}
:root[data-theme="light"] .maintenance-status-badge.is-active {
  background: rgba(255,122,0,.08);
  color: #b45309;
}
:root[data-theme="light"] .maintenance-status-badge.is-expired {
  background: rgba(217,119,6,.07);
  color: #92400e;
}

/* Popular-region thumbnails always fill their frame with the selected neighborhood image. */
.popular-list .place-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: center center;
}

/* v36.14 — admin-only information center + user/general marquee notices */
.notice-ticker,
.notice-preview {
  --notice-accent: #ff7a00;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 14px;
  min-height: 48px;
  padding: 8px 12px;
  margin: 0 0 14px;
  overflow: hidden;
  border: 1px solid rgba(255,122,0,.24);
  border-radius: 16px;
  background: linear-gradient(90deg, rgba(255,122,0,.095), rgba(11,15,21,.88) 18%, rgba(11,15,21,.94));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.notice-ticker-label {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 11px;
  border-radius: 10px;
  background: rgba(255,122,0,.12);
  border: 1px solid rgba(255,122,0,.22);
  color: #ffad62;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
  white-space: nowrap;
}
.notice-ticker-window {
  min-width: 0;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
}
.notice-ticker-track {
  display: flex;
  width: max-content;
  min-width: 100%;
  align-items: center;
  animation: etrivio-notice-marquee 24s linear infinite;
  will-change: transform;
}
.notice-ticker-track > span {
  flex: 0 0 auto;
  padding-right: 90px;
  color: var(--text);
  font-size: .86rem;
  font-weight: 720;
  letter-spacing: .01em;
  white-space: nowrap;
}
.notice-ticker:hover .notice-ticker-track,
.notice-preview:hover .notice-ticker-track { animation-play-state: paused; }
.notice-ticker-general {
  margin-bottom: 16px;
  background: linear-gradient(90deg, rgba(255,122,0,.12), rgba(9,12,17,.93) 20%, rgba(9,12,17,.96));
}
@keyframes etrivio-notice-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.notice-admin-hero { align-items: center; }
.notice-admin-summary { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.notice-admin-summary span {
  min-height: 36px; padding:0 12px; display:inline-flex; align-items:center;
  border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.025);
  color:var(--muted); font-size:.72rem; font-weight:800;
}
.notice-admin-form { margin-top: 18px; }
.notice-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.notice-config-card {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.026), rgba(255,255,255,.012));
  box-shadow: 0 20px 44px rgba(0,0,0,.10);
}
.notice-config-head { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.notice-config-head > div { display:flex; align-items:center; gap:10px; }
.notice-config-index {
  width:34px; height:34px; display:grid; place-items:center; border-radius:11px;
  background:rgba(255,122,0,.10); border:1px solid rgba(255,122,0,.22); color:var(--accent); font-weight:900; font-size:.72rem;
}
.notice-config-card h2 { margin:18px 0 8px; font-size:1.35rem; letter-spacing:-.025em; }
.notice-config-card > p { margin:0 0 18px; color:var(--muted); line-height:1.55; font-size:.88rem; }
.notice-switch { display:inline-flex; align-items:center; gap:8px; cursor:pointer; color:var(--muted); font-size:.76rem; }
.notice-switch input { position:absolute; opacity:0; pointer-events:none; }
.notice-switch span { position:relative; width:42px; height:24px; border-radius:999px; background:#242b34; border:1px solid var(--line); transition:.18s ease; }
.notice-switch span::after { content:''; position:absolute; top:3px; left:3px; width:16px; height:16px; border-radius:50%; background:#8d98a8; transition:.18s ease; }
.notice-switch input:checked + span { background:rgba(255,122,0,.22); border-color:rgba(255,122,0,.48); }
.notice-switch input:checked + span::after { left:21px; background:#ff7a00; }
.notice-switch input:checked ~ b { color:#ffad62; }
.notice-message-field { display:grid; gap:8px; }
.notice-message-field > span { font-size:.74rem; font-weight:800; color:var(--muted); text-transform:uppercase; letter-spacing:.07em; }
.notice-message-field textarea { width:100%; min-height:126px; resize:vertical; padding:14px 15px; border:1px solid var(--line); border-radius:15px; background:var(--surface-2); color:var(--text); font:inherit; line-height:1.55; outline:none; }
.notice-message-field textarea:focus { border-color:rgba(255,122,0,.40); box-shadow:0 0 0 3px rgba(255,122,0,.08); }
.notice-message-field small { color:var(--muted); line-height:1.45; }
.notice-preview { margin:16px 0 0; min-height:44px; background:rgba(8,11,16,.72); }
.notice-preview .notice-ticker-track > span { font-size:.78rem; }
.notice-admin-actions { display:flex; gap:10px; margin-top:18px; }

:root[data-theme="light"] .notice-ticker,
:root[data-theme="light"] .notice-preview {
  background: linear-gradient(90deg, rgba(255,122,0,.08), rgba(255,255,255,.97) 20%, rgba(248,250,252,.98));
  border-color: rgba(255,122,0,.18);
  box-shadow: 0 8px 22px rgba(15,23,42,.05);
}
:root[data-theme="light"] .notice-ticker-track > span { color:#172033; }
:root[data-theme="light"] .notice-ticker-label { color:#b75200; background:rgba(255,122,0,.08); }
:root[data-theme="light"] .notice-config-card { background:#fff; box-shadow:0 18px 38px rgba(15,23,42,.06); }
:root[data-theme="light"] .notice-switch span { background:#e8edf3; }

@media (max-width: 980px) {
  .notice-admin-grid { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
  .notice-ticker,
  .notice-preview { grid-template-columns:1fr; gap:7px; padding:8px 10px; border-radius:14px; }
  .notice-ticker-label { justify-self:start; min-height:26px; }
  .notice-ticker-track { animation-duration:20s; }
  .notice-ticker-track > span { font-size:.78rem; padding-right:60px; }
  .notice-config-card { padding:18px 16px; border-radius:20px; }
  .notice-config-head { align-items:flex-start; }
  .notice-admin-actions { flex-direction:column; }
  .notice-admin-actions .btn { width:100%; justify-content:center; }
}
@media (prefers-reduced-motion: reduce) {
  .notice-ticker-track { animation:none; transform:none; }
  .notice-ticker-window { mask-image:none; -webkit-mask-image:none; overflow:auto; }
}

/* v36.14.1 — single-message glass marquee, seamless end position */
.notice-ticker,
.notice-preview {
  --notice-accent: #ff7a00;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 56px;
  padding: 9px 14px;
  gap: 14px;
  border: 1px solid rgba(255, 148, 54, .30);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.018) 42%, rgba(255,122,0,.055)),
    rgba(7, 10, 15, .68);
  box-shadow:
    0 16px 38px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -1px 0 rgba(255,122,0,.06),
    0 0 0 1px rgba(255,122,0,.035);
  backdrop-filter: blur(20px) saturate(155%);
  -webkit-backdrop-filter: blur(20px) saturate(155%);
}
.notice-ticker::before,
.notice-preview::before {
  content: '';
  position: absolute;
  z-index: -1;
  width: 180px;
  height: 180px;
  left: -68px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,122,0,.18), transparent 70%);
  pointer-events: none;
}
.notice-ticker::after,
.notice-preview::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: linear-gradient(110deg, rgba(255,255,255,.065), transparent 24%, transparent 74%, rgba(255,122,0,.035));
  pointer-events: none;
}
.notice-ticker-label {
  min-height: 34px;
  padding: 0 13px;
  gap: 8px;
  border-radius: 11px;
  border: 1px solid rgba(255,143,45,.32);
  background: linear-gradient(180deg, rgba(255,122,0,.17), rgba(255,122,0,.08));
  color: #ffc28b;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 8px 18px rgba(0,0,0,.12);
}
.notice-ticker-label::before {
  content: '';
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: var(--notice-accent);
  box-shadow: 0 0 0 5px rgba(255,122,0,.10), 0 0 14px rgba(255,122,0,.46);
}
.notice-ticker-window {
  position: relative;
  min-width: 0;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 2.5%, #000 97.5%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 2.5%, #000 97.5%, transparent 100%);
}
.notice-ticker-track {
  display: block;
  width: max-content;
  min-width: max-content;
  padding-left: 100%;
  box-sizing: content-box;
  white-space: nowrap;
  will-change: transform;
  animation: etrivio-notice-marquee-single var(--notice-duration, 22s) linear infinite !important;
  transform: translate3d(0,0,0);
}
.notice-ticker-track > span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0;
  color: var(--text);
  font-size: .88rem;
  font-weight: 760;
  letter-spacing: .012em;
  white-space: nowrap;
  text-shadow: 0 1px 1px rgba(0,0,0,.18);
}
.notice-ticker:hover .notice-ticker-track,
.notice-preview:hover .notice-ticker-track {
  animation-play-state: running !important;
}
.notice-ticker-general {
  margin-bottom: 17px;
  border-color: rgba(255,143,45,.34);
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.015) 46%, rgba(255,122,0,.07)),
    rgba(7, 10, 15, .72);
}
.notice-ticker-user {
  border-color: rgba(255,143,45,.27);
}
@keyframes etrivio-notice-marquee-single {
  0%   { transform: translate3d(0,0,0); }
  100% { transform: translate3d(-100%,0,0); }
}

:root[data-theme="light"] .notice-ticker,
:root[data-theme="light"] .notice-preview {
  border-color: rgba(219,100,0,.20);
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(255,255,255,.74) 46%, rgba(255,122,0,.055)),
    rgba(248,250,252,.84);
  box-shadow:
    0 14px 32px rgba(15,23,42,.09),
    inset 0 1px 0 rgba(255,255,255,.98),
    0 0 0 1px rgba(255,122,0,.025);
  backdrop-filter: blur(20px) saturate(135%);
  -webkit-backdrop-filter: blur(20px) saturate(135%);
}
:root[data-theme="light"] .notice-ticker::before,
:root[data-theme="light"] .notice-preview::before {
  background: radial-gradient(circle, rgba(255,122,0,.11), transparent 70%);
}
:root[data-theme="light"] .notice-ticker-label {
  color: #a94700;
  border-color: rgba(219,100,0,.20);
  background: linear-gradient(180deg, rgba(255,122,0,.105), rgba(255,122,0,.045));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 6px 16px rgba(15,23,42,.05);
}
:root[data-theme="light"] .notice-ticker-track > span {
  color: #172033;
  text-shadow: none;
}

@media (max-width: 760px) {
  .notice-ticker,
  .notice-preview {
    min-height: 52px;
    padding: 8px 10px;
    gap: 8px;
    border-radius: 15px;
  }
  .notice-ticker-label {
    min-height: 29px;
    padding-inline: 10px;
    font-size: .62rem;
  }
  .notice-ticker-track > span {
    min-height: 27px;
    font-size: .79rem;
  }
}

/* Bilgilendirme, işletim sistemi hareket azaltma ayarında da çalışmaya devam eder. */
@media (prefers-reduced-motion: reduce) {
  .notice-ticker-track {
    animation: etrivio-notice-marquee-single var(--notice-duration, 26s) linear infinite !important;
    transform: translate3d(0,0,0) !important;
  }
  .notice-ticker-window {
    overflow: hidden !important;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 2.5%, #000 97.5%, transparent 100%) !important;
    mask-image: linear-gradient(90deg, transparent 0, #000 2.5%, #000 97.5%, transparent 100%) !important;
  }
}

/* v36.14.2 — notice visibility fail-safe + deterministic marquee */
.notice-ticker[data-notice-active="1"] {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.notice-ticker-window[data-notice-window] {
  position: relative !important;
  min-height: 34px;
  overflow: hidden !important;
}
.notice-ticker-track[data-notice-track] {
  position: relative;
  display: inline-flex !important;
  align-items: center;
  width: max-content !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  animation: none !important;
  transform: none;
  will-change: transform;
}
.notice-ticker-track[data-notice-track] > span {
  display: inline-flex !important;
  align-items: center;
  min-height: 34px;
  padding: 0 22px 0 0 !important;
  white-space: nowrap;
}
.notice-ticker-window.is-running .notice-ticker-track[data-notice-track] {
  position: absolute;
  left: 0;
  top: 50%;
}
.notice-ticker-window.is-css-running .notice-ticker-track[data-notice-track] {
  animation: etrivio-notice-marquee-v2 var(--notice-duration, 24s) linear infinite !important;
}
@keyframes etrivio-notice-marquee-v2 {
  from { transform: translate3d(var(--notice-start, 1000px), -50%, 0); }
  to   { transform: translate3d(var(--notice-end, -1000px), -50%, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .notice-ticker-window.is-css-running .notice-ticker-track[data-notice-track] {
    animation: etrivio-notice-marquee-v2 var(--notice-duration, 28s) linear infinite !important;
  }
}

/* v36.14.3 — stable single-line glass ticker; CSS-only continuous marquee */
.notice-ticker,
.notice-preview {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-height: 62px !important;
  padding: 10px 14px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 143, 45, .34) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.018) 46%, rgba(255,122,0,.075)),
    rgba(7,10,15,.76) !important;
  box-shadow:
    0 16px 38px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -1px 0 rgba(255,122,0,.08),
    0 0 0 1px rgba(255,122,0,.04) !important;
  backdrop-filter: blur(20px) saturate(155%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(155%) !important;
}

.notice-ticker-label {
  position: relative !important;
  z-index: 3 !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  min-height: 38px !important;
  padding: 0 14px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(255,143,45,.36) !important;
  background: linear-gradient(180deg, rgba(255,122,0,.18), rgba(255,122,0,.09)) !important;
  color: #ffc28b !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 8px 18px rgba(0,0,0,.13) !important;
  white-space: nowrap !important;
}

.notice-ticker-window,
.notice-ticker-window[data-notice-window] {
  position: relative !important;
  z-index: 2 !important;
  flex: 1 1 auto !important;
  display: block !important;
  min-width: 0 !important;
  width: auto !important;
  height: 40px !important;
  min-height: 40px !important;
  overflow: hidden !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 2.5%, #000 97.5%, transparent 100%) !important;
  mask-image: linear-gradient(90deg, transparent 0, #000 2.5%, #000 97.5%, transparent 100%) !important;
}

.notice-ticker-track,
.notice-ticker-track[data-notice-track] {
  position: absolute !important;
  top: 50% !important;
  left: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  width: max-content !important;
  min-width: max-content !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  transform: translate3d(0,-50%,0) !important;
  animation: etrivio-notice-marquee-v3 var(--notice-duration, 22s) linear infinite !important;
  will-change: left, transform !important;
}

.notice-ticker-track > span,
.notice-ticker-track[data-notice-track] > span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 38px !important;
  padding: 0 !important;
  color: var(--text) !important;
  font-size: .9rem !important;
  font-weight: 760 !important;
  line-height: 1.25 !important;
  letter-spacing: .012em !important;
  white-space: nowrap !important;
  text-shadow: 0 1px 1px rgba(0,0,0,.18) !important;
}

.notice-ticker:hover .notice-ticker-track,
.notice-preview:hover .notice-ticker-track {
  animation-play-state: running !important;
}

@keyframes etrivio-notice-marquee-v3 {
  0% {
    left: 100%;
    transform: translate3d(0,-50%,0);
  }
  100% {
    left: 0%;
    transform: translate3d(-100%,-50%,0);
  }
}

:root[data-theme="light"] .notice-ticker,
:root[data-theme="light"] .notice-preview {
  border-color: rgba(219,100,0,.22) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,255,255,.80) 48%, rgba(255,122,0,.07)),
    rgba(248,250,252,.90) !important;
  box-shadow:
    0 14px 32px rgba(15,23,42,.09),
    inset 0 1px 0 rgba(255,255,255,.98),
    0 0 0 1px rgba(255,122,0,.03) !important;
}

:root[data-theme="light"] .notice-ticker-label {
  color: #a94700 !important;
  border-color: rgba(219,100,0,.22) !important;
  background: linear-gradient(180deg, rgba(255,122,0,.12), rgba(255,122,0,.05)) !important;
}

:root[data-theme="light"] .notice-ticker-track > span,
:root[data-theme="light"] .notice-ticker-track[data-notice-track] > span {
  color: #172033 !important;
  text-shadow: none !important;
}

@media (max-width: 760px) {
  .notice-ticker,
  .notice-preview {
    gap: 9px !important;
    min-height: 56px !important;
    padding: 8px 10px !important;
    border-radius: 15px !important;
  }
  .notice-ticker-label {
    min-height: 34px !important;
    padding: 0 10px !important;
    font-size: .62rem !important;
  }
  .notice-ticker-window,
  .notice-ticker-window[data-notice-window] {
    height: 36px !important;
    min-height: 36px !important;
  }
  .notice-ticker-track > span,
  .notice-ticker-track[data-notice-track] > span {
    min-height: 34px !important;
    font-size: .80rem !important;
  }
  .notice-ticker-track,
  .notice-ticker-track[data-notice-track] {
    --notice-duration: 18s;
  }
}

@media (prefers-reduced-motion: reduce) {
  .notice-ticker-track,
  .notice-ticker-track[data-notice-track] {
    animation: etrivio-notice-marquee-v3 var(--notice-duration, 24s) linear infinite !important;
  }
}

/* v36.14.4 — JS-driven notice ticker; fixes frozen animation and keeps text inside glass frame */
.notice-ticker-window,
.notice-ticker-window[data-notice-window],
.notice-preview .notice-ticker-window {
  position: relative !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  height: 40px !important;
  min-height: 40px !important;
  overflow: hidden !important;
  contain: paint !important;
}

.notice-ticker-track,
.notice-ticker-track[data-notice-track],
.notice-preview .notice-ticker-track {
  position: absolute !important;
  top: 50% !important;
  left: 10px !important;
  right: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  width: max-content !important;
  min-width: max-content !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  transform: translateY(-50%) !important;
  animation: none !important;
  will-change: left !important;
}

.notice-ticker-track > span,
.notice-ticker-track[data-notice-track] > span,
.notice-preview .notice-ticker-track > span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 0 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

/* JS kapalı olsa bile mesaj çerçevenin içinde görünür kalır. */
.no-js .notice-ticker-track,
.no-js .notice-preview .notice-ticker-track {
  left: 10px !important;
}

@media (max-width: 760px) {
  .notice-ticker-window,
  .notice-ticker-window[data-notice-window],
  .notice-preview .notice-ticker-window {
    height: 36px !important;
    min-height: 36px !important;
  }
}

/* v36.15 — multi-currency price inputs + TCMB effective selling integration */
.currency-switch {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.025);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.currency-switch label {
  position: relative;
  margin: 0;
  cursor: pointer;
}
.currency-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.currency-switch span {
  width: 32px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: var(--muted);
  font-size: .9rem;
  font-weight: 900;
  line-height: 1;
  transition: background .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.currency-switch label:hover span {
  color: var(--text);
  background: rgba(255,122,0,.07);
}
.currency-switch input:checked + span {
  color: #fff;
  background: linear-gradient(135deg,#ff7a00,#ff9b35);
  box-shadow: 0 7px 18px rgba(255,122,0,.24);
}
.currency-switch input:focus-visible + span {
  outline: 2px solid rgba(255,122,0,.58);
  outline-offset: 2px;
}
.field-label-row,
.price-field-head,
.fx-filter-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.field-label-row > label { margin: 0; }
.price-entry-field > input { width: 100%; }
.fx-rate-line,
.fx-equivalent,
.price-try-equivalent,
.detail-fx-equivalent {
  display: block;
  margin-top: 7px;
  color: var(--muted);
  font-size: .7rem;
  line-height: 1.4;
  font-style: normal;
}
.fx-equivalent,
.price-try-equivalent,
.detail-fx-equivalent {
  color: #ffb36d;
  font-weight: 780;
}
.price-try-equivalent {
  margin-top: 3px;
  font-size: .67rem;
}
.detail-fx-equivalent {
  margin-top: 6px;
  font-size: .78rem;
}
.currency-switch-mini {
  padding: 2px;
  gap: 2px;
  border-radius: 9px;
  background: rgba(0,0,0,.12);
}
.currency-switch-mini span {
  width: 24px;
  height: 23px;
  border-radius: 7px;
  font-size: .72rem;
}
.price-search-field {
  gap: 4px !important;
}
.price-search-field .price-field-head {
  width: 100%;
  min-width: 0;
}
.price-search-field .price-field-head > span {
  margin: 0 !important;
}
.price-search-field select {
  margin-top: 0 !important;
}
.currency-switch-filter span {
  width: 29px;
  height: 28px;
  font-size: .8rem;
}
.fx-filter-block .filter-grid-2 { margin-top: 10px; }
.home-fx-rate { margin-top: 9px; }

:root[data-theme="light"] .currency-switch {
  background: rgba(15,23,42,.025);
  border-color: rgba(15,23,42,.10);
}
:root[data-theme="light"] .currency-switch label:hover span {
  color: #172033;
  background: rgba(255,122,0,.07);
}
:root[data-theme="light"] .fx-rate-line { color: #667085; }

@media (max-width: 760px) {
  .currency-switch-form span { width: 30px; height: 29px; }
  .price-search-field .price-field-head { align-items: center; }
  .currency-switch-mini span { width: 26px; height: 24px; }
}
/* v36.15 currency-control specificity fixes */
.currency-switch input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
.quick-filter-rich .currency-switch label > span,
.field .currency-switch label > span,
.hero-search .currency-switch label > span {
  width: 32px;
  height: 30px;
  display: grid;
  place-items: center;
  padding: 0;
  border-radius: 9px;
  color: var(--muted);
  font-size: .9rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
}
.hero-search .currency-switch-mini label > span {
  width: 24px;
  height: 23px;
  border-radius: 7px;
  font-size: .72rem;
}
.quick-filter-rich .currency-switch-filter label > span {
  width: 29px;
  height: 28px;
  font-size: .8rem;
}
.currency-switch input:checked + span,
.quick-filter-rich .currency-switch input:checked + span,
.field .currency-switch input:checked + span,
.hero-search .currency-switch input:checked + span {
  color: #fff;
  background: linear-gradient(135deg,#ff7a00,#ff9b35);
  box-shadow: 0 7px 18px rgba(255,122,0,.24);
}
.hero-search .price-search-field::before { content: '▥' !important; }

/* v36.15.1 — FX header card + compact price currency controls */
.nav-fx-rates {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 13px;
  background:
    radial-gradient(circle at 15% 0%, rgba(255,122,0,.10), transparent 42%),
    rgba(255,255,255,.025);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 8px 24px rgba(0,0,0,.10);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  white-space: nowrap;
}
.nav-fx-rate {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  line-height: 1;
}
.nav-fx-rate b {
  color: var(--accent);
  font-size: .9rem;
  font-weight: 900;
}
.nav-fx-rate strong {
  color: var(--text);
  font-size: .75rem;
  font-weight: 820;
  letter-spacing: -.01em;
  font-variant-numeric: tabular-nums;
}
.nav-fx-separator {
  width: 1px;
  height: 20px;
  background: var(--line);
}
:root[data-theme="light"] .nav-fx-rates {
  border-color: rgba(15,23,42,.10);
  background:
    radial-gradient(circle at 15% 0%, rgba(255,122,0,.09), transparent 42%),
    rgba(255,255,255,.82);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.90), 0 8px 24px rgba(15,23,42,.06);
}

/* Banner price currency controls: keep all 3 symbols inside the field, on the right. */
.hero-search .price-search-field {
  position: relative;
  overflow: hidden;
}
.hero-search .price-search-field .price-field-head {
  min-width: 0;
  gap: 5px;
}
.hero-search .price-search-field .price-field-head > span {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
}
.hero-search .price-search-field .currency-switch-mini {
  flex: 0 0 auto;
  gap: 1px;
  padding: 1px;
  border-radius: 8px;
}
.hero-search .price-search-field .currency-switch-mini label > span {
  width: 19px !important;
  height: 20px !important;
  border-radius: 6px !important;
  font-size: .62rem !important;
}
@media (min-width: 761px) {
  .hero-search-desktop .price-search-field {
    padding-right: 10px !important;
  }
  .hero-search-desktop .price-search-field .price-field-head > span {
    font-size: .61rem !important;
  }
}

/* Quick filter: compact selector stays to the right of Fiyat Aralığı. */
.quick-filter-rich .fx-filter-head {
  width: 100%;
  min-width: 0;
  gap: 8px;
}
.quick-filter-rich .fx-filter-head > span {
  min-width: 0;
  flex: 1 1 auto;
}
.quick-filter-rich .currency-switch-filter {
  flex: 0 0 auto;
  gap: 2px;
  padding: 2px;
}
.quick-filter-rich .currency-switch-filter label > span {
  width: 25px !important;
  height: 26px !important;
  border-radius: 8px !important;
  font-size: .75rem !important;
}

/* Admin + agency listing form: currency selector lives inside price input, on its right. */
.price-entry-field .field-label-row {
  min-height: 22px;
  margin-bottom: 6px;
}
.price-input-shell {
  position: relative;
  width: 100%;
  min-width: 0;
}
.price-entry-field .price-input-shell > input {
  width: 100% !important;
  min-height: 52px;
  padding-right: 122px !important;
}
.price-input-shell .currency-switch-form {
  position: absolute;
  top: 50%;
  right: 8px;
  z-index: 2;
  transform: translateY(-50%);
  flex: 0 0 auto;
  gap: 2px;
  padding: 2px;
  border-radius: 10px;
  background: color-mix(in srgb, var(--surface-3) 86%, transparent);
  box-shadow: 0 6px 16px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.03);
}
.field .price-input-shell .currency-switch-form label > span {
  width: 30px !important;
  height: 30px !important;
  border-radius: 8px !important;
  font-size: .82rem !important;
}
:root[data-theme="light"] .price-input-shell .currency-switch-form {
  background: rgba(241,243,246,.94);
  box-shadow: 0 6px 16px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.9);
}

@media (max-width: 1180px) {
  .nav-fx-rates { padding-inline: 10px; gap: 7px; }
  .nav-fx-rate strong { font-size: .7rem; }
}
@media (max-width: 920px) {
  .nav-fx-rates { display: none; }
}
@media (max-width: 760px) {
  .hero-search .price-search-field .currency-switch-mini label > span {
    width: 23px !important;
    height: 23px !important;
    font-size: .68rem !important;
  }
  .price-entry-field .price-input-shell > input { padding-right: 116px !important; }
  .field .price-input-shell .currency-switch-form label > span {
    width: 28px !important;
    height: 28px !important;
  }
}

/* v36.15.1 hero price field gets full usable width for the 3-symbol switch. */
@media (min-width: 761px) {
  .hero-search-desktop .price-search-field {
    padding-left: 16px !important;
  }
  .hero-search-desktop .price-search-field::before {
    display: none !important;
  }
}

/* v36.15.2 — compact price rows, one-line basic metrics, tighter banner/filter FX layout */
@media (min-width: 761px) {
  /* Banner: shorter Search button, slightly wider price field, all currency symbols remain inside. */
  .hero-search-desktop {
    grid-template-columns:
      minmax(220px, 1.24fr)
      minmax(165px, .88fr)
      minmax(165px, .88fr)
      minmax(205px, 1.02fr)
      minmax(142px, .66fr) !important;
  }

  .hero-search-desktop .hero-search-btn {
    min-width: 142px !important;
    padding-inline: 16px !important;
  }

  .hero-search-desktop .price-search-field {
    padding-left: 14px !important;
    padding-right: 9px !important;
  }

  .hero-search-desktop .price-search-field .price-field-head {
    gap: 4px !important;
  }

  .hero-search-desktop .price-search-field .price-field-head > span {
    font-size: .66rem !important;
    flex: 0 1 auto !important;
  }

  .hero-search-desktop .price-search-field .currency-switch-mini {
    margin-left: auto !important;
  }

  .hero-search-desktop .price-search-field .currency-switch-mini label > span {
    width: 20px !important;
    height: 20px !important;
    font-size: .63rem !important;
  }
}

/* Quick filter: compact metre range and price inputs + currency switch in the same row. */
.quick-filter-rich .compact-range-row,
.quick-filter-rich .fx-filter-row {
  display: grid;
  align-items: end;
  gap: 8px;
}
.quick-filter-rich .compact-range-row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.quick-filter-rich .fx-filter-row {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
}
.quick-filter-rich .fx-filter-row > label,
.quick-filter-rich .compact-range-row > label {
  display: grid;
  gap: 6px;
  min-width: 0;
}
.quick-filter-rich .compact-range-row input,
.quick-filter-rich .fx-filter-row input {
  min-height: 44px !important;
  height: 44px !important;
  padding-inline: 11px !important;
  border-radius: 12px !important;
  font-size: .88rem !important;
}
.quick-filter-rich .fx-filter-head {
  margin-bottom: 7px;
}
.quick-filter-rich .fx-inline-switch {
  display: flex;
  align-items: flex-end;
  min-width: 0;
  padding-bottom: 1px;
}
.quick-filter-rich .fx-inline-switch .currency-switch-filter {
  gap: 1px !important;
  padding: 2px !important;
  border-radius: 10px !important;
}
.quick-filter-rich .fx-inline-switch .currency-switch-filter label > span {
  width: 24px !important;
  height: 38px !important;
  border-radius: 8px !important;
  font-size: .72rem !important;
}

/* Admin/agency basic information: six equal controls on one desktop row. */
@media (min-width: 1181px) {
  .price-entry-field,
  .price-entry-field + .field,
  .price-entry-field + .field + .field,
  .price-entry-field + .field + .field + .field,
  .price-entry-field + .field + .field + .field + .field,
  .price-entry-field + .field + .field + .field + .field + .field {
    grid-column: span 2 !important;
  }

  .price-entry-field .price-input-shell > input {
    min-height: 50px !important;
    padding-right: 104px !important;
  }
  .price-input-shell .currency-switch-form {
    right: 6px !important;
    gap: 1px !important;
    padding: 2px !important;
  }
  .field .price-input-shell .currency-switch-form label > span {
    width: 27px !important;
    height: 28px !important;
    border-radius: 7px !important;
    font-size: .76rem !important;
  }
}

@media (max-width: 760px) {
  .quick-filter-rich .fx-filter-row {
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto;
    gap: 6px;
  }
  .quick-filter-rich .fx-inline-switch .currency-switch-filter label > span {
    width: 22px !important;
    height: 38px !important;
    font-size: .68rem !important;
  }
}

@media (min-width: 761px) {
  .quick-filter-rich .sqm-range-row {
    width: calc(100% - 82px);
  }
}

/* v36.15.3 — refined listing form rows + compact building fields + banner FX alignment */
/* Temel Bilgiler: fiyat daha geniş, brüt/net daha dar; tüm kontroller aynı yükseklikte. */
.basic-metrics-row {
  display: grid;
  grid-template-columns:
    minmax(300px, 1.55fr)
    minmax(118px, .72fr)
    minmax(118px, .72fr)
    minmax(150px, 1fr)
    minmax(130px, .88fr)
    minmax(130px, .88fr);
  gap: 12px;
  align-items: end;
  min-width: 0;
}
.basic-metrics-row .field {
  min-width: 0;
  align-self: start;
}
.basic-metrics-row .field input,
.basic-metrics-row .field select,
.basic-metrics-row .price-input-shell > input {
  height: 52px !important;
  min-height: 52px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.basic-metrics-row .price-entry-field .field-label-row {
  min-height: 22px !important;
}
.basic-metrics-row .price-entry-field .price-input-shell > input {
  padding-right: 108px !important;
}
.basic-metrics-row .price-input-shell .currency-switch-form {
  right: 6px !important;
  gap: 1px !important;
  padding: 2px !important;
}
.basic-metrics-row .price-input-shell .currency-switch-form label > span {
  width: 27px !important;
  height: 28px !important;
  display: grid !important;
  place-items: center !important;
  line-height: 1 !important;
}

/* Bina & Kullanım: bütün giriş/select kutuları kompakt, tek satır ve eşit yükseklik. */
.building-use-grid {
  gap: 10px 12px !important;
  align-items: start !important;
}
.building-use-grid .field {
  gap: 5px !important;
  align-self: start !important;
}
.building-use-grid .field input,
.building-use-grid .field select {
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 12px !important;
  border-radius: 12px !important;
  line-height: 1.2 !important;
}

/* Banner: Fiyat yazısı ile ₺/$/€ grubu birbirine yakın ve her simge kendi kutusunda tam ortalı. */
.hero-search .price-search-field .price-field-head {
  justify-content: flex-start !important;
  gap: 7px !important;
}
.hero-search .price-search-field .price-field-head > span {
  flex: 0 0 auto !important;
  width: auto !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
.hero-search .price-search-field .currency-switch-mini {
  margin-left: 0 !important;
  min-width: 72px !important;
  padding: 2px !important;
  gap: 2px !important;
  justify-content: center !important;
  border-radius: 9px !important;
}
.hero-search .price-search-field .currency-switch-mini label {
  display: grid !important;
  place-items: center !important;
}
.hero-search .price-search-field .currency-switch-mini label > span {
  width: 21px !important;
  height: 22px !important;
  min-width: 21px !important;
  min-height: 22px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  line-height: 1 !important;
  font-size: .68rem !important;
  border-radius: 6px !important;
}

@media (min-width: 761px) {
  .hero-search-desktop .price-search-field {
    padding-left: 14px !important;
    padding-right: 10px !important;
  }
  .hero-search-desktop .price-search-field .price-field-head {
    width: 100% !important;
  }
}

@media (max-width: 1180px) {
  .basic-metrics-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .basic-metrics-row .price-entry-field {
    grid-column: span 2;
  }
}

@media (max-width: 760px) {
  .basic-metrics-row {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .basic-metrics-row .price-entry-field {
    grid-column: span 1;
  }
  .building-use-grid .field input,
  .building-use-grid .field select {
    height: 48px !important;
    min-height: 48px !important;
  }
  .hero-search .price-search-field .currency-switch-mini {
    min-width: 78px !important;
  }
  .hero-search .price-search-field .currency-switch-mini label > span {
    width: 23px !important;
    height: 23px !important;
    min-width: 23px !important;
    min-height: 23px !important;
  }
}

/* v36.15.3 specificity guard: eski altı eşit kolon kuralını özel metrik satırında devre dışı bırak. */
.basic-metrics-row > .field {
  grid-column: auto !important;
}
@media (max-width: 1180px) and (min-width: 761px) {
  .basic-metrics-row > .price-entry-field {
    grid-column: span 2 !important;
  }
}
@media (max-width: 760px) {
  .basic-metrics-row > .price-entry-field {
    grid-column: auto !important;
  }
}
