:root {
  --bg: #f5f5f4;
  --panel: rgba(255,255,255,0.88);
  --text: #1c1917;
  --muted: #57534e;
  --line: rgba(231,229,228,0.95);
  --lime: #a3e635;
  --emerald: #10b981;
  --shadow: 0 30px 80px -42px rgba(28, 25, 23, 0.35);
  --admin-radius-lg: 28px;
  --admin-radius-md: 20px;
  --admin-card-shadow: 0 22px 56px -40px rgba(28, 25, 23, 0.28);
  --admin-soft-surface: rgba(255,255,255,0.94);
  --cc-font-family: inherit;
  --cc-modal-border-radius: 1.15rem;
  --cc-btn-border-radius: 999px;
  --cc-modal-margin: 1.25rem;
  --cc-bg: #ffffff;
  --cc-primary-color: #182218;
  --cc-secondary-color: #596759;
  --cc-btn-primary-bg: #a8d93a;
  --cc-btn-primary-color: #16220f;
  --cc-btn-primary-border-color: #a8d93a;
  --cc-btn-primary-hover-bg: #93c92a;
  --cc-btn-primary-hover-color: #101a0b;
  --cc-btn-primary-hover-border-color: #93c92a;
  --cc-btn-secondary-bg: #f4f8ef;
  --cc-btn-secondary-color: #1f3415;
  --cc-btn-secondary-border-color: #d9eac1;
  --cc-btn-secondary-hover-bg: #ebf5de;
  --cc-btn-secondary-hover-color: #16220f;
  --cc-btn-secondary-hover-border-color: #cde3aa;
  --cc-link-color: #5f9b16;
  --cc-toggle-on-bg: #88cf27;
  --cc-toggle-off-bg: #8e9c8e;
  --cc-toggle-readonly-bg: #dce7cf;
  --cc-separator-border-color: #edf2e5;
  --cc-cookie-category-block-bg: #f7faef;
  --cc-cookie-category-block-border: #edf2e5;
  --cc-cookie-category-block-hover-bg: #eef6df;
  --cc-cookie-category-block-hover-border: #e0ebcb;
  --cc-footer-bg: #f5f8ef;
  --cc-footer-color: #5a6b5b;
  --cc-footer-border-color: #e5edda;
}

/* Public template parity layer: mirrors the Next.js template components. */
body:not(.admin-body) {
  background: linear-gradient(180deg, #fafaf9, #ffffff);
}

#cc-main .cm,
#cc-main .pm {
  border: 1px solid rgba(163, 197, 95, 0.28);
  box-shadow: 0 1.2rem 3rem rgba(37, 56, 23, 0.14);
}

#cc-main .cm__title,
#cc-main .pm__title {
  font-size: 1.08rem;
  font-weight: 700;
}

#cc-main .cm__desc,
#cc-main .pm__section-desc {
  line-height: 1.6;
}

#cc-main .cm__btn,
#cc-main .pm__btn {
  font-weight: 700;
  letter-spacing: 0.01em;
}

#cc-main .pm__section {
  border-radius: 1rem;
}

#cc-main .pm__badge,
#cc-main .pm__section-arrow {
  color: #5f9b16;
}

.public-container {
  width: 100%;
  max-width: 72rem;
  margin: 0 auto;
  padding: 0 16px;
}

.public-container--wide {
  max-width: 84rem;
}

.public-richtext {
  color: #57534e;
  line-height: 2;
}

.public-richtext p:first-child {
  margin-top: 0;
}

.public-richtext p:last-child {
  margin-bottom: 0;
}

.public-richtext--large {
  font-size: 1rem;
}

.public-richtext--inverse {
  color: rgba(231, 229, 228, 0.92);
}

.public-richtext--hero {
  max-width: 48rem;
  color: rgba(255,255,255,0.9);
  font-size: 0.875rem;
  line-height: 1.65;
}

.public-section-kicker {
  color: #a8a29e;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.public-inverse-pill {
  display: inline-flex;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 999px;
  background: rgba(255,255,255,0.1);
  padding: 8px 16px;
  color: #f5f5f4;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.public-button,
button.public-button {
  display: inline-flex;
  width: auto;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 12px;
  padding: 12px 20px;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  transition: 0.2s ease;
  box-shadow: none;
}

.public-button--lime,
button.public-button--lime {
  background: #a3e635;
  color: #064e3b;
}

.public-button--lime:hover {
  background: #bef264;
}

.public-button--soft {
  border: 1px solid #d9f99d;
  background: rgba(247,254,231,0.7);
  color: #064e3b;
}

.public-action-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}

.public-hero-secondary {
  max-width: 28rem;
  font-size: 0.875rem;
  line-height: 1.7;
}

.public-image-placeholder {
  height: 100%;
  min-height: 240px;
  width: 100%;
  background: linear-gradient(135deg, rgba(231,229,228,0.9), #fafaf9);
}

.public-empty {
  border: 1px dashed #d6d3d1;
  border-radius: 24px;
  background: #fff;
  padding: 32px;
  color: #57534e;
  font-size: 0.875rem;
}

.public-form-note,
.public-form-error {
  margin-top: 24px;
  border: 1px solid #e7e5e4;
  border-radius: 20px;
  background: #fafaf9;
  padding: 12px 16px;
  color: #44403c;
  font-size: 0.875rem;
}

.public-form-error {
  border-color: #fecaca;
  background: #fff1f2;
  color: #991b1b;
}

.next-home-hero {
  position: relative;
  overflow: hidden;
  background: #0c0a09;
  padding: 48px 0;
  color: #fff;
}

.next-home-hero__image {
  position: absolute;
  inset: 0;
  height: 115%;
  width: 100%;
  object-fit: cover;
  transform: scale(1.08);
  will-change: transform;
}

.next-home-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(12,10,9,0.34) 0%, rgba(12,10,9,0.18) 42%, rgba(12,10,9,0.08) 100%),
    radial-gradient(circle at top left, rgba(245,158,11,0.1), transparent 34%),
    radial-gradient(circle at bottom right, rgba(255,255,255,0.05), transparent 32%);
}

.next-home-hero .public-container {
  position: relative;
}

.next-home-hero__content {
  max-width: 48rem;
  border: 1px solid rgba(255,255,255,0.34);
  border-radius: 28px;
  background: rgba(0,0,0,0.18);
  padding: 20px;
  box-shadow: 0 40px 120px -50px rgba(0,0,0,0.65);
  backdrop-filter: blur(10px);
}

.next-home-hero__content h1 {
  max-width: 64rem;
  margin: 16px 0 0;
  color: #fff;
  font-size: 2.1rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.025em;
}

.next-home-hero__text {
  margin-top: 16px;
}

.next-home-hero__subtitle {
  margin: 0 0 16px;
  color: #f5f5f4;
  font-size: 1rem;
  font-weight: 500;
}

.next-home-hero .public-action-row {
  margin-top: 24px;
}

.next-home-about,
.next-featured {
  background: linear-gradient(180deg, #ffffff, #fafaf9);
  padding: 64px 0;
}

.next-home-about__grid {
  display: grid;
  align-items: center;
  gap: 32px;
}

.next-home-about__figure {
  margin: 0;
}

.next-home-about__image-frame {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 20px;
  background: #f5f5f4;
  box-shadow: 0 30px 80px -45px rgba(28,25,23,0.28);
}

.next-home-about__image-frame img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: transform 0.7s ease;
}

.next-home-about__image-frame:hover img {
  transform: scale(1.02);
}

.next-home-about__body {
  display: grid;
  gap: 18px;
}

.next-home-about__body h2,
.next-home-contact__heading h2,
.next-featured__heading h2 {
  margin: 0;
  color: #0c0a09;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.045em;
}

.next-home-about__rule {
  height: 1px;
  width: 96px;
  background: #a3e635;
}

.next-home-contact {
  background: linear-gradient(180deg, #fafaf9, #ffffff);
  padding: 64px 0;
}

.next-home-contact__grid {
  display: grid;
  gap: 48px;
}

.next-home-contact__main {
  max-width: 42rem;
}

.next-home-contact__media {
  min-width: 0;
  width: 100%;
}

.next-home-contact__heading {
  display: grid;
  gap: 18px;
}

.next-home-contact__image-frame,
.next-contact-image {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 4 / 3;
  min-height: 260px;
  height: 100%;
  overflow: hidden;
  border-radius: 20px;
  background: #f5f5f4;
}

.next-home-contact__image-frame img,
.next-contact-image img {
  height: 100%;
  min-height: 260px;
  width: 100%;
  object-fit: cover;
  box-shadow: 0 30px 80px -40px rgba(28,25,23,0.35);
}

.next-contact-form {
  display: grid;
  gap: 20px;
  margin-top: 32px;
}

.next-contact-form--home {
  border: 1px solid #e7e5e4;
  border-radius: 24px;
  background: #fff;
  padding: 20px;
  box-shadow: 0 24px 80px -50px rgba(28,25,23,0.18);
}

.next-contact-form__grid {
  display: grid;
  gap: 20px;
}

.next-contact-form label,
.next-property-filter label {
  display: grid;
  gap: 8px;
}

.next-contact-form span,
.next-property-filter span {
  color: #44403c;
  font-size: 0.875rem;
  font-weight: 500;
}

.next-contact-form input,
.next-contact-form textarea,
.next-property-filter input,
.next-property-filter select {
  width: 100%;
  border: 1px solid #d6d3d1;
  border-radius: 12px;
  background: #fff;
  padding: 12px 16px;
  color: #0c0a09;
  font-size: 1rem;
  outline: none;
  transition: 0.2s ease;
}

.next-contact-form input:focus,
.next-contact-form textarea:focus,
.next-property-filter input:focus,
.next-property-filter select:focus {
  border-color: #a3e635;
  box-shadow: 0 0 0 4px rgba(217,249,157,0.65);
}

.next-contact-cards {
  display: grid;
  gap: 16px;
  margin-top: 40px;
}

.next-contact-cards--home {
  margin-top: 28px;
}

.next-contact-card {
  display: block;
  border: 1px solid #e7e5e4;
  border-radius: 22px;
  background: #fff;
  padding: 20px;
  text-align: center;
  box-shadow: 0 24px 80px -55px rgba(28,25,23,0.25);
  transition: 0.2s ease;
}

.next-contact-card:hover {
  border-color: #bef264;
  transform: translateY(-2px);
  box-shadow: 0 28px 80px -50px rgba(28,25,23,0.28);
}

.next-contact-card__icon {
  display: flex;
  height: 48px;
  width: 48px;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  border-radius: 999px;
  background: #ecfccb;
  color: #4d7c0f;
  box-shadow: inset 0 2px 10px rgba(217,249,157,0.6);
}

.next-contact-card__icon svg {
  height: 20px;
  width: 20px;
  fill: currentColor;
}

.next-contact-card__value {
  display: block;
  margin-top: 12px;
  color: #3f6212;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.7;
  text-decoration: underline;
  text-decoration-color: #bef264;
  text-underline-offset: 4px;
  word-break: break-word;
}

.next-featured__stack {
  display: grid;
  gap: 48px;
}

.next-featured__heading {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}

.next-featured__heading > div {
  max-width: 42rem;
  display: grid;
  gap: 16px;
}

.next-featured__heading p {
  margin: 0;
  color: #57534e;
  font-size: 1rem;
  line-height: 2;
}

.next-featured__grid {
  display: grid;
  gap: 24px;
}

.next-feature-card {
  overflow: hidden;
  border: 1px solid #e7e5e4;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 24px 80px -50px rgba(28,25,23,0.22);
  transition: 0.2s ease;
}

.next-feature-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 30px 90px -50px rgba(28,25,23,0.28);
}

.next-feature-card__image {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #f5f5f4;
}

.next-feature-card__image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.next-feature-card__body {
  display: grid;
  gap: 20px;
  padding: 20px;
}

.next-feature-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.next-feature-card__top span {
  border-radius: 999px;
  background: #ecfccb;
  padding: 8px 16px;
  color: #065f46;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.next-feature-card__top strong {
  color: #78716c;
  font-size: 0.875rem;
  font-weight: 500;
}

.next-feature-card h3 {
  margin: 0;
  color: #0c0a09;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.035em;
}

.next-feature-card__facts {
  display: grid;
  gap: 16px;
}

.next-feature-card__facts div {
  border-radius: 18px;
  background: #fafaf9;
  padding: 16px;
}

