.facility-image a { color: white; }
.visual-note { text-underline-offset: 3px; }
.cta form {
  width: min(840px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr auto;
  gap: 10px;
  align-items: end;
  text-align: left;
}
.cta label { font-size: .8125rem; color: #436162; }
.cta label span { display: block; margin: 0 0 7px 5px; }
.cta input, .cta select {
  width: 100%;
  height: 50px;
  border: 1px solid #91b4b2;
  background: rgba(255,255,255,.76);
  border-radius: 28px;
  padding: 0 18px;
  color: var(--ink);
  font: inherit;
}
.cta form .btn { border: 0; white-space: nowrap; }
.cta > p:last-child { margin-top: 20px; }
@media (max-width: 1000px) {
  .cta form { grid-template-columns: 1fr 1fr; }
  .cta form .btn { width: 100%; }
}
@media (max-width: 720px) {
  .cta form { grid-template-columns: 1fr; }
  .cta form .btn { margin-top: 5px; }
}

[hidden] { display: none !important; }
.cta form { width: min(1100px,100%); grid-template-columns: repeat(4,minmax(0,1fr)); }
.cta form .btn { grid-column: 1 / -1; justify-self:center; margin-top:12px; }
.cta label { font-size: .875rem; min-width:0; }
.cta input, .cta select { font-size:1rem; padding:0 12px; }
.phone-help { max-width:760px; margin:18px auto; font-size:.875rem; }
.package-note { margin:0 0 22px; color:var(--ink); }
.package-badge { display:inline-block; padding:10px 16px; background:#d3ece6; color:#174d4b; border-radius:18px; font-weight:600; }
.arrival-link { display:block; margin-top:18px; font-size:.875rem; color:#245b60; font-weight:600; }
.home-tabs { flex-wrap:wrap; }
@media(max-width:1000px){.cta form {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px){.cta form {grid-template-columns:minmax(0,1fr);} .cta form .btn {width:100%;}}

/* Compact project information layout */
h1,h2 {font-family:'DM Sans','Noto Sans SC',sans-serif; font-weight:600;}
h1 {font-size:clamp(2.8rem,5vw,4.5rem);line-height:1.2;}
h1 span {font-size:.6em;margin-top:10px;}
h2 {font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.4;}
.hero {height:auto; min-height:470px; padding:70px 0;}
.hero-copy {text-align:left;align-items:flex-start;}
.hero-actions {justify-content:flex-start;}
.section {padding-top:64px;padding-bottom:64px;}
.section-tag {margin-bottom:16px;font-size:.875rem;}
.story>p:not(.section-tag) {margin-top:20px;}
.project-facts {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:28px 0 0;border-top:1px solid var(--line);border-left:1px solid var(--line);}
.project-facts>div {padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);}
.project-facts dt {font-size:.875rem;color:var(--muted);margin-bottom:8px;}
.project-facts dd {font-size:1rem;font-weight:500;line-height:1.7;margin:0;}
.phase-section {margin-top:48px;}
.phase-heading {display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;}
.phase-heading h3 {font-size:1.75rem;line-height:1.4;}
.phase-heading>p {color:var(--muted);}
.phase-tabs {display:grid;grid-template-columns:repeat(3,1fr);margin-top:24px;border:1px solid #afc8c5;}
.phase-tabs button {min-height:82px;padding:16px;border:0;border-right:1px solid #afc8c5;background:#edf5f2;color:var(--ink);font-size:1.05rem;font-weight:600;transition:background .2s,color .2s;}
.phase-tabs button:last-child {border-right:0;}
.phase-tabs button small {display:block;margin-top:7px;color:var(--muted);font-size:.8125rem;font-weight:400;}
.phase-tabs button[aria-selected=true] {background:var(--ocean);color:white;}
.phase-tabs button[aria-selected=true] small {color:#d7efeb;}
.phase-panel {padding:28px;background:white;border:1px solid #afc8c5;border-top:0;}
.phase-panel-head {display:flex;justify-content:space-between;gap:25px;align-items:center;}
.phase-panel-head h3 {font-size:1.65rem;line-height:1.4;}
.phase-status {font-size:.75rem;letter-spacing:.12em;color:#8a6735;font-weight:600;}
.phase-facts {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0 0;border-top:1px solid var(--line);border-left:1px solid var(--line);}
.phase-facts>div {padding:18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);}
.phase-facts dt {font-size:.8125rem;color:var(--muted);margin-bottom:7px;}
.phase-facts dd {margin:0;line-height:1.65;font-weight:500;}
.phase-facts .phase-layout-row {grid-column:1 / -1;}
.facility-image {min-height:430px;}
.facility-copy {padding:55px 40px;}
.home-tabs {margin-top:22px;}
.homes-head,.location-head {gap:40px;}
.package-note {margin-top:20px;}
.places {margin-top:30px;}
.arrival-link {font-size:1.5rem;line-height:1.5;color:var(--ocean);}
.map-link {display:block;font-size:.875rem;margin-top:8px;color:var(--muted);}
.cta {border-radius:0;padding:60px 24px;}
.cta form {grid-template-columns:repeat(3,minmax(0,1fr));}
.louise-note .btn {margin-top:20px;}
.faq {background:#f4f8f6;}
.faq-head {display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;}
.faq-head>p {color:var(--muted);}
.faq-list {margin-top:30px;border-top:1px solid var(--line);}
.faq-list details {border-bottom:1px solid var(--line);background:rgba(255,255,255,.55);}
.faq-list summary {position:relative;padding:22px 52px 22px 20px;cursor:pointer;font-size:1.05rem;font-weight:600;line-height:1.55;list-style:none;}
.faq-list summary::-webkit-details-marker {display:none;}
.faq-list summary::after {content:'+';position:absolute;right:20px;top:17px;color:var(--ocean);font-size:1.7rem;font-weight:400;}
.faq-list details[open] summary::after {content:'–';}
.faq-list details p {padding:0 52px 22px 20px;color:var(--muted);}
.faq-source {display:inline-block;margin:0 20px 22px;font-size:.875rem;text-underline-offset:4px;color:var(--ocean);}
.copyright {display:block;margin-bottom:8px;color:white;font-weight:600;}
.rentals {background:var(--deep);color:white;}
.rentals .section-tag {color:#efd6a6;}
.rental-header {display:grid;grid-template-columns:1.05fr 1fr;gap:52px;align-items:end;}
.rental-header>p {color:#c6dad8;}
.rental-empty {padding:36px;border:1px solid #668a88;display:flex;flex-direction:column;justify-content:center;max-width:820px;margin-top:34px;}
.rental-status {font-size:.875rem;letter-spacing:.08em;color:#efd6a6;}
.rental-empty h3 {font-size:1.55rem;line-height:1.4;margin:14px 0;}
.rental-empty p {color:#c6dad8;}
.rental-empty .btn {align-self:flex-start;margin-top:24px;}
.plan-disclaimer,.disclaimer,.sources,.facility-list span {font-size:.875rem!important;}
@media(max-width:720px){.hero{height:auto;min-height:430px;}.project-facts,.phase-facts{grid-template-columns:1fr;}.phase-heading,.faq-head{grid-template-columns:1fr;gap:12px;}.phase-tabs{grid-template-columns:1fr;}.phase-tabs button{border-right:0;border-bottom:1px solid #afc8c5;}.phase-tabs button:last-child{border-bottom:0;}.phase-panel{padding:20px;}.phase-panel-head{align-items:flex-start;flex-direction:column;}.phase-panel-head .btn{width:100%;}.phase-facts .phase-layout-row{grid-column:auto;}.section{padding:44px 24px;}.facility-copy{padding:40px 24px;}.cta form{grid-template-columns:1fr;}.arrival-link{font-size:1.25rem;}.home-tabs button{flex:1 0 25%;}.homes-head,.location-head{gap:20px;}}
@media(max-width:1000px){.rental-header{grid-template-columns:1fr;gap:22px;}}
@media(max-width:720px){.language button{min-width:39px;}.rental-empty{padding:24px;}.rental-empty .btn{width:100%;}}
@media(max-width:1250px){.nav{flex-wrap:wrap;}.nav-links{display:flex;order:3;width:100%;gap:24px;overflow-x:auto;scrollbar-width:thin;}.nav-links a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;}}
@media(max-width:720px){.nav-links{gap:20px;}.nav-links a{font-size:.875rem;}}
