/* =========================
   Primadom AI System
   District / Area Page CSS

   Strict production order:
   00 Base / Tokens / Reset
   01 Header
   01 Header / Mobile
   02 Breadcrumbs
   02 Breadcrumbs / Mobile
   03 Area Hero + H1 + Price Level + AI Project Finder
   03 Area Hero + H1 + Price Level + AI Project Finder / Mobile
   04 Shared Area Cards
   04 Shared Area Cards / Mobile
   05 Short Verdict + Area Facts
   05 Short Verdict + Area Facts / Mobile
   06 Buyer Fit + Area Logic
   06 Buyer Fit + Area Logic / Mobile
   07 Lifestyle / Investment / Family / AI Context
   07 Lifestyle / Investment / Family / AI Context / Mobile
   08 Top Projects + Developer Presence
   08 Top Projects + Developer Presence / Mobile
   09 Landmarks + Location / Map Context
   09 Landmarks + Location / Map Context / Mobile
   10 Similar Districts + FAQ + Trust Sources
   10 Similar Districts + FAQ + Trust Sources / Mobile
   11 Source Notes / Last Updated
   11 Source Notes / Last Updated / Mobile
   12 CTA
   12 CTA / Mobile
   13 Lead Modal
   13 Lead Modal / Mobile
   14 Footer
   14 Footer / Mobile
   15 RTL Helpers
========================= */

@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;650;700;800;900&display=swap");

/* =========================
   00 Base / Tokens / Reset
========================= */
:root {
  --font-main: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --white: #ffffff;
  --dark: #070604;
  --dark2: #17120f;
  --cream: #f7d8aa;
  --copper: #c86b47;
  --sand: #f6f0e8;
  --sand2: #eee5da;
  --ink: #111111;
  --muted: rgba(17,17,17,.62);
  --gap: 230px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: var(--dark);
  color: var(--ink);
}

body {
  margin: 0;
  font-family: var(--font-main);
  background:
    radial-gradient(circle at 12% 18%, rgba(198, 107, 71, 0.075), transparent 32%),
    radial-gradient(circle at 88% 8%, rgba(247, 216, 170, 0.16), transparent 36%),
    radial-gradient(circle at 50% 62%, rgba(255, 255, 255, 0.30), transparent 44%),
    linear-gradient(180deg, #f3eadf 0%, #efe5da 46%, #eadfd2 100%);
  color: var(--ink);
  line-height: 1.5;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
textarea {
  font-family: inherit;
}

button {
  border: 0;
  cursor: pointer;
}

img {
  max-width: 100%;
  display: block;
}

.pd-price,
.pa-price,
.pa-price-pill,
.pa-price-pill strong {
  direction: ltr;
  unicode-bidi: isolate;
}

/* =========================
   01 Header
========================= */
.pa-header {
  position: absolute;
  top: 26px;
  left: 0;
  right: 0;
  z-index: 80;
  padding: 0 100px;
  pointer-events: none;
  font-family: var(--font-main);
}

.pa-header__inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 22px;
}

.pa-header__badge,
.pa-header__nav,
.pa-header__right,
.pa-header__cta {
  pointer-events: auto;
}

.pa-header__badge {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  height: 46px;
  padding: 0 22px 0 17px;
  border-radius: 999px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 14px 40px rgba(0,0,0,.22);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.pa-header__badge-dot {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;
  background: #f4d79d;
  box-shadow:
    0 0 0 8px rgba(244,215,157,.14),
    0 0 20px rgba(244,215,157,.55);
}

.pa-header__nav {
  justify-self: center;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 52px;
  padding: 6px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 16px 48px rgba(0,0,0,.22);
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
}

.pa-header__nav-link {
  min-width: 126px;
  height: 40px;
  padding: 0 18px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.76);
  font-size: 14px;
  font-weight: 450;
  white-space: nowrap;
  transition: .22s ease;
}

.pa-header__nav-link:hover,
.pa-header__nav-link.is-active {
  color: #fff;
  background: rgba(255,255,255,.14);
  transform: translateY(-2px);
}

.pa-header__right {
  justify-self: end;
}

.pa-header__cta {
  height: 52px;
  padding: 0 30px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #15100d;
  font-size: 15px;
  font-weight: 750;
  white-space: nowrap;
  background: linear-gradient(135deg, #f7d3a2, #c86a47);
  box-shadow:
    0 18px 48px rgba(117,49,25,.30),
    inset 0 1px 0 rgba(255,255,255,.34);
  transition:
    transform .24s ease,
    box-shadow .24s ease,
    filter .24s ease;
  will-change: transform;
}

.pa-header__cta:hover {
  transform: translateY(-3px);
  filter: saturate(1.06) brightness(1.02);
  box-shadow:
    0 24px 58px rgba(117,49,25,.40),
    inset 0 1px 0 rgba(255,255,255,.42);
}

.pa-header__cta:active {
  transform: translateY(-1px);
  box-shadow:
    0 16px 38px rgba(117,49,25,.32),
    inset 0 1px 0 rgba(255,255,255,.34);
}

/* =========================
   01 Header / Mobile
========================= */
@media (max-width: 1380px) {
  .pa-header {
    padding: 0 64px;
  }
}

@media (max-width: 1180px) {
  .pa-header {
    padding: 0 28px;
  }

  .pa-header__inner {
    grid-template-columns: 1fr auto;
  }

  .pa-header__nav {
    display: none;
  }
}

@media (max-width: 760px) {
  .pa-header {
    position: relative;
    top: auto;
    padding: 18px 14px 0;
    background: linear-gradient(135deg, #060504 0%, #18120f 54%, #2a150f 100%);
  }

  .pa-header__inner {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .pa-header__badge,
  .pa-header__right {
    justify-self: center;
  }
}

/* =========================
   02 Breadcrumbs
========================= */
.pa-hero-breadcrumbs {
  margin: -2px 0 16px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
  color: rgba(255, 255, 255, 0.43);
  font-family: var(--font-main);
  font-size: 12.5px;
  font-weight: 460;
  line-height: 1.25;
  letter-spacing: -0.005em;
}

.pa-hero-breadcrumbs a,
.pa-hero-breadcrumbs span {
  min-height: auto;
  padding: 0;
  border-radius: 0;
  display: inline-flex;
  align-items: center;
  color: inherit;
  background: transparent;
  border: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.pa-hero-breadcrumbs a {
  transition:
    color .22s ease,
    opacity .22s ease;
}

.pa-hero-breadcrumbs a:hover {
  color: rgba(255, 255, 255, 0.78);
}

.pa-hero-breadcrumbs span {
  color: rgba(247, 216, 170, 0.64);
  font-weight: 520;
}

.pa-hero-breadcrumbs i {
  width: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  font-size: 0;
  line-height: 1;
  color: rgba(247, 216, 170, 0.42);
}

.pa-hero-breadcrumbs i::before {
  content: "›";
  font-size: 14px;
  font-weight: 420;
  line-height: 1;
  transform: translateY(-1px);
}

/* =========================
   02 Breadcrumbs / Mobile
========================= */
@media (max-width: 760px) {
  .pa-hero-breadcrumbs {
    margin: 0 0 12px;
    gap: 7px;
    font-size: 11px;
    font-weight: 450;
  }

  .pa-hero-breadcrumbs i {
    width: 8px;
  }

  .pa-hero-breadcrumbs i::before {
    font-size: 12px;
  }
}

/* =========================
   03 Area Hero + H1 + Price Level + AI Project Finder
========================= */
.pa-hero {
  --side: 230px;

  position: relative;
  overflow: hidden;
  padding: 118px 0 48px;
  color: #ffffff;

  background:
    radial-gradient(circle at 18% 10%, rgba(247, 216, 170, 0.12), transparent 30%),
    radial-gradient(circle at 88% 18%, rgba(198, 107, 71, 0.18), transparent 34%),
    linear-gradient(135deg, #060504 0%, #18120f 54%, #2a150f 100%);
}

.pa-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .08;
  pointer-events: none;

  background:
    linear-gradient(90deg, rgba(247, 216, 170, 0.08) 1px, transparent 1px),
    linear-gradient(180deg, rgba(247, 216, 170, 0.06) 1px, transparent 1px);
  background-size: 92px 92px;
}

.pa-hero__inner {
  position: relative;
  z-index: 2;
  width: min(1600px, calc(100vw - (var(--side) * 2)));
  margin: 0 auto;
}

.pa-gallery {
  position: relative;
  height: 470px;
  border-radius: 38px;
  overflow: hidden;
  isolation: isolate;

  background: #14110f;
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow:
    0 34px 120px rgba(0, 0, 0, 0.30),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.pa-gallery[data-gallery-count="1"] .pa-gallery__arrow {
  display: none;
}

.pa-gallery__stage {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
  perspective: 1400px;
}

.pa-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;

  transform:
    translate3d(calc(var(--gallery-dir, 1) * 34px), 0, 0)
    rotateY(calc(var(--gallery-dir, 1) * -5deg))
    scale(1.045);

  filter: saturate(1.02) contrast(1.01);
  transform-origin: center center;

  transition:
    opacity 1.05s cubic-bezier(.2, .8, .2, 1),
    transform 1.25s cubic-bezier(.16, 1, .3, 1),
    filter 1.05s cubic-bezier(.2, .8, .2, 1);
  will-change: opacity, transform, filter;
}

.pa-slide.is-active {
  z-index: 2;
  opacity: 1;
  pointer-events: auto;

  transform:
    translate3d(0, 0, 0)
    rotateY(0deg)
    scale(1);

  filter: saturate(1.05) contrast(1.01);
}

.pa-slide.is-leaving {
  z-index: 1;
  opacity: 0;

  transform:
    translate3d(calc(var(--gallery-dir, 1) * -42px), 0, 0)
    rotateY(calc(var(--gallery-dir, 1) * 4deg))
    scale(1.025);

  filter: saturate(.98) contrast(.99);
}

.pa-slide picture,
.pa-slide img {
  width: 100%;
  height: 100%;
  display: block;
}

.pa-slide img {
  object-fit: cover;
}

.pa-gallery::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;

  background:
    linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.34) 74%, rgba(0,0,0,.58)),
    radial-gradient(circle at 80% 20%, rgba(247,216,170,.12), transparent 32%);
}

.pa-gallery__arrow {
  position: absolute;
  top: 50%;
  z-index: 8;

  width: 50px;
  height: 50px;
  border-radius: 999px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  color: #ffffff;
  font-size: 34px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;

  background: rgba(18, 16, 14, 0.34);
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);

  transform: translateY(-50%);
  transition:
    transform .25s ease,
    background .25s ease,
    border-color .25s ease;
}

.pa-gallery__arrow:hover {
  transform: translateY(-50%) scale(1.06);
  background: rgba(18, 16, 14, 0.48);
  border-color: rgba(255, 255, 255, 0.22);
}

.pa-gallery__arrow--prev {
  left: 22px;
}

.pa-gallery__arrow--next {
  right: 22px;
}

.pa-hero-info {
  position: absolute;
  left: 44px;
  right: 44px;
  bottom: 36px;
  z-index: 7;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  pointer-events: none;
}

.pa-title-pill,
.pa-price-pill {
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(18, 18, 17, 0.14), rgba(35, 30, 26, 0.08));
  border: 1px solid rgba(255, 255, 255, 0.075);
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.09),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);

  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  pointer-events: auto;
}