.next-feature-card__facts span,
.next-property-card__price span,
.next-property-card__facts span {
  color: #78716c;
  font-size: 0.75rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.next-feature-card__facts strong {
  display: block;
  margin-top: 8px;
  color: #0c0a09;
  font-size: 1.125rem;
  font-weight: 600;
}

.next-page-template,
.next-property-list {
  background: linear-gradient(180deg, #fafaf9, #ffffff);
  padding-bottom: 40px;
}

.next-property-list {
  background: radial-gradient(circle at top, rgba(245,158,11,0.08), transparent 24%), linear-gradient(180deg, #fafaf9, #ffffff);
  padding-bottom: 56px;
}

.next-page-hero {
  position: relative;
  left: 50%;
  width: 100vw;
  margin-left: -50vw;
  overflow: hidden;
  background: #0c0a09;
  color: #fff;
  box-shadow: 0 30px 90px -44px rgba(28,25,23,0.45);
}

.next-page-hero img {
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.next-page-hero__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(15,23,42,0.03), rgba(15,23,42,0.08) 50%, rgba(15,23,42,0.16) 100%);
}

.next-page-hero__inner {
  position: relative;
  min-height: 220px;
}

.next-page-hero__bar {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  display: flex;
  min-height: 84px;
  align-items: center;
  background: rgba(132,204,22,0.8);
  padding: 20px 16px;
}

.next-page-hero__text {
  max-width: 56rem;
}

.next-page-hero__eyebrow {
  color: rgba(255,255,255,0.9);
  font-size: 0.5625rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.next-page-hero h1 {
  margin: 6px 0 0;
  color: #fff;
  font-size: 1.95rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.04em;
  text-transform: uppercase;
  filter: drop-shadow(0 8px 28px rgba(0,0,0,0.3));
}

.next-content-page {
  padding-top: 32px;
}

.next-content-card {
  border: 1px solid #e7e5e4;
  border-radius: 32px;
  background: #fff;
  padding: 24px;
  box-shadow: 0 30px 80px -48px rgba(28,25,23,0.25);
}

.next-content-card__inner {
  max-width: 48rem;
  display: grid;
  gap: 24px;
}

.next-content-card h2,
.next-static-intro h2,
.next-contact-intro h2 {
  margin: 0;
  color: #0c0a09;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.045em;
}

.next-static-intro {
  padding: 64px 0;
  text-align: center;
}

.next-static-intro__text {
  max-width: 76rem;
  margin: 0 auto;
  display: grid;
  gap: 20px;
}

.next-static-intro__text .public-richtext {
  max-width: 60rem;
  margin: 0 auto;
}

.next-feature-section {
  padding: 56px 0;
}

.next-feature-section__grid {
  display: grid;
  align-items: stretch;
  gap: 32px;
}

.next-feature-section__body {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
}

.next-feature-section__body h2 {
  margin: 0;
  color: #0c0a09;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.04em;
}

.next-feature-section__media {
  margin: 0;
}

.next-feature-section__media img,
.next-feature-section__media .public-image-placeholder {
  min-height: 240px;
  width: 100%;
  border-radius: 20px;
  object-fit: cover;
  box-shadow: 0 30px 80px -40px rgba(28,25,23,0.35);
}

.next-contact-intro {
  padding: 56px 0;
}

.next-contact-intro__text {
  max-width: 60rem;
  margin: 0 auto;
  display: grid;
  gap: 20px;
  text-align: center;
}

.next-contact-section {
  padding-bottom: 64px;
}

.next-contact-section__grid {
  display: grid;
  align-items: start;
  gap: 32px;
}

.next-contact-panel {
  border: 1px solid #e7e5e4;
  border-radius: 22px;
  background: #fff;
  padding: 20px;
  box-shadow: 0 30px 90px -55px rgba(28,25,23,0.24);
}

.next-contact-panel__heading {
  display: grid;
  gap: 16px;
}

.next-contact-panel h2 {
  margin: 0;
  color: #0c0a09;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.04em;
}

.next-property-list__body {
  padding-top: 24px;
}

.next-property-list__stack {
  display: grid;
  gap: 32px;
}

.next-property-filter {
  border: 1px solid rgba(217,249,157,0.8);
  border-radius: 24px;
  background: rgba(255,255,255,0.95);
  padding: 16px;
  box-shadow: 0 30px 90px -52px rgba(28,25,23,0.22);
  backdrop-filter: blur(10px);
}

.next-property-filter__top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.next-property-filter h2 {
  margin: 8px 0 0;
  color: #0c0a09;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.035em;
}

.next-property-filter p {
  margin: 8px 0 0;
  color: #57534e;
  font-size: 0.875rem;
  line-height: 1.7;
}

.next-property-filter__count {
  border: 1px solid #d9f99d;
  border-radius: 999px;
  background: #f7fee7;
  padding: 8px 16px;
  color: #064e3b;
  font-size: 0.875rem;
  font-weight: 500;
}

.next-property-filter__grid {
  display: grid;
  gap: 12px;
  margin-top: 20px;
}

.next-property-filter__check {
  align-items: end;
}

.next-property-filter__check > span {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 12px;
  border: 1px solid #d9f99d;
  border-radius: 12px;
  background: rgba(247,254,231,0.7);
  padding: 12px 16px;
}

.next-property-filter__check input {
  width: 16px;
  height: 16px;
  padding: 0;
}

.next-property-filter__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  margin-top: 16px;
}

.next-property-grid {
  display: grid;
  gap: 20px;
}

.next-property-card {
  overflow: hidden;
  border: 1px solid #e7e5e4;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 24px 70px -42px rgba(28,25,23,0.24);
  transition: 0.3s ease;
}

.next-property-card:hover {
  border-color: #d9f99d;
  transform: translateY(-6px);
  box-shadow: 0 38px 95px -42px rgba(28,25,23,0.28);
}

.next-property-card__inner {
  display: flex;
  min-height: 100%;
  flex-direction: column;
}

.next-property-card__media {
  position: relative;
  background: #f5f5f4;
}

.next-property-card__image {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.next-property-card__image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: 0.7s ease;
}

.next-property-card:hover .next-property-card__image img {
  transform: scale(1.03);
}

.next-property-card__featured {
  position: absolute;
  top: 16px;
  left: 16px;
  border-radius: 999px;
  background: rgba(163,230,53,0.95);
  padding: 8px 16px;
  color: #064e3b;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  box-shadow: 0 10px 24px rgba(163,230,53,0.2);
}

.next-property-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 16px;
}

.next-property-card__content {
  display: grid;
  gap: 20px;
}

.next-property-card__title-group {
  display: grid;
  gap: 12px;
}

.next-property-card h2 {
  margin: 0;
  color: #0c0a09;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.035em;
}

.next-property-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.next-property-card__chips span {
  border-radius: 999px;
  background: #f5f5f4;
  padding: 4px 12px;
  color: #44403c;
  font-size: 0.75rem;
  font-weight: 500;
}

.next-property-card__chips span + span {
  border: 1px solid #e7e5e4;
  background: #fff;
  color: #57534e;
}

.next-property-card p {
  margin: 0;
  color: #57534e;
  font-size: 0.875rem;
  line-height: 1.8;
}

.next-property-card__price {
  border: 1px solid #ecfccb;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(236,252,203,0.7), rgba(255,255,255,0.95));
  padding: 16px;
}

.next-property-card__price strong {
  display: block;
  margin-top: 8px;
  color: #0c0a09;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.035em;
}

.next-property-card__facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 20px;
}

.next-property-card__facts div {
  min-width: 0;
  border: 1px solid rgba(231,229,228,0.8);
  border-radius: 16px;
  background: #fafaf9;
  padding: 12px;
}

.next-property-card__facts span {
  display: block;
  font-size: 0.625rem;
  letter-spacing: 0.1em;
}

