﻿/* Homepage hot house ratio override: loaded last for the reference card proportions. */
.app-shell.is-home .home-house-panel {
  top: calc(596 * var(--home-u)) !important;
  height: calc(218 * var(--home-u)) !important;
  min-height: calc(218 * var(--home-u)) !important;
  max-height: calc(218 * var(--home-u)) !important;
  padding: calc(14 * var(--home-u)) calc(13 * var(--home-u)) calc(12 * var(--home-u)) !important;
  display: grid !important;
  grid-template-rows: calc(31 * var(--home-u)) minmax(0, 1fr) !important;
  row-gap: calc(2 * var(--home-u)) !important;
  overflow: hidden !important;
}

.app-shell.is-home .home-house-panel h2 {
  margin: 0 !important;
  align-self: start !important;
  color: #302219 !important;
  font-family: var(--home-default-serif, serif) !important;
  font-size: calc(23 * var(--home-u)) !important;
  font-weight: 500 !important;
  line-height: calc(28 * var(--home-u)) !important;
  letter-spacing: calc(0.15 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-cards {
  height: calc(160 * var(--home-u)) !important;
  min-height: calc(160 * var(--home-u)) !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: calc(9 * var(--home-u)) !important;
  align-items: end !important;
}

.app-shell.is-home .home-house-card {
  height: calc(160 * var(--home-u)) !important;
  min-height: calc(160 * var(--home-u)) !important;
  max-height: calc(160 * var(--home-u)) !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-rows: calc(73 * var(--home-u)) calc(87 * var(--home-u)) !important;
  justify-items: center !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.app-shell.is-home .home-house-plan {
  width: 100% !important;
  height: calc(73 * var(--home-u)) !important;
  min-height: calc(73 * var(--home-u)) !important;
  max-height: calc(73 * var(--home-u)) !important;
  padding: 0 calc(5 * var(--home-u)) calc(2 * var(--home-u)) !important;
  display: grid !important;
  place-items: end center !important;
  background: transparent !important;
}

.app-shell.is-home .home-house-plan img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 112% !important;
  max-height: calc(78 * var(--home-u)) !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: scale(1.08) !important;
}

.app-shell.is-home .home-house-info {
  width: 94% !important;
  height: calc(87 * var(--home-u)) !important;
  min-height: calc(87 * var(--home-u)) !important;
  max-height: calc(87 * var(--home-u)) !important;
  padding: calc(8.5 * var(--home-u)) calc(2 * var(--home-u)) calc(8 * var(--home-u)) !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: calc(4.6 * var(--home-u)) !important;
  overflow: hidden !important;
  border-radius: calc(5 * var(--home-u)) !important;
  background: linear-gradient(180deg, #f7efe6 0%, #efe0cf 100%) !important;
  box-shadow: none !important;
  color: #33251d !important;
}

.app-shell.is-home .home-house-info strong {
  margin: 0 !important;
  color: #332219 !important;
  font-family: Georgia, "Times New Roman", "STSong", serif !important;
  font-size: calc(24 * var(--home-u)) !important;
  font-weight: 400 !important;
  line-height: calc(25 * var(--home-u)) !important;
  letter-spacing: calc(-0.55 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info sup {
  top: -0.48em !important;
  font-size: calc(7.8 * var(--home-u)) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
}

.app-shell.is-home .home-house-info span,
.app-shell.is-home .home-house-info em {
  display: block !important;
  max-width: 100% !important;
  color: #3b2b21 !important;
  font-family: var(--home-default-sans, system-ui, sans-serif) !important;
  font-size: calc(6.7 * var(--home-u)) !important;
  font-weight: 700 !important;
  line-height: calc(8.6 * var(--home-u)) !important;
  letter-spacing: calc(-0.16 * var(--home-u)) !important;
  white-space: nowrap !important;
  transform: none !important;
}

.app-shell.is-home .home-house-info em {
  margin-top: calc(1 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-house-panel h2 {
    font-size: calc(21.5 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-info {
    width: 88% !important;
  }

  .app-shell.is-home .home-house-info strong {
    font-size: calc(22.5 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-info span,
  .app-shell.is-home .home-house-info em {
    font-size: calc(6.2 * var(--home-u)) !important;
  }
}

/* Homepage hero typography: title is dominant, the two copy lines stay secondary. */
.app-shell.is-home .home-title {
  gap: calc(19 * var(--home-u)) !important;
  margin-bottom: calc(10 * var(--home-u)) !important;
  font-family: var(--home-default-serif, serif) !important;
  font-size: calc(29 * var(--home-u)) !important;
  font-weight: 500 !important;
  line-height: 1.02 !important;
  letter-spacing: calc(0.05 * var(--home-u)) !important;
}

.app-shell.is-home .home-title span {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

.app-shell.is-home .home-subtitle,
.app-shell.is-home .home-desc {
  font-family: var(--home-default-sans, system-ui, sans-serif) !important;
  font-weight: 650 !important;
  color: #3b3028 !important;
  letter-spacing: calc(-0.18 * var(--home-u)) !important;
  text-shadow: none !important;
}

.app-shell.is-home .home-subtitle {
  margin: 0 0 calc(4 * var(--home-u)) !important;
  font-size: calc(11.8 * var(--home-u)) !important;
  line-height: calc(15.2 * var(--home-u)) !important;
}

.app-shell.is-home .home-desc {
  margin: 0 !important;
  font-size: calc(10.8 * var(--home-u)) !important;
  line-height: calc(14.2 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-title {
    gap: calc(15 * var(--home-u)) !important;
    font-size: calc(27 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-subtitle {
    font-size: calc(11 * var(--home-u)) !important;
    line-height: calc(14.4 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-desc {
    font-size: calc(10 * var(--home-u)) !important;
    line-height: calc(13.4 * var(--home-u)) !important;
  }
}

/* Homepage card headings v189: keep the section titles in the same default sans style as the DIY subtitle. */
.app-shell.is-home .home-card-copy h2,
.app-shell.is-home .home-house-panel h2 {
  font-family: var(--home-default-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-weight: 700 !important;
  letter-spacing: calc(-0.18 * var(--home-u)) !important;
  font-synthesis-weight: auto !important;
}


/* Homepage feature text v190: enlarge the six selling points to match the reference card rhythm. */
.app-shell.is-home .home-feature-row {
  top: calc(218 * var(--home-u)) !important;
  height: calc(104 * var(--home-u)) !important;
  min-height: calc(104 * var(--home-u)) !important;
  max-height: calc(104 * var(--home-u)) !important;
  padding: calc(15 * var(--home-u)) calc(15 * var(--home-u)) !important;
  column-gap: calc(12 * var(--home-u)) !important;
  row-gap: calc(12 * var(--home-u)) !important;
  align-items: center !important;
}

.app-shell.is-home .home-feature {
  grid-template-columns: calc(26 * var(--home-u)) minmax(0, 1fr) !important;
  column-gap: calc(6 * var(--home-u)) !important;
  align-items: center !important;
}

.app-shell.is-home .home-feature .home-icon-slot {
  width: calc(26 * var(--home-u)) !important;
  height: calc(26 * var(--home-u)) !important;
  min-width: calc(26 * var(--home-u)) !important;
  min-height: calc(26 * var(--home-u)) !important;
}

.app-shell.is-home .home-feature p {
  display: grid !important;
  grid-template-rows: auto auto !important;
  align-content: center !important;
  min-height: calc(25 * var(--home-u)) !important;
  margin: 0 !important;
}

.app-shell.is-home .home-feature strong,
.app-shell.is-home .home-feature:nth-child(2) strong,
.app-shell.is-home .home-feature:nth-child(3) strong,
.app-shell.is-home .home-feature:nth-child(4) strong {
  width: 100% !important;
  color: #30241c !important;
  font-family: var(--home-default-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-size: calc(9.6 * var(--home-u)) !important;
  font-weight: 760 !important;
  line-height: calc(11.6 * var(--home-u)) !important;
  letter-spacing: calc(-0.22 * var(--home-u)) !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
}

.app-shell.is-home .home-feature p span {
  width: 100% !important;
  margin-top: calc(2 * var(--home-u)) !important;
  color: rgba(60, 48, 39, 0.66) !important;
  font-family: var(--home-default-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-size: calc(7.35 * var(--home-u)) !important;
  font-weight: 600 !important;
  line-height: calc(9.2 * var(--home-u)) !important;
  letter-spacing: calc(-0.12 * var(--home-u)) !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-feature-row {
    top: calc(219 * var(--home-u)) !important;
    left: calc(18 * var(--home-u)) !important;
    right: calc(18 * var(--home-u)) !important;
    height: calc(104 * var(--home-u)) !important;
    min-height: calc(104 * var(--home-u)) !important;
    max-height: calc(104 * var(--home-u)) !important;
    padding: calc(14 * var(--home-u)) calc(12 * var(--home-u)) !important;
    column-gap: calc(9 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature {
    grid-template-columns: calc(24 * var(--home-u)) minmax(0, 1fr) !important;
    column-gap: calc(5 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature .home-icon-slot {
    width: calc(24 * var(--home-u)) !important;
    height: calc(24 * var(--home-u)) !important;
    min-width: calc(24 * var(--home-u)) !important;
    min-height: calc(24 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature strong,
  .app-shell.is-home .home-feature:nth-child(2) strong,
  .app-shell.is-home .home-feature:nth-child(3) strong,
  .app-shell.is-home .home-feature:nth-child(4) strong {
    font-size: calc(8.8 * var(--home-u)) !important;
    line-height: calc(10.8 * var(--home-u)) !important;
    letter-spacing: calc(-0.36 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature p span {
    font-size: calc(6.75 * var(--home-u)) !important;
    line-height: calc(8.55 * var(--home-u)) !important;
  }
}

/* Homepage type/icon balance v191: final reference tuning for hero title, value list and card text. */
.app-shell.is-home .home-title,
.app-shell.is-home .home-title span {
  font-weight: 850 !important;
}

.app-shell.is-home .home-feature-row {
  top: calc(216 * var(--home-u)) !important;
  height: calc(110 * var(--home-u)) !important;
  min-height: calc(110 * var(--home-u)) !important;
  max-height: calc(110 * var(--home-u)) !important;
  padding: calc(16 * var(--home-u)) calc(17 * var(--home-u)) !important;
  row-gap: calc(12 * var(--home-u)) !important;
}

.app-shell.is-home .home-feature {
  grid-template-columns: calc(28 * var(--home-u)) minmax(0, 1fr) !important;
  column-gap: calc(6.5 * var(--home-u)) !important;
}

.app-shell.is-home .home-feature .home-icon-slot {
  width: calc(28 * var(--home-u)) !important;
  height: calc(28 * var(--home-u)) !important;
  min-width: calc(28 * var(--home-u)) !important;
  min-height: calc(28 * var(--home-u)) !important;
}

.app-shell.is-home .home-feature strong,
.app-shell.is-home .home-feature:nth-child(2) strong,
.app-shell.is-home .home-feature:nth-child(3) strong,
.app-shell.is-home .home-feature:nth-child(4) strong {
  font-size: calc(10.25 * var(--home-u)) !important;
  font-weight: 760 !important;
  line-height: calc(12.2 * var(--home-u)) !important;
  letter-spacing: calc(-0.32 * var(--home-u)) !important;
}

.app-shell.is-home .home-feature p span {
  margin-top: calc(2.2 * var(--home-u)) !important;
  font-size: calc(7.75 * var(--home-u)) !important;
  font-weight: 560 !important;
  line-height: calc(9.55 * var(--home-u)) !important;
}

.app-shell.is-home .home-service-row {
  gap: calc(12 * var(--home-u)) calc(10 * var(--home-u)) !important;
}

.app-shell.is-home .home-service-row > div {
  gap: calc(4.5 * var(--home-u)) !important;
}

.app-shell.is-home .home-mini-icon {
  width: calc(32 * var(--home-u)) !important;
  height: calc(32 * var(--home-u)) !important;
  min-width: calc(32 * var(--home-u)) !important;
  min-height: calc(32 * var(--home-u)) !important;
  margin-bottom: calc(2 * var(--home-u)) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M24 4.5 41 14.25v19.5L24 43.5 7 33.75v-19.5Z' fill='none' stroke='%23CDA56F' stroke-width='2.05' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100% !important;
  box-shadow: none !important;
  color: #cda56f !important;
}

.app-shell.is-home .home-mini-icon::before,
.app-shell.is-home .home-mini-icon::after {
  display: none !important;
  content: none !important;
}

.app-shell.is-home .home-mini-icon svg {
  width: 48% !important;
  height: 48% !important;
  transform: none !important;
}

.app-shell.is-home .home-service-row strong {
  font-size: calc(9.6 * var(--home-u)) !important;
  font-weight: 700 !important;
  line-height: calc(11.4 * var(--home-u)) !important;
  letter-spacing: calc(-0.18 * var(--home-u)) !important;
}

.app-shell.is-home .home-service-row em {
  display: block !important;
  font-size: calc(7 * var(--home-u)) !important;
  font-weight: 500 !important;
  line-height: calc(8.5 * var(--home-u)) !important;
  letter-spacing: calc(-0.12 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-panel h2 {
  font-size: calc(20.5 * var(--home-u)) !important;
  font-weight: 700 !important;
  line-height: calc(24 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info strong {
  font-size: calc(22.2 * var(--home-u)) !important;
  line-height: calc(23.5 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info span,
.app-shell.is-home .home-house-info em {
  font-size: calc(6.15 * var(--home-u)) !important;
  line-height: calc(8.1 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-feature-row {
    top: calc(217 * var(--home-u)) !important;
    height: calc(110 * var(--home-u)) !important;
    min-height: calc(110 * var(--home-u)) !important;
    max-height: calc(110 * var(--home-u)) !important;
    padding: calc(15 * var(--home-u)) calc(13 * var(--home-u)) !important;
    column-gap: calc(8 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature {
    grid-template-columns: calc(26 * var(--home-u)) minmax(0, 1fr) !important;
    column-gap: calc(5 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature .home-icon-slot {
    width: calc(26 * var(--home-u)) !important;
    height: calc(26 * var(--home-u)) !important;
    min-width: calc(26 * var(--home-u)) !important;
    min-height: calc(26 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature strong,
  .app-shell.is-home .home-feature:nth-child(2) strong,
  .app-shell.is-home .home-feature:nth-child(3) strong,
  .app-shell.is-home .home-feature:nth-child(4) strong {
    font-size: calc(9.45 * var(--home-u)) !important;
    line-height: calc(11.4 * var(--home-u)) !important;
    letter-spacing: calc(-0.4 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature p span {
    font-size: calc(7.25 * var(--home-u)) !important;
    line-height: calc(9 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-mini-icon {
    width: calc(29 * var(--home-u)) !important;
    height: calc(29 * var(--home-u)) !important;
    min-width: calc(29 * var(--home-u)) !important;
    min-height: calc(29 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-service-row strong {
    font-size: calc(8.9 * var(--home-u)) !important;
    line-height: calc(10.6 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-service-row em {
    font-size: calc(6.45 * var(--home-u)) !important;
    line-height: calc(8 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-panel h2 {
    font-size: calc(19.4 * var(--home-u)) !important;
    line-height: calc(23 * var(--home-u)) !important;
  }
}

/* Homepage feature long copy v192: keep the metro/business/school item inside its own cell. */
.app-shell.is-home .home-feature:nth-child(4) {
  overflow: hidden !important;
}

.app-shell.is-home .home-feature:nth-child(4) p {
  min-width: 0 !important;
  overflow: hidden !important;
}

.app-shell.is-home .home-feature:nth-child(4) strong {
  max-width: 100% !important;
  font-size: calc(8.85 * var(--home-u)) !important;
  line-height: calc(10.6 * var(--home-u)) !important;
  letter-spacing: calc(-0.5 * var(--home-u)) !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: keep-all !important;
}

.app-shell.is-home .home-feature:nth-child(4) p span {
  font-size: calc(7.15 * var(--home-u)) !important;
  line-height: calc(8.8 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-feature:nth-child(4) strong {
    font-size: calc(8.15 * var(--home-u)) !important;
    line-height: calc(9.9 * var(--home-u)) !important;
    letter-spacing: calc(-0.55 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature:nth-child(4) p span {
    font-size: calc(6.75 * var(--home-u)) !important;
    line-height: calc(8.3 * var(--home-u)) !important;
  }
}

/* Homepage feature frame v194: keep the value card nearly flush with the hero image edges. */
.app-shell.is-home .home-feature-row {
  left: calc(3 * var(--home-u)) !important;
  right: calc(3 * var(--home-u)) !important;
  width: auto !important;
  padding-left: calc(11 * var(--home-u)) !important;
  padding-right: calc(11 * var(--home-u)) !important;
  column-gap: calc(9 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-feature-row {
    left: calc(3 * var(--home-u)) !important;
    right: calc(3 * var(--home-u)) !important;
    width: auto !important;
    padding-left: calc(8 * var(--home-u)) !important;
    padding-right: calc(8 * var(--home-u)) !important;
    column-gap: calc(5 * var(--home-u)) !important;
  }
}

/* Homepage lower card width v200: match the top frame and remove old center offset. */
.app-shell.is-home .home-selection-card,
.app-shell.is-home .home-house-panel {
  left: calc(3 * var(--home-u)) !important;
  right: calc(3 * var(--home-u)) !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
  transform: none !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card,
  .app-shell.is-home .home-house-panel {
    left: calc(3 * var(--home-u)) !important;
    right: calc(3 * var(--home-u)) !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    transform: none !important;
  }
}

/* Homepage house type text v199: use default fonts and restore reference proportions. */
.app-shell.is-home .home-house-panel h2,
.app-shell.is-home .home-house-info strong,
.app-shell.is-home .home-house-info strong sup,
.app-shell.is-home .home-house-info span,
.app-shell.is-home .home-house-info em {
  font-family: var(--home-default-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
}

.app-shell.is-home .home-house-panel h2 {
  font-size: calc(20 * var(--home-u)) !important;
  font-weight: 650 !important;
  line-height: calc(24 * var(--home-u)) !important;
  letter-spacing: calc(-0.12 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info {
  width: 94% !important;
  padding-top: calc(8.5 * var(--home-u)) !important;
  gap: calc(4.6 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info strong {
  font-size: calc(28.4 * var(--home-u)) !important;
  font-weight: 450 !important;
  line-height: calc(29 * var(--home-u)) !important;
  letter-spacing: calc(-1 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info strong sup {
  top: -0.46em !important;
  font-size: calc(8.8 * var(--home-u)) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: calc(-0.2 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info span,
.app-shell.is-home .home-house-info em {
  font-size: calc(7.85 * var(--home-u)) !important;
  font-weight: 700 !important;
  line-height: calc(9.7 * var(--home-u)) !important;
  letter-spacing: calc(-0.18 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-house-panel h2 {
    font-size: calc(19.2 * var(--home-u)) !important;
    line-height: calc(23 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-info strong {
    font-size: calc(27.6 * var(--home-u)) !important;
    line-height: calc(28.2 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-info span,
  .app-shell.is-home .home-house-info em {
    font-size: calc(7.45 * var(--home-u)) !important;
    line-height: calc(9.35 * var(--home-u)) !important;
  }
}

/* Homepage contact strip v203: align the address card with the main cards and keep copy readable. */
.app-shell.is-home {
  --home-canvas-h: calc(906 * var(--home-u)) !important;
}

.app-shell.is-home .home-screen {
  height: calc(906 * var(--home-u)) !important;
  min-height: calc(906 * var(--home-u)) !important;
  max-height: none !important;
  overflow: visible !important;
}

.app-shell.is-home .home-contact-strip {
  top: calc(824 * var(--home-u)) !important;
  left: calc(3 * var(--home-u)) !important;
  right: calc(3 * var(--home-u)) !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: calc(64 * var(--home-u)) !important;
  min-height: calc(64 * var(--home-u)) !important;
  max-height: calc(64 * var(--home-u)) !important;
  padding: calc(10 * var(--home-u)) calc(18 * var(--home-u)) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: 1fr 1fr !important;
  align-items: center !important;
  gap: calc(4 * var(--home-u)) !important;
  box-sizing: border-box !important;
  transform: none !important;
  overflow: hidden !important;
}

.app-shell.is-home .home-contact-strip p {
  min-width: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: calc(8 * var(--home-u)) !important;
  overflow: hidden !important;
}

.app-shell.is-home .home-contact-phone {
  justify-self: end !important;
}

.app-shell.is-home .home-contact-icon,
.app-shell.is-home .home-phone-icon {
  width: calc(24 * var(--home-u)) !important;
  height: calc(24 * var(--home-u)) !important;
  min-width: calc(24 * var(--home-u)) !important;
  color: #cda56f !important;
}

.app-shell.is-home .home-contact-icon svg,
.app-shell.is-home .home-phone-icon svg {
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}

.app-shell.is-home .home-contact-strip strong {
  min-width: 0 !important;
  display: block !important;
  color: #3b2c22 !important;
  font-family: var(--home-default-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-weight: 750 !important;
  line-height: 1.12 !important;
  white-space: nowrap !important;
}

.app-shell.is-home .home-contact-address strong {
  font-size: calc(12.2 * var(--home-u)) !important;
  letter-spacing: calc(-0.25 * var(--home-u)) !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.app-shell.is-home .home-contact-phone strong {
  font-size: calc(18.5 * var(--home-u)) !important;
  font-weight: 500 !important;
  letter-spacing: calc(0.1 * var(--home-u)) !important;
  font-variant-numeric: tabular-nums !important;
}

.app-shell.is-home .home-footnote {
  display: none !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-contact-strip {
    left: calc(3 * var(--home-u)) !important;
    right: calc(3 * var(--home-u)) !important;
    height: calc(62 * var(--home-u)) !important;
    min-height: calc(62 * var(--home-u)) !important;
    max-height: calc(62 * var(--home-u)) !important;
    padding: calc(9 * var(--home-u)) calc(14 * var(--home-u)) !important;
    gap: calc(3 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-contact-icon,
  .app-shell.is-home .home-phone-icon {
    width: calc(22 * var(--home-u)) !important;
    height: calc(22 * var(--home-u)) !important;
    min-width: calc(22 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-contact-address strong {
    font-size: calc(11.2 * var(--home-u)) !important;
    letter-spacing: calc(-0.35 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-contact-phone strong {
    font-size: calc(16.6 * var(--home-u)) !important;
  }
}


.app-shell:not(.is-home) .cards-scroll {
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  grid-template-rows: calc(var(--mini-u) * 25) minmax(0, 1fr) !important;
  column-gap: calc(var(--mini-u) * 3) !important;
  row-gap: calc(var(--mini-u) * 8) !important;
  overflow: hidden !important;
  align-content: stretch !important;
  align-items: stretch !important;
}

.app-shell:not(.is-home) .point-card,
.app-shell:not(.is-home) .cards-scroll .point-card {
  grid-row: 1 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
  padding: 0 calc(var(--mini-u) * 0.7) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .point-card-header {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  display: block !important;
}

.app-shell:not(.is-home) .point-card h3 {
  position: relative !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 calc(var(--mini-u) * 0.5) 0 calc(var(--mini-u) * 9.5) !important;
  display: grid !important;
  place-items: center !important;
  color: inherit !important;
  font-size: calc(var(--mini-u) * 6.75) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: calc(var(--mini-u) * -0.12) !important;
  text-align: center !important;
  white-space: normal !important;
  word-break: break-all !important;
  overflow-wrap: anywhere !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  position: absolute !important;
  left: calc(var(--mini-u) * 0.7) !important;
  top: 50% !important;
  width: calc(var(--mini-u) * 7.8) !important;
  height: calc(var(--mini-u) * 7.8) !important;
  min-width: calc(var(--mini-u) * 7.8) !important;
  min-height: calc(var(--mini-u) * 7.8) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: calc(var(--mini-u) * 5.2) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  transform: translateY(-50%) !important;
}

.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 calc(var(--mini-u) * 4) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .mobile-style-list {
  height: 100% !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(var(--active-style-count, 3), minmax(0, 1fr)) !important;
  gap: calc(var(--mini-u) * 10) !important;
}

/* Homepage alignment pass v207: keep value text aligned, enlarge selection icons, and separate plan images from labels. */
.app-shell.is-home .home-feature-row {
  top: calc(216 * var(--home-u)) !important;
  left: calc(3 * var(--home-u)) !important;
  right: calc(3 * var(--home-u)) !important;
  width: auto !important;
  height: calc(112 * var(--home-u)) !important;
  min-height: calc(112 * var(--home-u)) !important;
  max-height: calc(112 * var(--home-u)) !important;
  padding: calc(15 * var(--home-u)) calc(13 * var(--home-u)) !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  column-gap: calc(7 * var(--home-u)) !important;
  row-gap: calc(14 * var(--home-u)) !important;
  align-items: center !important;
  align-content: center !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.app-shell.is-home .home-feature {
  min-width: 0 !important;
  height: calc(34 * var(--home-u)) !important;
  min-height: calc(34 * var(--home-u)) !important;
  display: grid !important;
  grid-template-columns: calc(28 * var(--home-u)) minmax(0, 1fr) !important;
  column-gap: calc(6 * var(--home-u)) !important;
  align-items: center !important;
  justify-items: start !important;
  overflow: hidden !important;
}

.app-shell.is-home .home-feature .home-icon-slot {
  align-self: center !important;
  width: calc(28 * var(--home-u)) !important;
  height: calc(28 * var(--home-u)) !important;
  min-width: calc(28 * var(--home-u)) !important;
  min-height: calc(28 * var(--home-u)) !important;
  margin: 0 !important;
}

.app-shell.is-home .home-feature .home-icon-slot svg {
  width: 68% !important;
  height: 68% !important;
}

.app-shell.is-home .home-feature p {
  min-width: 0 !important;
  height: calc(30 * var(--home-u)) !important;
  min-height: calc(30 * var(--home-u)) !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-rows: minmax(0, auto) minmax(0, auto) !important;
  align-content: center !important;
  justify-items: start !important;
  text-align: left !important;
  overflow: visible !important;
}

.app-shell.is-home .home-feature strong,
.app-shell.is-home .home-feature:nth-child(2) strong,
.app-shell.is-home .home-feature:nth-child(3) strong,
.app-shell.is-home .home-feature:nth-child(4) strong {
  max-width: 100% !important;
  color: #2f241c !important;
  font-family: var(--home-default-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-size: calc(10.15 * var(--home-u)) !important;
  font-weight: 780 !important;
  line-height: calc(12 * var(--home-u)) !important;
  letter-spacing: calc(-0.34 * var(--home-u)) !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

.app-shell.is-home .home-feature:nth-child(4) strong {
  font-size: calc(8.85 * var(--home-u)) !important;
  letter-spacing: calc(-0.72 * var(--home-u)) !important;
}

.app-shell.is-home .home-feature p span {
  max-width: 100% !important;
  margin-top: calc(2 * var(--home-u)) !important;
  color: rgba(65, 52, 42, 0.66) !important;
  font-family: var(--home-default-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-size: calc(7.85 * var(--home-u)) !important;
  font-weight: 560 !important;
  line-height: calc(9.4 * var(--home-u)) !important;
  letter-spacing: calc(-0.14 * var(--home-u)) !important;
  white-space: nowrap !important;
  overflow: visible !important;
}

.app-shell.is-home .home-service-row {
  gap: calc(10 * var(--home-u)) calc(10 * var(--home-u)) !important;
  align-items: center !important;
}

.app-shell.is-home .home-service-row > div {
  min-width: 0 !important;
  gap: calc(4 * var(--home-u)) !important;
}

.app-shell.is-home .home-mini-icon {
  width: calc(36 * var(--home-u)) !important;
  height: calc(36 * var(--home-u)) !important;
  min-width: calc(36 * var(--home-u)) !important;
  min-height: calc(36 * var(--home-u)) !important;
  margin: 0 0 calc(2 * var(--home-u)) !important;
}

.app-shell.is-home .home-mini-icon svg {
  width: 66% !important;
  height: 66% !important;
  transform: none !important;
}

.app-shell.is-home .home-service-row strong {
  font-size: calc(9.9 * var(--home-u)) !important;
  line-height: calc(11.4 * var(--home-u)) !important;
}

.app-shell.is-home .home-service-row em {
  font-size: calc(7 * var(--home-u)) !important;
  line-height: calc(8.4 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-panel {
  top: calc(588 * var(--home-u)) !important;
  height: calc(232 * var(--home-u)) !important;
  min-height: calc(232 * var(--home-u)) !important;
  max-height: calc(232 * var(--home-u)) !important;
  padding: calc(14 * var(--home-u)) calc(13 * var(--home-u)) calc(12 * var(--home-u)) !important;
  display: grid !important;
  grid-template-rows: calc(30 * var(--home-u)) minmax(0, 1fr) !important;
  row-gap: calc(5 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-panel h2 {
  margin: 0 !important;
  align-self: start !important;
  font-size: calc(20 * var(--home-u)) !important;
  line-height: calc(24 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-cards {
  height: calc(171 * var(--home-u)) !important;
  min-height: calc(171 * var(--home-u)) !important;
  max-height: calc(171 * var(--home-u)) !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  column-gap: calc(12 * var(--home-u)) !important;
  align-items: start !important;
}

.app-shell.is-home .home-house-card {
  height: calc(171 * var(--home-u)) !important;
  min-height: calc(171 * var(--home-u)) !important;
  max-height: calc(171 * var(--home-u)) !important;
  display: grid !important;
  grid-template-rows: calc(75 * var(--home-u)) calc(88 * var(--home-u)) !important;
  row-gap: calc(8 * var(--home-u)) !important;
  justify-items: center !important;
  align-items: start !important;
  overflow: visible !important;
}

.app-shell.is-home .home-house-plan {
  width: 100% !important;
  height: calc(75 * var(--home-u)) !important;
  min-height: calc(75 * var(--home-u)) !important;
  max-height: calc(75 * var(--home-u)) !important;
  padding: 0 calc(4 * var(--home-u)) !important;
  display: grid !important;
  place-items: end center !important;
  overflow: visible !important;
}

.app-shell.is-home .home-house-plan img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 102% !important;
  max-height: calc(72 * var(--home-u)) !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  transform: none !important;
}

.app-shell.is-home .home-house-info {
  width: 92% !important;
  height: calc(88 * var(--home-u)) !important;
  min-height: calc(88 * var(--home-u)) !important;
  max-height: calc(88 * var(--home-u)) !important;
  padding: calc(9 * var(--home-u)) calc(3 * var(--home-u)) calc(8 * var(--home-u)) !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: calc(4.5 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info strong {
  font-size: calc(27 * var(--home-u)) !important;
  line-height: calc(28 * var(--home-u)) !important;
  letter-spacing: calc(-0.8 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info strong sup {
  font-size: calc(8.2 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info span,
.app-shell.is-home .home-house-info em {
  font-size: calc(7.35 * var(--home-u)) !important;
  line-height: calc(9.15 * var(--home-u)) !important;
  letter-spacing: calc(-0.2 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-feature-row {
    height: calc(112 * var(--home-u)) !important;
    padding: calc(14 * var(--home-u)) calc(10 * var(--home-u)) !important;
    column-gap: calc(5 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature {
    grid-template-columns: calc(26 * var(--home-u)) minmax(0, 1fr) !important;
    column-gap: calc(5 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature .home-icon-slot {
    width: calc(26 * var(--home-u)) !important;
    height: calc(26 * var(--home-u)) !important;
    min-width: calc(26 * var(--home-u)) !important;
    min-height: calc(26 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature strong,
  .app-shell.is-home .home-feature:nth-child(2) strong,
  .app-shell.is-home .home-feature:nth-child(3) strong,
  .app-shell.is-home .home-feature:nth-child(4) strong {
    font-size: calc(9.2 * var(--home-u)) !important;
    line-height: calc(11.1 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature:nth-child(4) strong {
    font-size: calc(8.15 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-feature p span {
    font-size: calc(7.05 * var(--home-u)) !important;
    line-height: calc(8.6 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-mini-icon {
    width: calc(33 * var(--home-u)) !important;
    height: calc(33 * var(--home-u)) !important;
    min-width: calc(33 * var(--home-u)) !important;
    min-height: calc(33 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-service-row strong {
    font-size: calc(9.1 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-panel {
    top: calc(590 * var(--home-u)) !important;
    height: calc(230 * var(--home-u)) !important;
    min-height: calc(230 * var(--home-u)) !important;
    max-height: calc(230 * var(--home-u)) !important;
  }
}

/* Homepage final priority pass v208: override older high-specificity icon and house-card rules. */
.app-shell.is-home .home-feature p {
  width: 100% !important;
  justify-self: stretch !important;
  justify-items: start !important;
  text-align: left !important;
}

.app-shell.is-home .home-feature > p,
.app-shell.is-home .home-feature:nth-child(1) > p,
.app-shell.is-home .home-feature:nth-child(2) > p,
.app-shell.is-home .home-feature:nth-child(3) > p,
.app-shell.is-home .home-feature:nth-child(4) > p,
.app-shell.is-home .home-feature:nth-child(5) > p,
.app-shell.is-home .home-feature:nth-child(6) > p {
  width: 100% !important;
  justify-self: stretch !important;
  justify-items: stretch !important;
  text-align: left !important;
}

.app-shell.is-home .home-feature strong,
.app-shell.is-home .home-feature p span,
.app-shell.is-home .home-feature > p > strong,
.app-shell.is-home .home-feature > p > span,
.app-shell.is-home .home-feature:nth-child(1) > p > strong,
.app-shell.is-home .home-feature:nth-child(1) > p > span,
.app-shell.is-home .home-feature:nth-child(2) > p > strong,
.app-shell.is-home .home-feature:nth-child(2) > p > span,
.app-shell.is-home .home-feature:nth-child(3) > p > strong,
.app-shell.is-home .home-feature:nth-child(3) > p > span,
.app-shell.is-home .home-feature:nth-child(4) > p > strong,
.app-shell.is-home .home-feature:nth-child(4) > p > span,
.app-shell.is-home .home-feature:nth-child(5) > p > strong,
.app-shell.is-home .home-feature:nth-child(5) > p > span,
.app-shell.is-home .home-feature:nth-child(6) > p > strong,
.app-shell.is-home .home-feature:nth-child(6) > p > span {
  width: 100% !important;
  display: block !important;
  justify-self: stretch !important;
  text-align: left !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon,
.app-shell.is-home .home-service-row > div .home-mini-icon,
.app-shell.is-home .home-service-row .home-mini-icon {
  width: calc(37 * var(--home-u)) !important;
  height: calc(37 * var(--home-u)) !important;
  min-width: calc(37 * var(--home-u)) !important;
  min-height: calc(37 * var(--home-u)) !important;
  margin: 0 0 calc(3 * var(--home-u)) !important;
  color: #cda56f !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon svg,
.app-shell.is-home .home-service-row > div .home-mini-icon svg,
.app-shell.is-home .home-service-row .home-mini-icon svg {
  width: 68% !important;
  height: 68% !important;
  transform: none !important;
}

.app-shell.is-home .home-service-row > div {
  align-content: center !important;
  min-height: calc(55 * var(--home-u)) !important;
  display: grid !important;
  grid-template-rows: calc(31 * var(--home-u)) calc(10 * var(--home-u)) calc(8 * var(--home-u)) !important;
  row-gap: calc(3 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-cards {
  height: calc(176 * var(--home-u)) !important;
  min-height: calc(176 * var(--home-u)) !important;
  max-height: calc(176 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-card {
  height: calc(176 * var(--home-u)) !important;
  min-height: calc(176 * var(--home-u)) !important;
  max-height: calc(176 * var(--home-u)) !important;
  grid-template-rows: calc(72 * var(--home-u)) calc(88 * var(--home-u)) !important;
  row-gap: calc(12 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-plan {
  height: calc(72 * var(--home-u)) !important;
  min-height: calc(72 * var(--home-u)) !important;
  max-height: calc(72 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-plan img {
  max-height: calc(68 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card .home-service-row .home-mini-icon,
  .app-shell.is-home .home-service-row > div .home-mini-icon,
  .app-shell.is-home .home-service-row .home-mini-icon {
    width: calc(34 * var(--home-u)) !important;
    height: calc(34 * var(--home-u)) !important;
    min-width: calc(34 * var(--home-u)) !important;
    min-height: calc(34 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-card {
    grid-template-rows: calc(70 * var(--home-u)) calc(88 * var(--home-u)) !important;
    row-gap: calc(12 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-plan {
    height: calc(70 * var(--home-u)) !important;
    min-height: calc(70 * var(--home-u)) !important;
    max-height: calc(70 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-plan img {
    max-height: calc(66 * var(--home-u)) !important;
  }
}

/* Homepage comment polish v211: left-align value/contact copy, enlarge service icons, and separate house card layers. */
.app-shell.is-home .home-feature-row {
  justify-items: stretch !important;
}

.app-shell.is-home .home-feature,
.app-shell.is-home .home-feature > p,
.app-shell.is-home .home-feature > p > strong,
.app-shell.is-home .home-feature > p > span {
  justify-self: stretch !important;
  justify-items: start !important;
  justify-content: start !important;
  text-align: left !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon,
.app-shell.is-home .home-service-row > div .home-mini-icon,
.app-shell.is-home .home-service-row .home-mini-icon {
  width: calc(42 * var(--home-u)) !important;
  height: calc(42 * var(--home-u)) !important;
  min-width: calc(42 * var(--home-u)) !important;
  min-height: calc(42 * var(--home-u)) !important;
  margin: 0 auto calc(2 * var(--home-u)) !important;
  color: #cda56f !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon svg,
.app-shell.is-home .home-service-row > div .home-mini-icon svg,
.app-shell.is-home .home-service-row .home-mini-icon svg {
  width: 76% !important;
  height: 76% !important;
  stroke-width: 2.25 !important;
}

.app-shell.is-home .home-service-row > div {
  min-height: calc(64 * var(--home-u)) !important;
  grid-template-rows: calc(39 * var(--home-u)) calc(11 * var(--home-u)) calc(8 * var(--home-u)) !important;
  row-gap: calc(3 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-panel {
  background: linear-gradient(180deg, rgba(255, 254, 251, 0.98) 0%, rgba(253, 248, 241, 0.98) 100%) !important;
}

.app-shell.is-home .home-house-plan {
  border-radius: calc(10 * var(--home-u)) !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92) 0%, rgba(246, 249, 249, 0.42) 100%) !important;
}

.app-shell.is-home .home-house-card[data-house-type] .home-house-plan {
  background-color: rgba(255, 255, 255, 0.9) !important;
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.92) 0%, rgba(246, 249, 249, 0.58) 100%) !important;
}

.app-shell.is-home .home-house-info {
  border-radius: calc(7 * var(--home-u)) !important;
  background: linear-gradient(180deg, #f8f1e8 0%, #efe1ce 100%) !important;
  box-shadow: inset 0 calc(1 * var(--home-u)) 0 rgba(255, 255, 255, 0.72) !important;
}

.app-shell.is-home .home-contact-strip {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  justify-items: stretch !important;
  align-items: center !important;
  gap: calc(3 * var(--home-u)) !important;
  padding: calc(9 * var(--home-u)) calc(18 * var(--home-u)) !important;
}

.app-shell.is-home .home-contact-strip p,
.app-shell.is-home .home-contact-address,
.app-shell.is-home .home-contact-phone {
  width: 100% !important;
  min-width: 0 !important;
  justify-self: stretch !important;
  display: grid !important;
  grid-template-columns: calc(25 * var(--home-u)) minmax(0, 1fr) !important;
  column-gap: calc(8 * var(--home-u)) !important;
  align-items: center !important;
  justify-items: start !important;
  justify-content: start !important;
  text-align: left !important;
}

.app-shell.is-home .home-contact-strip strong,
.app-shell.is-home .home-contact-address strong,
.app-shell.is-home .home-contact-phone strong {
  justify-self: start !important;
  text-align: left !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card .home-service-row .home-mini-icon,
  .app-shell.is-home .home-service-row > div .home-mini-icon,
  .app-shell.is-home .home-service-row .home-mini-icon {
    width: calc(38 * var(--home-u)) !important;
    height: calc(38 * var(--home-u)) !important;
    min-width: calc(38 * var(--home-u)) !important;
    min-height: calc(38 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-service-row > div {
    min-height: calc(60 * var(--home-u)) !important;
    grid-template-rows: calc(36 * var(--home-u)) calc(10 * var(--home-u)) calc(8 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-contact-strip {
    padding: calc(8 * var(--home-u)) calc(14 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-contact-strip p,
  .app-shell.is-home .home-contact-address,
  .app-shell.is-home .home-contact-phone {
    grid-template-columns: calc(23 * var(--home-u)) minmax(0, 1fr) !important;
    column-gap: calc(7 * var(--home-u)) !important;
  }
}

/* Homepage house-card reference polish v213: quieter title scale, joined plan/info cards, equal contact rows. */
.app-shell.is-home .home-card-copy h2,
.app-shell.is-home .home-house-panel h2 {
  font-size: calc(17.6 * var(--home-u)) !important;
  font-weight: 720 !important;
  line-height: calc(20.5 * var(--home-u)) !important;
  letter-spacing: calc(-0.22 * var(--home-u)) !important;
}

.app-shell.is-home .home-card-copy p {
  font-size: calc(10.7 * var(--home-u)) !important;
  line-height: calc(13 * var(--home-u)) !important;
  letter-spacing: calc(-0.12 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-panel {
  background: rgba(248, 248, 246, 0.98) !important;
  border-color: rgba(222, 218, 210, 0.72) !important;
}

.app-shell.is-home .home-house-cards {
  column-gap: calc(9 * var(--home-u)) !important;
  align-items: start !important;
}

.app-shell.is-home .home-house-card {
  grid-template-rows: calc(82 * var(--home-u)) calc(82 * var(--home-u)) !important;
  row-gap: 0 !important;
  height: calc(164 * var(--home-u)) !important;
  min-height: calc(164 * var(--home-u)) !important;
  max-height: calc(164 * var(--home-u)) !important;
  overflow: hidden !important;
  border-radius: calc(7.5 * var(--home-u)) !important;
  background: #f6f4ef !important;
}

.app-shell.is-home .home-house-plan {
  height: calc(82 * var(--home-u)) !important;
  min-height: calc(82 * var(--home-u)) !important;
  max-height: calc(82 * var(--home-u)) !important;
  padding: calc(5 * var(--home-u)) calc(5 * var(--home-u)) 0 !important;
  overflow: hidden !important;
  border-radius: calc(7.5 * var(--home-u)) calc(7.5 * var(--home-u)) 0 0 !important;
  background: #faf9f6 !important;
}

.app-shell.is-home .home-house-card[data-house-type] .home-house-plan {
  background-color: #faf9f6 !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan img {
  max-width: 110% !important;
  max-height: calc(78 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info {
  width: 100% !important;
  height: calc(82 * var(--home-u)) !important;
  min-height: calc(82 * var(--home-u)) !important;
  max-height: calc(82 * var(--home-u)) !important;
  margin: 0 !important;
  padding: calc(10 * var(--home-u)) calc(3 * var(--home-u)) calc(8 * var(--home-u)) !important;
  gap: calc(4 * var(--home-u)) !important;
  border-radius: 0 0 calc(7.5 * var(--home-u)) calc(7.5 * var(--home-u)) !important;
  background: #efe4d6 !important;
  box-shadow: none !important;
}

.app-shell.is-home .home-house-info strong {
  font-size: calc(24 * var(--home-u)) !important;
  font-weight: 430 !important;
  line-height: calc(25 * var(--home-u)) !important;
  letter-spacing: calc(-0.72 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info strong sup {
  top: -0.46em !important;
  font-size: calc(7.4 * var(--home-u)) !important;
  letter-spacing: calc(-0.12 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info span,
.app-shell.is-home .home-house-info em {
  font-size: calc(7.1 * var(--home-u)) !important;
  font-weight: 720 !important;
  line-height: calc(9 * var(--home-u)) !important;
  letter-spacing: calc(-0.12 * var(--home-u)) !important;
}

.app-shell.is-home .home-contact-strip {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: repeat(2, calc(22 * var(--home-u))) !important;
  align-content: center !important;
  row-gap: calc(3 * var(--home-u)) !important;
}

.app-shell.is-home .home-contact-strip p,
.app-shell.is-home .home-contact-address,
.app-shell.is-home .home-contact-phone {
  height: calc(22 * var(--home-u)) !important;
  min-height: calc(22 * var(--home-u)) !important;
  max-height: calc(22 * var(--home-u)) !important;
  grid-template-columns: calc(22 * var(--home-u)) minmax(0, 1fr) !important;
  column-gap: calc(8 * var(--home-u)) !important;
}

.app-shell.is-home .home-contact-icon,
.app-shell.is-home .home-phone-icon {
  width: calc(22 * var(--home-u)) !important;
  height: calc(22 * var(--home-u)) !important;
  min-width: calc(22 * var(--home-u)) !important;
  min-height: calc(22 * var(--home-u)) !important;
}

.app-shell.is-home .home-contact-address strong,
.app-shell.is-home .home-contact-phone strong {
  font-size: calc(12.4 * var(--home-u)) !important;
  font-weight: 720 !important;
  line-height: calc(15 * var(--home-u)) !important;
  letter-spacing: calc(-0.12 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-card-copy h2,
  .app-shell.is-home .home-house-panel h2 {
    font-size: calc(16.6 * var(--home-u)) !important;
    line-height: calc(19.2 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-card {
    grid-template-rows: calc(80 * var(--home-u)) calc(80 * var(--home-u)) !important;
    height: calc(160 * var(--home-u)) !important;
    min-height: calc(160 * var(--home-u)) !important;
    max-height: calc(160 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-plan,
  .app-shell.is-home .home-house-info {
    height: calc(80 * var(--home-u)) !important;
    min-height: calc(80 * var(--home-u)) !important;
    max-height: calc(80 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-info strong {
    font-size: calc(22.4 * var(--home-u)) !important;
    line-height: calc(23.4 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-contact-strip p,
  .app-shell.is-home .home-contact-address,
  .app-shell.is-home .home-contact-phone {
    grid-template-columns: calc(21 * var(--home-u)) minmax(0, 1fr) !important;
  }

  .app-shell.is-home .home-contact-icon,
  .app-shell.is-home .home-phone-icon {
    width: calc(21 * var(--home-u)) !important;
    height: calc(21 * var(--home-u)) !important;
    min-width: calc(21 * var(--home-u)) !important;
    min-height: calc(21 * var(--home-u)) !important;
  }
}

/* Homepage final color/alignment pass v214. */
.app-shell.is-home .home-selection-card .home-service-row,
.app-shell.is-home .home-service-row {
  justify-items: center !important;
  align-items: start !important;
}

.app-shell.is-home .home-selection-card .home-service-row > div,
.app-shell.is-home .home-service-row > div {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: calc(40 * var(--home-u)) calc(12 * var(--home-u)) calc(9 * var(--home-u)) !important;
  justify-items: center !important;
  align-items: center !important;
  align-content: start !important;
  text-align: center !important;
  row-gap: calc(3 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon,
.app-shell.is-home .home-service-row .home-mini-icon {
  justify-self: center !important;
  align-self: center !important;
  margin: 0 !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong,
.app-shell.is-home .home-selection-card .home-service-row em,
.app-shell.is-home .home-service-row strong,
.app-shell.is-home .home-service-row em {
  width: 100% !important;
  justify-self: center !important;
  text-align: center !important;
}

.app-shell.is-home .home-contact-icon,
.app-shell.is-home .home-phone-icon {
  width: calc(22 * var(--home-u)) !important;
  height: calc(22 * var(--home-u)) !important;
  min-width: calc(22 * var(--home-u)) !important;
  min-height: calc(22 * var(--home-u)) !important;
  display: grid !important;
  place-items: center !important;
}

.app-shell.is-home .home-contact-icon svg,
.app-shell.is-home .home-phone-icon svg {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

.app-shell.is-home .home-house-card .home-house-info {
  background-color: #e8d8bd !important;
  background-image: none !important;
  background: #e8d8bd !important;
  box-shadow: none !important;
}

/* Homepage reference card polish v215: connected house cards and detailed selection icons. */
.app-shell.is-home .home-selection-card .home-service-row {
  gap: calc(10 * var(--home-u)) calc(14 * var(--home-u)) !important;
  align-content: center !important;
  align-items: center !important;
  padding: calc(1 * var(--home-u)) calc(2 * var(--home-u)) 0 !important;
}

.app-shell.is-home .home-selection-card .home-service-row > div {
  min-height: calc(58 * var(--home-u)) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: auto auto auto !important;
  justify-items: center !important;
  align-content: start !important;
  row-gap: 0 !important;
  text-align: center !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon {
  width: calc(38 * var(--home-u)) !important;
  height: calc(38 * var(--home-u)) !important;
  min-width: calc(38 * var(--home-u)) !important;
  min-height: calc(38 * var(--home-u)) !important;
  margin: 0 0 calc(4.5 * var(--home-u)) !important;
  color: #c79b5d !important;
  background-size: 100% 100% !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon svg {
  width: 52% !important;
  height: 52% !important;
  stroke-width: 2.05 !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  width: 100% !important;
  margin: 0 0 calc(1.8 * var(--home-u)) !important;
  color: #2f241d !important;
  font-size: calc(10.2 * var(--home-u)) !important;
  font-weight: 780 !important;
  line-height: calc(11.6 * var(--home-u)) !important;
  letter-spacing: calc(-0.18 * var(--home-u)) !important;
  text-align: center !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  width: 100% !important;
  margin: 0 !important;
  color: rgba(80, 70, 62, 0.5) !important;
  font-size: calc(7.35 * var(--home-u)) !important;
  font-weight: 620 !important;
  line-height: calc(8.7 * var(--home-u)) !important;
  letter-spacing: calc(-0.18 * var(--home-u)) !important;
  text-align: center !important;
}

.app-shell.is-home .home-house-cards {
  height: calc(172 * var(--home-u)) !important;
  min-height: calc(172 * var(--home-u)) !important;
  max-height: calc(172 * var(--home-u)) !important;
  column-gap: calc(10 * var(--home-u)) !important;
  align-items: start !important;
}

.app-shell.is-home .home-house-card {
  height: calc(172 * var(--home-u)) !important;
  min-height: calc(172 * var(--home-u)) !important;
  max-height: calc(172 * var(--home-u)) !important;
  display: grid !important;
  grid-template-rows: calc(96 * var(--home-u)) calc(76 * var(--home-u)) !important;
  row-gap: 0 !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  overflow: hidden !important;
  border: calc(0.6 * var(--home-u)) solid rgba(226, 220, 210, 0.72) !important;
  border-radius: calc(10.5 * var(--home-u)) !important;
  background: #fbfaf7 !important;
  box-shadow: 0 calc(6 * var(--home-u)) calc(14 * var(--home-u)) rgba(73, 58, 43, 0.07) !important;
}

.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan {
  width: 100% !important;
  height: calc(96 * var(--home-u)) !important;
  min-height: calc(96 * var(--home-u)) !important;
  max-height: calc(96 * var(--home-u)) !important;
  padding: calc(8 * var(--home-u)) calc(6 * var(--home-u)) calc(5 * var(--home-u)) !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  border-radius: calc(10.5 * var(--home-u)) calc(10.5 * var(--home-u)) 0 0 !important;
  background-color: #fbfaf7 !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 116% !important;
  max-height: calc(88 * var(--home-u)) !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: scale(1.04) !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info {
  width: 100% !important;
  height: calc(76 * var(--home-u)) !important;
  min-height: calc(76 * var(--home-u)) !important;
  max-height: calc(76 * var(--home-u)) !important;
  margin: 0 !important;
  padding: calc(8 * var(--home-u)) calc(4 * var(--home-u)) calc(7 * var(--home-u)) !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: calc(3.8 * var(--home-u)) !important;
  overflow: hidden !important;
  border-radius: 0 0 calc(10.5 * var(--home-u)) calc(10.5 * var(--home-u)) !important;
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
  box-shadow: none !important;
}

.app-shell.is-home .home-house-info strong {
  margin: 0 !important;
  color: #38271c !important;
  font-size: calc(25.5 * var(--home-u)) !important;
  font-weight: 430 !important;
  line-height: calc(26 * var(--home-u)) !important;
  letter-spacing: calc(-0.7 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info strong sup {
  top: -0.46em !important;
  font-size: calc(7.6 * var(--home-u)) !important;
  font-weight: 430 !important;
}

.app-shell.is-home .home-house-info span {
  color: #3d2e24 !important;
  font-size: calc(8.2 * var(--home-u)) !important;
  font-weight: 760 !important;
  line-height: calc(9.4 * var(--home-u)) !important;
  letter-spacing: calc(-0.18 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info em {
  color: #4f4137 !important;
  font-size: calc(7.35 * var(--home-u)) !important;
  font-weight: 680 !important;
  line-height: calc(8.7 * var(--home-u)) !important;
  letter-spacing: calc(-0.2 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card .home-service-row {
    gap: calc(8 * var(--home-u)) calc(11 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-mini-icon {
    width: calc(35 * var(--home-u)) !important;
    height: calc(35 * var(--home-u)) !important;
    min-width: calc(35 * var(--home-u)) !important;
    min-height: calc(35 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-cards {
    height: calc(166 * var(--home-u)) !important;
    min-height: calc(166 * var(--home-u)) !important;
    max-height: calc(166 * var(--home-u)) !important;
    column-gap: calc(8 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-card {
    height: calc(166 * var(--home-u)) !important;
    min-height: calc(166 * var(--home-u)) !important;
    max-height: calc(166 * var(--home-u)) !important;
    grid-template-rows: calc(92 * var(--home-u)) calc(74 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-plan,
  .app-shell.is-home .home-house-card[data-house-type] .home-house-plan {
    height: calc(92 * var(--home-u)) !important;
    min-height: calc(92 * var(--home-u)) !important;
    max-height: calc(92 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-card .home-house-info,
  .app-shell.is-home .home-house-info {
    height: calc(74 * var(--home-u)) !important;
    min-height: calc(74 * var(--home-u)) !important;
    max-height: calc(74 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-info strong {
    font-size: calc(23.4 * var(--home-u)) !important;
    line-height: calc(24 * var(--home-u)) !important;
  }
}

/* Homepage selection icon spacing correction v216. */
.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(38 * var(--home-u)) calc(12 * var(--home-u)) calc(9 * var(--home-u)) !important;
  row-gap: calc(3.2 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
  width: calc(38 * var(--home-u)) !important;
  height: calc(38 * var(--home-u)) !important;
  min-width: calc(38 * var(--home-u)) !important;
  min-height: calc(38 * var(--home-u)) !important;
  margin: 0 !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  align-self: center !important;
  margin: 0 !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  align-self: start !important;
  margin: 0 !important;
}

/* Homepage house panel white surface v217. */
.app-shell.is-home .home-house-panel {
  background: #fbfaf7 !important;
  background-color: #fbfaf7 !important;
  background-image: none !important;
  border-color: rgba(232, 225, 216, 0.82) !important;
  box-shadow: 0 calc(10 * var(--home-u)) calc(26 * var(--home-u)) rgba(76, 60, 42, 0.08) !important;
}

.app-shell.is-home .home-house-panel::before,
.app-shell.is-home .home-house-panel::after {
  background: transparent !important;
  background-image: none !important;
  opacity: 0 !important;
}

/* Homepage detail correction v218. */
.app-shell.is-home .home-logo-slot {
  top: calc(20 * var(--home-u)) !important;
  right: calc(30 * var(--home-u)) !important;
  width: calc(55 * var(--home-u)) !important;
  height: calc(42 * var(--home-u)) !important;
}

.app-shell.is-home .home-logo-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(42 * var(--home-u)) calc(12 * var(--home-u)) calc(9 * var(--home-u)) !important;
  row-gap: calc(3.4 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
  width: calc(42 * var(--home-u)) !important;
  height: calc(42 * var(--home-u)) !important;
  min-width: calc(42 * var(--home-u)) !important;
  min-height: calc(42 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon svg {
  width: 56% !important;
  height: 56% !important;
}

.app-shell.is-home .home-house-card {
  background: #fbfaf7 !important;
  background-color: #fbfaf7 !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan {
  background: #fbfaf7 !important;
  background-color: #fbfaf7 !important;
  background-image: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.app-shell.is-home .home-house-plan img {
  width: 92% !important;
  height: 88% !important;
  max-width: 92% !important;
  max-height: 88% !important;
  object-fit: contain !important;
  object-position: center center !important;
  mix-blend-mode: multiply !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info {
  display: grid !important;
  grid-template-rows: calc(31 * var(--home-u)) calc(12 * var(--home-u)) calc(12 * var(--home-u)) !important;
  align-content: center !important;
  justify-items: center !important;
  padding: calc(7 * var(--home-u)) calc(5 * var(--home-u)) calc(8 * var(--home-u)) !important;
  row-gap: calc(1.8 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info strong {
  align-self: end !important;
  margin: 0 !important;
  line-height: calc(30 * var(--home-u)) !important;
}

.app-shell.is-home .home-house-info span,
.app-shell.is-home .home-house-info em {
  align-self: center !important;
  margin: 0 !important;
  text-align: center !important;
}

.app-shell.is-home .home-contact-strip p,
.app-shell.is-home .home-contact-address,
.app-shell.is-home .home-contact-phone {
  grid-template-columns: calc(20 * var(--home-u)) minmax(0, 1fr) !important;
  column-gap: calc(7 * var(--home-u)) !important;
  align-items: center !important;
}

.app-shell.is-home .home-contact-icon,
.app-shell.is-home .home-phone-icon {
  width: calc(20 * var(--home-u)) !important;
  height: calc(20 * var(--home-u)) !important;
  min-width: calc(20 * var(--home-u)) !important;
  min-height: calc(20 * var(--home-u)) !important;
  justify-self: center !important;
}

.app-shell.is-home .home-contact-icon svg,
.app-shell.is-home .home-phone-icon svg {
  width: 100% !important;
  height: 100% !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-logo-slot {
    top: calc(18 * var(--home-u)) !important;
    right: calc(26 * var(--home-u)) !important;
    width: calc(50 * var(--home-u)) !important;
    height: calc(38 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
    width: calc(39 * var(--home-u)) !important;
    height: calc(39 * var(--home-u)) !important;
    min-width: calc(39 * var(--home-u)) !important;
    min-height: calc(39 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-house-plan img {
    width: 91% !important;
    height: 87% !important;
    max-width: 91% !important;
    max-height: 87% !important;
  }
}

/* Homepage selection icons stronger scale v219. */
.app-shell.is-home .home-selection-card .home-service-row {
  gap: calc(8 * var(--home-u)) calc(12 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(52 * var(--home-u)) calc(14 * var(--home-u)) calc(10 * var(--home-u)) !important;
  row-gap: calc(2.5 * var(--home-u)) !important;
  min-height: calc(82 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
  width: calc(52 * var(--home-u)) !important;
  height: calc(52 * var(--home-u)) !important;
  min-width: calc(52 * var(--home-u)) !important;
  min-height: calc(52 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon svg {
  width: 74% !important;
  height: 74% !important;
  stroke-width: 2.45 !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  font-size: calc(11.2 * var(--home-u)) !important;
  line-height: calc(13 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  font-size: calc(7.7 * var(--home-u)) !important;
  line-height: calc(9.2 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card .home-service-row > div {
    grid-template-rows: calc(48 * var(--home-u)) calc(13 * var(--home-u)) calc(10 * var(--home-u)) !important;
    min-height: calc(76 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
    width: calc(48 * var(--home-u)) !important;
    height: calc(48 * var(--home-u)) !important;
    min-width: calc(48 * var(--home-u)) !important;
    min-height: calc(48 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-mini-icon svg {
    width: 74% !important;
    height: 74% !important;
  }
}

/* Homepage selection icons actual mobile scale v220. */
.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(60 * var(--home-u)) calc(14 * var(--home-u)) calc(10 * var(--home-u)) !important;
  min-height: calc(88 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
  width: calc(60 * var(--home-u)) !important;
  height: calc(60 * var(--home-u)) !important;
  min-width: calc(60 * var(--home-u)) !important;
  min-height: calc(60 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon svg {
  width: 86% !important;
  height: 86% !important;
  stroke-width: 2.65 !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card .home-service-row > div {
    grid-template-rows: calc(58 * var(--home-u)) calc(13 * var(--home-u)) calc(10 * var(--home-u)) !important;
    min-height: calc(84 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
    width: calc(58 * var(--home-u)) !important;
    height: calc(58 * var(--home-u)) !important;
    min-width: calc(58 * var(--home-u)) !important;
    min-height: calc(58 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-mini-icon svg {
    width: 86% !important;
    height: 86% !important;
  }
}

/* Homepage selection icons fine stroke and tighter text v221. */
.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(56 * var(--home-u)) calc(14 * var(--home-u)) calc(10 * var(--home-u)) !important;
  row-gap: calc(0.8 * var(--home-u)) !important;
  min-height: calc(82 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
  align-self: end !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  align-self: start !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon svg {
  stroke-width: 1.55 !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card .home-service-row > div {
    grid-template-rows: calc(54 * var(--home-u)) calc(13 * var(--home-u)) calc(10 * var(--home-u)) !important;
    row-gap: calc(0.6 * var(--home-u)) !important;
    min-height: calc(78 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-mini-icon svg {
    stroke-width: 1.45 !important;
  }
}

/* Homepage selection icon inner stroke override v222. */
.app-shell.is-home .home-selection-card .home-mini-icon svg,
.app-shell.is-home .home-selection-card .home-mini-icon svg *,
.app-shell.is-home .home-selection-card .home-mini-icon use {
  stroke-width: 1.45px !important;
}

/* Homepage selection card spacing fix v223. */
.app-shell.is-home .home-selection-card {
  top: calc(334 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row {
  padding-top: calc(2 * var(--home-u)) !important;
  align-content: start !important;
  row-gap: calc(5 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(45 * var(--home-u)) calc(12 * var(--home-u)) calc(9 * var(--home-u)) !important;
  row-gap: 0 !important;
  min-height: calc(66 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
  width: calc(45 * var(--home-u)) !important;
  height: calc(45 * var(--home-u)) !important;
  min-width: calc(45 * var(--home-u)) !important;
  min-height: calc(45 * var(--home-u)) !important;
  align-self: end !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  align-self: start !important;
  margin-top: calc(-2 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  align-self: start !important;
  margin-top: calc(-1 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-cta {
  margin-top: calc(7 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card {
    top: calc(334 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-service-row > div {
    grid-template-rows: calc(43 * var(--home-u)) calc(12 * var(--home-u)) calc(9 * var(--home-u)) !important;
    min-height: calc(64 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
    width: calc(43 * var(--home-u)) !important;
    height: calc(43 * var(--home-u)) !important;
    min-width: calc(43 * var(--home-u)) !important;
    min-height: calc(43 * var(--home-u)) !important;
  }
}

/* Homepage service copy closer to icons v224. */
.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(45 * var(--home-u)) calc(10 * var(--home-u)) calc(8 * var(--home-u)) !important;
  row-gap: 0 !important;
  min-height: calc(62 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  margin-top: calc(-5 * var(--home-u)) !important;
  line-height: calc(11 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  margin-top: calc(-3.2 * var(--home-u)) !important;
  line-height: calc(8.4 * var(--home-u)) !important;
}

.app-shell.is-home .home-enter-button {
  margin-top: calc(8 * var(--home-u)) !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card .home-service-row > div {
    grid-template-rows: calc(43 * var(--home-u)) calc(10 * var(--home-u)) calc(8 * var(--home-u)) !important;
    min-height: calc(60 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-service-row strong {
    margin-top: calc(-5.4 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-selection-card .home-service-row em {
    margin-top: calc(-3.4 * var(--home-u)) !important;
  }

  .app-shell.is-home .home-enter-button {
    margin-top: calc(7 * var(--home-u)) !important;
  }
}

/* Selection page edge-fit cards and back icon v225. */
.app-shell:not(.is-home) .bottom-panel {
  padding-left: max(4px, env(safe-area-inset-left)) !important;
  padding-right: max(4px, env(safe-area-inset-right)) !important;
}

.app-shell:not(.is-home) .content-switcher {
  width: 100% !important;
}

.app-shell:not(.is-home) .cards-scroll {
  grid-template-columns: repeat(var(--point-count, 7), minmax(0, 1fr)) !important;
  gap: 6px 3px !important;
}

.app-shell:not(.is-home) .point-card {
  padding: 0 1px !important;
}

.app-shell:not(.is-home) .point-card h3 {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow: visible !important;
  text-overflow: clip !important;
  justify-content: flex-start !important;
  gap: 2px !important;
  font-size: clamp(6.2px, 1.55vw, 7.6px) !important;
  letter-spacing: -0.04em !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  width: 12px !important;
  height: 12px !important;
  min-width: 12px !important;
  font-size: 6.5px !important;
}

.app-shell:not(.is-home) .home-back-button {
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(198, 154, 90, 0.24) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 4px 14px rgba(69, 52, 33, 0.08) !important;
  color: #4a4038 !important;
}

.app-shell:not(.is-home) .home-back-icon {
  display: none !important;
}

.app-shell:not(.is-home) .home-back-button::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 11px !important;
  height: 11px !important;
  border-left: 2px solid currentColor !important;
  border-bottom: 2px solid currentColor !important;
  transform: translate(-36%, -50%) rotate(45deg) !important;
}

.app-shell:not(.is-home) .home-back-button::after {
  content: "" !important;
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  width: 12px !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: currentColor !important;
  transform: translateY(-50%) !important;
}

/* Selection page full-width option panel v226. */
.app-shell:not(.is-home) .bottom-panel {
  width: min(calc(100vw - 12px), 680px) !important;
  max-width: none !important;
  justify-self: center !important;
  margin-left: calc((100% - min(calc(100vw - 12px), 680px)) / 2) !important;
  margin-right: calc((100% - min(calc(100vw - 12px), 680px)) / 2) !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.app-shell:not(.is-home) .cards-scroll {
  width: 100% !important;
  grid-template-columns: repeat(var(--point-count, 7), minmax(42px, 1fr)) !important;
  column-gap: 4px !important;
}

.app-shell:not(.is-home) .point-card {
  min-width: 42px !important;
  padding: 0 2px !important;
}

.app-shell:not(.is-home) .point-card h3 {
  justify-content: center !important;
  font-size: clamp(6.4px, 1.48vw, 7.4px) !important;
  letter-spacing: -0.075em !important;
}

.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  width: 100% !important;
}

/* Selection page full-width media panels and color target layout. */
.app-shell:not(.is-home) {
  --selection-edge-gap: max(6px, env(safe-area-inset-left), env(safe-area-inset-right)) !important;
}

.app-shell:not(.is-home) .main-grid,
.app-shell:not(.is-home) .bottom-panel {
  left: 50% !important;
  right: auto !important;
  width: min(calc(var(--mini-u, 1px) * 357), calc(100vw - var(--selection-edge-gap) - var(--selection-edge-gap))) !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: translateX(-50%) !important;
}

.app-shell:not(.is-home) .bird-panel,
.app-shell:not(.is-home) .effect-panel,
.app-shell:not(.is-home) .bottom-panel {
  box-sizing: border-box !important;
}

.app-shell:not(.is-home) .bottom-panel {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.app-shell:not(.is-home) .content-switcher,
.app-shell:not(.is-home) .cards-scroll {
  width: 100% !important;
  max-width: none !important;
}

.app-shell:not(.is-home) .cards-scroll {
  grid-template-columns: repeat(var(--point-count, 7), minmax(0, 1fr)) !important;
  column-gap: 4px !important;
}

.app-shell:not(.is-home) .point-card {
  min-width: 0 !important;
  padding-left: 2px !important;
  padding-right: 2px !important;
}

.app-shell:not(.is-home) .point-card h3 {
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  justify-content: center !important;
  font-size: clamp(7px, 1.8vw, 8.2px) !important;
  letter-spacing: -0.08em !important;
}

.app-shell:not(.is-home) .media-stage.is-loading::after {
  content: "\52A0\8F7D\4E2D" !important;
}


/* Home icon and point number alignment guard. */
.app-shell:not(.is-home) #homeBackButton.home-back-button {
  position: absolute !important;
  right: calc(var(--mini-u, 1px) * 17) !important;
  top: calc(var(--mini-u, 1px) * 12) !important;
  width: calc(var(--mini-u, 1px) * 22) !important;
  height: calc(var(--mini-u, 1px) * 22) !important;
  min-width: 22px !important;
  min-height: 22px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #8f6d47 !important;
  overflow: visible !important;
}

.app-shell:not(.is-home) #homeBackButton.home-back-button::before,
.app-shell:not(.is-home) #homeBackButton.home-back-button::after,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span::before,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.app-shell:not(.is-home) #homeBackButton .home-back-icon {
  width: calc(var(--mini-u, 1px) * 18) !important;
  height: calc(var(--mini-u, 1px) * 18) !important;
  display: block !important;
  color: currentColor !important;
  opacity: 1 !important;
  overflow: visible !important;
  transform: none !important;
}

.app-shell:not(.is-home) #homeBackButton .home-back-icon path {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 34px !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke !important;
}

.app-shell:not(.is-home) .cards-scroll {
  left: calc(var(--mini-u, 1px) * 5) !important;
  right: calc(var(--mini-u, 1px) * 5) !important;
  top: calc(var(--mini-u, 1px) * 36) !important;
  bottom: calc(var(--mini-u, 1px) * 5) !important;
  grid-template-columns: 1.2fr 1fr 1.12fr 1fr 1fr 0.9fr 1fr !important;
  grid-template-rows: calc(var(--mini-u, 1px) * 18) minmax(0, 1fr) !important;
  column-gap: calc(var(--mini-u, 1px) * 2.4) !important;
  row-gap: calc(var(--mini-u, 1px) * 7) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .point-card,
.app-shell:not(.is-home) .cards-scroll .point-card {
  height: calc(var(--mini-u, 1px) * 18) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 calc(var(--mini-u, 1px) * 1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .point-card-header {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.app-shell:not(.is-home) .point-card h3 {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: calc(var(--mini-u, 1px) * 1.5) !important;
  font-size: clamp(5.5px, calc(var(--mini-u, 1px) * 6.2), 8.4px) !important;
  line-height: 1 !important;
  letter-spacing: calc(var(--mini-u, 1px) * -0.24) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  position: static !important;
  left: auto !important;
  top: auto !important;
  flex: 0 0 auto !important;
  width: calc(var(--mini-u, 1px) * 8) !important;
  height: calc(var(--mini-u, 1px) * 8) !important;
  min-width: calc(var(--mini-u, 1px) * 8) !important;
  min-height: calc(var(--mini-u, 1px) * 8) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border-radius: 999px !important;
  font-size: calc(var(--mini-u, 1px) * 4.8) !important;
  line-height: 1 !important;
  text-align: center !important;
  transform: none !important;
}

.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  padding: 0 calc(var(--mini-u, 1px) * 3) !important;
  animation: none !important;
}

.app-shell:not(.is-home) .mobile-active-styles.is-panel-entering,
.app-shell:not(.is-home) .desktop-active-styles.is-panel-entering {
  animation: selection-style-panel-in 180ms ease-out both !important;
}

.app-shell:not(.is-home) .mobile-style-list {
  gap: calc(var(--mini-u, 1px) * 7.5) !important;
}

.app-shell:not(.is-home) .style-pill {
  grid-template-rows: minmax(0, 1fr) calc(var(--mini-u, 1px) * 16) !important;
  gap: calc(var(--mini-u, 1px) * 3.4) !important;
  animation: none !important;
}

.app-shell:not(.is-home) .style-thumb {
  border-radius: calc(var(--mini-u, 1px) * 5.5) !important;
}

.app-shell:not(.is-home) .style-pill strong {
  font-size: calc(var(--mini-u, 1px) * 9.4) !important;
  line-height: calc(var(--mini-u, 1px) * 12) !important;
}


.app-shell.is-home .home-enter-button {
  color: #fffdf8 !important;
  background: linear-gradient(100deg, #d7b27a 0%, #c89552 50%, #d8b176 100%) !important;
  border-color: rgba(166, 111, 45, 0.18) !important;
  box-shadow:
    0 calc(var(--home-u) * 5) calc(var(--home-u) * 10) rgba(165, 116, 57, 0.12),
    inset 0 calc(var(--home-u) * 0.8) 0 rgba(255, 255, 255, 0.34) !important;
}

/* Point switch only animates the style options. */
.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  animation: none !important;
}

.app-shell:not(.is-home) .mobile-active-styles.is-panel-entering,
.app-shell:not(.is-home) .desktop-active-styles.is-panel-entering {
  animation: selection-style-panel-in 180ms ease-out both !important;
}


/* Point switch only animates the style options. */
.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  animation: none !important;
}

.app-shell:not(.is-home) .mobile-active-styles.is-panel-entering,
.app-shell:not(.is-home) .desktop-active-styles.is-panel-entering {
  animation: selection-style-panel-in 180ms ease-out both !important;
}


/* Selection final fit v259: compact point tabs, color thumbs and targeted motion. */
.app-shell:not(.is-home) {
  --selection-accent: #c89552 !important;
  --selection-accent-soft: #ead9c2 !important;
  --selection-accent-text: #65401f !important;
}

.app-shell:not(.is-home) .home-back-button {
  width: calc(var(--mini-u, 1px) * 28) !important;
  height: calc(var(--mini-u, 1px) * 28) !important;
  min-width: 28px !important;
  min-height: 28px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #9a7244 !important;
}

.app-shell:not(.is-home) .home-back-icon {
  display: block !important;
  width: calc(var(--mini-u, 1px) * 19) !important;
  height: calc(var(--mini-u, 1px) * 19) !important;
  color: currentColor !important;
  opacity: 0.82 !important;
}

.app-shell:not(.is-home) .home-back-icon path {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 34px !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.app-shell:not(.is-home) .home-back-button::before,
.app-shell:not(.is-home) .home-back-button::after {
  display: none !important;
  content: none !important;
}

.app-shell:not(.is-home) .bottom-heading {
  top: calc(var(--mini-u, 1px) * 8) !important;
  height: calc(var(--mini-u, 1px) * 17) !important;
}

.app-shell:not(.is-home) .content-switcher {
  overflow: visible !important;
}

.app-shell:not(.is-home) .cards-scroll {
  left: calc(var(--mini-u, 1px) * 5) !important;
  right: calc(var(--mini-u, 1px) * 5) !important;
  top: calc(var(--mini-u, 1px) * 36) !important;
  bottom: calc(var(--mini-u, 1px) * 5) !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: 1.2fr 1fr 1.12fr 1fr 1fr 0.9fr 1fr !important;
  grid-template-rows: calc(var(--mini-u, 1px) * 18) minmax(0, 1fr) !important;
  column-gap: calc(var(--mini-u, 1px) * 2.4) !important;
  row-gap: calc(var(--mini-u, 1px) * 7) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .point-card,
.app-shell:not(.is-home) .cards-scroll .point-card {
  grid-row: 1 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: calc(var(--mini-u, 1px) * 18) !important;
  padding: 0 calc(var(--mini-u, 1px) * 1.1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: calc(var(--mini-u, 1px) * 3.2) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .point-card h3 {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: calc(var(--mini-u, 1px) * 1.4) !important;
  font-size: clamp(5.5px, calc(var(--mini-u, 1px) * 6.2), 8.4px) !important;
  line-height: 1 !important;
  letter-spacing: calc(var(--mini-u, 1px) * -0.24) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  position: static !important;
  flex: 0 0 auto !important;
  width: calc(var(--mini-u, 1px) * 7.6) !important;
  height: calc(var(--mini-u, 1px) * 7.6) !important;
  min-width: calc(var(--mini-u, 1px) * 7.6) !important;
  min-height: calc(var(--mini-u, 1px) * 7.6) !important;
  font-size: calc(var(--mini-u, 1px) * 4.8) !important;
  line-height: calc(var(--mini-u, 1px) * 7.6) !important;
}

.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  height: 100% !important;
  padding: 0 calc(var(--mini-u, 1px) * 3) !important;
  animation: none !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .mobile-active-styles.is-panel-entering,
.app-shell:not(.is-home) .desktop-active-styles.is-panel-entering {
  animation: selection-style-panel-in 180ms ease-out both !important;
}

.app-shell:not(.is-home) .mobile-style-list {
  height: 100% !important;
  grid-template-columns: repeat(var(--active-style-count, 3), minmax(0, 1fr)) !important;
  gap: calc(var(--mini-u, 1px) * 7.5) !important;
}

.app-shell:not(.is-home) .style-pill {
  grid-template-rows: minmax(0, 1fr) calc(var(--mini-u, 1px) * 16) !important;
  gap: calc(var(--mini-u, 1px) * 3.4) !important;
  animation: none !important;
}

.app-shell:not(.is-home) .style-thumb {
  border-radius: calc(var(--mini-u, 1px) * 5.5) !important;
  border-color: rgba(202, 158, 94, 0.22) !important;
}

.app-shell:not(.is-home) .style-pill strong {
  color: #5b5148 !important;
  font-size: calc(var(--mini-u, 1px) * 9.4) !important;
  line-height: calc(var(--mini-u, 1px) * 12) !important;
  font-weight: 650 !important;
}

.app-shell:not(.is-home) .style-pill.is-active .style-thumb {
  border-color: var(--selection-accent) !important;
  box-shadow: 0 0 0 calc(var(--mini-u, 1px) * 0.8) rgba(200, 149, 82, 0.24) !important;
}


.app-shell.is-home .home-enter-button {
  color: #fffdf8 !important;
  background: linear-gradient(100deg, #d7b27a 0%, #c89552 50%, #d8b176 100%) !important;
  border-color: rgba(166, 111, 45, 0.18) !important;
  box-shadow:
    0 calc(var(--home-u) * 5) calc(var(--home-u) * 10) rgba(165, 116, 57, 0.12),
    inset 0 calc(var(--home-u) * 0.8) 0 rgba(255, 255, 255, 0.34) !important;
}


.app-shell:not(.is-home) #homeBackButton.home-back-button {
  position: absolute !important;
  top: calc(var(--mini-u, 1px) * 11.5) !important;
  right: calc(var(--mini-u, 1px) * 16) !important;
  width: calc(var(--mini-u, 1px) * 24) !important;
  height: calc(var(--mini-u, 1px) * 24) !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #876846 !important;
  opacity: 0.9 !important;
  overflow: visible !important;
}

.app-shell:not(.is-home) #homeBackButton.home-back-button::before,
.app-shell:not(.is-home) #homeBackButton.home-back-button::after,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span::before,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.app-shell:not(.is-home) #homeBackButton .home-back-icon {
  width: calc(var(--mini-u, 1px) * 19) !important;
  height: calc(var(--mini-u, 1px) * 19) !important;
  display: block !important;
  color: currentColor !important;
  opacity: 1 !important;
  overflow: visible !important;
  transform: none !important;
}

.app-shell:not(.is-home) #homeBackButton .home-back-icon path {
  fill: currentColor !important;
  stroke: none !important;
  stroke-width: 0 !important;
}


/* Selection absolute final guard v256: keep this block at EOF. */
.app-shell:not(.is-home) .home-back-button {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #8a6f4e !important;
}

.app-shell:not(.is-home) .home-back-button::before,
.app-shell:not(.is-home) .home-back-button::after {
  display: none !important;
  content: none !important;
}

.app-shell:not(.is-home) .point-card h3 {
  padding-left: calc(var(--mini-u, 1px) * 7.2) !important;
  padding-right: 0 !important;
  font-size: clamp(5.8px, calc(var(--mini-u, 1px) * 5.75), 7.6px) !important;
  letter-spacing: calc(var(--mini-u, 1px) * -0.24) !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  left: calc(var(--mini-u, 1px) * 0.5) !important;
  width: calc(var(--mini-u, 1px) * 6.3) !important;
  height: calc(var(--mini-u, 1px) * 6.3) !important;
  min-width: calc(var(--mini-u, 1px) * 6.3) !important;
  min-height: calc(var(--mini-u, 1px) * 6.3) !important;
  font-size: calc(var(--mini-u, 1px) * 4.35) !important;
}


/* Selection final guard v255: this must stay after historical overrides. */
.app-shell:not(.is-home) .point-card h3 {
  padding-left: calc(var(--mini-u, 1px) * 7.2) !important;
  padding-right: 0 !important;
  font-size: clamp(5.8px, calc(var(--mini-u, 1px) * 5.75), 7.6px) !important;
  letter-spacing: calc(var(--mini-u, 1px) * -0.24) !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  left: calc(var(--mini-u, 1px) * 0.5) !important;
  width: calc(var(--mini-u, 1px) * 6.3) !important;
  height: calc(var(--mini-u, 1px) * 6.3) !important;
  min-width: calc(var(--mini-u, 1px) * 6.3) !important;
  min-height: calc(var(--mini-u, 1px) * 6.3) !important;
  font-size: calc(var(--mini-u, 1px) * 4.35) !important;
}


/* Selection point label final fit v254. */
.app-shell:not(.is-home) .point-card h3 {
  padding-left: calc(var(--mini-u, 1px) * 7.2) !important;
  font-size: clamp(5.8px, calc(var(--mini-u, 1px) * 5.75), 7.6px) !important;
  letter-spacing: calc(var(--mini-u, 1px) * -0.24) !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  left: calc(var(--mini-u, 1px) * 0.5) !important;
  width: calc(var(--mini-u, 1px) * 6.3) !important;
  height: calc(var(--mini-u, 1px) * 6.3) !important;
  min-width: calc(var(--mini-u, 1px) * 6.3) !important;
  min-height: calc(var(--mini-u, 1px) * 6.3) !important;
  font-size: calc(var(--mini-u, 1px) * 4.35) !important;
}


.app-shell:not(.is-home) .home-back-button {
  width: 36px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
}

.app-shell:not(.is-home) .home-back-icon {
  display: block !important;
  width: 21px !important;
  height: 21px !important;
  color: #4a4a4a !important;
}

.app-shell:not(.is-home) .home-back-button::before,
.app-shell:not(.is-home) .home-back-button::after {
  display: none !important;
  content: none !important;
}


/* Homepage house plan surface correction v231. */
.app-shell.is-home .home-house-card {
  background: #fbfaf7 !important;
  background-color: #fbfaf7 !important;
}

.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
  border-top: 0 !important;
}

.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #cfe0e8 !important;
  background-color: #cfe0e8 !important;
}

.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #cfe0e8 !important;
  background-color: #cfe0e8 !important;
}

/* Final homepage floorplan backing correction v240. */
.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan::before,
.app-shell.is-home .home-house-plan::after {
  display: none !important;
  content: none !important;
}

.app-shell.is-home .home-house-plan img {
  background: transparent !important;
  background-color: transparent !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Final homepage floorplan contract v244: original image only, white image bed. */
.app-shell.is-home .home-house-card,
.app-shell.is-home .home-house-card.is-active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan::before,
.app-shell.is-home .home-house-plan::after {
  display: none !important;
  content: none !important;
}

.app-shell.is-home .home-house-plan img {
  background: transparent !important;
  background-color: transparent !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Homepage floorplan final contract v243: keep original image pixels untouched. */
.app-shell.is-home .home-house-card,
.app-shell.is-home .home-house-card.is-active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan::before,
.app-shell.is-home .home-house-plan::after {
  display: none !important;
  content: none !important;
}

.app-shell.is-home .home-house-plan img {
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Final homepage floorplan original image color restore v241. */
.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan img {
  background: transparent !important;
  background-color: transparent !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Final override: floorplan image area must match the white plan image v239. */
.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan::before,
.app-shell.is-home .home-house-plan::after {
  display: none !important;
  content: none !important;
}

.app-shell.is-home .home-house-plan img {
  background: #fff !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Final override: floorplan image area must match the white plan image v238. */
.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan::before,
.app-shell.is-home .home-house-plan::after {
  display: none !important;
  content: none !important;
}

.app-shell.is-home .home-house-plan img {
  background: #fff !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Homepage house plan true-white image backing v237. */
.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan img {
  mix-blend-mode: normal !important;
  filter: none !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Homepage house plan backing sampled from reference v236. */
.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #f6f1e7 !important;
  background-color: #f6f1e7 !important;
  background-image: none !important;
}

/* Homepage compact CTA and contact icon alignment v233. */
.app-shell.is-home .home-enter-button {
  width: calc(113 * var(--home-u)) !important;
  height: calc(30 * var(--home-u)) !important;
  min-height: calc(30 * var(--home-u)) !important;
  padding: 0 calc(8 * var(--home-u)) !important;
  gap: calc(4 * var(--home-u)) !important;
  border-radius: calc(6 * var(--home-u)) !important;
  font-size: calc(9.6 * var(--home-u)) !important;
}

.app-shell.is-home .home-enter-button i {
  font-size: calc(10.5 * var(--home-u)) !important;
}

.app-shell.is-home .home-contact-phone .home-contact-icon,
.app-shell.is-home .home-contact-phone .home-phone-icon {
  transform: translateX(calc(2.2 * var(--home-u))) !important;
}

/* Homepage house plan sampled color v235. */
.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

/* Final homepage floorplan card surfaces v242. */
.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan::before,
.app-shell.is-home .home-house-plan::after {
  display: none !important;
  content: none !important;
}

.app-shell.is-home .home-house-plan img {
  background: transparent !important;
  background-color: transparent !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Final homepage floorplan contract v245: do not recolor source images. */
.app-shell.is-home .home-house-card,
.app-shell.is-home .home-house-card.is-active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan,
.app-shell.is-home .home-house-card[data-house-type] .home-house-plan,
.app-shell.is-home .home-house-card.is-active .home-house-plan {
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
}

.app-shell.is-home .home-house-plan::before,
.app-shell.is-home .home-house-plan::after {
  display: none !important;
  content: none !important;
}

.app-shell.is-home .home-house-plan img {
  background: transparent !important;
  background-color: transparent !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #e8d8bd !important;
  background-color: #e8d8bd !important;
  background-image: none !important;
}

/* Homepage text tone and spacing refinement v246. */
.app-shell.is-home .home-house-card .home-house-info,
.app-shell.is-home .home-house-info,
.app-shell.is-home .home-house-card.is-active .home-house-info {
  background: #f0e3cb !important;
  background-color: #f0e3cb !important;
  background-image: none !important;
}

.app-shell.is-home .home-selection-card .home-service-row > div {
  row-gap: calc(1.4 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  margin: calc(0.8 * var(--home-u)) 0 calc(2.4 * var(--home-u)) !important;
  color: #2f241d !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  color: rgba(78, 69, 61, 0.42) !important;
  line-height: calc(9.2 * var(--home-u)) !important;
}

/* Homepage service text no-overlap fix v247. */
.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(37 * var(--home-u)) auto auto !important;
  row-gap: calc(2.1 * var(--home-u)) !important;
  align-content: start !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon {
  margin: 0 !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  margin: 0 !important;
  line-height: calc(11.6 * var(--home-u)) !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  color: rgba(78, 69, 61, 0.42) !important;
  line-height: calc(9.2 * var(--home-u)) !important;
}

/* Selection page surgical polish v252: readable point labels and lighter home icon. */
.app-shell:not(.is-home) .home-back-button {
  width: calc(var(--mini-u, 1px) * 26) !important;
  height: calc(var(--mini-u, 1px) * 26) !important;
  min-width: 28px !important;
  min-height: 28px !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #8a6f4e !important;
}

.app-shell:not(.is-home) .home-back-button::before,
.app-shell:not(.is-home) .home-back-button::after {
  display: none !important;
  content: none !important;
}

.app-shell:not(.is-home) .home-back-icon {
  display: block !important;
  width: calc(var(--mini-u, 1px) * 18.5) !important;
  height: calc(var(--mini-u, 1px) * 18.5) !important;
  color: currentColor !important;
  opacity: 0.82 !important;
}

.app-shell:not(.is-home) .home-back-icon path {
  fill: currentColor !important;
}

.app-shell:not(.is-home) .cards-scroll {
  grid-template-columns: repeat(var(--point-count, 7), minmax(0, 1fr)) !important;
  column-gap: calc(var(--mini-u, 1px) * 2.2) !important;
  row-gap: calc(var(--mini-u, 1px) * 6) !important;
  overflow: visible !important;
}

.app-shell:not(.is-home) .point-card,
.app-shell:not(.is-home) .cards-scroll .point-card {
  overflow: visible !important;
  padding-left: calc(var(--mini-u, 1px) * 0.8) !important;
  padding-right: calc(var(--mini-u, 1px) * 0.8) !important;
}

.app-shell:not(.is-home) .point-card-header {
  overflow: visible !important;
}

.app-shell:not(.is-home) .point-card h3 {
  padding-left: calc(var(--mini-u, 1px) * 8.2) !important;
  padding-right: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: calc(var(--mini-u, 1px) * 1.2) !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow: visible !important;
  text-overflow: clip !important;
  font-size: clamp(6.2px, calc(var(--mini-u, 1px) * 6.15), 8.1px) !important;
  font-weight: 760 !important;
  line-height: 1.05 !important;
  letter-spacing: calc(var(--mini-u, 1px) * -0.18) !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  left: calc(var(--mini-u, 1px) * 0.8) !important;
  width: calc(var(--mini-u, 1px) * 6.8) !important;
  height: calc(var(--mini-u, 1px) * 6.8) !important;
  min-width: calc(var(--mini-u, 1px) * 6.8) !important;
  min-height: calc(var(--mini-u, 1px) * 6.8) !important;
  font-size: calc(var(--mini-u, 1px) * 4.7) !important;
}

.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  animation: selection-style-panel-in 0.22s ease-out both !important;
}

@keyframes selection-style-panel-in {
  from {
    opacity: 0;
    transform: translateY(calc(var(--mini-u, 1px) * 4));
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Selection page image enter guard. */
.app-shell:not(.is-home) .scene-image.is-entering,
.app-shell:not(.is-home) .preview-image.is-entering,
.app-shell:not(.is-home) .image-overlay-stack img.is-fade-entering {
  animation: image-fade-in 180ms ease-out both !important;
  clip-path: inset(0 0 0 0) !important;
  filter: none !important;
}


/* Selection absolute final guard v257: real EOF override. */
.app-shell:not(.is-home) .home-back-button {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #8a6f4e !important;
}

.app-shell:not(.is-home) .home-back-button::before,
.app-shell:not(.is-home) .home-back-button::after {
  display: none !important;
  content: none !important;
}

.app-shell:not(.is-home) .point-card h3 {
  padding-left: calc(var(--mini-u, 1px) * 7.2) !important;
  padding-right: 0 !important;
  font-size: clamp(5.8px, calc(var(--mini-u, 1px) * 5.75), 7.6px) !important;
  letter-spacing: calc(var(--mini-u, 1px) * -0.24) !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  left: calc(var(--mini-u, 1px) * 0.5) !important;
  width: calc(var(--mini-u, 1px) * 6.3) !important;
  height: calc(var(--mini-u, 1px) * 6.3) !important;
  min-width: calc(var(--mini-u, 1px) * 6.3) !important;
  min-height: calc(var(--mini-u, 1px) * 6.3) !important;
  font-size: calc(var(--mini-u, 1px) * 4.35) !important;
}


/* True EOF final layer v261: visible home icon, centered point badges, correct motion split. */
.app-shell:not(.is-home) #homeBackButton.home-back-button {
  position: absolute !important;
  right: calc(var(--mini-u, 1px) * 17) !important;
  top: calc(var(--mini-u, 1px) * 12) !important;
  width: calc(var(--mini-u, 1px) * 22) !important;
  height: calc(var(--mini-u, 1px) * 22) !important;
  min-width: 22px !important;
  min-height: 22px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #8f6d47 !important;
  overflow: visible !important;
}

.app-shell:not(.is-home) #homeBackButton.home-back-button::before,
.app-shell:not(.is-home) #homeBackButton.home-back-button::after,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span::before,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.app-shell:not(.is-home) #homeBackButton .home-back-icon {
  width: calc(var(--mini-u, 1px) * 18) !important;
  height: calc(var(--mini-u, 1px) * 18) !important;
  display: block !important;
  color: currentColor !important;
  opacity: 1 !important;
  overflow: visible !important;
  transform: none !important;
}

.app-shell:not(.is-home) #homeBackButton .home-back-icon path {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 34px !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke !important;
}

.app-shell:not(.is-home) .cards-scroll {
  left: calc(var(--mini-u, 1px) * 5) !important;
  right: calc(var(--mini-u, 1px) * 5) !important;
  top: calc(var(--mini-u, 1px) * 36) !important;
  bottom: calc(var(--mini-u, 1px) * 5) !important;
  grid-template-columns: 1.2fr 1fr 1.12fr 1fr 1fr 0.9fr 1fr !important;
  grid-template-rows: calc(var(--mini-u, 1px) * 18) minmax(0, 1fr) !important;
  column-gap: calc(var(--mini-u, 1px) * 2.4) !important;
  row-gap: calc(var(--mini-u, 1px) * 7) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .point-card,
.app-shell:not(.is-home) .cards-scroll .point-card {
  height: calc(var(--mini-u, 1px) * 18) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 calc(var(--mini-u, 1px) * 1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .point-card-header {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.app-shell:not(.is-home) .point-card h3 {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: calc(var(--mini-u, 1px) * 1.5) !important;
  font-size: clamp(5.5px, calc(var(--mini-u, 1px) * 6.2), 8.4px) !important;
  line-height: 1 !important;
  letter-spacing: calc(var(--mini-u, 1px) * -0.24) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.app-shell:not(.is-home) .point-card h3::before {
  position: static !important;
  left: auto !important;
  top: auto !important;
  flex: 0 0 auto !important;
  width: calc(var(--mini-u, 1px) * 8) !important;
  height: calc(var(--mini-u, 1px) * 8) !important;
  min-width: calc(var(--mini-u, 1px) * 8) !important;
  min-height: calc(var(--mini-u, 1px) * 8) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border-radius: 999px !important;
  font-size: calc(var(--mini-u, 1px) * 4.8) !important;
  line-height: 1 !important;
  text-align: center !important;
  transform: none !important;
}

.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  padding: 0 calc(var(--mini-u, 1px) * 3) !important;
  animation: none !important;
}

.app-shell:not(.is-home) .mobile-active-styles.is-panel-entering,
.app-shell:not(.is-home) .desktop-active-styles.is-panel-entering {
  animation: selection-style-panel-in 180ms ease-out both !important;
}

.app-shell:not(.is-home) .mobile-style-list {
  gap: calc(var(--mini-u, 1px) * 7.5) !important;
}

.app-shell:not(.is-home) .style-pill {
  grid-template-rows: minmax(0, 1fr) calc(var(--mini-u, 1px) * 16) !important;
  gap: calc(var(--mini-u, 1px) * 3.4) !important;
  animation: none !important;
}

.app-shell:not(.is-home) .style-thumb {
  border-radius: calc(var(--mini-u, 1px) * 5.5) !important;
}

.app-shell:not(.is-home) .style-pill strong {
  font-size: calc(var(--mini-u, 1px) * 9.4) !important;
  line-height: calc(var(--mini-u, 1px) * 12) !important;
}


.app-shell.is-home .home-enter-button {
  color: #fffdf8 !important;
  background: linear-gradient(100deg, #d7b27a 0%, #c89552 50%, #d8b176 100%) !important;
  border-color: rgba(166, 111, 45, 0.18) !important;
  box-shadow:
    0 calc(var(--home-u) * 5) calc(var(--home-u) * 10) rgba(165, 116, 57, 0.12),
    inset 0 calc(var(--home-u) * 0.8) 0 rgba(255, 255, 255, 0.34) !important;
}

/* Point changes animate only the style options. */
.app-shell:not(.is-home) .mobile-active-styles,
.app-shell:not(.is-home) .desktop-active-styles {
  animation: none !important;
}

.app-shell:not(.is-home) .mobile-active-styles.is-panel-entering,
.app-shell:not(.is-home) .desktop-active-styles.is-panel-entering {
  animation: selection-style-panel-in 180ms ease-out both !important;
}


.app-shell:not(.is-home) #homeBackButton.home-back-button {
  position: absolute !important;
  top: calc(var(--mini-u, 1px) * 11.5) !important;
  right: calc(var(--mini-u, 1px) * 16) !important;
  width: calc(var(--mini-u, 1px) * 24) !important;
  height: calc(var(--mini-u, 1px) * 24) !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #876846 !important;
  opacity: 0.9 !important;
  overflow: visible !important;
}

.app-shell:not(.is-home) #homeBackButton.home-back-button::before,
.app-shell:not(.is-home) #homeBackButton.home-back-button::after,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span::before,
.app-shell:not(.is-home) #homeBackButton.home-back-button > span::after {
  display: none !important;
  content: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.app-shell:not(.is-home) #homeBackButton .home-back-icon {
  width: calc(var(--mini-u, 1px) * 19) !important;
  height: calc(var(--mini-u, 1px) * 19) !important;
  display: block !important;
  color: currentColor !important;
  opacity: 1 !important;
  overflow: visible !important;
  transform: none !important;
}

.app-shell:not(.is-home) #homeBackButton .home-back-icon path {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 24px !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke !important;
}

/* Actual EOF icon fix v265: use the supplied filled outline home glyph, not a thick stroke. */
.app-shell:not(.is-home) #homeBackButton .home-back-icon path {
  fill: currentColor !important;
  stroke: none !important;
  stroke-width: 0 !important;
  vector-effect: none !important;
}

/* Absolute final icon guard v266. */
.app-shell:not(.is-home) #homeBackButton .home-back-icon path {
  fill: currentColor !important;
  stroke: none !important;
  stroke-width: 0 !important;
  vector-effect: none !important;
}


/* Homepage selection card compact spacing v273: reduce loose gaps inside the selection card only. */
.app-shell.is-home .home-selection-card {
  grid-template-columns: calc(var(--home-u) * 100) minmax(0, 1fr) !important;
  gap: calc(var(--home-u) * 7) calc(var(--home-u) * 7) !important;
}

.app-shell.is-home .home-selection-card .home-card-copy p {
  margin-top: calc(var(--home-u) * 5) !important;
}

.app-shell.is-home .home-selection-card .home-service-row {
  gap: calc(var(--home-u) * 6) calc(var(--home-u) * 3) !important;
  align-self: center !important;
}

.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(var(--home-u) * 31) auto auto !important;
  row-gap: calc(var(--home-u) * 0.8) !important;
  align-content: center !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon {
  width: calc(var(--home-u) * 29) !important;
  height: calc(var(--home-u) * 29) !important;
  min-width: calc(var(--home-u) * 29) !important;
  min-height: calc(var(--home-u) * 29) !important;
  margin: 0 !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  margin: 0 !important;
  line-height: calc(var(--home-u) * 10.5) !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  margin: calc(var(--home-u) * -0.8) 0 0 !important;
  line-height: calc(var(--home-u) * 8.4) !important;
}

/* Homepage selection card layout repair v275: keep icon copy compact without squeezing the image/CTA. */
.app-shell.is-home .home-selection-card {
  grid-template-columns: calc(var(--home-u) * 118) minmax(0, 1fr) !important;
  grid-template-rows: calc(var(--home-u) * 50) minmax(0, 1fr) calc(var(--home-u) * 30) !important;
  grid-template-areas:
    "copy image"
    "icons image"
    "button image" !important;
  gap: calc(var(--home-u) * 8) calc(var(--home-u) * 13) !important;
  align-items: stretch !important;
}

.app-shell.is-home .home-selection-card .home-card-copy {
  grid-area: copy !important;
  width: calc(var(--home-u) * 118) !important;
  min-width: 0 !important;
  max-width: calc(var(--home-u) * 118) !important;
}

.app-shell.is-home .home-selection-card .home-card-copy p {
  margin-top: calc(var(--home-u) * 3.5) !important;
}

.app-shell.is-home .home-selection-card .home-service-row {
  grid-area: icons !important;
  width: calc(var(--home-u) * 118) !important;
  min-width: 0 !important;
  max-width: calc(var(--home-u) * 118) !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: calc(var(--home-u) * 6) calc(var(--home-u) * 8) !important;
  align-self: start !important;
  align-content: start !important;
  align-items: start !important;
  padding: calc(var(--home-u) * 1) 0 0 !important;
}

.app-shell.is-home .home-selection-card .home-service-row > div {
  min-height: calc(var(--home-u) * 58) !important;
  display: grid !important;
  grid-template-rows: calc(var(--home-u) * 36) calc(var(--home-u) * 12) calc(var(--home-u) * 9) !important;
  row-gap: calc(var(--home-u) * 1) !important;
  align-content: start !important;
  justify-items: center !important;
  text-align: center !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon {
  width: calc(var(--home-u) * 36) !important;
  height: calc(var(--home-u) * 36) !important;
  min-width: calc(var(--home-u) * 36) !important;
  min-height: calc(var(--home-u) * 36) !important;
  margin: 0 !important;
  align-self: center !important;
}

.app-shell.is-home .home-selection-card .home-mini-icon svg,
.app-shell.is-home .home-selection-card .home-mini-icon svg *,
.app-shell.is-home .home-selection-card .home-mini-icon use {
  stroke-width: 1.45px !important;
}

.app-shell.is-home .home-selection-card .home-service-row strong {
  margin: 0 !important;
  font-size: calc(var(--home-u) * 9.9) !important;
  line-height: calc(var(--home-u) * 11.4) !important;
  color: #2f241d !important;
}

.app-shell.is-home .home-selection-card .home-service-row em {
  margin: 0 !important;
  font-size: calc(var(--home-u) * 7) !important;
  line-height: calc(var(--home-u) * 8.5) !important;
  color: rgba(78, 69, 61, 0.42) !important;
}

.app-shell.is-home .home-selection-card .home-enter-button {
  grid-area: button !important;
  align-self: end !important;
  justify-self: start !important;
  margin-top: 0 !important;
}

.app-shell.is-home .home-selection-card .home-interior-slot {
  grid-area: image !important;
  min-width: 0 !important;
  align-self: stretch !important;
  justify-self: stretch !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-selection-card {
    grid-template-columns: calc(var(--home-u) * 114) minmax(0, 1fr) !important;
    gap: calc(var(--home-u) * 7) calc(var(--home-u) * 10) !important;
  }

  .app-shell.is-home .home-selection-card .home-card-copy,
  .app-shell.is-home .home-selection-card .home-service-row {
    width: calc(var(--home-u) * 114) !important;
    max-width: calc(var(--home-u) * 114) !important;
  }

  .app-shell.is-home .home-selection-card .home-service-row {
    column-gap: calc(var(--home-u) * 6) !important;
  }

  .app-shell.is-home .home-selection-card .home-mini-icon {
    width: calc(var(--home-u) * 34) !important;
    height: calc(var(--home-u) * 34) !important;
    min-width: calc(var(--home-u) * 34) !important;
    min-height: calc(var(--home-u) * 34) !important;
  }
}


.loading-screen.is-hidden {
  pointer-events: none !important;
}

/* Color switch PNG reveal: JS reveals a temporary clone of the target PNG only. */
.app-shell:not(.is-home) .media-stage.is-png-revealing {
  overflow: hidden !important;
}

.app-shell:not(.is-home) .media-stage.is-png-revealing::before,
.app-shell:not(.is-home) .media-stage.is-png-revealing::after {
  display: none !important;
  content: none !important;
}

.app-shell:not(.is-home) .media-stage .is-png-reveal-armed,
.app-shell:not(.is-home) .media-stage .is-png-reveal-target {
  visibility: visible !important;
  opacity: 1 !important;
  animation: none !important;
  filter: none !important;
}

.app-shell:not(.is-home) .media-stage .is-png-reveal-armed {
  opacity: 0 !important;
}

.app-shell:not(.is-home) .media-stage .png-reveal-previous,
.app-shell:not(.is-home) .media-stage .png-reveal-clone {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  pointer-events: none !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
  animation: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  will-change: clip-path !important;
}

.app-shell:not(.is-home) .media-stage .png-reveal-previous {
  z-index: 24 !important;
  opacity: 1 !important;
  visibility: visible !important;
  clip-path: inset(0 0 0 0) !important;
}

.app-shell:not(.is-home) .media-stage .png-reveal-clone {
  z-index: 30 !important;
  clip-path: inset(0 100% 0 0);
}


.app-shell.is-home .home-address-link,
.app-shell.is-home .home-phone-link {
  display: inline-flex !important;
  align-items: center !important;
  min-width: 0 !important;
  color: inherit !important;
  text-decoration: none !important;
  -webkit-tap-highlight-color: rgba(199, 154, 92, 0.16) !important;
}

/* Homepage selection icon crop v301: keep artwork size, shorten icon row spacing. */
.app-shell.is-home .home-selection-card .home-service-row > div {
  grid-template-rows: calc(var(--home-u) * 30) calc(var(--home-u) * 12) calc(var(--home-u) * 9) !important;
  row-gap: 0 !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon {
  width: calc(var(--home-u) * 42) !important;
  height: calc(var(--home-u) * 42) !important;
  min-width: calc(var(--home-u) * 42) !important;
  min-height: calc(var(--home-u) * 42) !important;
  align-self: end !important;
  overflow: hidden !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon svg {
  width: 86% !important;
  height: 86% !important;
  transform: none !important;
}

.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon svg,
.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon svg *,
.app-shell.is-home .home-selection-card .home-service-row .home-mini-icon use {
  stroke-width: 1.45px !important;
}

/* Homepage contact icon alignment v304: equal visual SVG sizes and readable text gap. */
.app-shell.is-home .home-contact-strip p,
.app-shell.is-home .home-contact-address,
.app-shell.is-home .home-contact-phone {
  display: block !important;
  align-items: center !important;
}

.app-shell.is-home .home-contact-strip .home-address-link,
.app-shell.is-home .home-contact-strip .home-phone-link {
  display: grid !important;
  grid-template-columns: calc(22 * var(--home-u)) minmax(0, 1fr) !important;
  column-gap: calc(8.5 * var(--home-u)) !important;
  align-items: center !important;
  justify-content: start !important;
  justify-items: start !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
}

.app-shell.is-home .home-contact-icon,
.app-shell.is-home .home-phone-icon {
  width: calc(22 * var(--home-u)) !important;
  height: calc(22 * var(--home-u)) !important;
  min-width: calc(22 * var(--home-u)) !important;
  min-height: calc(22 * var(--home-u)) !important;
  transform: none !important;
  justify-self: center !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.app-shell.is-home .home-contact-phone .home-contact-icon,
.app-shell.is-home .home-contact-phone .home-phone-icon {
  transform: none !important;
}

.app-shell.is-home .home-contact-icon svg,
.app-shell.is-home .home-phone-icon svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
}

.app-shell.is-home .home-phone-icon svg {
  width: 78% !important;
  height: 78% !important;
}

.app-shell.is-home .home-contact-strip strong {
  padding-left: 0 !important;
}

/* Selection view/bird switch fade v306: keep old stacked PNGs visible until the new stack is ready. */
.app-shell:not(.is-home) .media-stage.is-view-switching {
  overflow: hidden !important;
}

.app-shell:not(.is-home) .media-stage .view-switch-snapshot {
  position: absolute !important;
  inset: 0 !important;
  z-index: 46 !important;
  display: block !important;
  overflow: hidden !important;
  pointer-events: none !important;
  opacity: 1 !important;
  filter: brightness(1) saturate(1) !important;
  transition:
    opacity 320ms ease-out,
    filter 320ms ease-out !important;
}

.app-shell:not(.is-home) .media-stage .view-switch-snapshot.is-leaving {
  opacity: 0 !important;
  filter: brightness(1.03) saturate(1.01) !important;
}

.app-shell:not(.is-home) .media-stage .view-switch-snapshot img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  pointer-events: none !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
  animation: none !important;
  filter: none !important;
  clip-path: inset(0 0 0 0) !important;
}

.app-shell:not(.is-home) .media-stage.is-view-switching:not(.is-point-switching) .scene-image.is-fade-entering,
.app-shell:not(.is-home) .media-stage.is-view-switching:not(.is-point-switching) .preview-image.is-fade-entering,
.app-shell:not(.is-home) .media-stage.is-view-switching:not(.is-point-switching) .image-overlay-stack img.is-fade-entering {
  animation: none !important;
  opacity: 1 !important;
  filter: none !important;
  clip-path: inset(0 0 0 0) !important;
}
/* Submit confirmation page: single scoped phone-canvas layout. */
body.is-submit-open {
  overflow: hidden !important;
}

.submit-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1200 !important;
  display: none !important;
  place-items: center !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: rgba(255, 253, 249, 0.96) !important;
}

.submit-modal.is-open,
body.is-submit-open .submit-modal {
  display: grid !important;
}

.app-shell:not(.is-home) .submit-dialog.submit-page,
.submit-dialog.submit-page {
  --submit-u: min(calc(100vw / 375), calc(100dvh / 812)) !important;
  --submit-w: calc(var(--submit-u) * 375) !important;
  --submit-h: calc(var(--submit-u) * 812) !important;
  position: relative !important;
  width: var(--submit-w) !important;
  height: var(--submit-h) !important;
  max-width: 100vw !important;
  max-height: 100dvh !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background:
    radial-gradient(circle at 18% 5%, rgba(238, 216, 183, 0.42), transparent 30%),
    linear-gradient(180deg, #fffaf2 0%, #f7efe4 100%) !important;
  box-shadow: none !important;
  color: #2d251f !important;
  transform: none !important;
}

.app-shell:not(.is-home) .submit-dialog.submit-page::before,
.app-shell:not(.is-home) .submit-dialog.submit-page::after,
.submit-dialog.submit-page::before,
.submit-dialog.submit-page::after {
  display: none !important;
  content: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-page-topbar.topbar,
.submit-page .submit-page-topbar.topbar {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  width: auto !important;
  height: calc(var(--submit-u) * 68) !important;
  min-height: 0 !important;
  padding: calc(var(--submit-u) * 9) calc(var(--submit-u) * 48) calc(var(--submit-u) * 6) calc(var(--submit-u) * 12) !important;
  display: grid !important;
  grid-template-rows: calc(var(--submit-u) * 24) calc(var(--submit-u) * 24) !important;
  align-content: center !important;
  gap: calc(var(--submit-u) * 2) !important;
  overflow: visible !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.submit-page .submit-page-topbar .house-control {
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: calc(var(--submit-u) * 5) !important;
}

.submit-page .submit-page-topbar .house-label {
  color: rgba(48, 39, 31, 0.58) !important;
  font-size: calc(var(--submit-u) * 8.6) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.submit-page .submit-house-tabs {
  min-width: 0 !important;
  height: calc(var(--submit-u) * 22) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: calc(var(--submit-u) * 5) !important;
}

.submit-page .submit-house-tab {
  min-width: calc(var(--submit-u) * 48) !important;
  height: calc(var(--submit-u) * 22) !important;
  min-height: 0 !important;
  padding: 0 calc(var(--submit-u) * 7) !important;
  display: grid !important;
  place-items: center !important;
  border: calc(var(--submit-u) * 0.7) solid rgba(202, 160, 100, 0.26) !important;
  border-radius: calc(var(--submit-u) * 7) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  color: #6a5543 !important;
  font-size: calc(var(--submit-u) * 9.8) !important;
  font-weight: 780 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.submit-page .submit-house-tab.is-active {
  border-color: rgba(191, 139, 75, 0.46) !important;
  background: linear-gradient(180deg, #f0dcc0 0%, #d5b386 100%) !important;
  color: #3d2d21 !important;
}

.submit-page .brand-title {
  min-width: 0 !important;
  text-align: center !important;
  pointer-events: none !important;
}

.submit-page .brand-title h1 {
  margin: 0 !important;
  color: #2f251d !important;
  font-size: calc(var(--submit-u) * 15.5) !important;
  font-weight: 820 !important;
  line-height: calc(var(--submit-u) * 20) !important;
  letter-spacing: calc(var(--submit-u) * 0.4) !important;
}

.submit-page .submit-close {
  position: absolute !important;
  right: calc(var(--submit-u) * 13) !important;
  top: calc(var(--submit-u) * 16) !important;
  width: calc(var(--submit-u) * 34) !important;
  height: calc(var(--submit-u) * 28) !important;
  min-width: 34px !important;
  min-height: 28px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #8a6f4e !important;
  font-size: calc(var(--submit-u) * 10.5) !important;
  font-weight: 760 !important;
  line-height: 1 !important;
  transform: none !important;
}

.submit-page .submit-close::before,
.submit-page .submit-close::after {
  display: none !important;
  content: none !important;
}

.submit-page .submit-close span {
  display: inline !important;
}

.app-shell:not(.is-home) .submit-page .submit-main-grid.main-grid,
.submit-page .submit-main-grid.main-grid {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: calc(var(--submit-u) * 68) !important;
  bottom: calc(var(--submit-u) * 8) !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: visible !important;
  transform: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-bird-panel.bird-panel,
.submit-page .submit-bird-panel.bird-panel {
  position: absolute !important;
  left: calc(var(--submit-u) * 7) !important;
  right: calc(var(--submit-u) * 7) !important;
  top: 0 !important;
  width: auto !important;
  height: calc(var(--submit-u) * 284) !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: calc(var(--submit-u) * 38) calc(var(--submit-u) * 8) calc(var(--submit-u) * 9) !important;
  display: block !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.6) solid rgba(204, 166, 112, 0.2) !important;
  border-radius: calc(var(--submit-u) * 14) !important;
  background: rgba(255, 255, 255, 0.78) !important;
  box-shadow: 0 calc(var(--submit-u) * 3) calc(var(--submit-u) * 12) rgba(95, 70, 44, 0.055) !important;
  transform: none !important;
}

.submit-page .submit-bird-panel .section-heading,
.submit-page .submit-review-panel .section-heading {
  position: absolute !important;
  left: calc(var(--submit-u) * 13) !important;
  right: calc(var(--submit-u) * 13) !important;
  top: calc(var(--submit-u) * 9) !important;
  height: calc(var(--submit-u) * 20) !important;
  min-height: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: calc(var(--submit-u) * 6) !important;
}

.submit-page .section-heading span {
  width: calc(var(--submit-u) * 20) !important;
  height: calc(var(--submit-u) * 20) !important;
  min-width: calc(var(--submit-u) * 20) !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #d5b386 !important;
  color: #fff !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: calc(var(--submit-u) * 11) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.submit-page .section-heading strong {
  color: #30251d !important;
  font-size: calc(var(--submit-u) * 17.5) !important;
  font-weight: 860 !important;
  line-height: 1 !important;
  letter-spacing: calc(var(--submit-u) * 0.4) !important;
  white-space: nowrap !important;
}

.submit-page .submit-review-panel .section-heading em {
  display: none !important;
}

.submit-page .submit-bird-tabs.bird-tabs {
  position: absolute !important;
  right: calc(var(--submit-u) * 13) !important;
  top: calc(var(--submit-u) * 10) !important;
  height: calc(var(--submit-u) * 22) !important;
  display: flex !important;
  align-items: center !important;
  gap: calc(var(--submit-u) * 5) !important;
  z-index: 5 !important;
}

.submit-page .submit-bird-tab {
  min-width: calc(var(--submit-u) * 48) !important;
  height: calc(var(--submit-u) * 22) !important;
  min-height: 0 !important;
  padding: 0 calc(var(--submit-u) * 8) !important;
  border: calc(var(--submit-u) * 0.6) solid rgba(190, 142, 76, 0.2) !important;
  border-radius: calc(var(--submit-u) * 7) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  color: #6a5543 !important;
  font-size: calc(var(--submit-u) * 9.4) !important;
  font-weight: 760 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.submit-page .submit-bird-tab.is-active {
  border-color: rgba(191, 139, 75, 0.44) !important;
  background: linear-gradient(180deg, #f0dcc0 0%, #d5b386 100%) !important;
  color: #3d2d21 !important;
}

.submit-page .submit-bird-tab.is-disabled {
  opacity: 0.42 !important;
}

.app-shell:not(.is-home) .submit-page .submit-bird-stage.media-stage,
.submit-page .submit-bird-stage.media-stage {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  display: block !important;
  overflow: hidden !important;
  border-radius: calc(var(--submit-u) * 10) !important;
  background: #f7f1e8 !important;
}

.submit-page .submit-bird-stage img,
.submit-page .submit-bird-stage .image-overlay-stack img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.submit-page .submit-bird-stage .submit-bird-base {
  z-index: 1 !important;
}

.submit-page .submit-bird-stage .submit-bird-overlay-stack {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-form,
.submit-page .submit-form {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: calc(var(--submit-u) * 296) !important;
  bottom: 0 !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-review-panel.bottom-panel,
.submit-page .submit-review-panel.bottom-panel {
  position: absolute !important;
  left: calc(var(--submit-u) * 7) !important;
  right: calc(var(--submit-u) * 7) !important;
  top: 0 !important;
  bottom: 0 !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: calc(var(--submit-u) * 34) calc(var(--submit-u) * 8) calc(var(--submit-u) * 6) !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) calc(var(--submit-u) * 12) calc(var(--submit-u) * 31) !important;
  gap: calc(var(--submit-u) * 4) !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.6) solid rgba(204, 166, 112, 0.2) !important;
  border-radius: calc(var(--submit-u) * 14) !important;
  background: rgba(255, 255, 255, 0.78) !important;
  box-shadow: 0 calc(var(--submit-u) * 3) calc(var(--submit-u) * 12) rgba(95, 70, 44, 0.055) !important;
  transform: none !important;
}

.submit-page .submit-review-content {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  gap: calc(var(--submit-u) * 5) !important;
  overflow: hidden !important;
}

.submit-page .submit-selected-section,
.submit-page .submit-customer-section {
  min-width: 0 !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-rows: calc(var(--submit-u) * 14) minmax(0, 1fr) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
}

.submit-page .submit-customer-section {
  grid-template-rows: calc(var(--submit-u) * 14) auto !important;
}

.submit-page .submit-section-title {
  min-height: 0 !important;
  height: calc(var(--submit-u) * 14) !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: calc(var(--submit-u) * 8) !important;
}

.submit-page .submit-section-title span {
  color: #30251d !important;
  font-size: calc(var(--submit-u) * 10.2) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.submit-page .submit-section-title em {
  min-width: 0 !important;
  overflow: hidden !important;
  color: rgba(60, 50, 42, 0.54) !important;
  font-size: calc(var(--submit-u) * 7.8) !important;
  font-style: normal !important;
  font-weight: 650 !important;
  line-height: 1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-list,
.submit-page .submit-selection-list {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: minmax(0, 1fr) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row,
.submit-page .submit-selection-row {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: calc(var(--submit-u) * 3) !important;
  display: grid !important;
  grid-template-columns: calc(var(--submit-u) * 39) minmax(0, 1fr) !important;
  grid-template-rows: 1fr 1fr !important;
  column-gap: calc(var(--submit-u) * 4) !important;
  row-gap: 0 !important;
  align-items: center !important;
  border: calc(var(--submit-u) * 0.55) solid rgba(197, 154, 93, 0.16) !important;
  border-radius: calc(var(--submit-u) * 8) !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.submit-page .submit-selection-row::before {
  display: none !important;
  content: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-thumb,
.submit-page .submit-selection-thumb {
  position: relative !important;
  grid-row: 1 / 3 !important;
  width: calc(var(--submit-u) * 39) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border-radius: calc(var(--submit-u) * 6) !important;
  background: #f3eee6 !important;
}

.submit-page .submit-selection-thumb img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

.submit-page .submit-selection-thumb span {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  min-width: calc(var(--submit-u) * 15) !important;
  height: calc(var(--submit-u) * 15) !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 0 0 calc(var(--submit-u) * 5) 0 !important;
  color: #fff !important;
  background: #d1aa77 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: calc(var(--submit-u) * 7) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row strong,
.app-shell:not(.is-home) .submit-page .submit-selection-row em,
.submit-page .submit-selection-row strong,
.submit-page .submit-selection-row em {
  min-width: 0 !important;
  display: block !important;
  overflow: hidden !important;
  text-align: left !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row strong,
.submit-page .submit-selection-row strong {
  align-self: end !important;
  color: #2f251d !important;
  font-size: calc(var(--submit-u) * 8.6) !important;
  font-weight: 850 !important;
  line-height: calc(var(--submit-u) * 11) !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row em,
.submit-page .submit-selection-row em {
  align-self: start !important;
  color: rgba(57, 46, 38, 0.55) !important;
  font-size: calc(var(--submit-u) * 7.1) !important;
  font-style: normal !important;
  font-weight: 650 !important;
  line-height: calc(var(--submit-u) * 9) !important;
}

.app-shell:not(.is-home) .submit-page .submit-info-grid,
.submit-page .submit-info-grid {
  height: auto !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(2, calc(var(--submit-u) * 34)) !important;
  gap: calc(var(--submit-u) * 4) !important;
}

.app-shell:not(.is-home) .submit-page .submit-field,
.app-shell:not(.is-home) .submit-page .submit-readonly-field,
.submit-page .submit-field,
.submit-page .submit-readonly-field {
  min-width: 0 !important;
  min-height: 0 !important;
  height: calc(var(--submit-u) * 34) !important;
  padding: calc(var(--submit-u) * 4.2) calc(var(--submit-u) * 7) !important;
  display: grid !important;
  align-content: center !important;
  gap: calc(var(--submit-u) * 2.6) !important;
  border: calc(var(--submit-u) * 0.55) solid rgba(197, 154, 93, 0.16) !important;
  border-radius: calc(var(--submit-u) * 8) !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: none !important;
}

.submit-page .submit-field::before,
.submit-page .submit-readonly-field::before {
  display: none !important;
  content: none !important;
}

.submit-page .submit-field span,
.submit-page .submit-readonly-field span {
  color: rgba(57, 46, 38, 0.56) !important;
  font-size: calc(var(--submit-u) * 7) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

.app-shell:not(.is-home) .submit-page .submit-field input,
.app-shell:not(.is-home) .submit-page .submit-readonly-field strong,
.submit-page .submit-field input,
.submit-page .submit-readonly-field strong {
  min-width: 0 !important;
  min-height: 0 !important;
  width: 100% !important;
  height: calc(var(--submit-u) * 15) !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #30251d !important;
  font-size: calc(var(--submit-u) * 9.3) !important;
  font-weight: 830 !important;
  line-height: calc(var(--submit-u) * 15) !important;
  outline: none !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.submit-page .submit-field input::placeholder {
  color: rgba(72, 54, 38, 0.33) !important;
  font-weight: 650 !important;
}

.submit-page .submit-message {
  min-height: 0 !important;
  height: calc(var(--submit-u) * 12) !important;
  margin: 0 !important;
  padding: 0 calc(var(--submit-u) * 2) !important;
  overflow: hidden !important;
  color: rgba(60, 50, 42, 0.62) !important;
  font-size: calc(var(--submit-u) * 8) !important;
  font-weight: 650 !important;
  line-height: calc(var(--submit-u) * 12) !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.submit-page .submit-message[data-type="error"] {
  color: #a0442f !important;
}

.submit-page .submit-message[data-type="success"] {
  color: #4f7b39 !important;
}

.submit-page .submit-actions {
  min-height: 0 !important;
  height: calc(var(--submit-u) * 31) !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr) !important;
  gap: calc(var(--submit-u) * 7) !important;
}

.submit-page .submit-secondary,
.submit-page .submit-primary {
  min-height: 0 !important;
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: calc(var(--submit-u) * 8) !important;
  color: #fff !important;
  font-size: calc(var(--submit-u) * 10.5) !important;
  font-weight: 900 !important;
  letter-spacing: calc(var(--submit-u) * 0.6) !important;
  line-height: 1 !important;
  background: linear-gradient(180deg, #dcbf95 0%, #bf8e55 100%) !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

.submit-page .submit-secondary {
  color: #6f4d28 !important;
  background: rgba(255, 255, 255, 0.78) !important;
  box-shadow: inset 0 0 0 calc(var(--submit-u) * 0.7) rgba(196, 150, 86, 0.22) !important;
}

.submit-page .submit-primary:disabled {
  opacity: 0.56 !important;
  cursor: wait !important;
}

/* Homepage disclaimer v314: show the legal note at the very bottom without competing with contact info. */
.app-shell.is-home {
  --home-canvas-h: calc(936 * var(--home-u)) !important;
}

.app-shell.is-home .home-screen {
  height: calc(936 * var(--home-u)) !important;
  min-height: calc(936 * var(--home-u)) !important;
  max-height: none !important;
  overflow: visible !important;
}

.app-shell.is-home .home-footnote {
  position: absolute !important;
  left: calc(14 * var(--home-u)) !important;
  right: calc(14 * var(--home-u)) !important;
  top: calc(891 * var(--home-u)) !important;
  height: calc(38 * var(--home-u)) !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 calc(2 * var(--home-u)) !important;
  display: block !important;
  overflow: hidden !important;
  color: rgba(61, 50, 42, 0.48) !important;
  font-family: var(--home-default-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-size: calc(7.2 * var(--home-u)) !important;
  font-weight: 520 !important;
  line-height: calc(9.5 * var(--home-u)) !important;
  letter-spacing: calc(-0.18 * var(--home-u)) !important;
  text-align: left !important;
}

@media (max-width: 390px) {
  .app-shell.is-home .home-footnote {
    left: calc(12 * var(--home-u)) !important;
    right: calc(12 * var(--home-u)) !important;
    font-size: calc(6.8 * var(--home-u)) !important;
    line-height: calc(9 * var(--home-u)) !important;
  }
}

/* Submit review v315: only replace the bottom review area; keep the selection page preview above intact. */
body.is-submit-open {
  overflow: hidden !important;
}

.submit-modal {
  background: transparent !important;
  pointer-events: none !important;
}

.submit-modal.is-open,
body.is-submit-open .submit-modal {
  display: block !important;
}

.submit-dialog.submit-page {
  --submit-u: var(--mini-u, min(calc(100vw / 375), calc(100dvh / 811))) !important;
  position: fixed !important;
  left: 50% !important;
  top: 0 !important;
  width: calc(var(--submit-u) * 375) !important;
  height: min(100dvh, calc(var(--submit-u) * 811)) !important;
  max-width: 100vw !important;
  max-height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  transform: translateX(-50%) !important;
  pointer-events: none !important;
}

.submit-page .submit-page-topbar,
.submit-page .submit-bird-panel {
  display: none !important;
}

.submit-page .submit-main-grid.main-grid {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  overflow: visible !important;
  pointer-events: none !important;
}

.submit-page .submit-form {
  position: absolute !important;
  left: calc(var(--submit-u) * 9) !important;
  right: calc(var(--submit-u) * 9) !important;
  top: calc(var(--submit-u) * 598) !important;
  bottom: calc(var(--submit-u) * 1) !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

.submit-page .submit-review-panel.bottom-panel {
  position: absolute !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: calc(var(--submit-u) * 31) calc(var(--submit-u) * 8) calc(var(--submit-u) * 5) !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) calc(var(--submit-u) * 11) calc(var(--submit-u) * 29) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.7) solid #f0ece6 !important;
  border-radius: calc(var(--submit-u) * 9) !important;
  background: rgba(255, 255, 255, 0.985) !important;
  box-shadow:
    0 calc(var(--submit-u) * 4) calc(var(--submit-u) * 18) rgba(92, 68, 42, 0.055),
    inset 0 calc(var(--submit-u) * 1) 0 rgba(255, 255, 255, 0.94) !important;
  pointer-events: auto !important;
}

.submit-page .submit-review-panel .section-heading {
  position: absolute !important;
  left: calc(var(--submit-u) * 11) !important;
  right: calc(var(--submit-u) * 11) !important;
  top: calc(var(--submit-u) * 8) !important;
  height: calc(var(--submit-u) * 18) !important;
  display: flex !important;
  align-items: center !important;
  gap: calc(var(--submit-u) * 7) !important;
}

.submit-page .submit-review-panel .section-heading span {
  width: calc(var(--submit-u) * 16) !important;
  height: calc(var(--submit-u) * 16) !important;
  min-width: calc(var(--submit-u) * 16) !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #c69d63 !important;
  color: #fff !important;
  font-size: calc(var(--submit-u) * 9) !important;
  font-weight: 900 !important;
}

.submit-page .submit-review-panel .section-heading strong {
  color: #201b16 !important;
  font-size: calc(var(--submit-u) * 14) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.submit-page .submit-review-panel .section-heading em {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  color: #9d968d !important;
  font-size: calc(var(--submit-u) * 8.2) !important;
  font-style: normal !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.submit-page .submit-review-content {
  height: 100% !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  gap: calc(var(--submit-u) * 6) !important;
  overflow: hidden !important;
}

.submit-page .submit-selected-section,
.submit-page .submit-customer-section {
  min-width: 0 !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-rows: calc(var(--submit-u) * 14) minmax(0, 1fr) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
}

.submit-page .submit-section-title {
  height: calc(var(--submit-u) * 14) !important;
  min-height: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: calc(var(--submit-u) * 5) !important;
}

.submit-page .submit-section-title span {
  color: #30251d !important;
  font-size: calc(var(--submit-u) * 10) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.submit-page .submit-section-title em {
  min-width: 0 !important;
  overflow: hidden !important;
  color: rgba(60, 50, 42, 0.48) !important;
  font-size: calc(var(--submit-u) * 7.2) !important;
  font-style: normal !important;
  font-weight: 650 !important;
  line-height: 1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.submit-page .submit-selection-list {
  height: 100% !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(4, minmax(0, 1fr)) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
}

.submit-page .submit-selection-row {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: calc(var(--submit-u) * 3) !important;
  display: grid !important;
  grid-template-columns: calc(var(--submit-u) * 30) minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr) !important;
  column-gap: calc(var(--submit-u) * 3) !important;
  row-gap: 0 !important;
  align-items: center !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.55) solid rgba(197, 154, 93, 0.14) !important;
  border-radius: calc(var(--submit-u) * 6) !important;
  background: rgba(250, 247, 241, 0.88) !important;
  box-shadow: none !important;
}

.submit-page .submit-selection-thumb {
  position: relative !important;
  grid-row: 1 / 3 !important;
  width: calc(var(--submit-u) * 30) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border-radius: calc(var(--submit-u) * 5) !important;
  background: #f0e8dd !important;
}

.submit-page .submit-selection-thumb img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

.submit-page .submit-selection-thumb span {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: calc(var(--submit-u) * 13) !important;
  height: calc(var(--submit-u) * 13) !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 0 0 calc(var(--submit-u) * 4) 0 !important;
  color: #fff !important;
  background: #c69d63 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: calc(var(--submit-u) * 6.2) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.submit-page .submit-selection-row strong,
.submit-page .submit-selection-row em {
  min-width: 0 !important;
  display: block !important;
  overflow: hidden !important;
  text-align: left !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.submit-page .submit-selection-row strong {
  align-self: end !important;
  color: #2f251d !important;
  font-size: calc(var(--submit-u) * 7.7) !important;
  font-weight: 850 !important;
  line-height: calc(var(--submit-u) * 9.5) !important;
}

.submit-page .submit-selection-row em {
  align-self: start !important;
  color: rgba(57, 46, 38, 0.56) !important;
  font-size: calc(var(--submit-u) * 6.6) !important;
  font-style: normal !important;
  font-weight: 650 !important;
  line-height: calc(var(--submit-u) * 8.2) !important;
}

.submit-page .submit-info-grid {
  height: 100% !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: repeat(4, minmax(0, 1fr)) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
}

.submit-page .submit-field,
.submit-page .submit-readonly-field {
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: calc(var(--submit-u) * 3.4) calc(var(--submit-u) * 6) !important;
  display: grid !important;
  align-content: center !important;
  gap: calc(var(--submit-u) * 2) !important;
  border: calc(var(--submit-u) * 0.55) solid rgba(197, 154, 93, 0.14) !important;
  border-radius: calc(var(--submit-u) * 6) !important;
  background: rgba(250, 247, 241, 0.88) !important;
  box-shadow: none !important;
}

.submit-page .submit-field span,
.submit-page .submit-readonly-field span {
  color: rgba(57, 46, 38, 0.56) !important;
  font-size: calc(var(--submit-u) * 6.6) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.submit-page .submit-field input,
.submit-page .submit-readonly-field strong {
  width: 100% !important;
  min-width: 0 !important;
  height: calc(var(--submit-u) * 13) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  background: transparent !important;
  color: #30251d !important;
  font-size: calc(var(--submit-u) * 8.4) !important;
  font-weight: 830 !important;
  line-height: calc(var(--submit-u) * 13) !important;
  outline: none !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.submit-page .submit-message {
  height: calc(var(--submit-u) * 11) !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 calc(var(--submit-u) * 2) !important;
  overflow: hidden !important;
  color: rgba(60, 50, 42, 0.62) !important;
  font-size: calc(var(--submit-u) * 7.4) !important;
  font-weight: 650 !important;
  line-height: calc(var(--submit-u) * 11) !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.submit-page .submit-actions {
  height: calc(var(--submit-u) * 29) !important;
  min-height: 0 !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr) !important;
  gap: calc(var(--submit-u) * 7) !important;
}

.submit-page .submit-secondary,
.submit-page .submit-primary {
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: calc(var(--submit-u) * 7) !important;
  font-size: calc(var(--submit-u) * 10) !important;
  font-weight: 900 !important;
  letter-spacing: calc(var(--submit-u) * 0.5) !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

/* Submit review v316: stronger scope to beat older confirmation-page overrides. */
.app-shell:not(.is-home) .submit-dialog.submit-page {
  --submit-u: var(--mini-u, min(calc(100vw / 375), calc(100dvh / 811))) !important;
  position: fixed !important;
  left: 50% !important;
  top: 0 !important;
  width: calc(var(--submit-u) * 375) !important;
  height: min(100dvh, calc(var(--submit-u) * 811)) !important;
  max-width: 100vw !important;
  max-height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: visible !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: translateX(-50%) !important;
  pointer-events: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-page-topbar.topbar,
.app-shell:not(.is-home) .submit-page .submit-bird-panel.bird-panel {
  display: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-main-grid.main-grid {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: visible !important;
  pointer-events: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-form {
  position: absolute !important;
  left: calc(var(--submit-u) * 9) !important;
  right: calc(var(--submit-u) * 9) !important;
  top: calc(var(--submit-u) * 598) !important;
  bottom: calc(var(--submit-u) * 1) !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

.app-shell:not(.is-home) .submit-page .submit-review-panel.bottom-panel {
  position: absolute !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: calc(var(--submit-u) * 31) calc(var(--submit-u) * 8) calc(var(--submit-u) * 5) !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) calc(var(--submit-u) * 11) calc(var(--submit-u) * 29) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.7) solid #f0ece6 !important;
  border-radius: calc(var(--submit-u) * 9) !important;
  background: rgba(255, 255, 255, 0.985) !important;
  box-shadow:
    0 calc(var(--submit-u) * 4) calc(var(--submit-u) * 18) rgba(92, 68, 42, 0.055),
    inset 0 calc(var(--submit-u) * 1) 0 rgba(255, 255, 255, 0.94) !important;
  pointer-events: auto !important;
  transform: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-review-content {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  gap: calc(var(--submit-u) * 6) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-selected-section,
.app-shell:not(.is-home) .submit-page .submit-customer-section {
  min-width: 0 !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-rows: calc(var(--submit-u) * 14) minmax(0, 1fr) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-list {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: minmax(0, 1fr) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: calc(var(--submit-u) * 3) !important;
  display: grid !important;
  grid-template-columns: calc(var(--submit-u) * 30) minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr) !important;
  column-gap: calc(var(--submit-u) * 3) !important;
  row-gap: 0 !important;
  align-items: center !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.55) solid rgba(197, 154, 93, 0.14) !important;
  border-radius: calc(var(--submit-u) * 6) !important;
  background: rgba(250, 247, 241, 0.88) !important;
  box-shadow: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-thumb {
  position: relative !important;
  grid-row: 1 / 3 !important;
  width: calc(var(--submit-u) * 30) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border-radius: calc(var(--submit-u) * 5) !important;
  background: #f0e8dd !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row strong {
  align-self: end !important;
  font-size: calc(var(--submit-u) * 7.7) !important;
  line-height: calc(var(--submit-u) * 9.5) !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row em {
  align-self: start !important;
  font-size: calc(var(--submit-u) * 6.6) !important;
  line-height: calc(var(--submit-u) * 8.2) !important;
}

.app-shell:not(.is-home) .submit-page .submit-info-grid {
  min-height: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: repeat(4, minmax(0, 1fr)) !important;
  gap: calc(var(--submit-u) * 3) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-field,
.app-shell:not(.is-home) .submit-page .submit-readonly-field {
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: calc(var(--submit-u) * 3.4) calc(var(--submit-u) * 6) !important;
  display: grid !important;
  align-content: center !important;
  gap: calc(var(--submit-u) * 2) !important;
  border: calc(var(--submit-u) * 0.55) solid rgba(197, 154, 93, 0.14) !important;
  border-radius: calc(var(--submit-u) * 6) !important;
  background: rgba(250, 247, 241, 0.88) !important;
  box-shadow: none !important;
}

/* Submit review v317: give the seven selected points a little more breathing room. */
.app-shell:not(.is-home) .submit-page .submit-form {
  top: calc(var(--submit-u) * 588) !important;
}

.app-shell:not(.is-home) .submit-page .submit-review-panel.bottom-panel {
  grid-template-rows: minmax(0, 1fr) calc(var(--submit-u) * 10) calc(var(--submit-u) * 29) !important;
  gap: calc(var(--submit-u) * 3) !important;
}

.app-shell:not(.is-home) .submit-page .submit-review-content {
  gap: calc(var(--submit-u) * 5) !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-list {
  gap: calc(var(--submit-u) * 2) !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row {
  grid-template-columns: calc(var(--submit-u) * 27) minmax(0, 1fr) !important;
  column-gap: calc(var(--submit-u) * 3) !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-thumb {
  width: calc(var(--submit-u) * 27) !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row strong {
  font-size: calc(var(--submit-u) * 7.5) !important;
  line-height: calc(var(--submit-u) * 9.3) !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row em {
  font-size: calc(var(--submit-u) * 6.4) !important;
  line-height: calc(var(--submit-u) * 8) !important;
}

/* Submit review v318: reuse the selection layout, replacing only panels 2 and 3. */
.submit-modal,
.submit-modal.is-open,
body.is-submit-open .submit-modal,
.app-shell:not(.is-home) .submit-modal,
.app-shell:not(.is-home) .submit-modal.is-open {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
  pointer-events: none !important;
}

.submit-modal.is-open,
body.is-submit-open .submit-modal {
  display: block !important;
}

body.is-submit-open .app-shell:not(.is-home) .app,
body.is-submit-open .app-shell:not(.is-home) .topbar,
body.is-submit-open .app-shell:not(.is-home) .main-grid,
body.is-submit-open .app-shell:not(.is-home) .bird-panel,
body.is-submit-open .app-shell:not(.is-home) .effect-panel,
body.is-submit-open .app-shell:not(.is-home) .bottom-panel,
body.is-submit-open .app-shell:not(.is-home) .media-stage,
body.is-submit-open .app-shell:not(.is-home) .scene-image,
body.is-submit-open .app-shell:not(.is-home) .preview-image,
body.is-submit-open .app-shell:not(.is-home) .image-overlay-stack img {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
}

.app-shell:not(.is-home) .submit-dialog.submit-page,
.submit-dialog.submit-page {
  --submit-u: var(--mini-u, min(calc(100vw / 375), calc(100dvh / 811))) !important;
  position: fixed !important;
  left: 50% !important;
  top: 0 !important;
  width: calc(var(--submit-u) * 375) !important;
  height: min(100dvh, calc(var(--submit-u) * 811)) !important;
  max-width: 100vw !important;
  max-height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: translateX(-50%) !important;
  pointer-events: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-page-topbar.topbar,
.app-shell:not(.is-home) .submit-page .submit-bird-panel.bird-panel {
  display: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-main-grid.main-grid,
.submit-page .submit-main-grid.main-grid,
.app-shell:not(.is-home) .submit-page .submit-form,
.submit-page .submit-form,
.app-shell:not(.is-home) .submit-page .submit-review-panel.bottom-panel,
.submit-page .submit-review-panel.bottom-panel {
  position: absolute !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  pointer-events: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-review-panel > .section-heading {
  display: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-review-content,
.submit-page .submit-review-content {
  position: static !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  display: block !important;
  overflow: visible !important;
  pointer-events: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-selected-section,
.app-shell:not(.is-home) .submit-page .submit-customer-section {
  position: absolute !important;
  left: calc(var(--submit-u) * 9) !important;
  width: calc(var(--submit-u) * 357) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  display: block !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.7) solid #f0ece6 !important;
  border-radius: calc(var(--submit-u) * 9) !important;
  background: rgba(255, 255, 255, 0.985) !important;
  box-shadow:
    0 calc(var(--submit-u) * 4) calc(var(--submit-u) * 18) rgba(92, 68, 42, 0.055),
    inset 0 calc(var(--submit-u) * 1) 0 rgba(255, 255, 255, 0.94) !important;
  pointer-events: auto !important;
}

.app-shell:not(.is-home) .submit-page .submit-selected-section {
  top: calc(var(--submit-u) * 384) !important;
  height: calc(var(--submit-u) * 204) !important;
}

.app-shell:not(.is-home) .submit-page .submit-customer-section {
  top: calc(var(--submit-u) * 590) !important;
  height: calc(var(--submit-u) * 218) !important;
}

.app-shell:not(.is-home) .submit-page .submit-section-title {
  position: absolute !important;
  left: calc(var(--submit-u) * 11) !important;
  right: calc(var(--submit-u) * 11) !important;
  top: calc(var(--submit-u) * 8) !important;
  height: calc(var(--submit-u) * 18) !important;
  min-height: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: calc(var(--submit-u) * 7) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-section-title::before {
  width: calc(var(--submit-u) * 16) !important;
  height: calc(var(--submit-u) * 16) !important;
  min-width: calc(var(--submit-u) * 16) !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #c69d63 !important;
  color: #fff !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: calc(var(--submit-u) * 9) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.app-shell:not(.is-home) .submit-page .submit-selected-section .submit-section-title::before {
  content: "2" !important;
}

.app-shell:not(.is-home) .submit-page .submit-customer-section .submit-section-title::before {
  content: "3" !important;
}

.app-shell:not(.is-home) .submit-page .submit-section-title span {
  min-width: 0 !important;
  color: #201b16 !important;
  font-size: calc(var(--submit-u) * 14) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.app-shell:not(.is-home) .submit-page .submit-section-title em {
  min-width: 0 !important;
  margin-left: auto !important;
  overflow: hidden !important;
  color: #9d968d !important;
  font-size: calc(var(--submit-u) * 8.2) !important;
  font-style: normal !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-list {
  position: absolute !important;
  left: calc(var(--submit-u) * 9) !important;
  right: calc(var(--submit-u) * 9) !important;
  top: calc(var(--submit-u) * 34) !important;
  bottom: calc(var(--submit-u) * 8) !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: minmax(0, 1fr) !important;
  gap: calc(var(--submit-u) * 5) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: calc(var(--submit-u) * 4) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) calc(var(--submit-u) * 12) calc(var(--submit-u) * 10) !important;
  gap: calc(var(--submit-u) * 1) !important;
  align-items: stretch !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.55) solid rgba(197, 154, 93, 0.14) !important;
  border-radius: calc(var(--submit-u) * 6) !important;
  background: rgba(250, 247, 241, 0.88) !important;
  box-shadow: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-thumb {
  position: relative !important;
  grid-row: auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border-radius: calc(var(--submit-u) * 4.5) !important;
  background: #f0e8dd !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-thumb img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-thumb span {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: calc(var(--submit-u) * 13) !important;
  height: calc(var(--submit-u) * 13) !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 0 0 calc(var(--submit-u) * 4) 0 !important;
  color: #fff !important;
  background: #c69d63 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: calc(var(--submit-u) * 6.2) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row strong,
.app-shell:not(.is-home) .submit-page .submit-selection-row em {
  min-width: 0 !important;
  display: block !important;
  overflow: hidden !important;
  text-align: center !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row strong {
  align-self: end !important;
  color: #2f251d !important;
  font-size: calc(var(--submit-u) * 8) !important;
  font-weight: 850 !important;
  line-height: calc(var(--submit-u) * 11) !important;
}

.app-shell:not(.is-home) .submit-page .submit-selection-row em {
  align-self: start !important;
  color: rgba(57, 46, 38, 0.56) !important;
  font-size: calc(var(--submit-u) * 6.8) !important;
  font-style: normal !important;
  font-weight: 650 !important;
  line-height: calc(var(--submit-u) * 9) !important;
}

.app-shell:not(.is-home) .submit-page .submit-info-grid {
  position: absolute !important;
  left: calc(var(--submit-u) * 10) !important;
  right: calc(var(--submit-u) * 10) !important;
  top: calc(var(--submit-u) * 36) !important;
  height: calc(var(--submit-u) * 116) !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  gap: calc(var(--submit-u) * 6) !important;
  overflow: hidden !important;
}

.app-shell:not(.is-home) .submit-page .submit-field,
.app-shell:not(.is-home) .submit-page .submit-readonly-field {
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: calc(var(--submit-u) * 6) calc(var(--submit-u) * 8) !important;
  display: grid !important;
  align-content: center !important;
  gap: calc(var(--submit-u) * 4) !important;
  overflow: hidden !important;
  border: calc(var(--submit-u) * 0.55) solid rgba(197, 154, 93, 0.14) !important;
  border-radius: calc(var(--submit-u) * 6) !important;
  background: rgba(250, 247, 241, 0.88) !important;
  box-shadow: none !important;
}

.app-shell:not(.is-home) .submit-page .submit-field span,
.app-shell:not(.is-home) .submit-page .submit-readonly-field span {
  color: rgba(57, 46, 38, 0.56) !important;
  font-size: calc(var(--submit-u) * 7.2) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.app-shell:not(.is-home) .submit-page .submit-field input,
.app-shell:not(.is-home) .submit-page .submit-readonly-field strong {
  width: 100% !important;
  min-width: 0 !important;
  height: calc(var(--submit-u) * 17) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  background: transparent !important;
  color: #30251d !important;
  font-size: calc(var(--submit-u) * 10) !important;
  font-weight: 830 !important;
  line-height: calc(var(--submit-u) * 17) !important;
  outline: none !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.app-shell:not(.is-home) .submit-page .submit-message {
  position: absolute !important;
  left: calc(var(--submit-u) * 12) !important;
  right: calc(var(--submit-u) * 12) !important;
  top: calc(var(--submit-u) * 158) !important;
  height: calc(var(--submit-u) * 12) !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: rgba(60, 50, 42, 0.62) !important;
  font-size: calc(var(--submit-u) * 7.4) !important;
  font-weight: 650 !important;
  line-height: calc(var(--submit-u) * 12) !important;
  text-align: left !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.app-shell:not(.is-home) .submit-page .submit-actions {
  position: absolute !important;
  left: calc(var(--submit-u) * 10) !important;
  right: calc(var(--submit-u) * 10) !important;
  bottom: calc(var(--submit-u) * 8) !important;
  height: calc(var(--submit-u) * 31) !important;
  min-height: 0 !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr) !important;
  gap: calc(var(--submit-u) * 8) !important;
}

.app-shell:not(.is-home) .submit-page .submit-secondary,
.app-shell:not(.is-home) .submit-page .submit-primary {
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: calc(var(--submit-u) * 7) !important;
  font-size: calc(var(--submit-u) * 10) !important;
  font-weight: 900 !important;
  letter-spacing: calc(var(--submit-u) * 0.5) !important;
  line-height: 1 !important;
  box-shadow: none !important;
  pointer-events: auto !important;
}

/* Submit review v319: align the replacement panels to the original canvas. */
.app-shell:not(.is-home) .submit-page .submit-selected-section,
.app-shell:not(.is-home) .submit-page .submit-customer-section {
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  width: calc(var(--submit-u) * 357) !important;
  max-width: calc(100vw - 12px) !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
  z-index: 2 !important;
}

.app-shell:not(.is-home) .submit-page .submit-selected-section {
  top: calc(var(--submit-u) * 384) !important;
  height: calc(var(--submit-u) * 204) !important;
}

.app-shell:not(.is-home) .submit-page .submit-customer-section {
  top: calc(var(--submit-u) * 590) !important;
  height: calc(var(--submit-u) * 210) !important;
}

.app-shell:not(.is-home) .submit-page .submit-info-grid {
  height: calc(var(--submit-u) * 106) !important;
}

.app-shell:not(.is-home) .submit-page .submit-message {
  top: calc(var(--submit-u) * 146) !important;
}

.app-shell:not(.is-home) .submit-page .submit-actions {
  bottom: calc(var(--submit-u) * 7) !important;
}

/* Submit review v320: fully replace panels 2 and 3 without showing old content through. */
.app-shell:not(.is-home) .submit-page .submit-selected-section,
.app-shell:not(.is-home) .submit-page .submit-customer-section {
  z-index: 30 !important;
  background: #fff !important;
}

/* Submit review v321: keep confirmation-page numbers in the same UI type style. */
.app-shell:not(.is-home) .submit-page .submit-section-title::before,
.app-shell:not(.is-home) .submit-page .submit-selection-thumb span {
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", system-ui, sans-serif !important;
  font-weight: 800 !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: 0 !important;
}

/* Point switch v322: make 7-point image changes feel like a real soft transition. */
.app-shell:not(.is-home) .media-stage.is-point-switching .view-switch-snapshot {
  transition:
    opacity 460ms cubic-bezier(0.22, 0.72, 0.22, 1),
    filter 460ms cubic-bezier(0.22, 0.72, 0.22, 1) !important;
}

.app-shell:not(.is-home) .media-stage.is-point-switching .view-switch-snapshot.is-leaving {
  opacity: 0 !important;
  filter: brightness(1.08) saturate(1.02) !important;
}

.app-shell:not(.is-home) .media-stage.is-point-switching .scene-image.is-fade-entering,
.app-shell:not(.is-home) .media-stage.is-point-switching .preview-image.is-fade-entering,
.app-shell:not(.is-home) .media-stage.is-point-switching .image-overlay-stack img.is-fade-entering {
  animation: point-image-soft-enter 460ms cubic-bezier(0.22, 0.72, 0.22, 1) both !important;
}

@keyframes point-image-soft-enter {
  from {
    opacity: 0.12;
    filter: brightness(1.05) saturate(0.96);
  }

  to {
    opacity: 1;
    filter: none;
  }
}

/* Bird view v278: reuse the effect-view tab sizing and fade the whole stack together. */
.app-shell:not(.is-home) .bird-tabs {
  width: calc(var(--mini-u) * 130) !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.app-shell:not(.is-home) .bird-tab {
  font-size: calc(var(--mini-u) * 10.5) !important;
}

.app-shell:not(.is-home) .media-stage.scene-stage {
  transition:
    opacity 180ms ease-out,
    filter 180ms ease-out !important;
}

.app-shell:not(.is-home) .media-stage.scene-stage.is-bird-view-fading {
  opacity: 0 !important;
  filter: brightness(1.03) saturate(0.98) !important;
}

.app-shell:not(.is-home) .media-stage.scene-stage.is-bird-view-entering {
  animation: bird-view-stack-enter 240ms ease-out both !important;
}

@keyframes bird-view-stack-enter {
  from {
    opacity: 0;
    filter: brightness(1.03) saturate(0.98);
  }

  to {
    opacity: 1;
    filter: none;
  }
}

/* Submit success page v279: a screenshot-friendly reward page after lead submission. */
body.is-success-open {
  overflow: hidden !important;
}

.submit-success-screen {
  --success-u: var(--mini-u, min(calc(100vw / 375), calc(100dvh / 811)));
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: none;
  place-items: start center;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 17%, rgba(255, 235, 178, 0.86) 0, rgba(255, 235, 178, 0) calc(var(--success-u) * 168)),
    linear-gradient(180deg, #fff8ea 0%, #f7ead6 48%, #ead4b4 100%);
}

.submit-success-screen.is-open {
  display: grid;
}

.submit-success-page {
  position: relative;
  width: min(100vw, calc(var(--success-u) * 375));
  height: min(100dvh, calc(var(--success-u) * 811));
  min-height: calc(var(--success-u) * 640);
  overflow: hidden;
  color: #2a2118;
  isolation: isolate;
}

.submit-success-page::before,
.submit-success-page::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

.submit-success-page::before {
  inset: calc(var(--success-u) * 74) calc(var(--success-u) * 20) auto;
  height: calc(var(--success-u) * 430);
  border-radius: 50%;
  background:
    radial-gradient(circle, rgba(255, 255, 255, 0.76) 0 18%, rgba(255, 255, 255, 0) 56%),
    radial-gradient(circle, rgba(206, 156, 78, 0.2) 0, rgba(206, 156, 78, 0) 62%);
  filter: blur(calc(var(--success-u) * 0.2));
}

.submit-success-page::after {
  left: 50%;
  bottom: calc(var(--success-u) * -128);
  width: calc(var(--success-u) * 500);
  height: calc(var(--success-u) * 260);
  border-radius: 50%;
  background: rgba(132, 89, 43, 0.16);
  transform: translateX(-50%);
}

.success-rays {
  position: absolute;
  left: 50%;
  top: calc(var(--success-u) * -118);
  width: calc(var(--success-u) * 520);
  height: calc(var(--success-u) * 520);
  border-radius: 50%;
  opacity: 0.68;
  background:
    conic-gradient(
      from -18deg,
      rgba(205, 151, 62, 0) 0deg,
      rgba(205, 151, 62, 0.22) 9deg,
      rgba(205, 151, 62, 0) 18deg,
      rgba(205, 151, 62, 0) 36deg
    );
  transform: translateX(-50%);
  animation: success-rays-spin 13s linear infinite;
}

.success-confetti {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.success-confetti i {
  position: absolute;
  top: calc(var(--success-u) * -18);
  width: calc(var(--success-u) * 5);
  height: calc(var(--success-u) * 12);
  border-radius: calc(var(--success-u) * 2);
  background: #c99a57;
  opacity: 0;
  transform: translate3d(0, 0, 0) rotate(0deg);
}

.success-confetti i:nth-child(3n) {
  background: #fff2ca;
}

.success-confetti i:nth-child(3n + 1) {
  background: #9d6737;
}

.submit-success-screen.is-replaying .success-confetti i {
  animation: success-confetti-fall 1180ms cubic-bezier(0.16, 0.82, 0.34, 1) both;
}

.success-confetti i:nth-child(1) { left: 7%; animation-delay: 0ms; }
.success-confetti i:nth-child(2) { left: 13%; animation-delay: 78ms; }
.success-confetti i:nth-child(3) { left: 21%; animation-delay: 18ms; }
.success-confetti i:nth-child(4) { left: 29%; animation-delay: 132ms; }
.success-confetti i:nth-child(5) { left: 37%; animation-delay: 46ms; }
.success-confetti i:nth-child(6) { left: 45%; animation-delay: 156ms; }
.success-confetti i:nth-child(7) { left: 54%; animation-delay: 24ms; }
.success-confetti i:nth-child(8) { left: 61%; animation-delay: 116ms; }
.success-confetti i:nth-child(9) { left: 68%; animation-delay: 66ms; }
.success-confetti i:nth-child(10) { left: 75%; animation-delay: 144ms; }
.success-confetti i:nth-child(11) { left: 82%; animation-delay: 30ms; }
.success-confetti i:nth-child(12) { left: 90%; animation-delay: 108ms; }
.success-confetti i:nth-child(13) { left: 17%; animation-delay: 210ms; }
.success-confetti i:nth-child(14) { left: 42%; animation-delay: 238ms; }
.success-confetti i:nth-child(15) { left: 72%; animation-delay: 190ms; }
.success-confetti i:nth-child(16) { left: 86%; animation-delay: 254ms; }

.success-topline {
  position: absolute;
  left: calc(var(--success-u) * 18);
  right: calc(var(--success-u) * 18);
  top: calc(var(--success-u) * 18);
  height: calc(var(--success-u) * 32);
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: rgba(49, 37, 26, 0.66);
  font-size: calc(var(--success-u) * 11);
  font-weight: 800;
  letter-spacing: calc(var(--success-u) * 1.8);
}

.success-topline span {
  padding: calc(var(--success-u) * 7) calc(var(--success-u) * 12);
  border-radius: calc(var(--success-u) * 999);
  background: rgba(255, 255, 255, 0.54);
  box-shadow: inset 0 0 0 1px rgba(192, 143, 76, 0.18);
}

.success-topline strong {
  color: #7a4e23;
  font-size: calc(var(--success-u) * 14);
  font-weight: 950;
  letter-spacing: 0;
}

.success-medal {
  position: absolute;
  left: 50%;
  top: calc(var(--success-u) * 72);
  width: calc(var(--success-u) * 166);
  height: calc(var(--success-u) * 166);
  display: grid;
  place-items: center;
  transform: translateX(-50%);
}

.submit-success-screen.is-replaying .success-medal {
  animation: success-medal-pop 640ms cubic-bezier(0.18, 1.45, 0.26, 1) both;
}

.success-medal-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background:
    linear-gradient(135deg, #fff4c5, #d5a35a 35%, #8d5528 64%, #ffefbd);
  box-shadow:
    0 calc(var(--success-u) * 18) calc(var(--success-u) * 38) rgba(122, 78, 35, 0.23),
    inset 0 calc(var(--success-u) * 3) calc(var(--success-u) * 8) rgba(255, 255, 255, 0.78);
}

.success-medal-ring::before {
  content: "";
  position: absolute;
  inset: calc(var(--success-u) * 11);
  border-radius: 50%;
  background:
    radial-gradient(circle at 35% 22%, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0) 33%),
    linear-gradient(145deg, #f0c877, #a66d32);
  box-shadow: inset 0 0 0 calc(var(--success-u) * 1) rgba(90, 52, 20, 0.18);
}

.success-medal-core {
  position: relative;
  width: calc(var(--success-u) * 104);
  height: calc(var(--success-u) * 104);
  display: grid;
  place-items: center;
  align-content: center;
  gap: calc(var(--success-u) * 3);
  border-radius: 50%;
  color: #fff8df;
  background: rgba(75, 43, 19, 0.13);
}

.success-medal-core span {
  font-size: calc(var(--success-u) * 10);
  font-weight: 950;
  letter-spacing: calc(var(--success-u) * 2);
}

.success-medal-core strong {
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: calc(var(--success-u) * 34);
  font-weight: 900;
  line-height: 0.9;
  text-shadow: 0 calc(var(--success-u) * 2) calc(var(--success-u) * 6) rgba(83, 48, 18, 0.32);
}

.success-hero-copy {
  position: absolute;
  left: calc(var(--success-u) * 24);
  right: calc(var(--success-u) * 24);
  top: calc(var(--success-u) * 244);
  text-align: center;
}

.success-hero-copy p {
  margin: 0 0 calc(var(--success-u) * 8);
  color: rgba(106, 72, 36, 0.54);
  font-size: calc(var(--success-u) * 8);
  font-weight: 900;
  letter-spacing: calc(var(--success-u) * 2.6);
}

.success-hero-copy h2 {
  margin: 0;
  color: #261b12;
  font-size: calc(var(--success-u) * 28);
  font-weight: 950;
  letter-spacing: calc(var(--success-u) * -0.8);
  line-height: 1.12;
}

.success-hero-copy em {
  display: block;
  margin-top: calc(var(--success-u) * 10);
  color: #8a5a2e;
  font-size: calc(var(--success-u) * 13);
  font-style: normal;
  font-weight: 850;
  line-height: 1.45;
}

.success-prize-card,
.success-store-guide {
  position: absolute;
  left: calc(var(--success-u) * 18);
  right: calc(var(--success-u) * 18);
  overflow: hidden;
  border-radius: calc(var(--success-u) * 18);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(255, 248, 231, 0.88)),
    radial-gradient(circle at 8% 0%, rgba(204, 152, 78, 0.16), rgba(204, 152, 78, 0) 36%);
  box-shadow:
    0 calc(var(--success-u) * 12) calc(var(--success-u) * 34) rgba(90, 61, 33, 0.12),
    inset 0 0 0 calc(var(--success-u) * 1) rgba(255, 255, 255, 0.86);
}

.success-prize-card {
  top: calc(var(--success-u) * 376);
  min-height: calc(var(--success-u) * 118);
  padding: calc(var(--success-u) * 17) calc(var(--success-u) * 18);
}

.success-prize-card::after {
  content: "";
  position: absolute;
  right: calc(var(--success-u) * -32);
  top: calc(var(--success-u) * -34);
  width: calc(var(--success-u) * 118);
  height: calc(var(--success-u) * 118);
  border-radius: 50%;
  background: rgba(194, 139, 65, 0.1);
}

.success-prize-card span,
.success-store-guide strong,
.success-summary-grid span {
  color: rgba(104, 75, 43, 0.62);
  font-size: calc(var(--success-u) * 10);
  font-weight: 850;
  letter-spacing: calc(var(--success-u) * 1);
}

.success-prize-card strong {
  position: relative;
  display: block;
  margin-top: calc(var(--success-u) * 8);
  max-width: calc(var(--success-u) * 286);
  color: #2d2116;
  font-size: calc(var(--success-u) * 17);
  font-weight: 950;
  line-height: 1.4;
}

.success-prize-card em {
  position: relative;
  display: block;
  margin-top: calc(var(--success-u) * 8);
  color: rgba(55, 42, 31, 0.56);
  font-size: calc(var(--success-u) * 11);
  font-style: normal;
  font-weight: 650;
  line-height: 1.5;
}

.success-summary-grid {
  position: absolute;
  left: calc(var(--success-u) * 18);
  right: calc(var(--success-u) * 18);
  top: calc(var(--success-u) * 512);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(var(--success-u) * 10);
}

.success-summary-grid > div {
  min-height: calc(var(--success-u) * 74);
  padding: calc(var(--success-u) * 13) calc(var(--success-u) * 14);
  border-radius: calc(var(--success-u) * 14);
  background: rgba(255, 255, 255, 0.64);
  box-shadow: inset 0 0 0 calc(var(--success-u) * 1) rgba(189, 140, 76, 0.14);
}

.success-summary-grid strong {
  display: inline-block;
  margin-top: calc(var(--success-u) * 8);
  color: #7b4d23;
  font-size: calc(var(--success-u) * 22);
  font-weight: 950;
  line-height: 1;
}

.success-summary-grid em {
  margin-left: calc(var(--success-u) * 3);
  color: rgba(59, 44, 31, 0.52);
  font-size: calc(var(--success-u) * 10);
  font-style: normal;
  font-weight: 750;
}

.success-store-guide {
  top: calc(var(--success-u) * 604);
  padding: calc(var(--success-u) * 15) calc(var(--success-u) * 17);
}

.success-store-guide p {
  margin: calc(var(--success-u) * 7) 0 0;
  color: rgba(46, 36, 27, 0.66);
  font-size: calc(var(--success-u) * 11);
  font-weight: 650;
  line-height: 1.55;
}

.success-actions {
  position: absolute;
  left: calc(var(--success-u) * 18);
  right: calc(var(--success-u) * 18);
  bottom: max(calc(var(--success-u) * 18), env(safe-area-inset-bottom));
  display: grid;
  grid-template-columns: 0.88fr 1.12fr;
  gap: calc(var(--success-u) * 10);
}

.success-secondary,
.success-primary {
  height: calc(var(--success-u) * 46);
  border: 0;
  border-radius: calc(var(--success-u) * 999);
  font-size: calc(var(--success-u) * 13);
  font-weight: 950;
  letter-spacing: calc(var(--success-u) * 0.8);
  cursor: pointer;
  touch-action: manipulation;
  transition:
    transform 160ms ease,
    opacity 160ms ease,
    filter 160ms ease;
}

.success-secondary:active,
.success-primary:active {
  transform: scale(0.98);
}

.success-secondary {
  color: #6c4826;
  background: rgba(255, 255, 255, 0.68);
  box-shadow: inset 0 0 0 calc(var(--success-u) * 1) rgba(167, 117, 54, 0.2);
}

.success-primary {
  color: #fff9e8;
  background: linear-gradient(135deg, #a96c32, #d3a25a 52%, #8c5729);
  box-shadow: 0 calc(var(--success-u) * 10) calc(var(--success-u) * 20) rgba(122, 78, 35, 0.28);
}

@keyframes success-rays-spin {
  to {
    transform: translateX(-50%) rotate(360deg);
  }
}

@keyframes success-medal-pop {
  0% {
    opacity: 0;
    transform: translateX(-50%) translateY(calc(var(--success-u) * 18)) scale(0.66);
  }

  68% {
    opacity: 1;
    transform: translateX(-50%) translateY(0) scale(1.06);
  }

  100% {
    opacity: 1;
    transform: translateX(-50%) translateY(0) scale(1);
  }
}

@keyframes success-confetti-fall {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0) rotate(0deg);
  }

  14% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: translate3d(calc(var(--success-u) * 18), calc(var(--success-u) * 260), 0) rotate(280deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .success-rays,
  .submit-success-screen.is-replaying .success-medal,
  .submit-success-screen.is-replaying .success-confetti i {
    animation: none !important;
  }
}

/* Submit success page v280: match the provided golden reward-page reference. */
.submit-success-screen {
  --success-u: min(calc(100vw / 375), 1px) !important;
  --success-gold: #d9a14c;
  --success-gold-deep: #8b5b2b;
  --success-brown: #4b3320;
  --success-card: rgba(255, 255, 255, 0.92);
  position: fixed !important;
  inset: 0 !important;
  z-index: 1200 !important;
  display: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at 50% calc(var(--success-u) * 186), rgba(255, 255, 255, 0.92) 0, rgba(255, 255, 255, 0.48) calc(var(--success-u) * 112), rgba(255, 255, 255, 0) calc(var(--success-u) * 194)),
    radial-gradient(circle at 50% calc(var(--success-u) * 286), rgba(219, 156, 64, 0.23) 0, rgba(219, 156, 64, 0) calc(var(--success-u) * 260)),
    linear-gradient(180deg, #fff0d2 0%, #fff9ea 38%, #fff 100%) !important;
  color: var(--success-brown) !important;
  -webkit-overflow-scrolling: touch !important;
}

.submit-success-screen.is-open {
  display: block !important;
}

.submit-success-page {
  position: relative !important;
  width: min(100vw, calc(var(--success-u) * 375)) !important;
  height: auto !important;
  min-height: calc(var(--success-u) * 1026) !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 0 calc(var(--success-u) * 20) calc(var(--success-u) * 112) !important;
  overflow: hidden !important;
  isolation: isolate !important;
  box-sizing: border-box !important;
}

.submit-success-page::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: calc(var(--success-u) * 32) !important;
  z-index: -1 !important;
  width: calc(var(--success-u) * 386) !important;
  height: calc(var(--success-u) * 386) !important;
  border: calc(var(--success-u) * 2) solid rgba(255, 255, 255, 0.86) !important;
  border-radius: 50% !important;
  box-shadow:
    0 0 calc(var(--success-u) * 24) rgba(255, 255, 255, 0.9),
    inset 0 0 calc(var(--success-u) * 22) rgba(232, 174, 84, 0.22) !important;
  transform: translateX(-50%) !important;
}

.submit-success-page::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: calc(var(--success-u) * 14) !important;
  z-index: -2 !important;
  width: calc(var(--success-u) * 520) !important;
  height: calc(var(--success-u) * 460) !important;
  background:
    conic-gradient(
      from -16deg,
      rgba(198, 134, 49, 0) 0deg,
      rgba(198, 134, 49, 0.12) 8deg,
      rgba(198, 134, 49, 0) 16deg,
      rgba(198, 134, 49, 0) 38deg
    ) !important;
  opacity: 0.58 !important;
  transform: translateX(-50%) !important;
  animation: success-rays-spin 18s linear infinite !important;
}

.success-glow {
  position: absolute !important;
  left: 50% !important;
  top: calc(var(--success-u) * 114) !important;
  z-index: -1 !important;
  width: calc(var(--success-u) * 340) !important;
  height: calc(var(--success-u) * 300) !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.88), rgba(255, 231, 174, 0.42) 50%, rgba(255, 231, 174, 0) 72%) !important;
  transform: translateX(-50%) !important;
}

.success-orbit {
  position: absolute !important;
  left: 50% !important;
  top: calc(var(--success-u) * 58) !important;
  z-index: 0 !important;
  width: calc(var(--success-u) * 300) !important;
  height: calc(var(--success-u) * 160) !important;
  border-top: calc(var(--success-u) * 2) solid rgba(255, 255, 255, 0.78) !important;
  border-radius: 50% !important;
  transform: translateX(-50%) rotate(-8deg) !important;
  pointer-events: none !important;
}

.success-nav {
  position: sticky !important;
  top: 0 !important;
  z-index: 20 !important;
  height: calc(var(--success-u) * 54) !important;
  margin: 0 calc(var(--success-u) * -20) !important;
  padding: 0 calc(var(--success-u) * 20) !important;
  display: grid !important;
  grid-template-columns: calc(var(--success-u) * 44) minmax(0, 1fr) calc(var(--success-u) * 44) !important;
  align-items: center !important;
  background: linear-gradient(180deg, rgba(255, 238, 203, 0.96), rgba(255, 238, 203, 0.08)) !important;
  backdrop-filter: blur(calc(var(--success-u) * 3)) !important;
  -webkit-backdrop-filter: blur(calc(var(--success-u) * 3)) !important;
}

.success-nav h2 {
  margin: 0 !important;
  color: #1f1a15 !important;
  font-size: calc(var(--success-u) * 20) !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-align: center !important;
  letter-spacing: calc(var(--success-u) * 1.8) !important;
}

.success-nav-button {
  width: calc(var(--success-u) * 44) !important;
  height: calc(var(--success-u) * 44) !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  background: transparent !important;
  color: #16120e !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}

.success-home-button {
  color: #a06b31 !important;
}

.success-nav-button svg {
  width: calc(var(--success-u) * 26) !important;
  height: calc(var(--success-u) * 26) !important;
  display: block !important;
}

.success-confetti {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.success-confetti i {
  position: absolute !important;
  top: calc(var(--success-u) * 26) !important;
  width: calc(var(--success-u) * 7) !important;
  height: calc(var(--success-u) * 18) !important;
  border-radius: calc(var(--success-u) * 2) !important;
  background: linear-gradient(180deg, #f8d48e, #b97930) !important;
  opacity: 0 !important;
}

.submit-success-screen.is-replaying .success-confetti i {
  animation: success-confetti-fall 1560ms cubic-bezier(0.16, 0.82, 0.34, 1) both !important;
}

.success-hero {
  position: relative !important;
  z-index: 2 !important;
  min-height: calc(var(--success-u) * 380) !important;
  padding-top: calc(var(--success-u) * 56) !important;
  text-align: center !important;
}

.success-hero h1 {
  margin: 0 !important;
  color: transparent !important;
  background: linear-gradient(180deg, #c4944e 0%, #8f5c2b 58%, #d9ac65 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  font-size: calc(var(--success-u) * 52) !important;
  font-weight: 950 !important;
  line-height: 0.96 !important;
  letter-spacing: calc(var(--success-u) * 1.5) !important;
  text-shadow: 0 calc(var(--success-u) * 8) calc(var(--success-u) * 18) rgba(128, 79, 31, 0.18) !important;
}

.success-hero p {
  margin: calc(var(--success-u) * 16) 0 0 !important;
  color: #5a3c22 !important;
  font-size: calc(var(--success-u) * 19) !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.success-ribbon {
  position: relative !important;
  width: calc(var(--success-u) * 196) !important;
  height: calc(var(--success-u) * 35) !important;
  margin: calc(var(--success-u) * 15) auto 0 !important;
  display: grid !important;
  place-items: center !important;
  color: #fff !important;
  background: linear-gradient(90deg, #8e5b28, #d39b4d 50%, #8e5b28) !important;
  clip-path: polygon(0 0, 10% 50%, 0 100%, 100% 100%, 90% 50%, 100% 0) !important;
  box-shadow: 0 calc(var(--success-u) * 8) calc(var(--success-u) * 16) rgba(138, 83, 30, 0.24) !important;
}

.success-ribbon span {
  font-size: calc(var(--success-u) * 16) !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  letter-spacing: calc(var(--success-u) * 0.8) !important;
}

.success-ribbon span::before,
.success-ribbon span::after {
  content: "★" !important;
  margin: 0 calc(var(--success-u) * 10) !important;
  color: rgba(255, 246, 218, 0.9) !important;
  font-size: calc(var(--success-u) * 11) !important;
}

.success-gift {
  position: relative !important;
  width: calc(var(--success-u) * 260) !important;
  height: calc(var(--success-u) * 168) !important;
  margin: calc(var(--success-u) * 24) auto 0 !important;
  transform: translateZ(0) !important;
}

.submit-success-screen.is-replaying .success-gift {
  animation: success-gift-in 620ms cubic-bezier(0.18, 1.3, 0.28, 1) both !important;
}

.success-gift-box {
  position: absolute !important;
  left: 50% !important;
  bottom: 0 !important;
  width: calc(var(--success-u) * 218) !important;
  height: calc(var(--success-u) * 86) !important;
  border-radius: calc(var(--success-u) * 13) calc(var(--success-u) * 13) calc(var(--success-u) * 18) calc(var(--success-u) * 18) !important;
  background:
    linear-gradient(90deg, #fffaf0 0 39%, #dca34d 39% 57%, #fff6e4 57% 100%) !important;
  box-shadow:
    0 calc(var(--success-u) * 16) calc(var(--success-u) * 30) rgba(140, 91, 43, 0.22),
    inset 0 calc(var(--success-u) * -8) calc(var(--success-u) * 18) rgba(176, 112, 38, 0.1) !important;
  transform: translateX(-50%) perspective(calc(var(--success-u) * 280)) rotateX(2deg) !important;
}

.success-gift-lid {
  position: absolute !important;
  right: calc(var(--success-u) * 20) !important;
  top: calc(var(--success-u) * 34) !important;
  z-index: 2 !important;
  width: calc(var(--success-u) * 112) !important;
  height: calc(var(--success-u) * 62) !important;
  border-radius: calc(var(--success-u) * 12) !important;
  background: linear-gradient(135deg, #fff8e8, #e8b35c 66%, #ae6b27) !important;
  box-shadow:
    0 calc(var(--success-u) * 10) calc(var(--success-u) * 22) rgba(133, 80, 28, 0.22),
    inset 0 calc(var(--success-u) * 1) calc(var(--success-u) * 8) rgba(255, 255, 255, 0.66) !important;
  transform: rotate(-10deg) skewX(-6deg) !important;
}

.success-gift-ticket {
  position: absolute !important;
  left: calc(var(--success-u) * 37) !important;
  top: calc(var(--success-u) * 12) !important;
  z-index: 4 !important;
  width: calc(var(--success-u) * 188) !important;
  height: calc(var(--success-u) * 92) !important;
  padding-top: calc(var(--success-u) * 21) !important;
  border-radius: calc(var(--success-u) * 12) !important;
  background:
    linear-gradient(135deg, rgba(255, 250, 232, 0.96), rgba(255, 225, 152, 0.86)),
    radial-gradient(circle at 14% 18%, rgba(255, 255, 255, 0.88), rgba(255, 255, 255, 0) 32%) !important;
  box-shadow:
    0 calc(var(--success-u) * 10) calc(var(--success-u) * 18) rgba(138, 83, 30, 0.18),
    inset 0 0 0 calc(var(--success-u) * 1) rgba(187, 124, 45, 0.18) !important;
  transform: rotate(8deg) !important;
}

.success-gift-ticket::before {
  content: "♕" !important;
  position: absolute !important;
  left: 50% !important;
  top: calc(var(--success-u) * 6) !important;
  color: #c89349 !important;
  font-size: calc(var(--success-u) * 16) !important;
  transform: translateX(-50%) !important;
}

.success-gift-ticket span,
.success-gift-ticket em {
  display: block !important;
  color: #96622d !important;
  font-style: normal !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

.success-gift-ticket span {
  font-size: calc(var(--success-u) * 21) !important;
  font-weight: 950 !important;
}

.success-gift-ticket em {
  margin-top: calc(var(--success-u) * 8) !important;
  font-size: calc(var(--success-u) * 14) !important;
  font-weight: 850 !important;
}

.success-gift-ribbon {
  position: absolute !important;
  left: calc(var(--success-u) * -10) !important;
  bottom: calc(var(--success-u) * 38) !important;
  width: calc(var(--success-u) * 88) !important;
  height: calc(var(--success-u) * 116) !important;
  border-left: calc(var(--success-u) * 16) solid rgba(177, 110, 39, 0.56) !important;
  border-radius: 50% 0 0 50% !important;
  filter: blur(calc(var(--success-u) * 0.2)) !important;
  transform: rotate(-26deg) !important;
}

.success-card {
  position: relative !important;
  z-index: 5 !important;
  width: 100% !important;
  margin: 0 auto calc(var(--success-u) * 14) !important;
  border-radius: calc(var(--success-u) * 14) !important;
  background: var(--success-card) !important;
  box-shadow:
    0 calc(var(--success-u) * 8) calc(var(--success-u) * 22) rgba(110, 75, 40, 0.12),
    inset 0 0 0 calc(var(--success-u) * 1) rgba(255, 255, 255, 0.86) !important;
  box-sizing: border-box !important;
}

.success-benefits {
  margin-top: calc(var(--success-u) * -18) !important;
  padding: calc(var(--success-u) * 20) calc(var(--success-u) * 12) calc(var(--success-u) * 16) !important;
}

.success-card-title {
  height: calc(var(--success-u) * 22) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: calc(var(--success-u) * 12) !important;
  color: #684322 !important;
  font-size: calc(var(--success-u) * 18) !important;
  font-weight: 950 !important;
}

.success-card-title span {
  width: calc(var(--success-u) * 18) !important;
  height: calc(var(--success-u) * 18) !important;
  background:
    radial-gradient(circle at 50% 50%, #d8a24e 0 calc(var(--success-u) * 2), transparent calc(var(--success-u) * 3)),
    conic-gradient(from 90deg, transparent 0 45deg, rgba(216, 162, 78, 0.72) 45deg 88deg, transparent 88deg) !important;
  border-radius: 50% !important;
}

.success-benefit-grid {
  margin-top: calc(var(--success-u) * 18) !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.success-benefit-grid article {
  min-width: 0 !important;
  padding: 0 calc(var(--success-u) * 5) !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: calc(var(--success-u) * 7) !important;
  border-right: calc(var(--success-u) * 1) solid rgba(202, 164, 104, 0.22) !important;
  text-align: center !important;
}

.success-benefit-grid article:last-child {
  border-right: 0 !important;
}

.success-benefit-icon {
  width: calc(var(--success-u) * 38) !important;
  height: calc(var(--success-u) * 38) !important;
  display: grid !important;
  place-items: center !important;
  color: #d49a49 !important;
}

.success-benefit-icon svg {
  width: 100% !important;
  height: 100% !important;
}

.success-benefit-icon svg * {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 3.2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.success-icon-vip svg rect {
  fill: currentColor !important;
  stroke: none !important;
}

.success-icon-vip svg path {
  stroke: #fff8df !important;
  stroke-width: 2.5 !important;
}

.success-benefit-grid strong,
.success-benefit-grid em {
  display: block !important;
  min-width: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  line-height: 1.2 !important;
}

.success-benefit-grid strong {
  color: #644323 !important;
  font-size: calc(var(--success-u) * 12) !important;
  font-weight: 950 !important;
}

.success-benefit-grid em {
  color: rgba(100, 67, 35, 0.62) !important;
  font-size: calc(var(--success-u) * 10) !important;
  font-style: normal !important;
  font-weight: 750 !important;
}

.success-claim {
  padding: calc(var(--success-u) * 18) calc(var(--success-u) * 14) calc(var(--success-u) * 16) !important;
  border: calc(var(--success-u) * 1.2) solid rgba(221, 170, 88, 0.5) !important;
  background: linear-gradient(180deg, rgba(255, 250, 236, 0.96), rgba(255, 255, 255, 0.94)) !important;
}

.success-section-heading {
  text-align: center !important;
}

.success-section-heading strong {
  display: block !important;
  color: #4c3320 !important;
  font-size: calc(var(--success-u) * 21) !important;
  font-weight: 950 !important;
  line-height: 1.15 !important;
}

.success-section-heading p {
  margin: calc(var(--success-u) * 9) 0 0 !important;
  color: rgba(92, 61, 34, 0.72) !important;
  font-size: calc(var(--success-u) * 13) !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

.success-claim-content {
  margin-top: calc(var(--success-u) * 16) !important;
  padding: calc(var(--success-u) * 12) !important;
  display: grid !important;
  grid-template-columns: calc(var(--success-u) * 150) minmax(0, 1fr) !important;
  gap: calc(var(--success-u) * 14) !important;
  align-items: center !important;
  border-radius: calc(var(--success-u) * 12) !important;
  background: rgba(255, 255, 255, 0.8) !important;
  box-shadow: inset 0 0 0 calc(var(--success-u) * 1) rgba(219, 171, 96, 0.2) !important;
}

.success-guide-book {
  position: relative !important;
  height: calc(var(--success-u) * 82) !important;
  border-radius: calc(var(--success-u) * 9) !important;
  background: #f1dfc7 !important;
  overflow: hidden !important;
  box-shadow: calc(var(--success-u) * 10) calc(var(--success-u) * 8) calc(var(--success-u) * 14) rgba(116, 72, 30, 0.12) !important;
}

.success-guide-book::before {
  content: "" !important;
  position: absolute !important;
  left: calc(var(--success-u) * 12) !important;
  top: 0 !important;
  z-index: 2 !important;
  width: calc(var(--success-u) * 22) !important;
  height: 100% !important;
  background: linear-gradient(90deg, rgba(92, 62, 35, 0.12), rgba(255, 255, 255, 0.18)) !important;
}

.success-guide-book img,
.success-room-grid img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}

.success-claim-content ol {
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: calc(var(--success-u) * 8) !important;
  list-style: none !important;
}

.success-claim-content li {
  display: grid !important;
  grid-template-columns: calc(var(--success-u) * 24) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: calc(var(--success-u) * 8) !important;
}

.success-claim-content li span {
  width: calc(var(--success-u) * 24) !important;
  height: calc(var(--success-u) * 24) !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: linear-gradient(180deg, #e2af5b, #c88735) !important;
  font-size: calc(var(--success-u) * 13) !important;
  font-weight: 950 !important;
}

.success-claim-content li strong {
  min-width: 0 !important;
  color: #5c3c21 !important;
  font-size: calc(var(--success-u) * 13) !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.success-claim > em {
  display: block !important;
  margin-top: calc(var(--success-u) * 7) !important;
  color: rgba(103, 70, 40, 0.52) !important;
  font-size: calc(var(--success-u) * 10) !important;
  font-style: normal !important;
  font-weight: 650 !important;
  text-align: center !important;
}

.success-experience {
  padding: calc(var(--success-u) * 18) calc(var(--success-u) * 12) calc(var(--success-u) * 16) !important;
}

.success-room-grid {
  margin-top: calc(var(--success-u) * 18) !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: calc(var(--success-u) * 7) !important;
}

.success-room-grid img {
  aspect-ratio: 1.62 / 1 !important;
  border-radius: calc(var(--success-u) * 6) !important;
  background: #ead8c0 !important;
  box-shadow: 0 calc(var(--success-u) * 4) calc(var(--success-u) * 12) rgba(83, 57, 31, 0.12) !important;
}

.success-feature-row {
  margin-top: calc(var(--success-u) * 13) !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: calc(var(--success-u) * 4) !important;
}

.success-feature-row span {
  min-width: 0 !important;
  color: #704b28 !important;
  font-size: calc(var(--success-u) * 11) !important;
  font-weight: 900 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.success-feature-row span::before {
  content: "✓" !important;
  width: calc(var(--success-u) * 15) !important;
  height: calc(var(--success-u) * 15) !important;
  margin-right: calc(var(--success-u) * 4) !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: #dba24d !important;
  font-size: calc(var(--success-u) * 10) !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.success-actions {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 40 !important;
  width: 100% !important;
  margin-top: calc(var(--success-u) * 18) !important;
  padding:
    0
    calc(var(--success-u) * 2)
    0 !important;
  display: grid !important;
  grid-template-columns: 0.88fr 1.12fr !important;
  gap: calc(var(--success-u) * 11) !important;
  background: transparent !important;
  box-sizing: border-box !important;
  transform: none !important;
}

.success-secondary,
.success-primary {
  height: calc(var(--success-u) * 48) !important;
  min-height: calc(var(--success-u) * 48) !important;
  border-radius: calc(var(--success-u) * 999) !important;
  font-size: calc(var(--success-u) * 16) !important;
  font-weight: 950 !important;
  letter-spacing: calc(var(--success-u) * 1) !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}

.success-secondary {
  color: #6b421f !important;
  border: calc(var(--success-u) * 1.2) solid rgba(217, 161, 76, 0.64) !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: none !important;
}

.success-primary {
  color: #fffaf0 !important;
  border: 0 !important;
  background: linear-gradient(180deg, #e4b762, #cf9442) !important;
  box-shadow: 0 calc(var(--success-u) * 7) calc(var(--success-u) * 16) rgba(184, 116, 37, 0.28) !important;
}

.success-primary::before {
  content: "⌖" !important;
  margin-right: calc(var(--success-u) * 6) !important;
  font-size: calc(var(--success-u) * 16) !important;
}

.success-footer {
  margin: calc(var(--success-u) * 18) 0 0 !important;
  color: rgba(108, 70, 36, 0.58) !important;
  font-size: calc(var(--success-u) * 12) !important;
  font-weight: 800 !important;
  text-align: center !important;
}

@keyframes success-gift-in {
  0% {
    opacity: 0;
    transform: translateY(calc(var(--success-u) * 20)) scale(0.86);
  }

  72% {
    opacity: 1;
    transform: translateY(0) scale(1.03);
  }

  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