.pa-title-pill {
  max-width: min(455px, 48vw);
  padding: 10px 15px;
  border-radius: 18px;
}

.pa-title-pill h1 {
  margin: 0;

  color: rgba(255, 255, 255, 0.96);
  font-size: clamp(20px, 1.95vw, 28px);
  font-weight: 500;
  line-height: 1.03;
  letter-spacing: -0.04em;
}

.pa-title-pill p {
  margin: 6px 0 0;

  color: rgba(255, 255, 255, 0.76);
  font-size: 13px;
  font-weight: 440;
  line-height: 1.25;
  letter-spacing: -0.012em;
}

.pa-price-pill {
  min-width: 146px;
  padding: 10px 15px;
  border-radius: 18px;
}

.pa-price-pill span {
  display: block;
  margin-bottom: 6px;

  color: rgba(255, 255, 255, 0.62);
  font-size: 9px;
  font-weight: 650;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.pa-price-pill strong {
  display: block;

  color: rgba(255, 255, 255, 0.96);
  font-size: 16.5px;
  font-weight: 590;
  letter-spacing: -0.028em;
  line-height: 1;
}

.pa-area-ask {
  position: relative;
  z-index: 6;

  width: 100%;
  min-height: 64px;
  margin-top: 16px;
  padding: 6px;
  border-radius: 999px;

  display: flex;
  align-items: center;
  gap: 12px;

  background:
    linear-gradient(135deg, rgba(17, 16, 14, 0.76), rgba(33, 28, 24, 0.70));
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow:
    0 24px 72px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.10);

  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);

  transition:
    border-color .24s ease,
    box-shadow .24s ease,
    background .24s ease;
}

.pa-area-ask.is-voice-active {
  border-color: rgba(247, 216, 170, 0.34);
  box-shadow:
    0 28px 86px rgba(0, 0, 0, 0.30),
    0 0 0 1px rgba(247, 216, 170, 0.10),
    0 0 48px rgba(198, 107, 71, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.pa-area-ask__badge {
  height: 50px;
  padding: 0 18px 0 16px;
  border-radius: 999px;

  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;

  color: rgba(255, 255, 255, 0.92);
  font-size: 10.5px;
  font-weight: 650;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;

  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.13);
}

.pa-area-ask__badge i {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;

  background: #f4d79d;
  box-shadow:
    0 0 0 7px rgba(244, 215, 157, 0.10),
    0 0 18px rgba(244, 215, 157, 0.56);
}

.pa-area-ask input {
  flex: 1 1 auto;
  min-width: 0;
  height: 50px;

  border: 0;
  outline: 0;
  background: transparent;

  color: rgba(255, 255, 255, 0.94);
  font-size: 15px;
  font-weight: 390;
}

.pa-area-ask input::placeholder {
  color: rgba(255, 255, 255, 0.52);
}

.pa-voice {
  position: relative;
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
  border-radius: 50%;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  background: rgba(255, 255, 255, 0.075);
  border: 1px solid rgba(255, 255, 255, 0.16);
  cursor: pointer;
  overflow: visible;
  isolation: isolate;

  transition:
    transform .24s ease,
    background .24s ease,
    border-color .24s ease,
    box-shadow .24s ease;
}

.pa-voice:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.11);
  border-color: rgba(255, 255, 255, 0.24);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14),
    0 16px 34px rgba(0, 0, 0, 0.26);
}

.pa-voice__aura {
  position: absolute;
  inset: -7px;
  z-index: -2;
  border-radius: inherit;
  opacity: 0;

  background:
    conic-gradient(
      from 180deg,
      rgba(96, 165, 250, 0),
      rgba(96, 165, 250, 0.42),
      rgba(168, 85, 247, 0.38),
      rgba(247, 216, 170, 0.34),
      rgba(96, 165, 250, 0)
    );

  filter: blur(8px);
  transform: scale(0.88);
  transition: opacity .24s ease, transform .24s ease;
}

.pa-voice__core {
  width: 34px;
  height: 34px;
  border-radius: 999px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  transition:
    transform .24s ease,
    background .24s ease;
}

.pa-voice__core img {
  width: 20px;
  height: 20px;
  display: block;

  filter: brightness(0) invert(1);
  opacity: 0.92;

  transition:
    opacity .24s ease,
    filter .24s ease,
    transform .24s ease;
}

.pa-voice:hover .pa-voice__core img {
  opacity: 1;
  transform: scale(1.04);
}

.pa-area-ask.is-voice-active .pa-voice {
  transform: translateY(-2px) scale(1.03);
  border-color: rgba(247, 216, 170, 0.38);

  background:
    radial-gradient(circle at 35% 25%, rgba(247, 216, 170, 0.22), transparent 40%),
    rgba(255, 255, 255, 0.10);

  box-shadow:
    0 0 0 1px rgba(247, 216, 170, 0.12),
    0 0 34px rgba(198, 107, 71, 0.24),
    0 16px 40px rgba(0, 0, 0, 0.30),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.pa-area-ask.is-voice-active .pa-voice__aura {
  opacity: 1;
  transform: scale(1);
  animation: paVoiceAura 1.35s linear infinite;
}

.pa-area-ask.is-voice-active .pa-voice__core {
  background:
    linear-gradient(135deg, rgba(96, 165, 250, 0.22), rgba(168, 85, 247, 0.18), rgba(198, 107, 71, 0.18));
  animation: paVoicePulse 1.05s ease-in-out infinite;
}

.pa-area-ask.is-voice-active .pa-voice__core img {
  opacity: 1;
  filter: brightness(0) invert(1) drop-shadow(0 0 10px rgba(247, 216, 170, 0.40));
}

@keyframes paVoiceAura {
  to {
    transform: scale(1) rotate(360deg);
  }
}

@keyframes paVoicePulse {
  0%, 100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.08);
  }
}

.pa-voice-popover {
  position: absolute;
  right: 144px;
  bottom: 78px;
  z-index: 20;

  opacity: 0;
  pointer-events: none;
  transform: translateY(12px) scale(0.96);

  transition:
    opacity .24s ease,
    transform .34s cubic-bezier(.16, 1, .3, 1);
}

.pa-area-ask.is-voice-active .pa-voice-popover {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.pa-voice-popover__inner {
  position: relative;
  min-width: 272px;
  min-height: 58px;
  padding: 11px 13px;
  border-radius: 20px;

  display: flex;
  align-items: center;
  gap: 11px;

  color: #ffffff;
  background:
    radial-gradient(circle at 15% 20%, rgba(247, 216, 170, 0.18), transparent 32%),
    linear-gradient(135deg, rgba(10, 9, 8, 0.92), rgba(33, 25, 21, 0.90));

  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow:
    0 20px 58px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);

  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
}