.next-property-card__facts strong {
  display: block;
  margin-top: 8px;
  overflow: hidden;
  color: #0c0a09;
  font-size: 0.75rem;
  font-weight: 500;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.next-property-card__footer {
  margin-top: auto;
  border-top: 1px solid #e7e5e4;
  padding-top: 20px;
}

.next-property-card__footer .public-button,
.next-property-card__body .public-button {
  width: 100%;
}

@media (min-width: 640px) {
  .public-container {
    padding: 0 24px;
  }

  .public-richtext--large {
    font-size: 1.125rem;
  }

  .next-home-hero {
    padding: 80px 0;
  }

  .next-home-hero__content {
    border-radius: 32px;
    padding: 32px;
  }

  .next-home-hero__content h1 {
    font-size: 3rem;
  }

  .next-home-hero__subtitle {
    font-size: 1.25rem;
  }

  .next-home-about,
  .next-home-contact,
  .next-featured {
    padding: 96px 0;
  }

  .next-home-about__image-frame {
    aspect-ratio: 16 / 10;
  }

  .next-home-about__body h2,
  .next-home-contact__heading h2,
  .next-featured__heading h2,
  .next-content-card h2,
  .next-static-intro h2,
  .next-contact-intro h2 {
    font-size: 3rem;
  }

  .next-contact-form--home,
  .next-contact-panel {
    padding: 32px;
  }

  .next-contact-form__grid,
  .next-feature-card__facts,
  .next-property-filter__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .next-contact-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .next-contact-cards--home {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .next-page-hero__inner {
    min-height: 320px;
  }

  .next-page-hero__bar {
    min-height: 110px;
    padding: 24px 32px;
  }

  .next-page-hero__eyebrow {
    font-size: 0.6875rem;
    letter-spacing: 0.3em;
  }

  .next-page-hero h1 {
    font-size: 3rem;
  }

  .next-content-card {
    padding: 32px;
  }

  .next-static-intro {
    padding: 96px 0;
  }

  .next-feature-section {
    padding: 80px 0;
  }

  .next-feature-section__body h2,
  .next-contact-panel h2 {
    font-size: 2.25rem;
  }

  .next-property-filter {
    border-radius: 36px;
    padding: 28px;
  }

  .next-property-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .next-property-card {
    border-radius: 32px;
  }

  .next-property-card__image {
    aspect-ratio: 16 / 11;
  }

  .next-property-card__body {
    padding: 24px;
  }

  .next-property-card h2 {
    font-size: 1.5rem;
  }

  .next-property-card p {
    font-size: 1rem;
    line-height: 2;
  }

  .next-property-filter__actions {
    flex-direction: row;
    align-items: flex-end;
  }
}

@media (min-width: 1024px) {
  .public-container {
    padding: 0 32px;
  }

  .next-home-hero {
    padding: 96px 0;
  }

  .next-home-hero__content {
    padding: 40px;
  }

  .next-home-hero__content h1 {
    font-size: 3.75rem;
  }

  .next-home-about,
  .next-home-contact,
  .next-featured {
    padding: 112px 0;
  }

  .next-home-about__grid {
    grid-template-columns: 1.16fr 0.84fr;
    gap: 64px;
  }

  .next-home-about__image-frame {
    aspect-ratio: 1.78 / 1;
  }

  .next-home-contact__grid {
    grid-template-columns: minmax(0, 1fr) 520px;
    align-items: start;
  }

  .next-home-contact__media {
    height: 100%;
    margin-top: 12px;
  }

  .next-home-contact__image-frame {
    height: 100%;
    min-height: 380px;
  }

  .next-featured__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .next-page-hero__inner {
    min-height: 480px;
  }

  .next-page-hero__bar {
    min-height: 144px;
    padding: 28px 64px;
  }

  .next-page-hero h1 {
    font-size: 3.75rem;
  }

  .next-feature-section {
    padding: 96px 0;
  }

  .next-feature-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 64px;
  }

  .next-feature-section--reverse .next-feature-section__body {
    order: 2;
  }

  .next-feature-section--reverse .next-feature-section__media {
    order: 1;
  }

  .next-feature-section__media img,
  .next-feature-section__media .public-image-placeholder,
  .next-contact-image,
  .next-contact-image img {
    min-height: 380px;
  }

  .next-contact-intro {
    padding: 80px 0;
  }

  .next-contact-section {
    padding-bottom: 112px;
  }

  .next-contact-section__grid {
    grid-template-columns: minmax(0, 1fr) 520px;
  }

  .next-property-list {
    padding-bottom: 96px;
  }

  .next-property-list__body {
    padding-top: 48px;
  }

  .next-property-filter__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .next-property-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .next-property-card__content {
    min-height: 13.5rem;
  }

  .next-property-card p {
    min-height: 7.5rem;
  }
}

@media (min-width: 1280px) {
  .next-home-hero {
    padding: 112px 0;
  }

  .next-home-hero__content h1 {
    font-size: 3.75rem;
  }

  .next-page-hero__inner {
    min-height: 560px;
  }
}

body:not(.admin-body) .header {
  position: sticky;
  top: 0;
  z-index: 40;
  border-bottom: 1px solid rgba(231,229,228,0.8);
  background: rgba(255,255,255,0.9);
  box-shadow: 0 12px 40px -28px rgba(41,37,36,0.35);
  backdrop-filter: blur(24px);
}

body:not(.admin-body) .header__topline {
  height: 4px;
  background: linear-gradient(90deg, #a3e635, #34d399, #2dd4bf);
}

body:not(.admin-body) .header__inner {
  width: 100%;
  max-width: 84rem;
  margin: 0 auto;
  padding: 8px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

body:not(.admin-body) .brand {
  min-width: 0;
  gap: 12px;
}

body:not(.admin-body) .brand img {
  height: 52px;
  max-width: 200px;
  object-fit: contain;
}

body:not(.admin-body) .nav {
  gap: 8px;
}

body:not(.admin-body) .nav a {
  border-radius: 999px;
  padding: 8px 16px;
  color: #57534e;
  font-size: 0.95rem;
  font-weight: 500;
  transition: 0.2s ease;
}

body:not(.admin-body) .nav a:hover {
  background: #f5f5f4;
  color: #0c0a09;
}

body:not(.admin-body) .nav a.is-active {
  background: rgba(163,230,53,0.6);
  color: #064e3b;
  box-shadow: 0 1px 2px rgba(28,25,23,0.08);
}

.public-menu-toggle {
  display: inline-flex;
  height: 40px;
  width: 40px;
  align-items: center;
  justify-content: center;
  border: 1px solid #e7e5e4;
  border-radius: 16px;
  background: #fff;
  color: #44403c;
  padding: 0;
  box-shadow: 0 1px 2px rgba(28,25,23,0.08);
}

.public-menu-toggle__icon {
  position: relative;
  display: block;
  height: 16px;
  width: 20px;
}

.public-menu-toggle__icon span {
  position: absolute;
  left: 0;
  height: 2px;
  width: 20px;
  border-radius: 999px;
  background: currentColor;
  transition: 0.2s ease;
}

.public-menu-toggle__icon span:nth-child(1) {
  top: 0;
}

.public-menu-toggle__icon span:nth-child(2) {
  top: 7px;
}

.public-menu-toggle__icon span:nth-child(3) {
  top: 14px;
}

.public-menu-toggle.is-open .public-menu-toggle__icon span:nth-child(1) {
  top: 7px;
  transform: rotate(45deg);
}

.public-menu-toggle.is-open .public-menu-toggle__icon span:nth-child(2) {
  opacity: 0;
}

.public-menu-toggle.is-open .public-menu-toggle__icon span:nth-child(3) {
  top: 7px;
  transform: rotate(-45deg);
}

body:not(.admin-body) .nav--desktop {
  display: none;
}

body:not(.admin-body) .nav--mobile {
  width: 100%;
  max-width: 84rem;
  max-height: 0;
  margin: 0 auto;
  overflow: hidden;
  border-top: 1px solid #e7e5e4;
  padding: 0 16px;
  opacity: 0;
  transform: translateY(-8px);
  transition: 0.3s ease;
}

body:not(.admin-body) .nav--mobile.is-open {
  max-height: 384px;
  padding-top: 16px;
  padding-bottom: 10px;
  opacity: 1;
  transform: translateY(0);
}

body:not(.admin-body) .nav--mobile a {
  display: block;
  border-radius: 16px;
  background: #fafaf9;
  padding: 12px 16px;
  color: #44403c;
}

@media (min-width: 640px) {
  body:not(.admin-body) .header__inner,
  body:not(.admin-body) .nav--mobile {
    padding-left: 24px;
    padding-right: 24px;
  }

  body:not(.admin-body) .brand img {
    height: 64px;
    max-width: 240px;
  }
}

@media (min-width: 1024px) {
  body:not(.admin-body) .header__inner,
  body:not(.admin-body) .nav--mobile {
    padding-left: 32px;
    padding-right: 32px;
  }

  body:not(.admin-body) .nav--desktop {
    display: flex;
    align-items: center;
  }

  body:not(.admin-body) .nav--mobile,
  body:not(.admin-body) .public-menu-toggle {
    display: none;
  }
}

* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  color: var(--text);
  background:
    radial-gradient(circle at top left, rgba(132, 204, 22, 0.16), transparent 24%),
    radial-gradient(circle at top right, rgba(14, 165, 233, 0.12), transparent 24%),
    linear-gradient(180deg, #fafaf9, var(--bg));
}

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

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

.admin-body {
  background:
    radial-gradient(circle at top left, rgba(14, 165, 233, 0.12), transparent 25%),
    radial-gradient(circle at top right, rgba(16, 185, 129, 0.10), transparent 24%),
    linear-gradient(180deg, #fafaf9, #f5f5f4);
}

.admin-shell {
  min-height: 100vh;
  overflow-x: clip;
}

.admin-shell__inner {
  width: min(95.5%, 1840px);
  margin: 0 auto;
  padding: 20px 0 30px;
  display: grid;
  gap: 28px;
  overflow-x: clip;
}

.admin-sidebar__card {
  display: flex;
  flex-direction: column;
  border-radius: 30px;
  border: 1px solid rgba(255,255,255,0.7);
  background: rgba(255,255,255,0.8);
  box-shadow: 0 22px 62px -42px rgba(28,25,23,0.3);
  backdrop-filter: blur(16px);
  padding: 20px;
}

.admin-sidebar__brand {
  margin-bottom: 18px;
  border-radius: 26px;
  background: linear-gradient(135deg, #0c0a09, #1c1917 54%, #082f49);
  color: #fff;
  padding: 21px;
}

.admin-sidebar__eyebrow {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
}

.admin-sidebar__user-label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
}

.admin-sidebar__title {
  margin-top: 10px;
  font-size: 1.36rem;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.035em;
}

.admin-sidebar__user {
  margin-top: 18px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.1);
  padding: 12px 16px;
}

.admin-sidebar__user-name {
  margin-top: 6px;
  font-size: 0.8125rem;
  font-weight: 500;
}

.admin-sidebar__user-email {
  margin-top: 4px;
  font-size: 0.78125rem;
  line-height: 1.4;
  color: rgba(255,255,255,0.72);
}

.admin-sidebar__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.admin-sidebar__meta-item {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: rgba(245,245,244,0.94);
  padding: 6px 10px;
  font-size: 0.75rem;
  font-weight: 700;
  color: #57534e;
}

.admin-nav {
  display: grid;
  gap: 8px;
  flex: 1 1 auto;
}

.admin-nav__link,
.admin-nav__logout {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid transparent;
  border-radius: 16px;
  background: #fff;
  color: #44403c;
  padding: 12px 16px;
  font-size: 0.875rem;
  font-weight: 500;
  transition: 0.2s ease;
}

.admin-nav__logout {
  cursor: pointer;
}

.admin-nav__link:hover,
.admin-nav__logout:hover {
  background: #f5f5f4;
}

.admin-nav__link.is-active {
  color: #fff;
  border-color: transparent;
  box-shadow: 0 20px 45px -30px rgba(28,25,23,0.45);
}

.admin-nav__link--stone.is-active { background: linear-gradient(90deg, #1c1917, #57534e); }
.admin-nav__link--emerald.is-active { background: linear-gradient(90deg, #047857, #14b8a6); }
.admin-nav__link--sky.is-active { background: linear-gradient(90deg, #0284c7, #4f46e5); }
.admin-nav__link--amber.is-active { background: linear-gradient(90deg, #f59e0b, #f97316); }
.admin-nav__link--violet.is-active { background: linear-gradient(90deg, #7c3aed, #d946ef); }
.admin-nav__link--pink.is-active { background: linear-gradient(90deg, #c026d3, #ec4899); }
.admin-nav__link--cyan.is-active { background: linear-gradient(90deg, #0891b2, #2563eb); }

.admin-nav__badge {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  border: 1px solid #e7e5e4;
  background: #fafaf9;
  color: #78716c;
  font-size: 0.75rem;
  font-weight: 600;
}

.admin-nav__icon {
  width: 15px;
  height: 15px;
}

.admin-nav__link.is-active .admin-nav__badge {
  border-color: rgba(255,255,255,0.18);
  background: rgba(255,255,255,0.12);
  color: #fff;
}

.admin-nav__logout-form {
  margin-top: 10px;
}

.admin-sidebar__powered {
  margin-top: 16px;
  text-align: center;
  font-size: 0.75rem;
  line-height: 1.4;
  color: #78716c;
}

.admin-sidebar__powered a {
  margin-left: 4px;
  font-weight: 700;
  color: #059669;
}

.admin-main {
  min-width: 0;
  overflow-x: clip;
}

.admin-page {
  display: grid;
  gap: 32px;
}

.admin-editor-strap {
  display: none;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}

.admin-editor-strap__item {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid #e7e5e4;
  background: rgba(255,255,255,0.9);
  padding: 6px 11px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #57534e;
}

.admin-list-panel {
  border-radius: var(--admin-radius-lg);
  overflow: hidden;
}

.admin-list-panel__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  padding: 22px 24px 6px;
}

.admin-list-panel__heading {
  display: grid;
  gap: 6px;
}

.admin-list-panel__heading strong {
  font-size: 1.02rem;
  font-weight: 600;
  color: #1c1917;
}

.admin-list-panel__heading span {
  font-size: 0.9rem;
  line-height: 1.45;
  color: #78716c;
}

.admin-list-panel__stats {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.admin-list-panel__stat {
  display: grid;
  gap: 4px;
  min-width: 112px;
  border-radius: 18px;
  border: 1px solid #ece8e1;
  background: rgba(255,255,255,0.88);
  padding: 12px 14px;
}

.admin-list-panel__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 0 24px 4px;
}

.admin-list-panel__meta-item {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: rgba(245,245,244,0.95);
  padding: 6px 11px;
  font-size: 0.75rem;
  font-weight: 600;
  color: #78716c;
}

.admin-dashboard-panel {
  padding: 22px;
  overflow: hidden;
}

.admin-dashboard-panel__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.admin-dashboard-panel__meta {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: rgba(245,245,244,0.94);
  padding: 6px 11px;
  font-size: 0.75rem;
  font-weight: 600;
  color: #78716c;
}

.admin-list-panel__stat span {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #78716c;
}

.admin-list-panel__stat strong {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #1c1917;
}

.admin-section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.admin-section-heading > div:first-child {
  min-width: 0;
  flex: 1 1 0;
}

.admin-section-heading > .cta-row {
  flex: 0 0 auto;
}

.admin-section-heading h1 {
  margin: 0 0 16px;
  font-size: 3rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.055em;
}

.admin-section-heading .lead {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.55;
}

.admin-section-heading__meta {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.admin-screen-meta,
.admin-context-bar {
  display: none;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.admin-screen-meta {
  display: flex;
}

.admin-screen-meta__item,
.admin-context-bar__item {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid #e7e5e4;
  background: rgba(255,255,255,0.88);
  padding: 9px 14px;
  font-size: 0.9rem;
  font-weight: 500;
  color: #57534e;
}

.admin-pill {
  border-radius: 999px;
  border: 1px solid #d6d3d1;
  background: rgba(255,255,255,0.86);
  padding: 10px 15px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #57534e;
}

.admin-stats-grid {
  display: grid;
  gap: 16px;
}

.admin-stat-card {
  display: block;
  border-radius: 24px;
  border: 1px solid #e7e5e4;
  background: linear-gradient(135deg, #fff, #fafaf9);
  padding: 24px;
  box-shadow: 0 1px 2px rgba(28,25,23,0.05);
}

.admin-stat-card--link {
  color: inherit;
  text-decoration: none;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.admin-stat-card--link:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 38px -28px rgba(28,25,23,0.28);
}

.admin-stat-card--link:focus-visible {
  outline: 2px solid #65a30d;
  outline-offset: 3px;
}

.admin-stat-card--emerald {
  border-color: #d1fae5;
  background: linear-gradient(135deg, #fff, #ecfdf5);
}

.admin-stat-card--amber {
  border-color: #fde68a;
  background: linear-gradient(135deg, #fff, #fffbeb);
}

.admin-stat-card--sky {
  border-color: #dbeafe;
  background: linear-gradient(135deg, #fff, #eff6ff);
}

.admin-stat-card__label {
  font-size: 0.875rem;
  font-weight: 500;
  color: #57534e;
}

.admin-stat-card__value {
  margin-top: 12px;
  font-size: clamp(1.875rem, 3vw, 2.25rem);
  font-weight: 600;
  letter-spacing: -0.045em;
}

.admin-grid {
  display: grid;
  gap: 22px;
}

.admin-panel {
  border-radius: var(--admin-radius-lg);
  border: 1px solid #e7e5e4;
  background: var(--admin-soft-surface);
  box-shadow: var(--admin-card-shadow);
}

.admin-editor-section {
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-card-shadow);
}

.admin-editor-section--hero {
  background: linear-gradient(135deg, rgba(255,255,255,0.98), rgba(236,253,245,0.78));
}

.admin-editor-section--template {
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(250,250,249,0.96));
}

.admin-editor-section--media {
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,252,0.92));
}

.admin-table-card {
  padding: 0;
  overflow: hidden;
}

.admin-table-card--single {
  border-radius: var(--admin-radius-lg);
}

.admin-empty-state {
  padding: 34px 28px;
  text-align: center;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,0.78), rgba(250,250,249,0.9));
}

.admin-empty-state h3 {
  margin: 0 0 8px;
  font-size: 1.2rem;
}

.admin-empty-state p {
  margin: 0;
  color: #78716c;
  line-height: 1.7;
}

.admin-page-editor,
.admin-page-editor__form {
  display: grid;
  gap: 22px;
}

.admin-page-form-hero {
  padding: 24px;
  border-color: #d9f99d;
  background: linear-gradient(135deg, rgba(255,255,255,0.98), rgba(236,253,245,0.78));
}

.admin-page-form-hero__grid {
  display: grid;
  gap: 18px;
}

.admin-page-form-topcards {
  display: grid;
  gap: 14px;
  margin-top: 18px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.admin-page-summary-grid {
  display: none;
  gap: 14px;
  margin-top: 18px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.admin-page-summary-card {
  border-radius: 20px;
  border: 1px solid #d9f99d;
  background: rgba(255,255,255,0.92);
  padding: 18px;
  box-shadow: 0 16px 40px -34px rgba(101,163,13,0.24);
}

.admin-page-summary-card p {
  margin: 8px 0 0;
  font-size: 0.96875rem;
  color: #57534e;
  line-height: 1.45;
}

.admin-page-summary-card--media img {
  display: block;
  width: 100%;
  margin-top: 12px;
  border-radius: 18px;
  aspect-ratio: 16 / 9.5;
  object-fit: cover;
}

.admin-page-menu-card {
  border-radius: 18px;
  border: 1px solid #d9f99d;
  background: linear-gradient(135deg, rgba(236,253,245,0.72), rgba(255,255,255,0.95));
  padding: 16px;
}

.admin-page-menu-card__toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #1f2937;
}

.admin-page-template-card {
  padding: 24px;
}

.admin-page-template-overview {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-bottom: 20px;
}

.admin-page-template-pill {
  border-radius: 18px;
  border: 1px solid #e7e5e4;
  background: #fff;
  padding: 15px 16px;
  box-shadow: 0 14px 35px -28px rgba(28,25,23,0.18);
}

.admin-page-template-pill strong,
.admin-page-template-pill span,
.admin-page-template-pill em {
  display: block;
}

.admin-page-template-pill strong {
  font-size: 0.875rem;
  color: #1c1917;
}

.admin-page-template-pill span {
  margin-top: 8px;
  color: #57534e;
  line-height: 1.5;
  font-size: 0.8125rem;
}

.admin-page-template-pill em {
  margin-top: 8px;
  font-style: normal;
  font-size: 0.75rem;
  line-height: 1.45;
  color: #78716c;
}

.admin-page-template-pill.is-active {
  border-color: #bef264;
  background: linear-gradient(135deg, rgba(254,252,232,0.92), rgba(236,253,245,0.92));
  box-shadow: 0 18px 42px -30px rgba(101,163,13,0.26);
}

.admin-page-image-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.admin-page-image-card {
  border-radius: 20px;
  border: 1px solid #e7e5e4;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 16px 40px -34px rgba(28,25,23,0.16);
}

.admin-page-image-card__preview {
  min-height: 188px;
  background: linear-gradient(135deg, #f5f5f4, #fafaf9);
}

.admin-page-image-card__preview img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 220px;
  object-fit: cover;
}

.admin-page-image-card__preview.is-empty {
  display: grid;
  place-items: center;
  color: #a8a29e;
  font-weight: 700;
}

.admin-page-image-card__body {
  display: grid;
  gap: 12px;
  padding: 18px;
}

.admin-page-image-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.admin-page-image-card__head strong {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #1c1917;
}

.admin-page-image-card__head span {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 6px 10px;
  background: #f5f5f4;
  color: #57534e;
  font-size: 0.8125rem;
  font-weight: 600;
}

.admin-page-image-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-page-image-card__copy {
  display: grid;
  gap: 4px;
  border: 1px dashed #e7e5e4;
  border-radius: 14px;
  background: rgba(250,250,249,0.72);
  padding: 11px 12px;
}

.admin-page-image-card__copy strong {
  font-size: 0.8125rem;
  font-weight: 700;
  color: #292524;
}

.admin-page-image-card__copy span {
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #78716c;
}

.admin-page-image-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 6px 10px;
  background: rgba(236,253,245,0.92);
  color: #047857;
  font-size: 0.75rem;
  font-weight: 700;
}

.admin-page-image-chip--muted {
  background: #f5f5f4;
  color: #57534e;
}

.admin-page-image-card__hint {
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #78716c;
}

.admin-floating-submit {
  position: fixed;
  right: 24px;
  bottom: 24px;
  width: 58px;
  height: 58px;
  border-radius: 999px;
  border: 0;
  background: linear-gradient(135deg, #a3e635, #34d399);
  color: #14532d;
  box-shadow: 0 22px 45px -18px rgba(52,211,153,0.45);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 40;
}

.admin-floating-submit__icon {
  width: 22px;
  height: 22px;
}

.admin-form-actions--sticky {
  position: sticky;
  bottom: 16px;
  z-index: 10;
  padding: 15px 16px;
  border-radius: 22px;
  border: 1px solid #d9f99d;
  background: rgba(255,255,255,0.95);
  box-shadow: 0 20px 45px -34px rgba(101,163,13,0.24);
}

.admin-editor-actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  flex-wrap: wrap;
}

.admin-property-flow {
  display: grid;
  gap: 32px;
}

.admin-property-editor-shell {
  border-radius: 30px;
  border: 1px solid #e7e5e4;
  background: #fff;
  padding: 32px;
  box-shadow: var(--admin-card-shadow);
}

.admin-property-form {
  display: grid;
  gap: 32px;
}

.admin-property-section {
  padding: 24px;
  border-radius: 24px;
  box-shadow: none;
}

.admin-property-section--basic {
  background: linear-gradient(135deg, #fff, #fafaf9);
}

.admin-property-hero-layout {
  display: grid;
  gap: 22px;
}

.admin-property-hero-layout__main,
.admin-property-hero-layout__aside {
  min-width: 0;
}

.admin-property-hero-layout__aside {
  display: none;
}

.admin-property-grid,
.admin-property-seo-grid,
.admin-property-toggle-row {
  display: grid;
  gap: 16px;
}

.admin-property-grid--next {
  gap: 20px;
}

.admin-property-seo-grid {
  grid-template-columns: 1fr;
  margin-top: 24px;
}

.admin-property-grid__full {
  grid-column: 1 / -1;
}

.admin-property-summary-grid {
  display: grid;
  gap: 14px;
  margin-top: 18px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.admin-property-summary-grid--stacked {
  margin-top: 0;
  grid-template-columns: 1fr;
  align-content: start;
}

.admin-property-summary-card {
  border-radius: 20px;
  border: 1px solid #d9f99d;
  background: rgba(255,255,255,0.92);
  padding: 18px;
  box-shadow: 0 16px 40px -34px rgba(101,163,13,0.24);
}

.admin-property-summary-card p {
  margin: 8px 0 0;
  font-size: 0.96875rem;
  color: #57534e;
  line-height: 1.45;
}

.admin-property-summary-card--media img {
  display: block;
  width: 100%;
  margin-top: 12px;
  border-radius: 16px;
  aspect-ratio: 16 / 9.5;
  object-fit: cover;
}

.admin-property-gallery-attach {
  display: grid;
  gap: 24px;
  margin-top: 24px;
  margin-bottom: 0;
}

.admin-property-gallery-attach--next {
  border: 0;
  background: transparent;
}

.admin-gallery-upload-field {
  margin: 0;
}

.admin-gallery-upload-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.admin-gallery-file-empty {
  display: block;
  margin: 0 0 10px;
  font-size: 0.875rem;
  font-weight: 400;
  color: #78716c;
}

.admin-gallery-upload-actions .admin-gallery-file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.admin-gallery-upload-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 12px;
  background: #0284c7;
  color: #fff;
  padding: 12px 16px;
  font-size: 0.875rem;
  font-weight: 500;
  box-shadow: none;
}

.admin-gallery-picker-button {
  border-radius: 12px;
  padding: 12px 16px;
  font-size: 0.875rem;
  font-weight: 500;
}

.admin-gallery-advanced-fields {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
}

.admin-property-gallery-attach--next .admin-picker-block {
  display: none;
}

.admin-gallery-upload-panel {
  display: grid;
  gap: 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(248,250,252,0.92), rgba(255,255,255,0.96));
  padding: 20px;
}

.admin-gallery-upload-panel__intro {
  display: grid;
  gap: 16px;
}

.admin-gallery-upload-panel__stats {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.admin-gallery-upload-stat {
  display: grid;
  gap: 6px;
  border-radius: 16px;
  border: 1px solid #e7e5e4;
  background: rgba(255,255,255,0.88);
  padding: 12px 14px;
}

.admin-gallery-upload-stat span {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #78716c;
}

.admin-gallery-upload-stat strong {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #1c1917;
}

.admin-form-actions--wide {
  justify-content: flex-start;
}

.admin-meta-card {
  border-radius: 18px;
  border: 1px solid #e7e5e4;
  background: rgba(255,255,255,0.94);
  box-shadow: 0 16px 40px -34px rgba(28,25,23,0.2);
  padding: 16px;
}

.admin-meta-card__label {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #78716c;
}

.admin-meta-card__value {
  margin-top: 8px;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #1c1917;
  word-break: break-word;
}

.admin-locale-tabs {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  border-radius: 24px;
  border: 1px solid #e7e5e4;
  background: rgba(255,255,255,0.9);
  padding: 8px;
  box-shadow: 0 10px 24px -20px rgba(28,25,23,0.24);
}

.admin-form-section-title {
  margin: 0 0 16px;
}

.admin-form-section-title h3 {
  margin: 0;
  font-size: 1.12rem;
  font-weight: 600;
  color: #0c0a09;
  line-height: 1.2;
  letter-spacing: -0.03em;
}

.admin-form-section-title p {
  margin: 8px 0 0;
  max-width: 34rem;
  font-size: 0.9rem;
  line-height: 1.5;
  color: #57534e;
}

.admin-toolbar {
  display: flex;
  gap: 13px;
  align-items: end;
  flex-wrap: wrap;
  padding: 18px 24px 0;
}

.admin-list-controls {
  display: grid;
  gap: 16px;
  padding-bottom: 18px;
  min-width: 0;
}

.admin-toolbar--compact {
  padding-top: 16px;
}

.admin-toolbar--surface {
  border: 1px solid var(--line);
  border-radius: var(--admin-radius-md);
  background: rgba(255,255,255,0.94);
  padding: 15px 16px;
}

.admin-toolbar--top {
  padding: 15px 18px;
}

.admin-toolbar--bulk select {
  min-width: min(100%, 280px);
}

.admin-toolbar--bulk .button,
.admin-toolbar--bulk button {
  min-width: 0;
}

.admin-toolbar--search {
  padding-top: 16px;
}

.admin-toolbar--embedded {
  padding-top: 0;
}

.admin-toolbar--panel {
  margin: 0 24px;
}

.admin-toolbar .field {
  min-width: min(100%, 320px);
  flex: 1 1 260px;
  margin-bottom: 0;
}

.admin-toolbar select {
  border: 1px solid #d6d3d1;
  border-radius: 15px;
  padding: 12px 14px;
  font-size: 0.875rem;
  line-height: 1.2;
  background: #fff;
  color: #1c1917;
}

.admin-pagination {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  padding: 18px 24px 22px;
}

.admin-pagination--panel {
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid #efeae4;
  background: rgba(255,255,255,0.84);
  padding: 17px 24px 19px;
  font-size: 0.85rem;
  color: #78716c;
}

.admin-pagination__actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.admin-main .field-grid + .field-grid,
.admin-main .field + .field,
.admin-main .content-card--subsection + .content-card--subsection {
  margin-top: 0;
}

.admin-main .auth-wrap {
  min-height: 0;
  display: block;
  padding: 0;
}

.admin-main .auth-box {
  width: 100%;
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

.admin-main .auth-box--wide {
  width: 100%;
}

.admin-main .dashboard-head {
  margin-bottom: 0;
}

.admin-main .content-card {
  border-radius: var(--admin-radius-lg);
  border: 1px solid #e7e5e4;
  background: var(--admin-soft-surface);
  box-shadow: var(--admin-card-shadow);
}

.admin-main .admin-table-card {
  padding: 0;
  overflow: hidden;
}

.admin-meta-card--action,
.admin-meta-card--visual {
  overflow: hidden;
}

.admin-main .content-card--subsection {
  background: #fafaf9;
  box-shadow: none;
}

.admin-main .form-stack {
  gap: 24px;
}

.admin-main .cta-row {
  margin-top: 0;
}

.admin-main .dashboard-table {
  padding: 0 24px;
}

.admin-main .dashboard-table__head,
.admin-main .dashboard-table__row {
  min-width: 0;
}

.admin-profile-page {
  display: grid;
  gap: 22px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: clip;
}

.admin-profile-page * {
  min-width: 0;
}

.admin-profile-account-card,
.admin-profile-form-card {
  padding: 22px;
}

.admin-profile-account-card {
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255,255,255,0.98), rgba(250,250,249,0.94));
}

.admin-profile-account-grid,
.admin-profile-summary-grid,
.admin-profile-status-grid {
  display: grid;
  gap: 16px;
}

.admin-profile-account-grid {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.admin-profile-account-edit {
  display: grid;
  gap: 16px;
  margin-top: 18px;
}

.admin-profile-account-edit-panel {
  border: 1px solid #e7e5e4;
  border-radius: 24px;
  background: linear-gradient(135deg, #fff, #fafaf9);
  box-shadow: 0 1px 2px rgba(28, 25, 23, 0.04);
  padding: 18px;
}

.admin-profile-account-stat {
  display: grid;
  gap: 8px;
  border-radius: 20px;
  border: 1px solid #e7e5e4;
  background: rgba(255,255,255,0.9);
  padding: 17px 19px;
}

.admin-profile-account-stat span,
.admin-profile-summary-list span {
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #78716c;
}

.admin-profile-account-stat strong,
.admin-profile-status-card__title,
.admin-profile-summary-list strong {
  font-size: 1.04rem;
  font-weight: 600;
  color: #1c1917;
}

.admin-profile-settings-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  max-width: 100%;
}

.admin-profile-status-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  max-width: 100%;
}

.admin-profile-status-card {
  display: grid;
  gap: 10px;
}

.admin-profile-status-card__copy {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #57534e;
}

.admin-profile-status-card__footer {
  display: flex;
  flex-wrap: wrap;
}

.admin-profile-form-card {
  gap: 24px;
}

.admin-profile-form-section {
  display: grid;
  gap: 16px;
}

.admin-profile-form-section--next {
  gap: 0;
}

.admin-profile-settings-panel {
  border: 1px solid #ecfccb;
  border-radius: 24px;
  background: linear-gradient(135deg, #fff 0%, rgba(247, 254, 231, 0.24) 48%, #fafaf9 100%);
  box-shadow: 0 24px 60px -45px rgba(101, 163, 13, 0.35);
  padding: 18px;
  align-items: start;
}

.admin-logo-field {
  display: grid;
  gap: 12px;
}

.admin-logo-field__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.admin-logo-upload-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #a3e635, #10b981);
  color: #064e3b;
  padding: 12px 16px;
  font-size: 0.875rem;
  font-weight: 700;
  box-shadow: 0 16px 34px -24px rgba(101, 163, 13, 0.6);
}

.admin-logo-file-input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
}

.admin-favicon-preview {
  width: 52px;
  min-width: 52px;
  height: 52px;
  min-height: 52px;
  padding: 10px;
  border-radius: 16px;
}

.admin-favicon-preview img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.admin-favicon-field {
  display: grid;
  gap: 8px;
  align-content: start;
}

.admin-favicon-field__row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.admin-favicon-field__row input {
  min-width: 0;
  flex: 1 1 auto;
}

.admin-favicon-field__actions {
  flex: 0 0 auto;
  gap: 8px;
  flex-wrap: nowrap;
}

.admin-favicon-field__actions .admin-logo-upload-button,
.admin-favicon-field__actions .button {
  min-height: 38px;
  padding: 9px 13px;
  border-radius: 12px;
  font-size: 0.82rem;
}

.field-hint {
  display: block;
  margin-top: -4px;
  color: #78716c;
  font-size: 0.78rem;
  line-height: 1.45;
}

.admin-profile-summary-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.admin-profile-summary-card {
  display: grid;
  gap: 12px;
}

.admin-profile-summary-card__empty {
  border-radius: 18px;
  border: 1px dashed #d6d3d1;
  background: rgba(250,250,249,0.9);
  padding: 18px;
  font-size: 0.875rem;
  color: #78716c;
}

.admin-profile-summary-list {
  display: grid;
  gap: 14px;
}

.admin-profile-summary-list div {
  display: grid;
  gap: 6px;
  border-radius: 16px;
  border: 1px solid #f0ece7;
  background: rgba(255,255,255,0.88);
  padding: 14px 16px;
}

.admin-profile-logo-preview img {
  width: 100%;
  max-height: 140px;
  object-fit: contain;
  border-radius: 18px;
  border: 1px solid #e7e5e4;
  background: #fff;
  padding: 16px;
}

.admin-user-form-card {
  padding: 24px;
  gap: 24px;
}

.admin-user-editor-flow {
  gap: 20px;
}

.admin-user-form-grid {
  display: grid;
  gap: 18px;
}

.admin-user-form-aside {
  display: grid;
  gap: 14px;
  align-content: start;
}

.admin-language-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  border: 1px solid #e7e5e4;
  background: #fff;
  padding: 7px 11px;
  font-size: 0.84rem;
  font-weight: 600;
  color: #44403c;
  white-space: nowrap;
}

.admin-data-table--users {
  min-width: 1040px;
}

.admin-file-input,
.admin-main input[type="file"] {
  width: 100%;
  max-width: 100%;
  border: 1px solid #d6d3d1;
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(250,250,249,0.95));
  padding: 11px 13px;
  font-size: 0.9rem;
  color: #44403c;
  overflow: hidden;
  text-overflow: ellipsis;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.92);
}

.admin-file-input::file-selector-button,
.admin-main input[type="file"]::file-selector-button {
  margin-right: 12px;
  border: 1px solid #d9f99d;
  border-radius: 12px;
  background: linear-gradient(90deg, #a3e635, #34d399);
  color: #14532d;
  padding: 11px 15px;
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 14px 28px -18px rgba(16,185,129,0.45);
}

.admin-file-input:hover::file-selector-button,
.admin-main input[type="file"]:hover::file-selector-button {
  filter: brightness(1.03);
}

.admin-main input[type="file"].admin-logo-file-input {
  position: absolute;
  width: 1px;
  max-width: 1px;
  height: 1px;
  border: 0;
  padding: 0;
  opacity: 0;
  pointer-events: none;
}

.admin-page-editor-shell {
  border: 1px solid #e7e5e4;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 22px 56px -40px rgba(28, 25, 23, 0.28);
  padding: 24px;
}

.admin-page-form {
  display: grid;
  gap: 32px;
}

.admin-page-settings-card,
.admin-page-template-preview,
.admin-page-seo-card {
  border: 1px solid #ecfccb;
  border-radius: 28px;
  background: linear-gradient(135deg, #fff 0%, rgba(247, 254, 231, 0.28) 48%, rgba(236, 253, 245, 0.32) 100%);
  box-shadow: 0 24px 60px -45px rgba(101, 163, 13, 0.35);
  padding: 24px;
}

.admin-page-seo-card {
  background: linear-gradient(135deg, #fff 0%, rgba(236, 253, 245, 0.28) 52%, #fafaf9 100%);
  box-shadow: 0 24px 60px -45px rgba(16, 185, 129, 0.28);
}

.admin-page-settings-grid {
  display: grid;
  gap: 16px;
  margin-top: 16px;
}

.admin-page-menu-card--next,
.admin-page-setting-box {
  border: 1px solid #e7e5e4;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(28, 25, 23, 0.05);
  padding: 16px;
}

.admin-page-menu-card--next {
  border-color: #d9f99d;
  background: linear-gradient(90deg, rgba(247, 254, 231, 0.86), rgba(255, 255, 255, 0.94));
}

.admin-page-menu-card__placement {
  display: grid;
  gap: 8px;
  margin-top: 14px;
  border-top: 1px solid rgba(186, 230, 253, 0.72);
  padding-top: 14px;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.admin-page-menu-card__placement select {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 30px -20px rgba(14, 165, 233, 0.55);
  padding: 12px 44px 12px 14px;
  font-size: 0.875rem;
  font-weight: 600;
  color: #44403c;
}

.admin-page-template-preview__intro {
  display: grid;
  gap: 8px;
}

.admin-page-template-preview__intro h2 {
  margin: 0;
  font-size: 1.12rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: #0c0a09;
}

.admin-page-template-preview__intro p {
  margin: 0;
  color: #57534e;
  font-size: 0.9375rem;
  line-height: 1.55;
}

.admin-page-template-preview__meta-grid {
  display: grid;
  gap: 16px;
  margin-top: 24px;
}

.admin-page-template-preview__meta-grid article {
  border: 1px solid #ecfccb;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(28, 25, 23, 0.05);
  padding: 16px;
}

.admin-page-template-preview__meta-grid strong,
.admin-page-template-preview__meta-grid span {
  display: block;
  margin-top: 8px;
  color: #1c1917;
  font-size: 0.9375rem;
  line-height: 1.55;
}

.admin-page-template-fields {
  display: grid;
  gap: 12px;
  margin-top: 24px;
}

.admin-page-template-fields__title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #44403c;
}

.admin-page-template-field-card {
  display: grid;
  gap: 18px;
  border: 1px solid #ecfccb;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(28, 25, 23, 0.05);
  padding: 18px;
}

.admin-page-template-field-card__control {
  min-width: 0;
}

.admin-page-template-field-card__meta {
  display: grid;
  align-content: start;
  gap: 10px;
  color: #57534e;
  font-size: 0.875rem;
  line-height: 1.5;
}

.admin-page-template-field-card__meta strong {
  color: #44403c;
  font-weight: 700;
}

.admin-page-inline-image-preview {
  overflow: hidden;
  border: 1px solid #e7e5e4;
  border-radius: 18px;
  background: #f5f5f4;
}

.admin-page-inline-image-preview img {
  display: block;
  width: 100%;
  height: 180px;
  object-fit: cover;
}

.admin-page-file-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  color: #57534e;
  font-size: 0.875rem;
}

.admin-main .admin-page-file-row input[type="file"].admin-gallery-file-input {
  position: absolute;
  width: 1px;
  max-width: 1px;
  height: 1px;
  border: 0;
  padding: 0;
  opacity: 0;
  pointer-events: none;
}

.admin-page-editor-shell,
.admin-page-editor-shell * {
  min-width: 0;
}

.admin-page-editor-shell,
.admin-page-form {
  max-width: 100%;
  overflow-x: clip;
}

.admin-page-seo-grid {
  display: grid;
  gap: 16px;
  margin-top: 24px;
}

.admin-page-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.admin-media-upload-card {
  order: 3;
  padding: 24px;
}

.admin-media-upload-card__header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.admin-media-upload-card__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  min-width: min(100%, 300px);
}

.admin-media-upload-form {
  display: grid;
  gap: 18px;
}

.admin-media-library-card {
  order: 2;
  overflow: hidden;
  margin-top: 12px;
}

.admin-media-filterbar {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.admin-media-filterbar .admin-form-section-title {
  margin: 0;
}

.admin-media-upload-card .admin-form-section-title h3,
.admin-media-filterbar .admin-form-section-title h3,
.admin-media-library-card__head .admin-form-section-title h3 {
  font-size: 1rem;
  letter-spacing: -0.025em;
}

.admin-media-upload-card .admin-form-section-title p,
.admin-media-filterbar .admin-form-section-title p,
.admin-media-library-card__head .admin-form-section-title p {
  margin-top: 6px;
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #6b7280;
}

.admin-media-library-card__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  padding: 20px 24px 0;
}

.admin-media-library-card__stat {
  display: grid;
  gap: 6px;
  min-width: 180px;
  border-radius: 18px;
  border: 1px solid #ece7e1;
  background: rgba(255,255,255,0.9);
  padding: 14px 16px;
}

.admin-media-library-card__stat span {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #78716c;
}

.admin-media-library-card__stat strong {
  font-size: 0.95rem;
  font-weight: 600;
  color: #1c1917;
}

.admin-screen-meta {
  margin-bottom: 2px;
}

.admin-media-upload-card,
.admin-media-library-card {
  border-radius: 26px;
}

.admin-media-filterbar {
  padding-top: 20px;
  padding-bottom: 8px;
}

.admin-media-library-card__head {
  padding: 18px 24px 4px;
}

.admin-media-filterbar .admin-locale-tabs {
  gap: 8px;
  justify-content: flex-end;
}

.admin-media-filterbar .locale-chip {
  padding: 8px 12px;
  font-size: 0.78rem;
}

.admin-media-filterbar .locale-chip__flag {
  display: none;
}

@media (min-width: 980px) {
  .admin-shell__inner {
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 34px;
    width: min(95%, 1840px);
    padding: 26px 0 34px;
  }

  .admin-sidebar {
    position: sticky;
    top: 28px;
    align-self: start;
    max-height: calc(100vh - 56px);
  }

  .admin-sidebar__card {
    max-height: calc(100vh - 56px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }

  .admin-stats-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .admin-grid--split {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-page-form-hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .admin-page-form-topcards,
  .admin-page-template-overview,
  .admin-page-summary-grid,
  .admin-property-summary-grid,
  .admin-page-image-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-property-grid,
  .admin-property-toggle-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-property-seo-grid {
    grid-template-columns: 1fr;
  }

  .admin-user-form-grid {
    grid-template-columns: minmax(0, 1fr) 320px;
  }

  .admin-page-settings-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: start;
  }

  .admin-page-template-preview__meta-grid,
  .admin-page-seo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-page-template-field-card {
    grid-template-columns: minmax(0, 1fr) 220px;
    align-items: start;
  }
}

@media (min-width: 1200px) {
  .media-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .admin-profile-status-grid,
  .admin-profile-summary-grid {
    grid-template-columns: 1fr;
  }

  .admin-media-upload-card__stats {
    grid-template-columns: 1fr;
  }

  .media-grid {
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  }
}

@media (max-width: 979px) {
  .admin-list-panel__header,
  .admin-list-panel__meta {
    padding-left: 18px;
    padding-right: 18px;
  }

  .admin-toolbar--panel,
  .admin-table-shell {
    margin-left: 18px;
    margin-right: 18px;
  }

  .admin-main .dashboard-table {
    overflow-x: auto;
  }

  .admin-main .dashboard-table__head,
  .admin-main .dashboard-table__row {
    min-width: 720px;
  }

  .admin-floating-submit {
    right: 16px;
    bottom: 16px;
  }

  .admin-media-library-card__head,
  .admin-table-scroll-hint,
  .media-grid {
    padding-left: 18px;
    padding-right: 18px;
  }

  .admin-table-scroll-hint {
    display: inline-flex;
    width: fit-content;
  }
}

@media (max-width: 720px) {
  .admin-page-editor-shell,
  .admin-page-settings-card,
  .admin-page-template-preview,
  .admin-page-seo-card {
    border-radius: 24px;
    padding: 16px;
  }

  .admin-page-form {
    gap: 24px;
  }

  .field-grid--triple,
  .field-grid--double,
  .admin-page-seo-grid {
    grid-template-columns: 1fr;
  }

  .field--wide {
    grid-column: auto;
  }

  .admin-property-editor-shell {
    padding: 16px;
    border-radius: 24px;
  }

  .admin-section-heading > div:first-child,
  .admin-section-heading > .cta-row {
    flex-basis: 100%;
  }

  .admin-section-heading h1 {
    font-size: clamp(2rem, 8vw, 2.45rem);
  }

  .admin-shell__inner {
    width: 95%;
    padding-top: 18px;
  }

  .admin-sidebar__card {
    border-radius: 24px;
    padding: 16px;
  }

  .admin-sidebar__brand {
    margin-bottom: 24px;
    border-radius: 24px;
    padding: 20px;
  }

  .admin-sidebar__powered {
    display: none;
  }

  .admin-toolbar {
    padding-left: 18px;
    padding-right: 18px;
  }

  .admin-toolbar--bulk {
    display: grid;
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .admin-toolbar--bulk select,
  .admin-toolbar--bulk .button,
  .admin-toolbar--bulk button {
    width: 100%;
  }

  .admin-page-form-topcards,
  .admin-page-summary-grid,
  .admin-property-summary-grid,
  .admin-page-image-grid,
  .admin-gallery-upload-panel__stats {
    grid-template-columns: 1fr;
  }

  .admin-pagination--panel {
    align-items: flex-start;
  }

  .admin-media-filterbar {
    align-items: flex-start;
  }

  .admin-media-filterbar .admin-locale-tabs {
    justify-content: flex-start;
  }

  .media-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .media-card__path-row {
    flex-direction: column;
  }

  .media-card__copy-button {
    padding: 10px 12px;
  }
}

.container {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}

.richtext {
  color: var(--muted);
  line-height: 1.8;
}

.richtext--inverse,
.lead--inverse {
  color: rgba(255,255,255,0.9);
}

.richtext p:first-child {
  margin-top: 0;
}

.richtext p:last-child {
  margin-bottom: 0;
}

.header {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(255,255,255,0.92);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
}

.header__topline {
  height: 4px;
  background: linear-gradient(90deg, var(--lime), var(--emerald), #14b8a6);
}

.header__inner,
.hero,
.auth-card {
  padding: 24px 0;
}

.section {
  padding: 56px 0;
}

.section--tight {
  padding-top: 0;
}

.brand {
  display: flex;
  align-items: center;
  gap: 16px;
}

.brand img {
  height: 58px;
  width: auto;
  object-fit: contain;
}

.nav {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.nav a {
  border-radius: 999px;
  padding: 10px 16px;
  font-size: 0.95rem;
  font-weight: 600;
}

.nav a.is-active {
  background: rgba(163, 230, 53, 0.4);
  color: #14532d;
}

.hero-grid,
.auth-grid {
  display: grid;
  gap: 24px;
}

.hero-surface {
  position: relative;
  overflow: hidden;
  background: #0c0a09;
  color: white;
  padding: 72px 0;
}

.hero-surface__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 112%;
  object-fit: cover;
  transform: scale(1.06);
}

.hero-surface__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(12,10,9,0.54) 0%, rgba(12,10,9,0.24) 50%, rgba(12,10,9,0.1) 100%),
    radial-gradient(circle at top left, rgba(245,158,11,0.12), transparent 34%);
}

.hero-surface__content {
  position: relative;
  max-width: 760px;
  border-radius: 32px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(0,0,0,0.18);
  padding: 28px;
  backdrop-filter: blur(10px);
  box-shadow: 0 40px 120px -50px rgba(0,0,0,0.65);
}

.hero-title {
  max-width: 12ch;
}

.hero-subtitle {
  font-size: 1.15rem;
  color: rgba(255,255,255,0.92);
  font-weight: 600;
}

.eyebrow--inverse {
  border: 1px solid rgba(255,255,255,0.18);
  background: rgba(255,255,255,0.08);
  color: #f5f5f4;
}

.hero-card,
.auth-box {
  border: 1px solid rgba(255,255,255,0.72);
  background: var(--panel);
  box-shadow: var(--shadow);
  backdrop-filter: blur(18px);
}

.split-card {
  display: grid;
  gap: 28px;
  align-items: center;
}

.split-card__media img,
.page-hero__image,
.listing-card__image,
.property-main__image,
.feature-card img,
.footer__logo {
  width: 100%;
  display: block;
}

.split-card__media img,
.page-hero__image {
  border-radius: 28px;
  box-shadow: var(--shadow);
}

.split-card__body h2,
.section-heading h2,
.content-card h2,
.content-card h3 {
  margin: 10px 0 14px;
  font-size: clamp(1.8rem, 3.6vw, 3rem);
  letter-spacing: -0.04em;
}

.admin-main .admin-form-section-title h3 {
  margin: 0;
  font-size: 1.12rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.03em;
}

.section-heading {
  margin-bottom: 24px;
}

.section-heading--center {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.cards-grid,
.feature-grid {
  display: grid;
  gap: 22px;
}

.section-heading--compact {
  margin-bottom: 18px;
}

.listing-card,
.content-card,
.feature-card {
  border-radius: 28px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.94);
  box-shadow: var(--shadow);
  overflow: hidden;
}

.content-card--subsection {
  padding: 24px;
  border-radius: 24px;
  background: rgba(250,250,249,0.92);
  box-shadow: none;
}

.admin-template-section {
  border-radius: 20px;
  border: 1px solid rgba(231,229,228,0.95);
  background: linear-gradient(180deg, rgba(250,250,249,0.92), rgba(255,255,255,0.96));
  padding: 20px;
}

.admin-template-section .admin-form-section-title {
  margin-bottom: 14px;
}

.admin-template-section .admin-form-section-title p {
  max-width: 38rem;
}

.listing-card__image {
  height: 260px;
  object-fit: cover;
}

.listing-card__body,
.content-card,
.feature-card {
  padding: 24px;
}

.listing-card__meta {
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #78716c;
}

.listing-card__body h3 {
  margin: 12px 0 10px;
  font-size: 1.45rem;
  letter-spacing: -0.03em;
}

.listing-card__price {
  margin: 18px 0 10px;
  font-size: 1.4rem;
  font-weight: 800;
  color: #14532d;
}

.page-hero {
  margin-bottom: 28px;
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  background: #0c0a09;
  color: white;
  box-shadow: var(--shadow);
}

.page-hero__body {
  position: relative;
  padding: 28px;
}

.page-hero__image {
  position: absolute;
  inset: 0;
  height: 100%;
  object-fit: cover;
}

.page-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(15,23,42,0.05), rgba(15,23,42,0.22));
}

.page-title {
  font-size: clamp(2.1rem, 4.5vw, 4rem);
  margin: 12px 0;
}

.cards-grid--compact {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-bottom: 28px;
}

.info-card {
  border-radius: 24px;
  border: 1px solid rgba(190,242,100,0.32);
  background: rgba(255,255,255,0.96);
  box-shadow: var(--shadow);
  padding: 20px;
}

.info-card__value {
  margin-top: 10px;
  color: #65a30d;
  font-weight: 700;
  line-height: 1.6;
}

.contact-layout {
  display: grid;
  gap: 24px;
}

.contact-form {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}

.field-grid {
  display: grid;
  gap: 18px;
}

.field {
  display: grid;
  gap: 8px;
}

.field--blank {
  visibility: hidden;
}

.field textarea,
.field input,
.field select,
.field textarea {
  width: 100%;
  border: 1px solid #d6d3d1;
  border-radius: 16px;
  padding: 14px 16px;
  font-size: 1rem;
  background: white;
  color: var(--text);
}

.content-card--image img {
  width: 100%;
  min-height: 320px;
  object-fit: cover;
  border-radius: 22px;
}

.feature-card img {
  height: 240px;
  object-fit: cover;
  border-bottom: 1px solid var(--line);
}

.property-layout {
  display: grid;
  gap: 24px;
}

.property-side {
  display: grid;
  gap: 24px;
  align-content: start;
}

.gallery-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.gallery-grid__image {
  width: 100%;
  height: 180px;
  object-fit: cover;
  border-radius: 18px;
}

.contact-home {
  display: grid;
  gap: 24px;
  align-items: stretch;
}

.contact-home__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.richtext--center {
  max-width: 760px;
  margin: 0 auto;
}

.section--intro {
  padding-bottom: 24px;
}

.story-block {
  display: grid;
  gap: 28px;
  align-items: center;
  margin: 32px 0;
}

.story-block__body h2 {
  margin: 0 0 16px;
  font-size: clamp(1.8rem, 3.6vw, 3rem);
  letter-spacing: -0.04em;
}

.story-block__media img,
.story-block__media .placeholder-visual {
  width: 100%;
  min-height: 280px;
  border-radius: 28px;
  box-shadow: var(--shadow);
}

.prose-card {
  max-width: 880px;
  margin: 0 auto;
}

.prose-card h2 {
  margin-top: 14px;
}

.placeholder-visual {
  min-height: 320px;
  border-radius: 22px;
  padding: 28px;
  background:
    radial-gradient(circle at top left, rgba(163,230,53,0.22), transparent 30%),
    linear-gradient(135deg, #123524, #1f5b3a);
  color: white;
}

.metrics {
  display: grid;
  gap: 12px;
  color: var(--muted);
}

.footer {
  margin-top: 64px;
  background: linear-gradient(180deg,#143123 0%,#10281d 100%);
  color: white;
  padding-bottom: 36px;
}

.footer__grid {
  display: grid;
  gap: 28px;
  padding-top: 36px;
}

.footer__title {
  margin: 0 0 12px;
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  color: #bef264;
}

.footer__links {
  display: grid;
  gap: 10px;
  color: rgba(236,253,245,0.82);
}

.footer__logo {
  max-width: 220px;
  width: auto;
  height: 64px;
  object-fit: contain;
}

.footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,0.1);
  color: rgba(236,253,245,0.72);
  font-size: 0.92rem;
}

.hero-card {
  border-radius: 32px;
  overflow: hidden;
}

.hero-card__media img {
  height: 440px;
  width: 100%;
  object-fit: cover;
}

.hero-card__body,
.auth-box {
  padding: 28px;
}

.eyebrow {
  display: inline-flex;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(28,25,23,0.06);
  font-size: 0.75rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--muted);
}

h1 {
  margin: 18px 0 10px;
  font-size: clamp(2.2rem, 5vw, 4.8rem);
  line-height: 0.96;
  letter-spacing: -0.05em;
}

.lead {
  color: var(--muted);
  font-size: 0.9375rem;
  line-height: 1.45;
  max-width: 42rem;
}

.cta-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 0;
}

.button,
button {
  appearance: none;
  border: none;
  cursor: pointer;
  border-radius: 16px;
  padding: 12px 18px;
  font-weight: 600;
  font-size: 0.9rem;
  line-height: 1.2;
}

.button--primary,
button {
  background: linear-gradient(90deg, var(--lime), var(--emerald));
  color: #14532d;
  box-shadow: 0 20px 40px -22px rgba(16, 185, 129, 0.45);
}

.button--pages {
  background: linear-gradient(90deg, #0284c7, #4f46e5);
  color: #fff;
  box-shadow: 0 20px 40px -22px rgba(14, 165, 233, 0.5);
}

.button--users {
  background: linear-gradient(90deg, #0891b2, #3b82f6);
  color: #fff;
  box-shadow: 0 20px 40px -22px rgba(8, 145, 178, 0.5);
}

.button--secondary {
  background: white;
  border: 1px solid var(--line);
  color: #44403c;
}

.button--secondary:hover {
  border-color: #1c1917;
  color: #1c1917;
}

.auth-wrap {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 32px 16px;
}

.auth-box {
  width: min(520px, 100%);
  border-radius: 32px;
}

.auth-box--wide {
  width: min(960px, 100%);
}

.dashboard-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom: 24px;
}

.dashboard-list {
  display: grid;
  gap: 12px;
}

.dashboard-table {
  display: grid;
  gap: 0;
}

.dashboard-table__head,
.dashboard-table__row {
  display: grid;
  grid-template-columns: repeat(var(--dashboard-columns, 4), minmax(0, 1fr));
  gap: 18px;
  align-items: center;
}

.dashboard-table__head {
  padding-bottom: 15px;
  border-bottom: 1px solid var(--line);
  font-size: 0.82rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #78716c;
  font-weight: 700;
}

.dashboard-table__row {
  padding: 17px 0;
  border-bottom: 1px solid var(--line);
}

.dashboard-list__row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 14px 15px;
  border: 1px solid #eee8df;
  border-radius: 18px;
  background: rgba(255,255,255,0.78);
  align-items: center;
}

.dashboard-list__row:first-child {
  border-top: 1px solid #f0ece7;
}

.dashboard-list__row--link {
  color: inherit;
  text-decoration: none;
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease;
}

.dashboard-list__row--link:hover {
  transform: translateY(-1px);
  border-color: #d6d3d1;
  background: #fff;
}

.dashboard-meta {
  margin-top: 6px;
  color: var(--muted);
  font-size: 0.88rem;
}

.status-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 88px;
  padding: 7px 11px;
  border-radius: 999px;
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.status-badge--success {
  background: rgba(16, 185, 129, 0.14);
  color: #047857;
}

.status-badge--warning {
  background: rgba(245, 158, 11, 0.14);
  color: #b45309;
}

.status-badge--danger {
  background: rgba(239, 68, 68, 0.14);
  color: #b91c1c;
}

.status-badge--neutral {
  background: rgba(120, 113, 108, 0.14);
  color: #57534e;
}

.admin-table-shell {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  margin: 0 24px;
}

.admin-table-scroll-hint {
  display: none;
  margin: 0 20px 10px;
  border-radius: 999px;
  background: #f5f5f4;
  color: #78716c;
  padding: 8px 12px;
  font-size: 0.75rem;
  font-weight: 600;
}

.admin-table-shell--flush {
  margin: 0;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  border-radius: 0;
}

.admin-data-table {
  width: 100%;
  min-width: 1080px;
  border-collapse: collapse;
}

.admin-data-table--inquiries {
  min-width: 980px;
}

.admin-data-table th,
.admin-data-table td {
  padding: 14px 15px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.admin-data-table th {
  background: #fafaf9;
  font-size: 0.84rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: #78716c;
}

.admin-data-table td {
  font-size: 0.9rem;
  color: #292524;
  overflow-wrap: anywhere;
}

.admin-data-table tbody tr:hover {
  background: rgba(250,250,249,0.9);
}

.admin-thumb {
  width: 84px;
  height: 58px;
  overflow: hidden;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: #f5f5f4;
}

.admin-thumb img,
.admin-thumb__placeholder {
  width: 100%;
  height: 100%;
}

.admin-thumb img {
  object-fit: cover;
}

.admin-thumb__placeholder {
  background: linear-gradient(135deg, #e7e5e4, #f5f5f4, #e7e5e4);
}

.admin-table-title-cell {
  display: grid;
  gap: 5px;
}

.admin-table-title {
  font-size: 0.92rem;
  font-weight: 600;
  color: #1c1917;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.admin-table-subtitle {
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #78716c;
  overflow-wrap: anywhere;
}

.admin-data-table__checkbox {
  width: 36px;
}

.admin-inline-code {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: #f5f5f4;
  padding: 7px 12px;
  font-size: 0.78rem;
  color: #57534e;
  overflow-wrap: anywhere;
}

.admin-table-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: #f5f5f4;
  padding: 7px 12px;
  font-size: 0.84rem;
  font-weight: 600;
  color: #57534e;
  overflow-wrap: anywhere;
}

.admin-table-price {
  font-size: 0.94rem;
  font-weight: 600;
  color: #292524;
}

.admin-table-message {
  max-width: 430px;
  white-space: pre-wrap;
  line-height: 1.7;
  color: #44403c;
}

.admin-action-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}

.admin-action-row form {
  margin: 0;
}

.admin-icon-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: #fff;
  padding: 0;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #44403c;
  cursor: pointer;
  transition: 0.2s ease;
}

.admin-icon-button__icon {
  width: 14px;
  height: 14px;
}

.admin-icon-button:hover {
  transform: translateY(-1px);
}

.admin-icon-button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
  transform: none;
}

.admin-icon-button--edit {
  border-color: #bae6fd;
  background: #f0f9ff;
  color: #0369a1;
}

.admin-icon-button--delete {
  border-color: #fecaca;
  background: #fef2f2;
  color: #dc2626;
}

.admin-icon-button--lock {
  border-color: #fde68a;
  background: #fffbeb;
  color: #b45309;
}

.form-stack {
  display: grid;
  gap: 18px;
}

.admin-form-card {
  padding: 22px;
}

.admin-main .admin-property-section {
  padding: 24px;
}

.admin-form-card--seo {
  border-color: #d9f99d;
  background: linear-gradient(135deg, #fff, #f7fee7 60%, #fafaf9);
}

.admin-form-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}

.button--icon {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.button--dark {
  background: #0c0a09;
  color: #fff;
}

.button--compact {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  padding: 9px 12px;
  font-size: 0.84rem;
}

.button__icon {
  width: 16px;
  height: 16px;
}

.admin-toggle-grid {
  display: grid;
  gap: 16px;
}

.admin-toggle-card {
  display: flex;
  align-items: center;
  gap: 12px;
  border-radius: 18px;
  border: 1px solid var(--line);
  padding: 13px 15px;
  font-size: 0.875rem;
  font-weight: 600;
  color: #44403c;
}

.admin-toggle-card input {
  width: 18px;
  height: 18px;
}

.admin-toggle-card--amber {
  border-color: #fde68a;
  background: rgba(255, 251, 235, 0.92);
}

.admin-toggle-card--emerald {
  border-color: #bbf7d0;
  background: rgba(236, 253, 245, 0.92);
}

.admin-toggle-card--neutral {
  border-color: #d6d3d1;
  background: rgba(245, 245, 244, 0.92);
}

.admin-toggle-card--sky {
  border-color: #bae6fd;
  background: rgba(240, 249, 255, 0.92);
}

.php-richtext {
  display: grid;
  gap: 10px;
}

.php-richtext__toolbar {
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 9px;
  border: 1px solid #d9f99d;
  border-radius: 18px;
  background: linear-gradient(90deg, rgba(236,253,245,0.95), #fff);
  box-shadow: 0 14px 34px -34px rgba(28,25,23,0.24);
}

.php-richtext__mode {
  border: 0;
  border-radius: 12px;
  background: #fff;
  color: #44403c;
  padding: 10px 14px;
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
}

.php-richtext__mode.is-active {
  background: #a3e635;
  color: #14532d;
}

.php-richtext__code {
  width: 100%;
  border: 1px solid #d6d3d1;
  border-radius: 16px;
  background: #fff;
  padding: 16px;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.php-richtext__code:focus {
  border-color: #0f766e;
  box-shadow: 0 0 0 4px rgba(20, 184, 166, 0.12);
}

.php-richtext__code {
  min-height: 320px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.92rem;
  line-height: 1.6;
  resize: vertical;
}

.php-richtext .tox-tinymce {
  border-radius: 18px !important;
  border-color: #e7e5e4 !important;
  box-shadow: 0 16px 36px -34px rgba(101,163,13,0.24);
}

.php-richtext .tox .tox-menubar,
.php-richtext .tox .tox-toolbar-overlord,
.php-richtext .tox .tox-editor-header {
  background: #fff !important;
}

.php-richtext .tox .tox-edit-area__iframe {
  background: #fff !important;
}

.php-richtext .tox .tox-toolbar,
.php-richtext .tox .tox-toolbar__primary,
.php-richtext .tox .tox-statusbar {
  background: #fff !important;
}

.php-richtext .tox .tox-tbtn {
  border-radius: 10px !important;
}

.admin-picker-block {
  display: grid;
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255,255,255,0.92);
  padding: 20px;
}

.admin-picker-block__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.admin-picker-selection {
  display: grid;
  gap: 12px;
}

.admin-picker-selection__empty {
  border: 1px dashed #d6d3d1;
  border-radius: 18px;
  background: #fafaf9;
  padding: 16px;
  color: #78716c;
}

.admin-picker-chip {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  padding: 11px;
}

.admin-picker-chip img {
  width: 72px;
  height: 56px;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid var(--line);
}

.admin-picker-chip__body {
  min-width: 0;
}

.admin-picker-chip__title {
  font-weight: 700;
  color: #1c1917;
}

.admin-picker-chip__meta {
  font-size: 0.875rem;
  color: #78716c;
}

.admin-picker-chip__remove {
  border: 1px solid #fecaca;
  border-radius: 12px;
  background: #fef2f2;
  color: #dc2626;
  padding: 10px 12px;
  font-size: 0.85rem;
  font-weight: 700;
  cursor: pointer;
}

.admin-picker-modal {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(28, 25, 23, 0.58);
  padding: 24px;
}

.admin-picker-modal__dialog {
  width: min(1180px, 100%);
  max-height: 88vh;
  overflow: auto;
  border-radius: 28px;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 30px 80px -36px rgba(28,25,23,0.45);
  padding: 24px;
}

.admin-picker-modal__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.admin-picker-modal__header h3 {
  margin: 0 0 8px;
}

.admin-picker-modal__header p {
  margin: 0;
  font-size: 0.9375rem;
  color: #78716c;
}

.admin-picker-modal__filters {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1.2fr) 220px;
  margin-top: 20px;
}

.admin-picker-preview {
  margin-top: 20px;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid var(--line);
  background: #fafaf9;
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(260px, 0.9fr);
}

.admin-picker-preview__empty {
  padding: 24px;
  color: #78716c;
}

.admin-picker-preview__media img {
  width: 100%;
  max-height: 100%;
  min-height: 240px;
  object-fit: cover;
  display: block;
}

.admin-picker-preview__body {
  display: grid;
  gap: 10px;
  padding: 18px;
}

.admin-picker-preview__eyebrow {
  font-size: 0.8125rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #78716c;
}

.admin-picker-preview__title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #1c1917;
}

.admin-picker-preview__meta {
  font-size: 0.875rem;
  color: #78716c;
}

.admin-picker-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  margin-top: 20px;
}

.admin-picker-grid__empty {
  grid-column: 1 / -1;
  border: 1px dashed var(--line);
  border-radius: 18px;
  background: #fafaf9;
  padding: 18px;
  font-size: 0.8125rem;
  color: #78716c;
}

.admin-picker-card {
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  padding: 0;
  overflow: hidden;
  text-align: left;
  cursor: pointer;
  transition: 0.2s ease;
}

.admin-picker-card.is-highlighted {
  border-color: #38bdf8;
  box-shadow: 0 18px 40px -28px rgba(14,165,233,0.45);
}

.admin-picker-card.is-selected {
  background: #f0f9ff;
  border-color: #7dd3fc;
}

.admin-picker-card__image img {
  width: 100%;
  height: 146px;
  object-fit: cover;
  display: block;
}

.admin-picker-card__body {
  display: grid;
  gap: 6px;
  padding: 12px;
}

.admin-picker-card__title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #1c1917;
}

.admin-picker-card__meta {
  font-size: 0.875rem;
  color: #78716c;
}

.admin-picker-modal__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--line);
  flex-wrap: wrap;
}

.admin-picker-modal__selection-count {
  font-size: 0.8125rem;
  color: #57534e;
}

.admin-picker-modal__footer-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.field-grid--triple {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.field-grid--double {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.field--wide {
  grid-column: span 2;
}

.check-grid {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  color: var(--muted);
  font-weight: 600;
}

.form-note {
  border-radius: 18px;
  padding: 14px 16px;
  margin-bottom: 18px;
  border: 1px solid rgba(59, 130, 246, 0.24);
  background: rgba(239, 246, 255, 0.96);
  color: #1d4ed8;
}

.code-area {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.9rem;
  line-height: 1.6;
}

.locale-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 46px;
  padding: 7px 14px 7px 7px;
  border-radius: 999px;
  border: 1px solid #ece7e1;
  background: rgba(255,255,255,0.92);
  font-size: 0.875rem;
  font-weight: 600;
  color: #57534e;
  box-shadow: 0 10px 24px -22px rgba(15,23,42,0.2);
  transition: 0.2s ease;
}

.locale-chip:hover {
  border-color: #d6d3d1;
  background: #fff;
  color: #1c1917;
}

.locale-chip.is-active {
  background: linear-gradient(90deg, rgba(217,249,157,0.72), rgba(236,253,245,0.98));
  color: #064e3b;
  border-color: rgba(190,242,100,0.5);
  box-shadow: 0 14px 28px -22px rgba(101,163,13,0.28);
}

.locale-chip__flag {
  width: 34px;
  height: 30px;
  flex: 0 0 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  border: 1px solid rgba(231,229,228,0.95);
  background: linear-gradient(180deg, #fff, #f8f7f5);
  box-shadow: 0 8px 18px -16px rgba(15,23,42,0.28), inset 0 1px 0 rgba(255,255,255,0.95);
}

.locale-chip__flag svg {
  display: block;
  width: 22px;
  height: 16px;
  border-radius: 4px;
}

.locale-chip__flag span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.78rem;
  font-weight: 700;
}

.locale-chip.is-active .locale-chip__flag {
  border-color: rgba(190,242,100,0.7);
  background: linear-gradient(180deg, #f7fee7, #ecfdf5);
}

.locale-chip__label {
  white-space: nowrap;
  letter-spacing: -0.01em;
}

.field > span:first-child {
  display: inline-block;
  margin-bottom: 8px;
  font-size: 0.75rem;
  font-weight: 600;
  color: #44403c;
}

.field > .admin-locale-tabs {
  display: inline-flex;
}

.admin-footer-locale-tabs {
  width: fit-content;
  max-width: 100%;
  gap: 10px;
  padding: 8px;
}

.admin-footer-locale-tabs .locale-chip {
  min-height: 48px;
  padding: 6px 14px 6px 6px;
}

.admin-footer-locale-tabs .locale-chip__flag {
  margin: 0;
  line-height: 1;
}

@media (max-width: 960px) {
  .admin-picker-preview {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .locale-chip__label {
    display: none;
  }
}

.admin-preview-media img {
  width: 100%;
  max-height: 120px;
  object-fit: contain;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: white;
  padding: 12px;
}

.admin-image-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 16px;
}

.admin-image-card {
  margin: 0;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid var(--line);
  background: white;
}

.admin-image-card img {
  width: 100%;
  height: 160px;
  object-fit: cover;
}

.admin-image-card figcaption {
  padding: 12px 14px;
  color: var(--muted);
  font-size: 0.92rem;
}

.media-library {
  margin-bottom: 24px;
}

.media-filter-row {
  row-gap: 12px;
}

.media-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 20px;
  padding: 0;
}

.media-card {
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 1px 2px rgba(28, 25, 23, 0.05);
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.media-card:hover {
  transform: translateY(-2px);
  border-color: #d6d3d1;
  box-shadow: 0 24px 58px -36px rgba(28, 25, 23, 0.38);
}

.media-card > a {
  display: block;
  aspect-ratio: 4 / 3;
  background: #f5f5f4;
}

.media-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #f5f5f4;
}

.media-card__body {
  display: grid;
  gap: 16px;
  padding: 20px;
}

.media-card__meta-form {
  display: grid;
  gap: 12px;
  margin: 0;
}

.media-card__field {
  display: grid;
  gap: 8px;
}

.media-card__field span {
  font-size: 0.75rem;
  font-weight: 500;
  color: #44403c;
}

.media-card__field input {
  width: 100%;
  border: 1px solid #d6d3d1;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px;
  font-size: 0.875rem;
  line-height: 1.25;
  color: #1c1917;
  outline: none;
  transition: border-color 160ms ease;
}

.media-card__field input:focus {
  border-color: #1c1917;
}

.media-card__directory {
  font-size: 0.75rem;
  line-height: 1.35;
  color: #78716c;
  overflow-wrap: anywhere;
}

.media-card__save-button,
.media-card__delete-button {
  width: 100%;
  appearance: none;
  border-radius: 12px;
  padding: 11px 16px;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease;
}

.media-card__save-button {
  border: 1px solid #bae6fd;
  background: #f0f9ff;
  color: #0369a1;
}

.media-card__save-button:hover {
  background: #e0f2fe;
}

.media-card__delete-button {
  border: 1px solid #fecaca;
  background: #fef2f2;
  color: #b91c1c;
}

.media-card__delete-button:hover {
  background: #fee2e2;
}

.media-card__details {
  display: grid;
  gap: 8px;
  margin: 0;
  font-size: 0.875rem;
  color: #57534e;
}

.media-card__details div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.media-card__details dt,
.media-card__details dd {
  margin: 0;
}

.media-card__details dd {
  text-align: right;
}

.media-card__path-row {
  display: flex;
  gap: 10px;
  align-items: stretch;
}

.media-card__path-text {
  display: block;
  min-width: 0;
  flex: 1 1 auto;
  border: 0;
  border-radius: 14px;
  background: #fafaf9;
  padding: 10px 12px;
  font-size: 0.75rem;
  line-height: 1.4;
  color: #78716c;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.media-card__path-input {
  width: 100%;
  min-width: 0;
  border: 1px solid #ece7e1;
  border-radius: 14px;
  background: #fafaf9;
  padding: 10px 12px;
  font-size: 0.75rem;
  line-height: 1.3;
  color: #57534e;
}

.media-card__copy-button {
  appearance: none;
  border: 1px solid #e7e5e4;
  border-radius: 13px;
  background: #fff;
  color: #57534e;
  padding: 0 13px;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  box-shadow: none;
  white-space: nowrap;
}

.media-card__copy-button:hover,
.media-card__copy-button.is-copied {
  border-color: #bae6fd;
  background: #f0f9ff;
  color: #0369a1;
}

.media-card__delete-form {
  margin: 0;
}

.button--small {
  padding: 10px 13px;
  border-radius: 12px;
  font-size: 0.78rem;
}

.media-card__footer {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 0.73rem;
  font-weight: 600;
  color: #78716c;
}

.media-card__meta-separator {
  color: #a8a29e;
}

.listing-card__meta--muted {
  font-size: 0.7rem;
  color: #a8a29e;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.media-card--library .field {
  margin-bottom: 0;
}

@media (min-width: 1200px) {
  .admin-main .media-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.admin-main .media-grid {
  grid-template-columns: 1fr;
  gap: 16px;
}

@media (min-width: 640px) {
  .admin-main .media-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1280px) {
  .admin-main .media-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
  }
}

.admin-gallery-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  min-width: 0;
}

.admin-main .admin-gallery-upload-actions .admin-gallery-file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
  border: 0;
  padding: 0;
}

.admin-gallery-grid--wide {
  grid-template-columns: 1fr;
}

@media (min-width: 768px) {
  .admin-gallery-grid,
  .admin-gallery-grid--wide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1536px) {
  .admin-gallery-grid,
  .admin-gallery-grid--wide {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.admin-gallery-card {
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid var(--line);
  background: white;
  box-shadow: 0 12px 30px -28px rgba(28, 25, 23, 0.22);
}

.admin-gallery-card img {
  width: 100%;
  aspect-ratio: 4 / 3;
  height: auto;
  object-fit: cover;
  background: #f5f5f4;
}

.admin-gallery-card__body {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.admin-gallery-card__actions .button {
  padding: 10px 16px;
  border-radius: 14px;
  box-shadow: none;
}

.admin-gallery-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.admin-gallery-card__titleblock {
  display: grid;
  gap: 4px;
}

.admin-gallery-card__titleblock strong {
  font-size: 0.9375rem;
  color: #1c1917;
}

.admin-gallery-card__titleblock span {
  font-size: 0.8125rem;
  line-height: 1.4;
  color: #78716c;
}

.admin-gallery-card__badges {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.admin-gallery-card__form {
  gap: 14px;
  border-radius: 20px;
  border: 1px solid #e7e5e4;
  background: #fafaf9;
  padding: 14px;
}

.admin-gallery-card__url {
  word-break: break-all;
  font-size: 0.75rem;
  color: #78716c;
}

.admin-gallery-primary-badge {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 7px;
  border-radius: 999px;
  background: #fef3c7;
  padding: 5px 11px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #92400e;
}

.admin-gallery-primary-badge__icon {
  width: 14px;
  height: 14px;
}

.admin-gallery-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-gallery-meta-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  justify-content: center;
  border-color: #bae6fd;
  background: #f0f9ff;
  color: #0369a1;
  box-shadow: none;
}

.admin-gallery-action-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-color: #e7e5e4;
  background: #fafaf9;
  color: #44403c;
  box-shadow: none;
}

.admin-gallery-action-button--primary {
  border-color: #fde68a;
  background: #fffbeb;
  color: #b45309;
}

.admin-gallery-action-button--danger {
  border-color: rgba(248,113,113,0.34);
  background: #fef2f2;
  color: #b91c1c;
}

.admin-gallery-card__actions form {
  margin: 0;
}

.button--danger {
  border-color: rgba(220, 38, 38, 0.22);
  background: rgba(254, 242, 242, 0.96);
  color: #b91c1c;
}

.button[disabled],
button[disabled] {
  opacity: 0.52;
  cursor: not-allowed;
  pointer-events: none;
  filter: saturate(0.65);
}

[hidden] {
  display: none !important;
}

.admin-advanced-toggle {
  border-radius: 20px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.9);
  padding: 18px 20px;
}

.admin-advanced-toggle summary {
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: 600;
  color: #292524;
}

.admin-advanced-toggle__body {
  margin-top: 14px;
}

.admin-gallery-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-gallery-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 6px 10px;
  border: 1px solid rgba(120, 113, 108, 0.16);
  background: #fafaf9;
  color: #57534e;
  font-size: 0.75rem;
  font-weight: 600;
}

.admin-gallery-chip--muted {
  background: #f5f5f4;
  color: #57534e;
}

.field-help {
  min-height: 54px;
  border: 1px dashed var(--line);
  border-radius: 16px;
  padding: 14px 16px;
  color: var(--muted);
  background: rgba(255,255,255,0.72);
}

.media-helper {
  align-content: start;
}

.form-error,
.preview-credentials {
  border-radius: 18px;
  padding: 14px 16px;
  margin-bottom: 18px;
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: 0 14px 34px -30px rgba(28,25,23,0.24);
}

.form-error {
  border: 1px solid rgba(248, 113, 113, 0.35);
  background: rgba(254, 242, 242, 0.95);
  color: #991b1b;
}

.preview-credentials {
  border: 1px solid rgba(163, 230, 53, 0.3);
  background: rgba(247, 254, 231, 0.95);
  color: #365314;
}

.field {
  display: grid;
  gap: 8px;
  margin-bottom: 16px;
}

.field input:focus,
.field select:focus,
.field textarea:focus,
.media-card__path-input:focus,
.admin-toolbar select:focus {
  outline: none;
  border-color: #84cc16;
  box-shadow: 0 0 0 4px rgba(190,242,100,0.24);
}

.field--error input,
.field--error select,
.field--error textarea {
  border-color: rgba(239, 68, 68, 0.72);
  background: rgba(254, 242, 242, 0.64);
}

.field-error {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border-radius: 999px;
  border: 1px solid rgba(248, 113, 113, 0.28);
  background: rgba(254, 242, 242, 0.92);
  padding: 6px 10px;
  font-size: 0.75rem;
  font-weight: 700;
  color: #b91c1c;
}

.field label {
  font-size: 0.875rem;
  font-weight: 500;
}

@media (min-width: 1200px) {
  .admin-property-hero-layout {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }
}

.field input,
.field textarea,
.field select {
  width: 100%;
  border: 1px solid #d6d3d1;
  border-radius: 15px;
  padding: 13px 15px;
  font-size: 0.875rem;
  line-height: 1.5;
  background: white;
}

.captcha-box {
  border-radius: 18px;
  border: 1px solid rgba(163, 230, 53, 0.3);
  background: rgba(236, 253, 245, 0.8);
  padding: 14px 16px;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #14532d;
}

.muted-link {
  color: #047857;
  font-weight: 600;
}

@media (min-width: 960px) {
  .header__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .hero-grid {
    grid-template-columns: 1.05fr 0.95fr;
    align-items: stretch;
  }

  .split-card {
    grid-template-columns: 1.12fr 0.88fr;
  }

  .cards-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .property-layout {
    grid-template-columns: 1.1fr 0.9fr;
  }

  .contact-home {
    grid-template-columns: 1.02fr 0.98fr;
  }

  .story-block {
    grid-template-columns: 1fr 1fr;
    gap: 48px;
  }

  .story-block--reverse .story-block__body {
    order: 2;
  }

  .story-block--reverse .story-block__media {
    order: 1;
  }

  .footer__grid {
    grid-template-columns: 1.2fr 0.9fr 0.9fr;
  }

  .field-grid,
  .contact-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

body:not(.admin-body) .public-footer {
  margin-top: 80px;
  background: linear-gradient(180deg, #143123 0%, #10281d 100%);
  color: #fff;
  padding: 0;
}

body:not(.admin-body) .public-footer__inner {
  width: 100%;
  max-width: 84rem;
  margin: 0 auto;
  padding: 48px 16px;
}

body:not(.admin-body) .public-footer__grid {
  display: grid;
  gap: 40px;
}

body:not(.admin-body) .public-footer__brand {
  display: grid;
  justify-items: center;
  gap: 20px;
  text-align: center;
}

body:not(.admin-body) .public-footer__logo-card {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 28px;
  background: #fff;
  padding: 12px 16px;
  box-shadow: 0 18px 36px -24px rgba(0,0,0,0.45);
}

body:not(.admin-body) .public-footer__logo-frame {
  display: flex;
  height: 64px;
  max-width: 220px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

body:not(.admin-body) .public-footer__logo-frame img {
  height: 64px;
  width: auto;
  max-width: 220px;
  object-fit: contain;
}

body:not(.admin-body) .public-footer__logo-fallback {
  display: flex;
  height: 48px;
  width: 48px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: linear-gradient(135deg, #a3e635, #34d399, #2dd4bf);
  color: #fff;
  font-size: 0.875rem;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

body:not(.admin-body) .public-footer__brand p {
  max-width: 36rem;
  margin: 0 auto;
  color: rgba(236,253,245,0.8);
  font-size: 0.98rem;
  line-height: 2;
}

body:not(.admin-body) .public-footer__column {
  display: grid;
  gap: 16px;
  text-align: center;
}

body:not(.admin-body) .public-footer__column h2 {
  margin: 0;
  color: #bef264;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

body:not(.admin-body) .public-footer__links {
  display: grid;
  gap: 12px;
}

body:not(.admin-body) .public-footer__links a,
body:not(.admin-body) .public-footer__contact-item a,
body:not(.admin-body) .public-footer__contact-item > span:last-child {
  color: rgba(236,253,245,0.8);
  font-size: 0.98rem;
  line-height: 1.7;
  transition: 0.2s ease;
}

body:not(.admin-body) .public-footer__links a:hover,
body:not(.admin-body) .public-footer__contact-item a:hover,
body:not(.admin-body) .public-footer__credits a:hover,
body:not(.admin-body) .public-footer__credits button:hover {
  color: #bef264;
}

body:not(.admin-body) .public-footer__contact-list {
  display: grid;
  gap: 16px;
}

body:not(.admin-body) .public-footer__contact-item {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 12px;
  color: rgba(236,253,245,0.8);
}

body:not(.admin-body) .public-footer__icon {
  display: flex;
  height: 36px;
  width: 36px;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: #bef264;
}

body:not(.admin-body) .public-footer__icon svg {
  height: 18px;
  width: 18px;
  fill: currentColor;
}

body:not(.admin-body) .public-footer__contact-item a,
body:not(.admin-body) .public-footer__contact-item > span:last-child {
  padding-top: 4px;
}

body:not(.admin-body) .public-footer__bottom {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 48px;
  border-top: 1px solid rgba(255,255,255,0.1);
  padding-top: 24px;
  color: rgba(236,253,245,0.6);
  font-size: 0.875rem;
}

body:not(.admin-body) .public-footer__bottom p {
  margin: 0;
}

body:not(.admin-body) .public-footer__credits {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

body:not(.admin-body) .public-footer__credits button {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
  color: rgba(236,253,245,0.6);
  font: inherit;
  box-shadow: none;
}

body:not(.admin-body) .public-footer__credits a {
  color: #bef264;
  font-weight: 600;
}

.public-language-switcher {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.public-language-switcher__options {
  display: flex;
  max-width: 0;
  align-items: center;
  gap: 8px;
  overflow: hidden;
  opacity: 0;
  transform: translateX(16px);
  transition: 0.3s ease;
  pointer-events: none;
}

.public-language-switcher.is-open .public-language-switcher__options {
  max-width: 240px;
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}

.public-language-switcher__flag,
.public-language-switcher__toggle {
  position: relative;
  display: inline-flex;
  height: 44px;
  width: 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,0.7);
  border-radius: 999px;
  background: linear-gradient(135deg, #fff, #fafaf9, #e7e5e4);
  color: #0c0a09;
  padding: 0;
  box-shadow: 0 14px 28px -18px rgba(15,23,42,0.55), inset 0 1px 0 rgba(255,255,255,0.9);
  backdrop-filter: blur(12px);
  transition: 0.2s ease;
}

.public-language-switcher__toggle {
  border-color: #bef264;
  background: linear-gradient(135deg, #d9f99d, #fff, #d1fae5);
  box-shadow: 0 0 32px rgba(163,230,53,0.3), 0 14px 28px -18px rgba(15,23,42,0.55), inset 0 1px 0 rgba(255,255,255,0.9);
}

.public-language-switcher__flag:hover,
.public-language-switcher__toggle:hover {
  border-color: #bef264;
  background: linear-gradient(135deg, #f7fee7, #fff, #d1fae5);
}

.public-language-switcher__icon {
  display: inline-flex;
  width: 24px;
  height: 24px;
  overflow: hidden;
  border-radius: 999px;
  box-shadow: 0 1px 1px rgba(15,23,42,0.16);
}

.public-language-switcher__icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.public-language-switcher__flag span,
.public-language-switcher__toggle span {
  filter: drop-shadow(0 1px 1px rgba(15,23,42,0.25));
}

@media (min-width: 640px) {
  body:not(.admin-body) .public-footer__inner {
    padding: 64px 24px;
  }

  body:not(.admin-body) .public-footer__brand p {
    font-size: 1.02rem;
  }

  body:not(.admin-body) .public-footer__bottom {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }

  body:not(.admin-body) .public-footer__credits {
    align-items: flex-end;
  }

  .public-language-switcher {
    right: 28px;
    bottom: 28px;
    gap: 12px;
  }

  .public-language-switcher__options {
    gap: 12px;
  }

  .public-language-switcher__toggle {
    height: 56px;
    width: 56px;
    font-size: 1.6rem;
  }
}

@media (min-width: 1024px) {
  body:not(.admin-body) .public-footer__inner {
    padding: 64px 32px;
  }

  body:not(.admin-body) .public-footer__grid {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.85fr) minmax(0, 0.85fr);
  }

  body:not(.admin-body) .public-footer__brand,
  body:not(.admin-body) .public-footer__column {
    justify-items: start;
    text-align: left;
  }

  body:not(.admin-body) .public-footer__brand p {
    margin-left: 0;
  }

  body:not(.admin-body) .public-footer__contact-item {
    justify-content: flex-start;
  }
}

.public-container--detail {
  max-width: 100%;
}

.next-property-detail {
  background: radial-gradient(circle at top, rgba(163,230,53,0.12), transparent 28%), linear-gradient(180deg, #fafaf9, #ffffff);
  padding: 32px 0;
}

.next-property-detail__stack {
  display: grid;
  gap: 32px;
}

.next-property-detail__hero-grid {
  display: grid;
  gap: 24px;
}

.next-property-detail__lead {
  overflow: hidden;
  border: 1px solid #e7e5e4;
  border-radius: 28px;
  background: #f5f5f4;
  box-shadow: 0 32px 90px -42px rgba(28,25,23,0.42);
}

.next-property-detail__lead-image {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.next-property-detail__lead-image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: transform 0.7s ease;
}

.next-property-detail__lead:hover img {
  transform: scale(1.03);
}

.next-property-detail__lead-overlay {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(12,10,9,0.45), rgba(12,10,9,0.1), transparent);
  padding: 20px;
}

.next-property-detail__lead-overlay div {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.next-property-detail__lead-overlay span {
  border-radius: 999px;
  background: rgba(255,255,255,0.9);
  padding: 4px 12px;
  color: #0c0a09;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}

.next-property-detail__lead-overlay span + span {
  background: rgba(190,242,100,0.9);
}

.next-property-detail__summary {
  border: 1px solid rgba(231,229,228,0.8);
  border-radius: 28px;
  background: rgba(255,255,255,0.95);
  padding: 20px;
  box-shadow: 0 34px 90px -44px rgba(28,25,23,0.38);
  backdrop-filter: blur(12px);
}

.next-property-detail__summary-stack,
.next-property-detail__title-block,
.next-property-detail__quick-grid {
  display: grid;
  gap: 24px;
}

.next-property-detail__chips,
.next-property-related-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.next-property-detail__chips span,
.next-property-related-card__chips span {
  border: 1px solid #d9f99d;
  border-radius: 999px;
  background: #f7fee7;
  padding: 4px 12px;
  color: #4d7c0f;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.next-property-detail__chips span + span,
.next-property-related-card__chips span + span {
  border-color: #e7e5e4;
  background: #fafaf9;
  color: #57534e;
}

.next-property-detail__summary h1 {
  margin: 0 0 12px;
  max-width: 8.4em;
  color: #0c0a09;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.18;
  letter-spacing: -0.045em;
}

.next-property-detail__object-number {
  display: grid;
  gap: 4px;
  margin-bottom: 16px;
}

.next-property-detail__object-number span {
  color: #78716c;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.next-property-detail__object-number strong {
  color: #1c1917;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.next-property-detail-metric {
  border: 1px solid #e7e5e4;
  border-radius: 22px;
  background: #fff;
  padding: 16px;
  box-shadow: 0 18px 50px -38px rgba(28,25,23,0.28);
}

.next-property-detail-metric--accent {
  border-color: rgba(190,242,100,0.8);
  background: linear-gradient(135deg, rgba(217,249,157,0.35), rgba(255,255,255,0.95), rgba(190,242,100,0.22));
  box-shadow: 0 16px 45px -34px rgba(101,163,13,0.55);
}

.next-property-detail-metric div,
.next-property-detail-pill div {
  color: #78716c;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  line-height: 1.35;
  overflow-wrap: anywhere;
  text-transform: uppercase;
}

.next-property-detail-metric strong {
  display: block;
  margin-top: 8px;
  color: #0c0a09;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.next-property-detail__pill-grid {
  display: grid;
  gap: 12px;
}

.next-property-detail-pill {
  border: 1px solid #e7e5e4;
  border-radius: 16px;
  background: #fff;
  padding: 12px 16px;
  box-shadow: 0 1px 2px rgba(28,25,23,0.05);
}

.next-property-detail-pill strong {
  display: block;
  margin-top: 4px;
  color: #1c1917;
  font-size: 0.875rem;
  font-weight: 500;
}

.next-property-detail__quick {
  border: 1px solid #e7e5e4;
  border-radius: 24px;
  background: rgba(250,250,249,0.8);
  padding: 16px;
}

.next-property-detail__quick-title {
  color: #78716c;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.next-property-detail__actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.next-property-detail__actions a,
.next-property-inquiry__form button,
.next-property-related-card__body a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 16px;
  background: linear-gradient(135deg, #84cc16, #22c55e);
  padding: 12px 20px;
  color: #0c0a09;
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: 0 18px 50px -28px rgba(101,163,13,0.55);
  transition: 0.2s ease;
}

.next-property-detail__actions a:hover,
.next-property-inquiry__form button:hover,
.next-property-related-card__body a:hover {
  filter: brightness(1.05);
}

.next-property-detail__actions a + a {
  border: 1px solid #d6d3d1;
  background: #fff;
  color: #0c0a09;
  box-shadow: none;
}

.next-property-detail__metrics {
  display: grid;
  gap: 12px;
}

.next-property-detail__content-grid {
  display: grid;
  gap: 24px;
}

.next-property-detail__main-column {
  display: grid;
  gap: 24px;
}

.next-property-detail-card {
  border: 1px solid #e7e5e4;
  border-radius: 28px;
  background: #fff;
  padding: 20px;
  box-shadow: 0 28px 80px -44px rgba(28,25,23,0.28);
}

.next-property-detail-card h2,
.next-property-inquiry__heading h2 {
  margin: 0;
  color: #0c0a09;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.035em;
}

.next-property-detail-card p,
.next-property-inquiry__heading p {
  margin: 8px 0 0;
  color: #57534e;
  font-size: 1rem;
  line-height: 1.75;
}

.public-richtext--property {
  margin-top: 20px;
  color: #44403c;
}

.next-property-gallery {
  margin-top: 24px;
  display: grid;
  gap: 12px;
}

.next-property-gallery__stage {
  position: relative;
  overflow: hidden;
  border: 1px solid #e7e5e4;
  border-radius: 24px;
  background: #f5f5f4;
  box-shadow: 0 1px 2px rgba(28,25,23,0.05);
}

.next-property-gallery__main {
  display: block;
  width: 100%;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: zoom-in;
}

.next-property-gallery__main img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.next-property-gallery__nav {
  position: absolute;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  transform: translateY(-50%);
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 999px;
  background: rgba(0,0,0,0.45);
  color: #fff;
  cursor: pointer;
  opacity: 1;
  backdrop-filter: blur(10px);
  transition: 0.2s ease;
  z-index: 2;
}

.next-property-gallery__stage .next-property-gallery__nav {
  opacity: 0;
}

.next-property-gallery__stage:hover .next-property-gallery__nav {
  opacity: 1;
}

.next-property-gallery__nav:hover {
  background: rgba(0,0,0,0.65);
}

.next-property-gallery__nav svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.75;
}

.next-property-gallery__nav--prev {
  left: 16px;
}

.next-property-gallery__nav--next {
  right: 16px;
}

.next-property-gallery__thumbs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.next-property-gallery__thumb {
  overflow: hidden;
  border: 1px solid #e7e5e4;
  border-radius: 12px;
  background: #f5f5f4;
  padding: 0;
  cursor: pointer;
  transition: 0.2s ease;
}

.next-property-gallery__thumb:hover {
  border-color: #a8a29e;
}

.next-property-gallery__thumb.is-active {
  border-color: #0c0a09;
  box-shadow: 0 0 0 2px rgba(12,10,9,0.1);
}

.next-property-gallery__thumb img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.next-property-gallery-lightbox[hidden] {
  display: none;
}

.next-property-gallery-lightbox {
  position: fixed;
  inset: 0;
  z-index: 90;
  background: rgba(0,0,0,0.9);
  padding: 12px;
}

.public-lightbox-open {
  overflow: hidden;
}

.next-property-gallery-lightbox__inner {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: min(80rem, 100%);
  height: 100%;
  margin: 0 auto;
}

.next-property-gallery-lightbox__top {
  display: flex;
  justify-content: flex-end;
}

.next-property-gallery-lightbox__top button {
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 999px;
  background: rgba(255,255,255,0.1);
  padding: 8px 16px;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  backdrop-filter: blur(10px);
}

.next-property-gallery-lightbox__image-wrap {
  position: relative;
  flex: 1;
  overflow: hidden;
  border-radius: 24px;
  background: #0c0a09;
}

.next-property-gallery-lightbox__image-wrap > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.next-property-gallery-lightbox__thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.next-property-map-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.next-property-map-head a {
  display: inline-flex;
  border: 1px solid #d6d3d1;
  border-radius: 12px;
  padding: 12px 16px;
  color: #0c0a09;
  font-size: 0.875rem;
  font-weight: 500;
}

.next-property-map {
  margin-top: 24px;
  overflow: hidden;
  border: 1px solid #e7e5e4;
  border-radius: 24px;
}

.next-property-map iframe {
  display: block;
  width: 100%;
  height: 320px;
  border: 0;
}

.next-property-inquiry {
  border: 1px solid #e7e5e4;
  border-radius: 28px;
  background: linear-gradient(180deg, #fff, rgba(250,250,249,0.94));
  padding: 20px;
  box-shadow: 0 30px 80px -44px rgba(28,25,23,0.3);
}

.next-property-inquiry__heading {
  display: grid;
  gap: 12px;
}

.next-property-inquiry__region {
  display: grid;
  gap: 10px;
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #e7e5e4;
}

.next-property-inquiry__region h2 {
  margin: 0;
  color: #0c0a09;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: -0.03em;
}

.next-property-inquiry__heading > span {
  display: inline-flex;
  width: fit-content;
  border: 1px solid #d9f99d;
  border-radius: 999px;
  background: #f7fee7;
  padding: 4px 12px;
  color: #4d7c0f;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.next-property-inquiry__form {
  display: grid;
  gap: 20px;
  margin-top: 32px;
}

.next-property-inquiry__field-grid {
  display: grid;
  gap: 20px;
}

.next-property-inquiry__form label {
  display: grid;
  gap: 8px;
}

.next-property-inquiry__form label span {
  color: #44403c;
  font-size: 0.875rem;
  font-weight: 500;
}

.next-property-inquiry__form input,
.next-property-inquiry__form textarea {
  width: 100%;
  border: 1px solid #d6d3d1;
  border-radius: 16px;
  background: rgba(250,250,249,0.6);
  padding: 12px 16px;
  color: #0c0a09;
  font-size: 1rem;
  outline: none;
  transition: 0.2s ease;
}

.next-property-inquiry__form input:focus,
.next-property-inquiry__form textarea:focus {
  border-color: #84cc16;
  background: #fff;
}

.next-property-inquiry__form button {
  width: 100%;
}

.next-property-related {
  display: grid;
  gap: 24px;
}

.next-property-related__grid {
  display: grid;
  gap: 24px;
}

.next-property-related-card {
  overflow: hidden;
  border: 1px solid #e7e5e4;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 60px -38px rgba(28,25,23,0.35);
  transition: 0.3s ease;
}

.next-property-related-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 30px 70px -32px rgba(28,25,23,0.35);
}

.next-property-related-card__image {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #f5f5f4;
}

.next-property-related-card__image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: 0.5s ease;
}

.next-property-related-card:hover img {
  transform: scale(1.03);
}

.next-property-related-card__body {
  display: grid;
  gap: 16px;
  padding: 20px;
}

.next-property-related-card h3 {
  margin: 8px 0 0;
  color: #0c0a09;
  font-size: 1.125rem;
  font-weight: 600;
}

.next-property-related-card__price {
  color: #0c0a09;
  font-size: 1.125rem;
  font-weight: 600;
}

@media (min-width: 640px) {
  .next-property-detail {
    padding: 56px 0;
  }

  .next-property-detail__stack {
    gap: 40px;
  }

  .next-property-detail__lead,
  .next-property-detail__summary,
  .next-property-detail-card,
  .next-property-inquiry {
    border-radius: 38px;
  }

  .next-property-detail__summary,
  .next-property-detail-card,
  .next-property-inquiry {
    padding: 28px;
  }

  .next-property-detail__summary h1 {
    font-size: 2.35rem;
  }

  .next-property-gallery {
    gap: 16px;
  }

  .next-property-gallery__stage {
    border-radius: 32px;
  }

  .next-property-gallery__thumbs {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
  }

  .next-property-gallery__thumb {
    border-radius: 16px;
  }

  .next-property-gallery-lightbox {
    padding: 32px;
  }

  .next-property-gallery-lightbox__image-wrap {
    border-radius: 32px;
  }

  .next-property-gallery-lightbox__thumbs {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
  }

  .next-property-detail__pill-grid,
  .next-property-detail__actions,
  .next-property-inquiry__field-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .next-property-detail__actions {
    display: grid;
  }

  .next-property-detail__metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .next-property-map iframe {
    height: 420px;
  }
}

@media (min-width: 1024px) {
  .next-property-detail__metrics {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .next-property-gallery-lightbox__thumbs {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .next-property-related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1280px) {
  .public-container--detail {
    max-width: 80vw;
  }

  .next-property-detail {
    padding: 80px 0;
  }

  .next-property-detail__stack {
    gap: 48px;
  }

  .next-property-detail__hero-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr);
    gap: 32px;
  }

  .next-property-detail__summary,
  .next-property-inquiry {
    position: sticky;
    top: 96px;
  }

  .next-property-detail__summary {
    align-self: start;
  }

  .next-property-detail__summary h1 {
    font-size: 2.75rem;
  }

  .next-property-detail__metrics {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .next-property-detail__content-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.92fr);
  }

  .next-property-map iframe {
    height: 500px;
  }

  .next-property-related__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

body:not(.admin-body) .next-contact-form > button.public-button {
  justify-self: start;
  width: auto;
  border-radius: 12px;
  background: #a3e635;
  padding: 12px 32px;
  color: #064e3b;
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: none;
}

body:not(.admin-body) .next-contact-form > button.public-button:hover {
  background: #bef264;
}

body:not(.admin-body) .next-contact-image {
  width: 100%;
  height: 100%;
  min-height: 260px;
  border-radius: 22px;
}

body:not(.admin-body) .next-contact-image img,
body:not(.admin-body) .next-contact-image .public-image-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 260px;
  border-radius: inherit;
  object-fit: cover;
}

@media (min-width: 1024px) {
  body:not(.admin-body) .next-contact-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body:not(.admin-body) .next-contact-section__grid {
    grid-template-columns: minmax(0, 1fr) 520px;
    align-items: start;
  }

  body:not(.admin-body) .next-contact-image,
  body:not(.admin-body) .next-contact-image img,
  body:not(.admin-body) .next-contact-image .public-image-placeholder {
    min-height: 380px;
  }
}
