/* Mono Champaca development profile */
.development-page {
  --development-night: #171715;
  --development-paper: #f4f0e7;
  --development-accent: #c7aa73;
  --development-accent-soft: #e7dac0;
  overflow: hidden;
  background: var(--development-paper);
}
.development-hero { display: grid; min-height: min(860px, 92vh); grid-template-columns: minmax(0, 1.18fr) minmax(390px, .82fr); background: var(--development-night); color: #fff; }
.development-hero-media { position: relative; min-height: 680px; margin: 0; overflow: hidden; }
.development-hero-media::after { position: absolute; inset: 0; background: linear-gradient(90deg, transparent 55%, rgba(23,23,21,.56)); content: ""; pointer-events: none; }
.development-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.development-hero-media figcaption { position: absolute; z-index: 1; left: 24px; bottom: 20px; padding: 7px 10px; background: rgba(8,14,15,.68); color: rgba(255,255,255,.82); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.development-hero-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(36px, 5.5vw, 92px); }
.development-hero-copy .section-back { align-self: flex-start; margin-bottom: clamp(60px, 10vh, 120px); color: rgba(255,255,255,.72); }
.development-hero-copy .eyebrow { color: var(--development-accent-soft); }
.development-hero-copy { min-width: 0; }
.development-hero-copy h1 { max-width: 8ch; margin: 14px 0 24px; font-size: clamp(66px, 7.2vw, 122px); line-height: .92; letter-spacing: -.015em; text-wrap: balance; }
.development-standfirst { max-width: 36ch; color: rgba(255,255,255,.8); font-size: clamp(17px, 1.4vw, 22px); line-height: 1.55; }
.development-price-line { display: grid; gap: 6px; margin: 30px 0 24px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.2); }
.development-price-line strong { font-size: 26px; }
.development-price-line span { max-width: 48ch; color: rgba(255,255,255,.62); font-size: 11px; line-height: 1.55; }
.development-hero-copy .btn { align-self: flex-start; border: 1px solid var(--development-accent); background: var(--development-accent); color: #111; }
.development-hero-copy .btn:hover, .development-hero-copy .btn:focus-visible { background: #fff; border-color: #fff; }
.development-jump { position: sticky; z-index: 4; top: 0; display: flex; justify-content: center; gap: 0; overflow-x: auto; border-bottom: 1px solid #c8c5bd; background: rgba(241,238,231,.95); backdrop-filter: blur(12px); scrollbar-width: none; }
.development-jump::-webkit-scrollbar { display: none; }
.development-jump a { flex: 0 0 auto; padding: 17px 21px; border-right: 1px solid #d9d6cf; color: #403c35; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.development-intro { display: grid; grid-template-columns: minmax(0,.9fr) minmax(360px,1.1fr); gap: clamp(48px, 8vw, 130px); padding-top: clamp(78px, 10vw, 150px); padding-bottom: clamp(64px, 9vw, 130px); }
.development-intro h2, .development-section-head h2 { margin-top: 12px; font-size: clamp(54px, 7vw, 108px); line-height: .94; letter-spacing: -.005em; text-wrap: balance; }
.development-prose > p { margin-bottom: 20px; color: #3f3b34; font-size: clamp(16px, 1.35vw, 20px); line-height: 1.72; }
.development-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-bottom: clamp(76px, 10vw, 140px); padding: 1px; gap: 1px; background: #c8c5bd; }
.development-facts article { display: grid; min-height: 170px; align-content: space-between; gap: 12px; padding: 24px; background: #fff; }
.development-facts span, .development-cost-grid span { color: var(--ink-soft); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.development-facts strong { font-family: var(--display); font-size: clamp(34px, 3.5vw, 54px); font-weight: 400; line-height: .9; text-transform: uppercase; }
.development-facts small { color: var(--ink-soft); line-height: 1.45; }
.development-section { padding-top: clamp(72px, 9vw, 130px); padding-bottom: clamp(72px, 9vw, 130px); }
.development-section-head { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr); gap: clamp(40px, 8vw, 120px); align-items: end; margin-bottom: clamp(38px, 5vw, 72px); }
.development-section-head > p { max-width: 54ch; color: var(--ink-soft); line-height: 1.65; }
.development-type-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; padding: 1px; background: var(--development-night); }
.development-type-grid article { display: flex; min-height: 430px; flex-direction: column; padding: clamp(24px,3.2vw,48px); background: #fff; }
.development-type-index { color: #8c9492; font: 18px var(--display); }
.development-type-grid h3 { margin: 72px 0 18px; font-family: var(--display); font-size: clamp(36px,3.3vw,52px); font-weight: 400; line-height: .9; text-transform: uppercase; }
.development-type-grid p { color: var(--ink-soft); line-height: 1.6; }
.development-type-grid strong { margin-top: auto; padding-top: 30px; font-size: 21px; }
.development-type-grid small { margin-top: 7px; color: var(--ink-soft); line-height: 1.45; }
.development-gallery { padding: clamp(80px,10vw,150px) 0 0; background: var(--development-night); color: #fff; }
.development-section-head--light > p { color: rgba(255,255,255,.66); }
.development-section-head--light .eyebrow { color: var(--development-accent-soft); }
.development-gallery-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2px; }
.development-gallery-grid figure { position: relative; min-height: 420px; margin: 0; overflow: hidden; background: #0e0e0d; }
.development-gallery-grid .development-gallery-wide { grid-column: 1/-1; min-height: min(760px,76vw); }
.development-gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.development-gallery-grid figure:hover img { transform: scale(1.015); }
.development-gallery-grid figcaption { position: absolute; left: 18px; bottom: 18px; padding: 7px 10px; background: rgba(8,14,15,.7); color: rgba(255,255,255,.8); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.development-plan-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.development-plan-grid a { display: grid; grid-template-rows: minmax(360px,58vh) auto; border: 1px solid var(--line); background: #fff; }
.development-plan-grid img { width: 100%; height: 100%; padding: 18px; object-fit: contain; background: #f8f8f6; }
.development-plan-grid a > span { display: grid; gap: 5px; padding: 18px; border-top: 1px solid var(--line); }
.development-plan-grid strong { font-family: var(--display); font-size: 26px; font-weight: 400; text-transform: uppercase; }
.development-plan-grid small { color: var(--ink-soft); }
.development-master-plan { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(260px,.65fr); margin: 64px 0 0; border: 1px solid var(--line); background: #fff; }
.development-master-plan img { width: 100%; height: 100%; min-height: 440px; padding: 18px; object-fit: contain; background: #f8f8f6; }
.development-master-plan figcaption { display: flex; flex-direction: column; justify-content: flex-end; padding: 32px; color: var(--ink-soft); line-height: 1.65; }
.development-master-plan strong { margin-bottom: 10px; color: var(--ink); font-family: var(--display); font-size: 34px; font-weight: 400; text-transform: uppercase; }
.development-costs { padding: clamp(82px,10vw,150px) 0; background: var(--development-night); color: #fff; }
.development-cost-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; padding: 1px; background: rgba(255,255,255,.24); }
.development-cost-grid article { min-height: 260px; padding: 26px; background: #24231f; }
.development-cost-grid span { color: rgba(255,255,255,.58); }
.development-cost-grid strong { display: block; margin: 48px 0 14px; font-family: var(--display); font-size: clamp(34px,3vw,48px); font-weight: 400; line-height: .9; text-transform: uppercase; }
.development-cost-grid p { color: rgba(255,255,255,.68); font-size: 13px; line-height: 1.55; }
.development-inclusions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 42px; margin-top: 70px; }
.development-inclusions h3 { margin-bottom: 18px; font-family: var(--display); font-size: 34px; font-weight: 400; text-transform: uppercase; }
.development-inclusions ul { display: grid; gap: 12px; padding-left: 18px; color: rgba(255,255,255,.72); line-height: 1.55; }
.development-question-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.development-question-grid article { min-height: 310px; padding: 28px; border: 1px solid var(--line); background: #fff; }
.development-question-grid span { color: #8d6e38; font: 22px var(--display); }
.development-question-grid h3 { margin: 54px 0 14px; font-family: var(--display); font-size: 34px; font-weight: 400; line-height: .95; text-transform: uppercase; }
.development-question-grid p { color: var(--ink-soft); font-size: 14px; line-height: 1.6; }
.development-guide-links { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 36px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.development-guide-links a { display: flex; justify-content: space-between; gap: 20px; padding: 22px; border-right: 1px solid var(--line); font-size: 12px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.development-guide-links a:last-child { border-right: 0; }
.development-enquiry { padding: clamp(80px,10vw,150px) 0; background: var(--development-night); color: #fff; }
.development-enquiry-grid { display: grid; grid-template-columns: minmax(0,.76fr) minmax(480px,1.24fr); gap: clamp(48px,7vw,104px); align-items: start; }
.development-enquiry .eyebrow { color: var(--development-accent-soft); }
.development-enquiry h2 { max-width: 9ch; margin: 14px 0 26px; font-size: clamp(56px,6.25vw,90px); line-height: .92; text-wrap: balance; }
.development-enquiry-grid > div > p { max-width: 46ch; color: rgba(255,255,255,.78); line-height: 1.7; }
.development-system-note { margin-top: 30px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.24); color: rgba(255,255,255,.62) !important; font-size: 12px; }
.development-enquiry .cta-form {
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(24px,3vw,40px);
  border: 1px solid rgba(199,170,115,.48);
  background: var(--development-paper);
  box-shadow: 0 30px 80px rgba(0,0,0,.22);
  color: var(--ink);
}
.development-enquiry .cta-form > * { min-width: 0; }
.development-enquiry .cta-form label { opacity: 1; }
.development-enquiry .cta-form input,
.development-enquiry .cta-form textarea { min-height: 48px; border-color: #c7c0b3; background: #fff; }
.development-enquiry .cta-form textarea { min-height: 112px; }
.development-enquiry .cta-form input:focus-visible,
.development-enquiry .cta-form textarea:focus-visible,
.development-enquiry .cta-form button:focus-visible,
.development-enquiry .cta-form a:focus-visible { outline: 3px solid var(--development-accent); outline-offset: 2px; }
.development-enquiry .cta-form input:not([readonly]):user-invalid,
.development-enquiry .cta-form textarea:user-invalid,
.development-enquiry .cta-form [aria-invalid="true"] { border-color: #9d3e32; box-shadow: inset 4px 0 #9d3e32; }
.development-enquiry .cta-form input[readonly] { background: #eae4d9; color: #403b34; }
.development-enquiry .property-enquiry-url { margin: 0 0 6px; line-height: 1.55; }
.development-enquiry .property-enquiry-url a { display: inline-block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; vertical-align: bottom; white-space: nowrap; }
.development-enquiry .property-consent-option { color: #292724; font-weight: 650; }
.development-enquiry .property-consent-option input[type="checkbox"] { flex: none; accent-color: var(--development-night); }
.development-enquiry .form-consent { color: #625d54; line-height: 1.55; }
.development-enquiry .cta-form button { min-height: 52px; background: var(--development-night); }
.development-enquiry .cta-form button:hover { background: #2f2d29; opacity: 1; }
.development-enquiry .development-source-note { margin: 6px 0 0; color: #746e64; font-size: 11px; line-height: 1.55; }
.development-sources { padding-top: 70px; padding-bottom: 90px; }
.development-sources h2 { margin: 10px 0 10px; font-family: var(--display); font-size: 46px; font-weight: 400; text-transform: uppercase; }
.development-sources > p { color: var(--ink-soft); }
.development-sources ul { display: grid; gap: 10px; margin-top: 24px; padding-left: 20px; }
.development-sources a { text-decoration: underline; text-underline-offset: 3px; }
.property-card-media--photo { padding: 0; }
.property-card-media--photo::before, .property-card-media--photo::after { display: none; }
.property-card-media--photo img { width: 100%; height: 100%; min-height: 245px; object-fit: cover; transition: transform .35s ease; }
.property-card-media--photo .property-card-media-label { position: absolute; top: 16px; left: 16px; padding: 7px 9px; background: var(--development-accent); color: #111; font: 800 9px/1.2 var(--sans); letter-spacing: .1em; }
.property-card-media--photo .property-card-media-note { position: absolute; left: 16px; bottom: 14px; max-width: none; padding: 6px 8px; background: rgba(8,14,15,.68); }
.property-card-open:hover .property-card-media--photo img, .property-card-open:focus-visible .property-card-media--photo img { transform: scale(1.025); }

@media (max-width: 980px) {
  .development-hero { grid-template-columns: 1fr; }
  .development-hero-media { min-height: 62vw; }
  .development-hero-media::after { background: linear-gradient(0deg, rgba(23,23,21,.42), transparent 55%); }
  .development-hero-copy .section-back { margin-bottom: 60px; }
  .development-intro, .development-section-head, .development-enquiry-grid { grid-template-columns: 1fr; }
  .development-hero-copy h1 { line-height: .94; }
  .development-intro h2, .development-section-head h2 { max-width: 13ch; line-height: .97; }
  .development-enquiry h2 { max-width: 13ch; font-size: clamp(54px,8vw,76px); line-height: .96; }
  .development-enquiry .cta-form { max-width: 760px; }
  .development-facts, .development-cost-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .development-type-grid, .development-question-grid { grid-template-columns: 1fr; }
  .development-type-grid article { min-height: 330px; }
  .development-type-grid h3 { margin-top: 46px; }
  .development-plan-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .development-plan-grid a:last-child { grid-column: 1/-1; }
  .development-inclusions { grid-template-columns: 1fr; gap: 36px; }
  .development-guide-links { grid-template-columns: 1fr; }
  .development-guide-links a { border-right: 0; border-bottom: 1px solid var(--line); }
  .development-guide-links a:last-child { border-bottom: 0; }
}

@media (max-width: 640px) {
  .development-hero { min-height: auto; }
  .development-hero-media { min-height: 76vw; }
  .development-hero-copy { padding: 34px 22px 56px; }
  .development-hero-copy .section-back { margin-bottom: 44px; }
  .development-hero-copy h1 { max-width: 100%; font-size: clamp(60px,19vw,76px); line-height: .96; letter-spacing: 0; }
  .development-jump { justify-content: flex-start; }
  .development-intro { padding-left: 22px; padding-right: 22px; }
  .development-intro h2, .development-section-head h2 { max-width: 11ch; font-size: clamp(46px,14vw,60px); line-height: 1; letter-spacing: 0; }
  .development-facts, .development-cost-grid { grid-template-columns: 1fr; }
  .development-facts article { min-height: 140px; }
  .development-gallery-grid { grid-template-columns: 1fr; }
  .development-gallery-grid .development-gallery-wide { grid-column: auto; min-height: 72vw; }
  .development-gallery-grid figure { min-height: 72vw; }
  .development-plan-grid { grid-template-columns: 1fr; }
  .development-plan-grid a:last-child { grid-column: auto; }
  .development-plan-grid a { grid-template-rows: minmax(340px,65vh) auto; }
  .development-master-plan { grid-template-columns: 1fr; }
  .development-master-plan img { min-height: 300px; }
  .development-enquiry-grid { grid-template-columns: minmax(0,1fr); }
  .development-enquiry { padding: 72px 0; }
  .development-enquiry h2 { max-width: 9ch; font-size: clamp(48px,14.5vw,58px); line-height: .98; }
  .development-enquiry .cta-form { padding: 22px 18px; }
  .development-enquiry .property-consent-option { gap: 12px; line-height: 1.55; }
}