.pa-voice-popover__inner::after {
  content: "";
  position: absolute;
  right: 32px;
  bottom: -8px;
  width: 15px;
  height: 15px;
  transform: rotate(45deg);

  background: rgba(20, 16, 14, 0.92);
  border-right: 1px solid rgba(255, 255, 255, 0.12);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.pa-voice-popover__dot {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;

  background: #f4d79d;
  box-shadow:
    0 0 0 8px rgba(244, 215, 157, 0.10),
    0 0 20px rgba(244, 215, 157, 0.60);

  animation: paVoiceDot 1s ease-in-out infinite;
}

@keyframes paVoiceDot {
  0%, 100% {
    transform: scale(1);
    opacity: 0.78;
  }

  50% {
    transform: scale(1.28);
    opacity: 1;
  }
}

.pa-voice-popover__status,
.pa-voice-popover__text {
  display: block;
}

.pa-voice-popover__status {
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
}

.pa-voice-popover__text {
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;

  color: rgba(255, 255, 255, 0.66);
  font-size: 11px;
  line-height: 1.15;
}

.pa-voice-popover__bars {
  margin-left: auto;
  height: 20px;

  display: inline-flex;
  align-items: center;
  gap: 3px;
}

.pa-voice-popover__bars i {
  display: block;
  width: 3px;
  height: 7px;
  border-radius: 999px;

  background: rgba(247, 216, 170, 0.84);
  animation: paVoiceBars .8s ease-in-out infinite;
}

.pa-voice-popover__bars i:nth-child(2) { animation-delay: .12s; }
.pa-voice-popover__bars i:nth-child(3) { animation-delay: .24s; }
.pa-voice-popover__bars i:nth-child(4) { animation-delay: .36s; }

@keyframes paVoiceBars {
  0%, 100% {
    height: 7px;
    opacity: .55;
  }

  50% {
    height: 20px;
    opacity: 1;
  }
}

.pa-area-ask button[type="submit"] {
  height: 50px;
  min-width: 124px;
  border: 0;
  border-radius: 999px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  color: #ffffff;
  font-size: 15px;
  font-weight: 680;
  cursor: pointer;

  background: #c86b47;
  box-shadow:
    0 14px 34px rgba(117, 49, 25, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.24);

  transition:
    transform .22s ease,
    filter .22s ease,
    box-shadow .22s ease;
}

.pa-area-ask button[type="submit"]:hover {
  transform: translateY(-2px);
  filter: saturate(1.06);
  box-shadow:
    0 18px 42px rgba(117, 49, 25, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.30);
}

/* =========================
   03 Area Hero + H1 + Price Level + AI Project Finder / Mobile
========================= */
@media (max-width: 1500px) {
  .pa-hero {
    --side: 160px;
  }
}

@media (max-width: 1380px) {
  .pa-hero,
  .pa-content {
    --side: 120px;
  }
}

@media (max-width: 1180px) {
  .pa-hero,
  .pa-content {
    --side: 24px;
  }

  .pa-hero {
    padding: 104px 0 46px;
  }

  .pa-gallery {
    height: 470px;
  }
}

@media (max-width: 760px) {
  .pa-hero {
    --side: 14px;
    padding: 24px 0 38px;
  }

  .pa-content {
    --side: 14px;
  }

  .pa-gallery {
    height: 560px;
    border-radius: 28px;
  }

  .pa-gallery__arrow {
    width: 46px;
    height: 46px;
    font-size: 32px;
  }

  .pa-gallery__arrow--prev {
    left: 14px;
  }

  .pa-gallery__arrow--next {
    right: 14px;
  }

  .pa-hero-info {
    left: 16px;
    right: 16px;
    bottom: 16px;
    flex-direction: column;
    align-items: flex-start;
  }

  .pa-title-pill {
    max-width: 100%;
    padding: 12px 14px;
    border-radius: 18px;
  }

  .pa-title-pill h1 {
    font-size: 26px;
  }

  .pa-title-pill p {
    font-size: 11.5px;
  }

  .pa-price-pill {
    min-width: 0;
    padding: 11px 14px;
    border-radius: 18px;
  }

  .pa-price-pill strong {
    font-size: 17px;
  }

  .pa-area-ask {
    min-height: auto;
    display: grid;
    grid-template-columns: 1fr;
    border-radius: 26px;
    padding: 10px;
  }

  .pa-area-ask__badge {
    width: fit-content;
    height: 42px;
    padding: 0 15px 0 13px;
    font-size: 10.5px;
  }

  .pa-area-ask input {
    width: 100%;
    height: 42px;
    font-size: 14px;
  }

  .pa-voice {
    width: 100%;
    height: 44px;
    flex-basis: auto;
  }

  .pa-area-ask button[type="submit"] {
    width: 100%;
    min-width: 0;
    height: 44px;
    font-size: 15px;
  }

  .pa-voice-popover {
    left: 0;
    right: 0;
    bottom: calc(100% + 12px);
  }

  .pa-voice-popover__inner {
    min-width: 0;
    width: 100%;
  }
}


/* =========================
   04 Shared Area Cards
   Canonical Project Page mirror for District
========================= */
.pa-content {
  --side: 230px;

  position: relative;
  z-index: 3;
  margin-top: -1px;
  padding: 24px 0 92px;

  background:
    radial-gradient(circle at 12% 18%, rgba(198, 107, 71, 0.075), transparent 32%),
    radial-gradient(circle at 88% 8%, rgba(247, 216, 170, 0.16), transparent 36%),
    radial-gradient(circle at 50% 62%, rgba(255, 255, 255, 0.30), transparent 44%),
    linear-gradient(180deg, #f3eadf 0%, #efe5da 46%, #eadfd2 100%);
  background-size: 2400px 1700px;
  background-position: center top;
  background-attachment: fixed;

  overflow: hidden;
}

.pa-content::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .24;
  background:
    linear-gradient(90deg, rgba(255,255,255,.42), transparent 17%, transparent 83%, rgba(255,255,255,.32)),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.44), transparent 42%);
}

.pa-content__inner {
  position: relative;
  z-index: 2;
  width: min(1600px, calc(100vw - (var(--side) * 2)));
  margin: 0 auto;
  padding-top: 0;
}

.pa-grid,
.pa-grid--equal {
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
  gap: 22px;
  align-items: stretch;
}

.pa-grid--equal,
.pa-grid--three {
  margin-top: 22px;
}

.pa-grid:first-child,
.pa-content__inner > .pa-grid:first-child {
  margin-top: 0;
}

.pa-grid--answer-facts,
.pa-content__inner > .pa-grid:first-child {
  grid-template-columns: minmax(0,.84fr) minmax(0,1.16fr);
  margin-bottom: 34px;
}

.pa-grid--three {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
  align-items: stretch;
}

.pa-card {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.88), rgba(251,247,241,.78));
  border: 1px solid rgba(255,255,255,.76);
  box-shadow:
    0 28px 86px rgba(43,31,22,.105),
    0 1px 0 rgba(255,255,255,.78),
    inset 0 1px 0 rgba(255,255,255,.88);
  backdrop-filter: blur(22px) saturate(1.03);
  -webkit-backdrop-filter: blur(22px) saturate(1.03);
  transition:
    transform .32s cubic-bezier(.16, 1, .3, 1),
    box-shadow .32s ease,
    border-color .32s ease,
    background .32s ease;
}

.pa-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .56;
  background:
    linear-gradient(120deg, rgba(255,255,255,.50), transparent 24%, transparent 73%, rgba(198,107,71,.045));
}

.pa-card:hover {
  transform: translateY(-3px);
  border-color: rgba(255,255,255,.92);
  box-shadow:
    0 36px 104px rgba(43,31,22,.145),
    0 1px 0 rgba(255,255,255,.86),
    inset 0 1px 0 rgba(255,255,255,.94);
}

.pa-card__head {
  position: relative;
  z-index: 2;
  min-height: 70px;
  padding: 0 30px;
  border-bottom: 1px solid rgba(17,17,17,.058);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}

.pa-card__head h2,
.pa-card__head h3 {
  margin: 0;
  color: #0f0f0e;
  font-size: 21px;
  font-weight: 650;
  line-height: 1.05;
  letter-spacing: -.045em;
}

.pa-card__head span {
  color: rgba(17,17,17,.42);
  font-size: 12px;
  font-weight: 540;
  letter-spacing: -.01em;
}

.pa-card__body {
  position: relative;
  z-index: 2;
  padding: 29px 30px 31px;
}


/* --- district hover effects sync: 04 shared cards --- */
.pa-card,
.pa-fact,
.pa-fit-box,
.pa-mini,
.pa-project,
.pa-landmark,
.pa-source-item,
.pa-location-box,
.pa-link,
.pa-faq details,
.pa-chips span,
.pa-tags span,
.pa-location-actions a,
.pa-actions a,
.pa-cta,
.pa-source-list a,
.pa-source-list li,
.pa-disclaimer {
  transition:
    transform .26s cubic-bezier(.16, 1, .3, 1),
    background .26s ease,
    border-color .26s ease,
    box-shadow .26s ease,
    filter .26s ease,
    color .26s ease,
    opacity .26s ease;
  will-change: transform;
}

.pa-card:hover {
  transform: translateY(-3px);
  border-color: rgba(255,255,255,.92);
  box-shadow:
    0 36px 104px rgba(43,31,22,.145),
    0 1px 0 rgba(255,255,255,.86),
    inset 0 1px 0 rgba(255,255,255,.94);
}

.pa-card:hover::before {
  opacity: .72;
}
/* --- /district hover effects sync --- */

/* =========================
   04 Shared Area Cards / Mobile
========================= */
@media (max-width: 1500px) {
  .pa-content {
    --side: 160px;
  }
}

@media (max-width: 1380px) {
  .pa-content {
    --side: 120px;
  }
}

@media (max-width: 1180px) {
  .pa-content {
    --side: 24px;
    padding: 22px 0 72px;
  }

  .pa-grid,
  .pa-grid--equal,
  .pa-grid--three,
  .pa-grid--answer-facts,
  .pa-content__inner > .pa-grid:first-child {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .pa-content {
    --side: 14px;
    padding: 18px 0 56px;
    background-attachment: scroll;
    background-size: 1400px 1200px;
  }

  .pa-card {
    border-radius: 28px;
  }

  .pa-card__head {
    min-height: 58px;
    padding: 0 18px;
  }

  .pa-card__head h2,
  .pa-card__head h3 {
    font-size: 17px;
  }

  .pa-card__head span {
    font-size: 11px;
  }

  .pa-card__body {
    padding: 18px;
  }
}

/* =========================
   05 Short Verdict + Area Facts
========================= */
.pa-answer {
  max-width: 620px;
  margin: 0;
  color: rgba(17,17,17,.66);
  font-size: 17px;
  font-weight: 390;
  line-height: 1.48;
  letter-spacing: -.026em;
}

.pa-answer strong {
  color: #111;
  font-weight: 620;
}

.pa-chips,
.pa-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 22px;
}

.pa-chips span,
.pa-tags span {
  min-height: 35px;
  padding: 0 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(17,17,17,.66);
  font-size: 11px;
  font-weight: 540;
  white-space: nowrap;
  background:
    linear-gradient(135deg, rgba(247,241,235,.92), rgba(255,255,255,.66));
  border: 1px solid rgba(17,17,17,.052);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.68),
    0 8px 20px rgba(43,31,22,.035);
}

.pa-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 13px;
}

.pa-fact {
  min-height: 80px;
  padding: 16px 17px;
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(247,242,236,.92), rgba(255,255,255,.66));
  border: 1px solid rgba(17,17,17,.055);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.70),
    0 10px 26px rgba(43,31,22,.038);
  transition:
    transform .24s ease,
    background .24s ease,
    border-color .24s ease,
    box-shadow .24s ease;
}

.pa-fact:hover {
  transform: translateY(-2px);
  border-color: rgba(198,107,71,.14);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(248,241,234,.80));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 15px 36px rgba(43,31,22,.06);
}

.pa-fact span {
  display: block;
  margin-bottom: 8px;
  color: rgba(17,17,17,.43);
  font-size: 10px;
  font-weight: 590;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.pa-fact strong {
  display: block;
  color: #111;
  font-size: 16.5px;
  font-weight: 640;
  line-height: 1.16;
  letter-spacing: -.032em;
}


/* --- district hover effects sync: 05 verdict facts chips --- */
.pa-fact:hover,
.pa-chips span:hover,
.pa-tags span:hover {
  transform: translateY(-2px);
  color: #111;
  border-color: rgba(198,107,71,.14);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(248,241,234,.80));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 15px 36px rgba(43,31,22,.06);
}

.pa-card:has(.pa-answer):hover .pa-chips span,
.pa-card:has(.pa-answer):hover .pa-tags span {
  border-color: rgba(198,107,71,.105);
}
/* --- /district hover effects sync --- */

/* =========================
   05 Short Verdict + Area Facts / Mobile
========================= */
@media (max-width: 760px) {
  .pa-answer {
    font-size: 14.5px;
    line-height: 1.48;
  }

  .pa-facts {
    grid-template-columns: 1fr;
  }
}

/* =========================
   06 Buyer Fit + Area Logic
========================= */
.pa-fit {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 13px;
}

.pa-fit-box {
  padding: 20px;
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(247,241,235,.92), rgba(255,255,255,.66));
  border: 1px solid rgba(17,17,17,.052);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.68),
    0 10px 25px rgba(43,31,22,.035);
}

.pa-fit-box h3,
.pa-mini h3,
.pa-faq h3 {
  margin: 0 0 13px;
  color: #111;
  font-size: 16px;
  font-weight: 620;
  letter-spacing: -.035em;
}

.pa-fit-box ul {
  margin: 0;
  padding-left: 18px;
  color: rgba(17,17,17,.62);
  font-size: 13.5px;
  line-height: 1.52;
}

.pa-fit-box li + li {
  margin-top: 7px;
}


/* --- district hover effects sync: 06 buyer fit area logic --- */
.pa-fit-box:hover {
  transform: translateY(-2px);
  border-color: rgba(198,107,71,.14);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(248,241,234,.80));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 15px 36px rgba(43,31,22,.06);
}

.pa-card:has(.pa-fit-box):hover .pa-fit-box:not(:hover) {
  border-color: rgba(17,17,17,.065);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 11px 28px rgba(43,31,22,.042);
}

.pa-card:has(.pa-tags):hover .pa-tags span:not(:hover),
.pa-card:has(.pa-chips):hover .pa-chips span:not(:hover) {
  border-color: rgba(17,17,17,.065);
  background:
    linear-gradient(135deg, rgba(248,242,236,.94), rgba(255,255,255,.70));
}
/* --- /district hover effects sync --- */

@media (max-width: 760px) {
  .pa-fit {
    grid-template-columns: 1fr;
  }
}

/* =========================
   07 Lifestyle / Investment / Family / AI Context
========================= */
.pa-mini-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
  margin-top: 22px;
}

.pa-mini {
  position: relative;
  min-height: 206px;
  padding: 23px;
  border-radius: 31px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(255,255,255,.84), rgba(252,248,242,.76));
  border: 1px solid rgba(255,255,255,.72);
  box-shadow:
    0 22px 70px rgba(43,31,22,.09),
    inset 0 1px 0 rgba(255,255,255,.84);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  transition:
    transform .28s ease,
    border-color .28s ease,
    box-shadow .28s ease;
}

.pa-mini::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .68;
  background:
    linear-gradient(125deg, rgba(255,255,255,.44), transparent 32%, rgba(198,107,71,.045));
}

.pa-mini:hover {
  transform: translateY(-4px);
  border-color: rgba(255,255,255,.90);
  box-shadow:
    0 32px 88px rgba(43,31,22,.13),
    inset 0 1px 0 rgba(255,255,255,.92);
}

.pa-mini > * {
  position: relative;
  z-index: 2;
}

.pa-mini > span {
  display: block;
  margin-bottom: 11px;
  color: rgba(17,17,17,.42);
  font-size: 10px;
  font-weight: 590;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.pa-mini strong {
  display: block;
  color: #111;
  font-size: 18px;
  font-weight: 640;
  line-height: 1.12;
  letter-spacing: -.045em;
}

.pa-mini p,
.pa-note {
  margin: 11px 0 0;
  color: rgba(17,17,17,.58);
  font-size: 13.5px;
  line-height: 1.46;
  letter-spacing: -.02em;
}

.pa-mini--dark {
  grid-column: 1 / -1;
  min-height: 132px;
  padding: 26px 30px;
  border-radius: 32px;
  display: grid;
  grid-template-columns: minmax(260px,.62fr) minmax(0,1fr);
  grid-template-rows: auto auto;
  column-gap: 44px;
  row-gap: 8px;
  align-items: center;
  color: #fff;
  background:
    radial-gradient(circle at 8% 0%, rgba(247,216,170,.16), transparent 30%),
    radial-gradient(circle at 90% 18%, rgba(198,107,71,.18), transparent 34%),
    linear-gradient(135deg, #15110e 0%, #080706 100%);
  border-color: rgba(255,255,255,.15);
  box-shadow:
    0 34px 104px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.12);
}

.pa-mini--dark::before {
  background:
    linear-gradient(125deg, rgba(255,255,255,.10), transparent 35%, rgba(247,216,170,.07));
}

.pa-mini--dark > span {
  grid-column: 1 / -1;
  margin: 0;
  color: rgba(247,216,170,.58);
  font-size: 10px;
  font-weight: 590;
  letter-spacing: .15em;
}

.pa-mini--dark strong {
  grid-column: 1;
  margin: 0;
  max-width: 420px;
  color: rgba(255,255,255,.94);
  font-size: 25px;
  font-weight: 630;
  line-height: 1.02;
  letter-spacing: -.055em;
}

.pa-mini--dark p {
  grid-column: 2;
  margin: 0;
  max-width: 720px;
  color: rgba(255,255,255,.64);
  font-size: 15px;
  line-height: 1.45;
  letter-spacing: -.024em;
}

.pa-mini--dark:hover {
  transform: translateY(-3px);
  box-shadow:
    0 42px 124px rgba(0,0,0,.32),
    0 0 54px rgba(198,107,71,.08),
    inset 0 1px 0 rgba(255,255,255,.14);
}


/* --- district hover effects sync: 07 mini decision cards --- */
.pa-mini:hover {
  transform: translateY(-4px);
  border-color: rgba(255,255,255,.90);
  box-shadow:
    0 32px 88px rgba(43,31,22,.13),
    inset 0 1px 0 rgba(255,255,255,.92);
}

.pa-mini:hover::before {
  opacity: .80;
}

.pa-mini--dark:hover {
  transform: translateY(-3px);
  box-shadow:
    0 42px 124px rgba(0,0,0,.32),
    0 0 54px rgba(198,107,71,.08),
    inset 0 1px 0 rgba(255,255,255,.14);
}
/* --- /district hover effects sync --- */

@media (max-width: 1380px) {
  .pa-mini-row {
    grid-template-columns: repeat(3, minmax(0,1fr));
  }

  .pa-mini--dark {
    grid-template-columns: 1fr;
    row-gap: 12px;
  }

  .pa-mini--dark strong,
  .pa-mini--dark p {
    grid-column: 1;
    max-width: 100%;
  }
}

@media (max-width: 1180px) {
  .pa-mini-row {
    grid-template-columns: 1fr;
  }

  .pa-mini,
  .pa-mini--dark {
    min-height: auto;
  }
}

@media (max-width: 760px) {
  .pa-mini {
    padding: 18px;
    border-radius: 24px;
  }

  .pa-mini--dark {
    padding: 22px;
    border-radius: 26px;
  }

  .pa-mini--dark strong {
    font-size: 22px;
  }

  .pa-mini--dark p {
    font-size: 13.5px;
  }
}

/* =========================
   08 Top Projects + Developer Presence
========================= */
.pa-project-list,
.pa-links,
.pa-faq,
.pa-source-list,
.pa-landmark-list,
.pa-landmarks {
  display: grid;
  gap: 11px;
}

.pa-project,
.pa-landmark,
.pa-source-item {
  min-height: 57px;
  padding: 0 18px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: #111;
  background:
    linear-gradient(135deg, rgba(247,241,235,.92), rgba(255,255,255,.66));
  border: 1px solid rgba(17,17,17,.052);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.68),
    0 9px 24px rgba(43,31,22,.035);
  transition:
    transform .22s ease,
    background .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.pa-project:hover,
.pa-landmark:hover {
  transform: translateY(-2px);
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(248,241,234,.82));
  border-color: rgba(198,107,71,.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.80),
    0 15px 36px rgba(43,31,22,.06);
}

.pa-project strong,
.pa-landmark strong {
  color: #111;
  font-size: 15.5px;
  font-weight: 610;
  letter-spacing: -.02em;
}

.pa-project span,
.pa-landmark span {
  color: rgba(17,17,17,.56);
  font-size: 14px;
  font-weight: 520;
}


/* --- district hover effects sync: 08 projects developer presence --- */
.pa-project:hover,
.pa-landmark:hover,
.pa-source-item:hover {
  transform: translateY(-2px);
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(248,241,234,.82));
  border-color: rgba(198,107,71,.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.80),
    0 15px 36px rgba(43,31,22,.06);
}

.pa-project:hover strong,
.pa-landmark:hover strong,
.pa-source-item:hover strong {
  color: #111;
}

.pa-project:hover span,
.pa-landmark:hover span,
.pa-source-item:hover span {
  color: rgba(17,17,17,.66);
}
/* --- /district hover effects sync --- */

/* =========================
   09 Landmarks + Location / Map Context
========================= */
.pa-location-box {
  min-height: 134px;
  padding: 22px;
  border-radius: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  background:
    radial-gradient(circle at 12% 0%, rgba(198,107,71,.11), transparent 34%),
    linear-gradient(135deg, rgba(247,241,235,.92), rgba(255,255,255,.68));
  border: 1px solid rgba(17,17,17,.052);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.68),
    0 15px 38px rgba(43,31,22,.052);
}

.pa-location-box span {
  display: block;
  margin-bottom: 8px;
  color: rgba(17,17,17,.43);
  font-size: 10px;
  font-weight: 590;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.pa-location-box strong {
  color: #111;
  font-size: 18px;
  font-weight: 640;
  line-height: 1.16;
  letter-spacing: -.032em;
}

.pa-location-actions {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pa-location-actions a {
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 14px;
  font-weight: 620;
  white-space: nowrap;
  text-decoration: none;
  background: #c86b47;
  box-shadow:
    0 16px 38px rgba(117,49,25,.30),
    inset 0 1px 0 rgba(255,255,255,.22);
  transition:
    transform .22s ease,
    filter .22s ease,
    box-shadow .22s ease;
}

.pa-location-actions a:hover {
  transform: translateY(-2px);
  filter: saturate(1.06);
  box-shadow:
    0 22px 50px rgba(117,49,25,.38),
    inset 0 1px 0 rgba(255,255,255,.28);
}

.pa-location-actions a.pa-location-secondary {
  color: #111;
  background: rgba(255,255,255,.62);
  border: 1px solid rgba(17,17,17,.075);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.70),
    0 10px 26px rgba(43,31,22,.045);
}

#location .pa-note,
.pa-card:has(.pa-location-box) .pa-note,
.pa-location-box + .pa-note {
  max-width: 820px;
  margin-top: 12px;
  color: rgba(17,17,17,.54);
  font-size: 14.5px;
  font-weight: 360;
  line-height: 1.46;
  letter-spacing: -.022em;
}


/* --- district hover effects sync: 09 landmarks location map --- */
.pa-location-box:hover {
  transform: translateY(-2px);
  border-color: rgba(198,107,71,.13);
  background:
    radial-gradient(circle at 12% 0%, rgba(198,107,71,.13), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(248,241,234,.80));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 18px 44px rgba(43,31,22,.07);
}

.pa-location-actions a:hover {
  transform: translateY(-2px);
  filter: saturate(1.06);
  box-shadow:
    0 22px 50px rgba(117,49,25,.38),
    inset 0 1px 0 rgba(255,255,255,.28);
}

.pa-location-actions a.pa-location-secondary:hover {
  color: #111;
  background: rgba(255,255,255,.82);
  border-color: rgba(198,107,71,.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.80),
    0 15px 36px rgba(43,31,22,.06);
}
/* --- /district hover effects sync --- */

@media (max-width: 1180px) {
  .pa-location-actions {
    justify-content: flex-start;
  }

  #location .pa-note,
  .pa-card:has(.pa-location-box) .pa-note,
  .pa-location-box + .pa-note {
    max-width: 100%;
    font-size: 13.5px;
    line-height: 1.46;
    letter-spacing: -.018em;
  }
}

@media (max-width: 760px) {
  .pa-project,
  .pa-landmark,
  .pa-source-item {
    min-height: 54px;
    padding: 0 15px;
    border-radius: 17px;
  }

  .pa-project strong,
  .pa-landmark strong {
    font-size: 14px;
  }

  .pa-project span,
  .pa-landmark span {
    font-size: 12px;
  }

  .pa-location-box {
    flex-direction: column;
    align-items: flex-start;
    padding: 18px;
    border-radius: 22px;
  }

  .pa-location-actions,
  .pa-location-actions a {
    width: 100%;
  }

  #location .pa-note,
  .pa-card:has(.pa-location-box) .pa-note,
  .pa-location-box + .pa-note {
    margin-top: 11px;
    font-size: 12.5px;
    line-height: 1.45;
    letter-spacing: -.016em;
  }
}

/* =========================
   10 Similar Districts + FAQ + Trust Sources
========================= */
.pa-grid--three:has(.pa-links) {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 22px;
  margin-top: 22px;
  align-items: stretch;
}

.pa-grid--three:has(.pa-links) > .pa-card:nth-child(1) {
  grid-column: 1 / -1;
}

.pa-grid--three:has(.pa-links) > .pa-card:nth-child(2),
.pa-grid--three:has(.pa-links) > .pa-card:nth-child(3) {
  grid-column: span 6;
}

.pa-grid--three:has(.pa-links) > .pa-card:nth-child(1) .pa-card__head {
  min-height: 66px;
}

.pa-grid--three:has(.pa-links) > .pa-card:nth-child(1) .pa-card__body {
  padding-top: 24px;
  padding-bottom: 26px;
}

.pa-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.pa-link {
  position: relative;
  min-height: 88px;
  padding: 0 50px 0 22px;
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: #111;
  font-size: 15.5px;
  font-weight: 620;
  line-height: 1.14;
  letter-spacing: -.035em;
  text-decoration: none;
  background:
    radial-gradient(circle at 14% 0%, rgba(198,107,71,.075), transparent 34%),
    linear-gradient(135deg, rgba(247,241,235,.92), rgba(255,255,255,.68));
  border: 1px solid rgba(17,17,17,.052);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 12px 30px rgba(43,31,22,.042);
  transition:
    transform .24s ease,
    background .24s ease,
    border-color .24s ease,
    box-shadow .24s ease;
}

.pa-link::after {
  content: "›";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  color: #c86b47;
  font-size: 28px;
  font-weight: 420;
  line-height: 1;
}

.pa-link:hover {
  transform: translateY(-3px);
  background:
    radial-gradient(circle at 14% 0%, rgba(198,107,71,.105), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(248,241,234,.82));
  border-color: rgba(198,107,71,.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.84),
    0 18px 44px rgba(43,31,22,.075);
}

.pa-faq {
  display: grid;
  gap: 11px;
}

.pa-faq details {
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(247,241,235,.92), rgba(255,255,255,.66));
  border: 1px solid rgba(17,17,17,.052);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.68),
    0 9px 24px rgba(43,31,22,.035);
  overflow: hidden;
}

.pa-faq summary {
  min-height: 56px;
  padding: 0 18px;
  display: flex;
  align-items: center;
  color: #111;
  font-size: 14px;
  font-weight: 620;
  cursor: pointer;
  letter-spacing: -.025em;
}

.pa-faq p {
  margin: 0;
  padding: 0 18px 17px;
  color: rgba(17,17,17,.62);
  font-size: 13px;
  line-height: 1.46;
}

.pa-source-item {
  min-height: 45px;
  padding: 0 15px;
  border-radius: 16px;
  color: rgba(17,17,17,.54);
  font-size: 12px;
  font-weight: 520;
}

.pa-source-item strong {
  color: #111;
  font-weight: 620;
  text-align: right;
}

.pa-source-item a {
  color: #c86b47;
  font-weight: 620;
}


/* --- district hover effects sync: 10 similar faq trust sources --- */
.pa-link:hover {
  transform: translateY(-3px);
  background:
    radial-gradient(circle at 14% 0%, rgba(198,107,71,.105), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(248,241,234,.82));
  border-color: rgba(198,107,71,.16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.84),
    0 18px 44px rgba(43,31,22,.075);
}

.pa-faq details:hover {
  transform: translateY(-2px);
  border-color: rgba(198,107,71,.13);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(248,241,234,.80));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.80),
    0 14px 34px rgba(43,31,22,.055);
}

.pa-faq details:hover summary {
  color: #111;
}

.pa-source-list a:hover,
.pa-source-list li:hover,
.pa-source-item:hover {
  transform: translateY(-2px);
  border-color: rgba(198,107,71,.13);
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(248,241,234,.80));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.80),
    0 14px 34px rgba(43,31,22,.055);
}
/* --- /district hover effects sync --- */

@media (max-width: 1380px) {
  .pa-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pa-grid--three:has(.pa-links) > .pa-card:nth-child(2),
  .pa-grid--three:has(.pa-links) > .pa-card:nth-child(3) {
    grid-column: span 6;
  }
}

@media (max-width: 1180px) {
  .pa-grid--three:has(.pa-links) {
    grid-template-columns: 1fr;
  }

  .pa-grid--three:has(.pa-links) > .pa-card:nth-child(1),
  .pa-grid--three:has(.pa-links) > .pa-card:nth-child(2),
  .pa-grid--three:has(.pa-links) > .pa-card:nth-child(3) {
    grid-column: auto;
  }
}

@media (max-width: 760px) {
  .pa-links {
    grid-template-columns: 1fr;
  }

  .pa-link {
    min-height: 78px;
    padding: 0 46px 0 18px;
  }
}

/* =========================
   11 Source Notes / Last Updated
========================= */
.pa-disclaimer {
  margin-top: 14px;
  color: rgba(17,17,17,.54);
  font-size: 12px;
  font-weight: 360;
  line-height: 1.45;
}


/* --- district hover effects sync: 11 source notes --- */
.pa-disclaimer:hover {
  color: rgba(17,17,17,.64);
}
/* --- /district hover effects sync --- */

/* =========================
   12 CTA
========================= */
.pa-cta {
  position: relative;
  overflow: hidden;
  margin-top: 22px;
  padding: 31px;
  border-radius: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  color: #ffffff;
  background:
    radial-gradient(circle at 84% 10%, rgba(247,216,170,.20), transparent 30%),
    radial-gradient(circle at 14% 10%, rgba(198,107,71,.12), transparent 30%),
    linear-gradient(135deg, #171310, #060504);
  border: 1px solid rgba(255,255,255,.15);
  box-shadow:
    0 38px 124px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.13);
}

.pa-cta::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  pointer-events: none;
  opacity: .72;
  background:
    linear-gradient(120deg, rgba(255,255,255,.10), transparent 26%, transparent 74%, rgba(247,216,170,.06));
}

.pa-cta > * {
  position: relative;
  z-index: 2;
}

.pa-cta h2 {
  margin: 0;
  color: #fff;
  font-size: 30px;
  font-weight: 650;
  line-height: .96;
  letter-spacing: -.06em;
}

.pa-cta p {
  max-width: 680px;
  margin: 15px 0 0;
  color: rgba(255,255,255,.64);
  font-size: 14px;
  line-height: 1.46;
}

.pa-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pa-actions a {
  min-height: 52px;
  padding: 0 24px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 620;
  white-space: nowrap;
  text-decoration: none;
  transition:
    transform .22s ease,
    filter .22s ease,
    box-shadow .22s ease,
    background .22s ease,
    border-color .22s ease;
}

.pa-actions a:hover {
  transform: translateY(-2px);
  filter: saturate(1.06);
}

.pa-actions a:first-child,
.pa-actions a:nth-child(2) {
  color: #fff;
  background: #c86b47;
  box-shadow:
    0 16px 38px rgba(117,49,25,.32),
    inset 0 1px 0 rgba(255,255,255,.22);
}

.pa-actions a:last-child {
  color: rgba(255,255,255,.86);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 12px 32px rgba(0,0,0,.16);
}


/* --- district hover effects sync: 12 cta --- */
.pa-cta:hover {
  box-shadow:
    0 44px 136px rgba(0,0,0,.40),
    0 0 52px rgba(198,107,71,.10),
    inset 0 1px 0 rgba(255,255,255,.16);
}

.pa-actions a:hover {
  transform: translateY(-2px);
  filter: saturate(1.06);
}

.pa-actions a:first-child:hover,
.pa-actions a:nth-child(2):hover {
  box-shadow:
    0 22px 52px rgba(117,49,25,.42),
    inset 0 1px 0 rgba(255,255,255,.28);
}

.pa-actions a:last-child:hover {
  background: rgba(255,255,255,.12);
  border-color: rgba(247,216,170,.26);
}
/* --- /district hover effects sync --- */

@media (max-width: 1180px) {
  .pa-cta {
    flex-direction: column;
    align-items: flex-start;
  }

  .pa-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .pa-cta {
    padding: 22px;
    border-radius: 28px;
  }

  .pa-cta h2 {
    font-size: 24px;
  }

  .pa-actions {
    width: 100%;
    flex-direction: column;
  }

  .pa-actions a {
    width: 100%;
  }
}
/* =========================
   13 Lead Modal
========================= */
html.pa-modal-open,
html.pa-lead-modal-open {
  overflow: hidden;
}

.pa-modal,
.pa-lead-modal,
#pa-lead-modal {
  position: fixed;
  inset: 0;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 34px 220px;
  opacity: 0;
  pointer-events: none;
  background: transparent;
  transition: opacity .28s ease;
}

.pa-modal.is-open,
.pa-lead-modal.is-open,
#pa-lead-modal.is-open {
  opacity: 1;
  pointer-events: auto;
}

.pa-modal__backdrop,
.pa-lead-modal__backdrop {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 20%, rgba(247,216,170,.10), transparent 36%),
    radial-gradient(circle at 82% 18%, rgba(198,107,71,.10), transparent 32%),
    rgba(7,6,5,.42);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.pa-modal__panel,
.pa-lead-modal__panel {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1480px;
  max-height: calc(100vh - 76px);
  overflow: visible;
  padding: 30px 34px;
  border-radius: 38px;
  color: #ffffff;
  background:
    radial-gradient(circle at 84% 0%, rgba(198,107,71,.13), transparent 34%),
    radial-gradient(circle at 12% 10%, rgba(247,216,170,.075), transparent 32%),
    linear-gradient(135deg, rgba(13,12,10,.62), rgba(39,30,24,.48));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow:
    0 30px 110px rgba(0,0,0,.36),
    inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter: blur(34px) saturate(1.06);
  -webkit-backdrop-filter: blur(34px) saturate(1.06);
  transform: translateY(18px) scale(.975);
  transition:
    transform .42s cubic-bezier(.16, 1, .3, 1),
    background .32s ease;
}

.pa-modal.is-open .pa-modal__panel,
.pa-lead-modal.is-open .pa-lead-modal__panel,
#pa-lead-modal.is-open .pa-lead-modal__panel {
  transform: translateY(0) scale(1);
}

.pa-modal__panel::before,
.pa-lead-modal__panel::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  pointer-events: none;
  opacity: .68;
  background:
    linear-gradient(
      120deg,
      rgba(255,255,255,.09),
      transparent 22%,
      transparent 72%,
      rgba(247,216,170,.045)
    );
}

.pa-modal__close,
.pa-lead-modal__close {
  position: absolute;
  top: 22px;
  right: 22px;
  z-index: 6;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.88);
  font-size: 28px;
  font-weight: 300;
  line-height: 1;
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.14);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 16px 38px rgba(0,0,0,.20);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  cursor: pointer;
  transition:
    transform .22s ease,
    background .22s ease,
    border-color .22s ease;
}

.pa-modal__close:hover,
.pa-lead-modal__close:hover {
  transform: rotate(90deg) scale(1.04);
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.22);
}

.pa-modal__head,
.pa-lead-modal__head {
  position: relative;
  z-index: 2;
  max-width: 820px;
  padding-right: 72px;
}

.pa-modal__eyebrow,
.pa-lead-modal__eyebrow {
  display: inline-block;
  margin-bottom: 10px;
  color: rgba(247,216,170,.78);
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.pa-modal h2,
.pa-lead-modal h2 {
  max-width: 760px;
  margin: 0;
  color: #ffffff;
  font-size: clamp(32px, 3vw, 50px);
  font-weight: 640;
  line-height: .94;
  letter-spacing: -.065em;
}

.pa-modal p,
.pa-lead-modal p {
  max-width: 720px;
  margin: 12px 0 0;
  color: rgba(255,255,255,.62);
  font-size: 14px;
  font-weight: 390;
  line-height: 1.42;
  letter-spacing: -.02em;
}


/* Form
========================= */

.pa-form,
.pa-lead-form {
  position: relative;
  z-index: 2;
  margin: 22px 0 0;
}

.pa-form__grid,
.pa-lead-form__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.pa-field,
.pa-lead-field {
  display: grid;
  gap: 8px;
}

.pa-field span,
.pa-lead-field span,
.pa-ai-row-label {
  color: rgba(255,255,255,.54);
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.pa-field input,
.pa-lead-field input,
.pa-field textarea,
.pa-lead-field textarea {
  width: 100%;
  border: 1px solid rgba(255,255,255,.115);
  outline: 0;
  color: #ffffff;
  font-size: 15px;
  font-weight: 420;
  background: rgba(255,255,255,.065);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07);
  transition:
    background .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.pa-field input,
.pa-lead-field input {
  height: 50px;
  padding: 0 16px;
  border-radius: 18px;
}

.pa-field input::placeholder,
.pa-lead-field input::placeholder,
.pa-field textarea::placeholder,
.pa-lead-field textarea::placeholder {
  color: rgba(255,255,255,.34);
  opacity: 1;
}

.pa-field input:focus,
.pa-lead-field input:focus,
.pa-field textarea:focus,
.pa-lead-field textarea:focus {
  background: rgba(255,255,255,.085);
  border-color: rgba(247,216,170,.28);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 0 3px rgba(247,216,170,.055);
}


/* Request Draft label
========================= */

.pa-ai-row-label {
  position: relative;
  z-index: 2;
  display: block;
  margin: 15px 0 8px;
}


/* Request Draft row
========================= */

.pa-ai-row,
.pa-lead-ai-row {
  position: relative;
  z-index: 3;
  width: 100%;
  min-height: 74px;
  margin: 0;
  padding: 10px;
  border-radius: 999px;

  display: grid;
  grid-template-columns:
    auto
    minmax(0, 1fr)
    54px
    112px;
  gap: 10px;
  align-items: center;

  overflow: visible;

  background:
    radial-gradient(
      circle at 12% 45%,
      rgba(247,216,170,.055),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      rgba(17,16,14,.50),
      rgba(36,30,26,.38)
    );

  border: 1px solid rgba(247,216,170,.18);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.075),
    0 18px 54px rgba(0,0,0,.15),
    0 0 0 1px rgba(198,107,71,.025);

  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);

  transition:
    border-color .24s ease,
    box-shadow .24s ease,
    background .24s ease;
}

.pa-ai-row.is-voice-active,
.pa-lead-ai-row.is-voice-active {
  border-color: rgba(247,216,170,.31);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.09),
    0 18px 54px rgba(0,0,0,.18),
    0 0 30px rgba(198,107,71,.09);
}

.pa-ai-row__badge,
.pa-lead-ai-row__badge {
  height: 54px;
  padding: 0 18px;
  border-radius: 999px;

  display: inline-flex;
  align-items: center;
  gap: 11px;

  color: rgba(255,255,255,.92);
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .085em;
  text-transform: uppercase;
  white-space: nowrap;

  background: rgba(255,255,255,.065);
  border: 1px solid rgba(255,255,255,.13);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08);
}

.pa-ai-row__badge i,
.pa-lead-ai-row__badge i {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: #f4d79d;
  box-shadow:
    0 0 0 8px rgba(244,215,157,.10),
    0 0 18px rgba(244,215,157,.56);
}

.pa-ai-row textarea,
.pa-lead-ai-row textarea {
  width: 100%;
  min-width: 0;
  height: 54px;
  min-height: 54px;
  max-height: 54px;

  padding: 17px 4px 12px;

  resize: none;
  overflow: hidden;

  color: rgba(255,255,255,.88);
  background: transparent;
  border: 0;
  box-shadow: none;
  outline: 0;

  font-family: inherit;
  font-size: 14px;
  font-weight: 390;
  line-height: 1.35;

  white-space: nowrap;
}

.pa-ai-row textarea:focus,
.pa-lead-ai-row textarea:focus {
  border: 0;
  box-shadow: none;
  background: transparent;
}


/* Voice button
========================= */

.pa-voice img,
.pa-modal-voice img,
.pa-lead-voice img,
.pa-voice__core img,
.pa-modal-voice__core img,
.pa-lead-voice__core img {
  display: none !important;
}

.pa-voice,
.pa-modal-voice,
.pa-lead-voice {
  position: relative;

  width: 54px;
  height: 54px;

  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.15);

  display: inline-flex;
  align-items: center;
  justify-content: center;

  color: #ffffff;
  cursor: pointer;
  overflow: visible;
  isolation: isolate;

  background: rgba(255,255,255,.08);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 14px 34px rgba(0,0,0,.18);

  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);

  transition:
    transform .24s ease,
    background .24s ease,
    box-shadow .24s ease,
    border-color .24s ease;
}

.pa-voice {
  width: 50px;
  height: 50px;
  flex: 0 0 50px;
}

.pa-voice:hover,
.pa-modal-voice:hover,
.pa-modal-voice.is-active,
.pa-lead-voice:hover,
.pa-lead-voice.is-active {
  transform: translateY(-2px) scale(1.04);

  background:
    radial-gradient(
      circle at 35% 25%,
      rgba(247,216,170,.20),
      transparent 40%
    ),
    rgba(255,255,255,.12);

  border-color: rgba(247,216,170,.24);

  box-shadow:
    0 0 34px rgba(198,107,71,.20),
    0 14px 34px rgba(0,0,0,.26);
}

.pa-voice__aura,
.pa-modal-voice__aura,
.pa-lead-voice__aura {
  position: absolute;
  inset: -8px;
  z-index: -2;
  border-radius: inherit;

  opacity: 0;

  background:
    conic-gradient(
      from 180deg,
      rgba(96,165,250,0),
      rgba(96,165,250,.40),
      rgba(168,85,247,.36),
      rgba(247,216,170,.32),
      rgba(96,165,250,0)
    );

  filter: blur(8px);
  transform: scale(.88);

  transition:
    opacity .24s ease,
    transform .24s ease;
}

.pa-area-ask.is-voice-active .pa-voice__aura,
.pa-ai-row.is-voice-active .pa-modal-voice__aura,
.pa-modal-voice.is-active .pa-modal-voice__aura,
.pa-lead-voice.is-active .pa-lead-voice__aura {
  opacity: 1;
  transform: scale(1);
  animation: paVoiceAura 1.35s linear infinite;
}

.pa-voice__core,
.pa-modal-voice__core,
.pa-lead-voice__core {
  position: relative;
  z-index: 2;

  width: 34px;
  height: 34px;
  border-radius: 999px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.pa-voice__core::before,
.pa-modal-voice__core::before,
.pa-lead-voice__core::before,
.pa-voice::before,
.pa-modal-voice::before,
.pa-lead-voice::before {
  content: "";

  width: 20px;
  height: 20px;
  display: block;

  background: #ffffff;
  opacity: .94;

  -webkit-mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z'/%3E%3Cpath d='M19 10v2a7 7 0 0 1-14 0v-2'/%3E%3Cpath d='M12 19v3'/%3E%3Cpath d='M8 22h8'/%3E%3C/svg%3E")
    center / contain no-repeat;

  mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z'/%3E%3Cpath d='M19 10v2a7 7 0 0 1-14 0v-2'/%3E%3Cpath d='M12 19v3'/%3E%3Cpath d='M8 22h8'/%3E%3C/svg%3E")
    center / contain no-repeat;

  transition:
    opacity .24s ease,
    transform .24s ease,
    filter .24s ease;
}

.pa-voice__core::before,
.pa-modal-voice__core::before,
.pa-lead-voice__core::before {
  position: absolute;
}

.pa-voice:has(.pa-voice__core)::before,
.pa-modal-voice:has(.pa-modal-voice__core)::before,
.pa-lead-voice:has(.pa-lead-voice__core)::before {
  display: none;
}

.pa-ai-row.is-voice-active .pa-modal-voice__core::before {
  filter:
    drop-shadow(0 0 8px rgba(247,216,170,.58))
    drop-shadow(0 0 14px rgba(198,107,71,.34));
}

@keyframes paVoiceAura {
  to {
    transform: scale(1) rotate(360deg);
  }
}


/* Modal voice popover
========================= */

.pa-modal-voice-popover {
  position: absolute;
  right: 132px;
  bottom: calc(100% + 14px);
  z-index: 20;

  width: 300px;

  opacity: 0;
  pointer-events: none;
  visibility: hidden;

  transform: translateY(10px) scale(.965);
  transform-origin: bottom right;

  transition:
    opacity .22s ease,
    visibility .22s ease,
    transform .32s cubic-bezier(.16, 1, .3, 1);
}

.pa-ai-row.is-voice-active .pa-modal-voice-popover {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

.pa-modal-voice-popover__inner {
  position: relative;

  min-height: 62px;
  padding: 12px 14px;
  border-radius: 20px;

  display: flex;
  align-items: center;
  gap: 12px;

  color: #ffffff;

  background:
    radial-gradient(
      circle at 15% 20%,
      rgba(247,216,170,.18),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      rgba(10,9,8,.95),
      rgba(33,25,21,.93)
    );

  border: 1px solid rgba(255,255,255,.16);

  box-shadow:
    0 20px 58px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.12);

  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
}

.pa-modal-voice-popover__inner::after {
  content: "";

  position: absolute;
  right: 22px;
  bottom: -8px;

  width: 15px;
  height: 15px;

  transform: rotate(45deg);

  background: rgba(20,16,14,.94);
  border-right: 1px solid rgba(255,255,255,.12);
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.pa-modal-voice-popover__dot {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;

  border-radius: 50%;

  background: #f4d79d;

  box-shadow:
    0 0 0 8px rgba(244,215,157,.10),
    0 0 20px rgba(244,215,157,.60);

  animation: paModalVoiceDot 1s ease-in-out infinite;
}

@keyframes paModalVoiceDot {
  0%,
  100% {
    transform: scale(1);
    opacity: .78;
  }

  50% {
    transform: scale(1.28);
    opacity: 1;
  }
}

.pa-modal-voice-popover__copy {
  min-width: 0;
  flex: 1 1 auto;
}

.pa-modal-voice-popover__status,
.pa-modal-voice-popover__text {
  display: block;
}

.pa-modal-voice-popover__status {
  color: rgba(255,255,255,.92);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.pa-modal-voice-popover__text {
  max-width: 190px;
  margin-top: 3px;

  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;

  color: rgba(255,255,255,.58);
  font-size: 10px;
  font-weight: 550;
  line-height: 1.15;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.pa-modal-voice-popover__bars {
  height: 28px;
  flex: 0 0 auto;

  display: inline-flex;
  align-items: center;
  gap: 3px;
}

.pa-modal-voice-popover__bars i {
  width: 3px;
  border-radius: 99px;

  background: rgba(247,216,170,.84);

  animation:
    paModalVoiceBar .78s ease-in-out infinite alternate;
}

.pa-modal-voice-popover__bars i:nth-child(1) {
  height: 10px;
}

.pa-modal-voice-popover__bars i:nth-child(2) {
  height: 20px;
  animation-delay: -.30s;
}

.pa-modal-voice-popover__bars i:nth-child(3) {
  height: 27px;
  animation-delay: -.16s;
}

.pa-modal-voice-popover__bars i:nth-child(4) {
  height: 18px;
  animation-delay: -.42s;
}

.pa-modal-voice-popover__bars i:nth-child(5) {
  height: 25px;
  animation-delay: -.22s;
}

@keyframes paModalVoiceBar {
  from {
    transform: scaleY(.42);
    opacity: .56;
  }

  to {
    transform: scaleY(1);
    opacity: 1;
  }
}


/* Submit
========================= */

.pa-submit,
.pa-modal-submit,
.pa-lead-submit,
.pa-ai-row button[type="submit"],
.pa-lead-ai-row button[type="submit"] {
  height: 54px;
  min-width: 112px;

  padding: 0 24px;

  border: 0;
  border-radius: 999px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  color: #ffffff;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;

  cursor: pointer;

  background: #c86b47;

  box-shadow:
    0 16px 38px rgba(117,49,25,.30),
    inset 0 1px 0 rgba(255,255,255,.20);

  transition:
    transform .22s ease,
    filter .22s ease,
    box-shadow .22s ease,
    background .22s ease;
}

.pa-submit:hover,
.pa-modal-submit:hover,
.pa-lead-submit:hover,
.pa-ai-row button[type="submit"]:hover,
.pa-lead-ai-row button[type="submit"]:hover {
  transform: translateY(-2px);
  filter: brightness(1.06);

  box-shadow:
    0 20px 44px rgba(117,49,25,.36),
    inset 0 1px 0 rgba(255,255,255,.22);
}

.pa-submit.is-done,
.pa-modal-submit.is-done,
.pa-lead-submit.is-done {
  background: #738f59;
}


/* Note
========================= */

.pa-modal__note,
.pa-lead-modal__note,
.pa-disclaimer {
  position: relative;
  z-index: 2;

  max-width: none;

  margin: 10px 0 0;

  color: rgba(255,255,255,.44);
  font-size: 12px;
  font-weight: 390;
  line-height: 1.35;
  letter-spacing: -.01em;
}

.pa-modal__actions,
.pa-lead-modal__actions,
.pa-lead-secondary {
  display: none !important;
}


/* Responsive
========================= */

@media (max-width: 1500px) {
  .pa-modal,
  .pa-lead-modal,
  #pa-lead-modal {
    padding-left: 120px;
    padding-right: 120px;
  }
}

@media (max-width: 1180px) {
  .pa-modal,
  .pa-lead-modal,
  #pa-lead-modal {
    padding: 34px 28px;
  }

  .pa-modal__panel,
  .pa-lead-modal__panel {
    width: 100%;
    max-width: 980px;
    overflow: auto;
  }

  .pa-form__grid,
  .pa-lead-form__grid {
    grid-template-columns: 1fr 1fr;
  }

  .pa-form__grid .pa-field:last-child,
  .pa-lead-form__grid .pa-lead-field:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 820px) {
  .pa-modal,
  .pa-lead-modal,
  #pa-lead-modal {
    padding: 18px;
    align-items: flex-start;
  }

  .pa-modal__panel,
  .pa-lead-modal__panel {
    max-height: calc(100vh - 36px);
    padding: 20px;
    border-radius: 30px;
    overflow: auto;
  }

  .pa-modal__head,
  .pa-lead-modal__head {
    padding-right: 44px;
  }

  .pa-modal h2,
  .pa-lead-modal h2 {
    font-size: 32px;
  }

  .pa-form__grid,
  .pa-lead-form__grid {
    grid-template-columns: 1fr;
  }

  .pa-form__grid .pa-field:last-child,
  .pa-lead-form__grid .pa-lead-field:last-child {
    grid-column: auto;
  }

  .pa-ai-row-label {
    margin-top: 16px;
  }

  .pa-ai-row,
  .pa-lead-ai-row {
    min-height: auto;

    grid-template-columns: 1fr;
    align-items: stretch;

    border-radius: 24px;
    padding: 14px;
  }

  .pa-ai-row__badge,
  .pa-lead-ai-row__badge {
    width: fit-content;
  }

  .pa-ai-row textarea,
  .pa-lead-ai-row textarea {
    height: 96px;
    min-height: 96px;
    max-height: 140px;

    padding: 8px 2px;

    white-space: normal;
    overflow: auto;
  }

  .pa-modal-voice,
  .pa-lead-voice,
  .pa-modal-submit,
  .pa-lead-submit,
  .pa-submit,
  .pa-ai-row button[type="submit"],
  .pa-lead-ai-row button[type="submit"] {
    width: 100%;
    min-width: 0;
  }

  .pa-modal-voice,
  .pa-lead-voice {
    height: 52px;
    border-radius: 999px;
  }

  .pa-modal-submit,
  .pa-lead-submit,
  .pa-submit,
  .pa-ai-row button[type="submit"],
  .pa-lead-ai-row button[type="submit"] {
    height: 52px;
  }

  .pa-modal-voice-popover {
    left: 0;
    right: 0;
    bottom: calc(100% + 12px);

    width: 100%;

    transform-origin: bottom center;
  }

  .pa-modal-voice-popover__inner::after {
    display: none;
  }

  .pa-modal-voice-popover__text {
    max-width: none;
  }
}
/* =========================
   14 Unified Footer
========================= */
.site-footer {
  position: relative;
  min-height: 340px;
  overflow: hidden;
  color: #ffffff;
  background:
    radial-gradient(circle at 14% 20%, rgba(247,216,170,.10), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(198,107,71,.16), transparent 34%),
    linear-gradient(135deg, #070604 0%, #17120f 52%, #2a150f 100%) !important;
  border-top: 1px solid rgba(255,255,255,.08);
  font-family: var(--font-main);
}

.site-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .08;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(247,216,170,.08) 1px, transparent 1px),
    linear-gradient(180deg, rgba(247,216,170,.06) 1px, transparent 1px);
  background-size: 92px 92px;
}

.site-footer::after {
  content: "";
  position: absolute;
  left: 100px;
  right: 100px;
  bottom: 0;
  height: 1px;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent, rgba(247,216,170,.30), rgba(198,107,71,.24), transparent);
}

.site-footer__glow {
  position: absolute;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(22px);
  opacity: .46;
}

.site-footer__glow--left {
  left: -150px;
  top: -160px;
  background: radial-gradient(circle, rgba(247,216,170,.17), transparent 68%);
}

.site-footer__glow--right {
  right: -130px;
  top: -120px;
  background: radial-gradient(circle, rgba(198,107,71,.20), transparent 70%);
}

.site-footer__inner {
  position: relative;
  z-index: 2;
  min-height: 340px;
  width: 100%;
  max-width: none;
  margin: 0 auto;
  padding: 44px 100px 34px;
  display: grid;
  grid-template-columns: minmax(420px,650px) 1fr;
  grid-template-rows: 1fr auto;
  column-gap: 72px;
  row-gap: 26px;
  background: transparent !important;
}

.site-footer * {
  color: inherit;
}

.site-footer__left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;
}

.site-footer__brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 0 19px 0 16px;
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.11),
    0 16px 44px rgba(0,0,0,.20);
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
  transition:
    transform .28s ease,
    background .28s ease,
    border-color .28s ease,
    box-shadow .28s ease;
}

.site-footer__brand-dot {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: #f4d79d;
  box-shadow:
    0 0 0 7px rgba(244,215,157,.13),
    0 0 20px rgba(244,215,157,.52);
}

.site-footer__brand-copy {
  display: flex;
  flex-direction: column;
}

.site-footer__brand-title {
  color: rgba(255,255,255,.94);
  font-size: 12px;
  font-weight: 560;
  line-height: 1;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
}

.site-footer__brand-subtitle {
  display: none;
}

.site-footer__statement {
  max-width: 600px;
}

.site-footer__statement h2 {
  max-width: 560px;
  margin: 0;
  color: rgba(255,255,255,.94);
  font-size: clamp(28px, 2.55vw, 44px);
  font-weight: 620;
  line-height: .98;
  letter-spacing: -.06em;
}

.site-footer__statement p {
  max-width: 510px;
  margin: 16px 0 0;
  color: rgba(255,255,255,.56);
  font-size: 14px;
  font-weight: 360;
  line-height: 1.44;
  letter-spacing: -.022em;
}

.site-footer__chips {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.site-footer__chips span {
  min-height: 36px;
  padding: 0 16px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.72);
  font-size: 12px;
  font-weight: 430;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.13);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.site-footer__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  gap: 42px;
}

.site-footer__contacts {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
}

.footer-pill {
  height: 46px;
  padding: 0 21px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.88);
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.20);
  background: rgba(255,255,255,.045);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 14px 38px rgba(0,0,0,.15);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  font-size: 14px;
  font-weight: 390;
  line-height: 1;
  white-space: nowrap;
  transition:
    transform .24s ease,
    background .24s ease,
    border-color .24s ease,
    color .24s ease,
    box-shadow .24s ease;
}

.site-footer__social {
  display: flex;
  gap: 14px;
}

.footer-social {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 12px 30px rgba(0,0,0,.14);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.footer-social img {
  width: 17px;
  height: 17px;
  opacity: .84;
  filter: brightness(0) invert(1);
}

.site-footer__bottom {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  color: rgba(255,255,255,.66);
  font-size: 12px;
  font-weight: 360;
  line-height: 1.45;
  letter-spacing: -.01em;
}


/* --- district hover effects sync: 14 footer --- */
.site-footer__brand,
.footer-pill,
.footer-social,
.footer-social img {
  transition:
    transform .24s ease,
    background .24s ease,
    border-color .24s ease,
    box-shadow .24s ease,
    filter .24s ease,
    opacity .24s ease;
}

.site-footer__brand:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.24);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.17),
    0 24px 62px rgba(0,0,0,.28);
}

.site-footer__brand:hover .site-footer__brand-dot {
  transform: scale(1.14);
  background: #ffe1a2;
  box-shadow:
    0 0 0 9px rgba(244,215,157,.17),
    0 0 28px rgba(244,215,157,.78),
    0 0 52px rgba(198,107,71,.32);
}

.footer-pill:hover {
  transform: translateY(-3px);
  color: #fff;
  background: rgba(255,255,255,.085);
  border-color: rgba(247,216,170,.32);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 20px 52px rgba(0,0,0,.22),
    0 0 30px rgba(198,107,71,.10);
}

.footer-social:hover {
  transform: translateY(-4px) scale(1.04);
  background: rgba(255,255,255,.085);
  border-color: rgba(247,216,170,.28);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 20px 46px rgba(0,0,0,.22),
    0 0 28px rgba(198,107,71,.10);
}

.footer-social:hover img {
  opacity: 1;
  transform: scale(1.08);
  filter:
    brightness(0) invert(1)
    drop-shadow(0 0 10px rgba(247,216,170,.22));
}
/* --- /district hover effects sync --- */

@media (max-width: 1180px) {
  .site-footer__inner {
    padding-left: 24px;
    padding-right: 24px;
    grid-template-columns: 1fr;
  }

  .site-footer::after {
    left: 24px;
    right: 24px;
  }

  .site-footer__right {
    align-items: flex-start;
  }

  .site-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}

@media (max-width: 900px) {
  .site-footer {
    min-height: 0;
  }

  .site-footer__inner {
    padding: 38px 20px 30px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 26px;
  }

  .site-footer::after {
    left: 20px;
    right: 20px;
  }

  .site-footer__statement h2 {
    font-size: 31px;
    line-height: 1;
  }

  .site-footer__statement p {
    font-size: 13.5px;
  }

  .site-footer__contacts {
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .footer-pill {
    height: 46px;
    padding: 0 19px;
    font-size: 13.5px;
  }

  .site-footer__social {
    gap: 12px;
  }

  .footer-social {
    width: 38px;
    height: 38px;
  }

  .site-footer__bottom {
    width: 100%;
  }
}

@media (max-width: 560px) {
  .site-footer__brand {
    width: auto;
    min-height: 44px;
    align-items: center;
  }

  .site-footer__brand-title {
    font-size: 11px;
  }

  .site-footer__statement h2 {
    font-size: 28px;
  }

  .site-footer__contacts {
    flex-direction: column;
    align-items: stretch;
  }

  .footer-pill {
    width: 100%;
  }
}

/* =========================
   15 RTL Helpers
========================= */
html[dir="rtl"] .pa-hero,
body.rtl .pa-hero,
html[dir="rtl"] .pa-content,
body.rtl .pa-content {
  direction: rtl;
}

html[dir="rtl"] .pa-header__inner,
body.rtl .pa-header__inner {
  direction: rtl;
}

html[dir="rtl"] .pa-card__head,
html[dir="rtl"] .pa-card__body,
body.rtl .pa-card__head,
body.rtl .pa-card__body {
  text-align: right;
}

html[dir="rtl"] .pa-price-pill,
body.rtl .pa-price-pill,
html[dir="rtl"] .pa-fact strong,
body.rtl .pa-fact strong {
  direction: ltr;
  unicode-bidi: isolate;
}

html[dir="rtl"] .pa-area-ask,
body.rtl .pa-area-ask {
  direction: rtl;
}

html[dir="rtl"] .pa-area-ask input,
body.rtl .pa-area-ask input {
  text-align: right;
  direction: rtl;
  unicode-bidi: plaintext;
}

html[dir="rtl"] .pa-location-box,
body.rtl .pa-location-box,
html[dir="rtl"] .pa-cta,
body.rtl .pa-cta {
  direction: rtl;
}

html[dir="rtl"] .pa-actions,
body.rtl .pa-actions {
  justify-content: flex-start;
}

body.rtl .footer-pill,
body.rtl a[href^="tel:"],
body.rtl a[href^="mailto:"] {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

body.rtl .site-footer__address {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

body.rtl .site-footer__bottom {
  direction: rtl;
}

body.rtl .site-footer__contacts,
body.rtl .site-footer__social {
  direction: ltr;
}

