:root {
  --ink: #012340;
  --ink-2: #024059;
  --mist: #c5d5d9;
  --slate: #97a4a6;
  --clay: #8c6046;
  --sand: #e7e1d8;
  --cream: #f8f7f3;
  --white: #fffefd;
  --line: rgba(1, 35, 64, 0.16);
  --serif: Georgia, 'Times New Roman', serif;
  --sans: 'Poppins', Arial, sans-serif;
  --display: 'Poppins', Arial, sans-serif;
}


* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; color: var(--ink); background: var(--cream); font-family: var(--sans); font-size: 16px; line-height: 1.55; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.skip-link { position: fixed; left: 12px; top: -100px; z-index: 100; padding: 12px 16px; color: #fff; background: var(--ink); transition: top .2s; }
.skip-link:focus { top: 12px; }

.site-header { min-height: 92px; width: min(1320px, calc(100% - 64px)); margin: auto; display: flex; align-items: center; position: relative; z-index: 10; }
.brand { display: inline-flex; align-items: center; flex-shrink: 0; }
.brand-logo { display: block; width: 72px; height: 72px; object-fit: contain; }
.brand-mark { display: flex; gap: 3px; align-items: flex-end; height: 27px; width: 28px; }
.brand-mark i { display: block; width: 7px; background: var(--clay); border-radius: 5px 5px 1px 1px; }
.brand-mark i:nth-child(1) { height: 13px; }.brand-mark i:nth-child(2) { height: 21px; }.brand-mark i:nth-child(3) { height: 27px; }
.brand-type { display: flex; flex-direction: column; line-height: 1; gap: 4px; }
.brand-type b { font: 500 14px/1 var(--display); letter-spacing: .11em; }.brand-type em { font: 500 7px/1 var(--display); letter-spacing: .39em; font-style: normal; }
.desktop-nav { display: flex; gap: clamp(22px, 3vw, 46px); margin-left: auto; margin-right: clamp(24px, 3.5vw, 54px); }
.desktop-nav a { font-size: 13px; font-weight: 500; transition: color .2s; }.desktop-nav a:hover { color: var(--clay); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 51px; border: 1px solid var(--ink); border-radius: 999px; padding: 14px 24px; color: #fff; background: var(--ink); font-size: 12px; font-weight: 600; transition: color .25s, background .25s, transform .25s; }
.button:hover { background: var(--clay); border-color: var(--clay); transform: translateY(-2px); }.button span { font-size: 17px; line-height: 0; }.button-small { min-height: 42px; padding: 10px 15px; font-size: 12px; }
.menu-toggle, .mobile-nav { display: none; }

.hero { width: min(1320px, calc(100% - 64px)); min-height: calc(100vh - 92px); margin: auto; display: grid; grid-template-columns: minmax(0, .88fr) minmax(440px, 1.12fr); gap: clamp(40px, 7vw, 110px); align-items: center; padding: 38px 0 72px; }
.eyebrow { margin: 0 0 19px; color: var(--clay); font-family: var(--display); font-size: 11px; font-weight: 500; letter-spacing: .12em; line-height: 1.4; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; } h1, h2, h3 { font-family: var(--sans); font-weight: 500; letter-spacing: -.065em; line-height: 1.02; }
h1 { max-width: 650px; margin-bottom: 27px; font-size: clamp(54px, 6.45vw, 102px); } h1 span { color: var(--ink); font-style: normal; font-weight: 600; }.hero-photo .hero-photo-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }.partner-form { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; max-width: 620px; margin-top: 30px; padding: 24px; border: 1px solid rgba(197, 213, 217, .8); border-radius: 24px; color: var(--ink); background: rgba(255, 254, 253, .98); box-shadow: 0 16px 34px rgba(0, 0, 0, .14); }.partner-form label { display: grid; gap: 6px; color: var(--ink-2); font-size: 13px; font-weight: 600; }.partner-form input, .partner-form select, .partner-form textarea { width: 100%; padding: 12px 13px; border: 1px solid rgba(1, 35, 64, .2); border-radius: 13px; color: var(--ink); background: #fff; font: 400 14px var(--sans); outline: none; }.partner-form input:focus, .partner-form select:focus, .partner-form textarea:focus { border-color: var(--clay); box-shadow: 0 0 0 3px rgba(140, 96, 70, .12); }.partner-form textarea { resize: vertical; }.full-field, .form-submit, .form-note, .form-status { grid-column: 1 / -1; }.form-submit { justify-self: start; border: 0; }.form-submit:disabled { cursor: wait; opacity: .7; transform: none; }.form-note { margin: -3px 0 0; color: var(--slate); font-size: 12px; line-height: 1.4; }.form-status { min-height: 20px; margin: -2px 0 0; color: var(--ink-2); font-size: 13px; font-weight: 600; }.form-status.is-error { color: #8b3f36; }.form-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.hero-lede { max-width: 490px; margin-bottom: 32px; color: rgba(1, 35, 64, .79); font-size: 16px; }
.hero-actions { display: flex; align-items: center; gap: 29px; flex-wrap: wrap; }.text-link { border-bottom: 1px solid currentColor; padding-bottom: 4px; font-size: 13px; font-weight: 600; }.text-link:hover { color: var(--clay); }.prelaunch-note { margin: 38px 0 0; color: var(--slate); font-size: 13px; }.prelaunch-note span { display: inline-block; width: 7px; height: 7px; margin: 0 8px 1px 0; border-radius: 50%; background: var(--clay); }.market-note { display: flex; align-items: center; gap: 8px; margin: 10px 0 0; color: var(--ink-2); font-size: 13px; font-weight: 500; }.market-note span { color: var(--clay); font-size: 15px; line-height: 1; }
.hero-art { min-height: 580px; position: relative; overflow: hidden; border-radius: 32px; background: var(--mist); box-shadow: 0 22px 45px rgba(1, 35, 64, .12); isolation: isolate; }.hero-art > *:not(.art-caption) { position: absolute; }.sun { width: 238px; height: 238px; top: 73px; right: 19%; border-radius: 50%; background: #d9b794; }.arc { width: 500px; height: 500px; border: 1px solid rgba(1, 35, 64, .18); border-radius: 50%; }.arc-one { right: -224px; top: 42px; }.arc-two { width: 380px; height: 380px; right: -173px; top: 102px; }.building { display: flex; flex-wrap: wrap; gap: 10px; padding: 35px 29px; align-content: flex-start; background: var(--ink); }.building span { display: block; width: 25px; height: 44px; background: var(--mist); opacity: .85; }.building-back { z-index: 1; width: 200px; height: 290px; right: 14%; bottom: 83px; transform: skewY(-8deg); background: var(--ink-2); }.building-back span { width: 22px; height: 38px; background: #e5d2ba; }.building-front { z-index: 3; width: 257px; height: 347px; right: 33%; bottom: 37px; transform: skewY(5deg); }.building-front span { width: 29px; height: 50px; }.ground { z-index: 4; width: 120%; height: 121px; left: -9%; bottom: -68px; border-radius: 50% 50% 0 0; background: #738b82; transform: rotate(-4deg); }.foliage { z-index: 5; width: 148px; height: 130px; border-radius: 56% 44% 50% 45%; background: #52736f; }.foliage-one { left: 10%; bottom: 68px; }.foliage-two { width: 95px; height: 95px; left: 30%; bottom: 62px; background: #40645e; }.art-caption { position: absolute; z-index: 6; right: 27px; bottom: 25px; margin: 0; color: white; font-family: var(--display); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.intro-band { padding: 94px max(32px, calc((100% - 1000px) / 2)); color: var(--cream); background: var(--ink); }.intro-band p { max-width: 1000px; margin: 0; font: 400 clamp(27px, 3vw, 47px)/1.18 var(--sans); letter-spacing: -.055em; }.visual-story { width: min(1320px, calc(100% - 64px)); position: relative; overflow: hidden; margin: 74px auto 4px; border-radius: 32px; background: var(--ink); box-shadow: 0 22px 45px rgba(1, 35, 64, .12); }.visual-story img { display: block; width: 100%; aspect-ratio: 3 / 1; object-fit: cover; }.visual-story figcaption { position: absolute; inset: auto 0 0; display: grid; grid-template-columns: repeat(3, 1fr); padding: 22px 28px; color: #fff; background: linear-gradient(transparent, rgba(1, 35, 64, .77)); font-size: 11px; font-weight: 600; letter-spacing: .01em; }.visual-story figcaption span:nth-child(2) { text-align: center; }.visual-story figcaption span:last-child { text-align: right; }
.section { padding: 132px max(32px, calc((100% - 1320px) / 2)); }.section-heading { max-width: 650px; }.section-heading h2, .partnership h2, .calm-heading h2 { margin-bottom: 26px; font-size: clamp(47px, 5vw, 76px); }.section-heading > p:last-child { max-width: 510px; color: rgba(1, 35, 64, .75); }
.experience-layout { display: grid; grid-template-columns: .86fr 1.14fr; gap: 52px; margin-top: 82px; }.experience-tabs { display: flex; flex-direction: column; border-top: 1px solid var(--line); }.experience-tab { min-height: 83px; width: 100%; display: grid; grid-template-columns: 38px 1fr 20px; align-items: center; padding: 0; border: 0; border-bottom: 1px solid var(--line); color: var(--ink); background: transparent; text-align: left; cursor: pointer; transition: padding .25s, color .25s, background .25s; }.experience-tab:hover, .experience-tab.active { padding-left: 14px; color: var(--clay); background: rgba(197, 213, 217, .31); }.experience-tab span { font: 500 9px var(--display); }.experience-tab b { font: 500 18px var(--sans); letter-spacing: -.045em; }.experience-tab i { font-style: normal; opacity: 0; transition: opacity .2s; }.experience-tab.active i { opacity: 1; }
.experience-panel { min-height: 428px; position: relative; display: grid; grid-template-columns: 52px 1fr 41%; overflow: hidden; border-radius: 28px; padding: 37px; color: var(--cream); background: var(--ink-2); }.panel-number { color: var(--mist); font: 500 9px var(--display); }.panel-content { z-index: 2; }.panel-label { margin-bottom: 15px; color: var(--mist); font: 500 9px var(--display); letter-spacing: .1em; text-transform: uppercase; }.panel-content h3 { max-width: 330px; margin-bottom: 18px; font-size: clamp(38px, 3.1vw, 52px); }.panel-content > p:not(.panel-label) { max-width: 365px; color: rgba(255,255,255,.75); font-size: 13px; }.panel-content ul { padding: 0; margin: 24px 0 0; list-style: none; }.panel-content li { position: relative; padding: 7px 0 7px 16px; color: var(--mist); font-size: 11px; }.panel-content li::before { content: ''; width: 4px; height: 4px; position: absolute; left: 0; top: 14px; border-radius: 50%; background: var(--clay); }.panel-visual { position: relative; min-height: 100%; }.visual-identity::before { content: ''; position: absolute; inset: 32px -69px -37px 26px; background: #e0d2c2; clip-path: polygon(25% 0, 100% 20%, 100% 100%, 0 100%, 0 26%); }.window-grid { z-index: 1; position: absolute; top: 98px; right: -18px; width: 130px; height: 231px; opacity: .95; background: repeating-linear-gradient(90deg, var(--ink-2) 0 18px, transparent 18px 30px), repeating-linear-gradient(0deg, var(--ink-2) 0 30px, transparent 30px 47px); }.panel-orb { z-index: 2; position: absolute; right: 67px; top: 29px; width: 74px; height: 74px; border-radius: 50%; background: var(--clay); }
.visual-leasing::before, .visual-operations::before, .visual-residents::before { content: ''; position: absolute; inset: 23px -55px -37px 22px; background: var(--mist); }.visual-leasing::before { clip-path: polygon(45% 0, 100% 0, 100% 100%, 0 100%, 0 40%); background: #b4c4c1; }.visual-leasing .window-grid { right: -13px; top: 70px; transform: rotate(6deg); background: repeating-linear-gradient(90deg, var(--ink) 0 17px, transparent 17px 29px), repeating-linear-gradient(0deg, var(--ink) 0 29px, transparent 29px 46px); }.visual-leasing .panel-orb { right: 95px; top: 45px; background: #e0d2c2; }.visual-operations::before { clip-path: polygon(0 18%, 75% 0, 100% 50%, 77% 100%, 0 87%); background: #80989b; }.visual-operations .window-grid { top: 115px; right: -22px; background: repeating-linear-gradient(90deg, var(--cream) 0 17px, transparent 17px 29px), repeating-linear-gradient(0deg, var(--cream) 0 29px, transparent 29px 46px); }.visual-operations .panel-orb { right: 38px; top: 31px; width: 105px; height: 105px; background: var(--clay); }.visual-residents::before { inset: 40px -60px -37px 0; border-radius: 50% 50% 0 0; background: #d7c4ab; }.visual-residents .window-grid { top: 120px; right: 8px; transform: scale(.82); background: repeating-linear-gradient(90deg, var(--ink) 0 17px, transparent 17px 29px), repeating-linear-gradient(0deg, var(--ink) 0 29px, transparent 29px 46px); }.visual-residents .panel-orb { right: 120px; top: 57px; background: #52736f; }
.partnership { background: #eef1ef; }.partnership-top { display: flex; justify-content: space-between; gap: 80px; align-items: end; }.partnership-top > p { max-width: 376px; margin-bottom: 32px; color: rgba(1, 35, 64, .75); }.approach-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 75px; }.approach-card { min-height: 262px; padding: 28px; border-top: 3px solid var(--clay); border-radius: 24px; background: var(--white); }.approach-card span { color: var(--clay); font: 500 9px var(--display); }.approach-card h3 { margin: 44px 0 13px; font-size: 31px; }.approach-card p { margin-bottom: 0; color: rgba(1, 35, 64, .7); font-size: 12px; }
.capabilities { display: grid; grid-template-columns: .9fr 1.1fr; gap: 100px; margin-top: 122px; padding: 69px 0 0; border-top: 1px solid var(--line); }.capabilities-copy h3 { margin-bottom: 18px; font-size: clamp(35px, 3.4vw, 51px); }.capabilities-copy > p:last-child { max-width: 354px; color: rgba(1, 35, 64, .75); font-size: 13px; }.capability-list { border-top: 1px solid var(--line); }.capability-list details { margin-bottom: 10px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.5); }.capability-list summary { display: flex; align-items: center; justify-content: space-between; padding: 20px 22px; cursor: pointer; list-style: none; font: 500 21px var(--sans); letter-spacing: -.045em; }.capability-list summary::-webkit-details-marker { display: none; }.capability-list summary i { color: var(--clay); font: 300 28px/1 var(--sans); font-style: normal; transition: transform .2s; }.capability-list details[open] summary i { transform: rotate(45deg); }.capability-list details p { max-width: 530px; padding: 0 35px 21px 22px; margin: 0; color: rgba(1, 35, 64, .72); font-size: 12px; }
.calm { padding-top: 120px; padding-bottom: 134px; }.calm-layout { display: grid; grid-template-columns: .84fr 1.16fr; gap: 105px; }.calm-heading h2 { margin-bottom: 18px; color: var(--ink); letter-spacing: -.08em; }.calm-heading h2 span { color: var(--clay); font-style: italic; }.calm-heading > p:last-child { max-width: 310px; color: rgba(1, 35, 64, .72); }.values-list { border-top: 1px solid var(--line); }.values-list article { display: grid; grid-template-columns: 52px 1fr; gap: 22px; padding: 21px 0; border-bottom: 1px solid var(--line); }.values-list article > span { color: var(--clay); font: 500 17px var(--display); }.values-list h3 { margin-bottom: 7px; font-size: 27px; }.values-list p { max-width: 420px; margin-bottom: 0; color: rgba(1, 35, 64, .7); font-size: 12px; }
.conversation { min-height: 529px; position: relative; display: flex; align-items: center; overflow: hidden; padding: 100px max(32px, calc((100% - 1320px) / 2)); color: var(--cream); background: var(--ink); }.conversation-copy { z-index: 2; max-width: 620px; }.conversation h2 { margin-bottom: 24px; font-size: clamp(47px, 5vw, 75px); }.conversation-copy > p:not(.eyebrow) { max-width: 530px; margin-bottom: 31px; color: rgba(255,255,255,.75); }.button-light { color: var(--ink); border-color: var(--cream); background: var(--cream); }.button-light:hover { color: #fff; background: var(--clay); border-color: var(--clay); }.conversation-shape { width: 630px; height: 630px; position: absolute; right: -160px; top: -100px; border: 1px solid rgba(197,213,217,.32); border-radius: 50%; }.conversation-shape::before, .conversation-shape::after { content: ''; position: absolute; border-radius: 50%; }.conversation-shape::before { width: 418px; height: 418px; top: 104px; left: 105px; border: 1px solid rgba(197,213,217,.32); }.conversation-shape::after { width: 206px; height: 206px; top: 207px; left: 207px; background: var(--clay); }
.site-footer { width: min(1320px, calc(100% - 64px)); min-height: 130px; margin: auto; display: grid; grid-template-columns: 1fr auto auto auto; gap: 36px; align-items: center; color: rgba(1,35,64,.65); font-size: 12px; }.site-footer p { margin: 0; }.site-footer a { border-bottom: 1px solid var(--slate); padding-bottom: 2px; }.footer-copyright { grid-column: 1 / -1; padding: 0 0 24px; color: rgba(1,35,64,.55); font-size: 11px; }
.reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s ease, transform .7s ease; }.reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 950px) {
  .site-header, .hero, .site-footer { width: min(100% - 44px, 650px); }.desktop-nav, .header-cta { display: none; }.site-header { min-height: 76px; }.brand-logo { width: 61px; height: 61px; }.menu-toggle { display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 34px; height: 34px; padding: 0; margin-left: auto; border: 0; background: transparent; cursor: pointer; }.menu-toggle span { display: block; width: 26px; height: 1px; margin-left: auto; background: var(--ink); transition: transform .2s; }.menu-toggle[aria-expanded='true'] span:first-child { transform: translateY(3px) rotate(45deg); }.menu-toggle[aria-expanded='true'] span:last-child { transform: translateY(-3px) rotate(-45deg); }.mobile-nav { position: absolute; top: 67px; left: 0; right: 0; padding: 13px 20px; border: 1px solid var(--line); background: var(--cream); box-shadow: 0 15px 30px rgba(1,35,64,.08); }.mobile-nav.open { display: grid; }.mobile-nav a { padding: 13px 0; border-bottom: 1px solid var(--line); font-size: 13px; }.mobile-nav a:last-child { border-bottom: 0; color: var(--clay); font-weight: 600; }
  .hero { min-height: auto; grid-template-columns: 1fr; gap: 45px; padding: 60px 0 68px; }.hero-art { min-height: 460px; }.section { padding: 90px 22px; }.section-heading, .partnership-top, .calm-layout, .capabilities { width: min(100%, 650px); margin-left: auto; margin-right: auto; }.experience-layout { width: min(100%, 650px); margin: 55px auto 0; grid-template-columns: 1fr; }.partnership-top, .calm-layout, .capabilities { gap: 35px; }.partnership-top { flex-direction: column; align-items: start; }.partnership-top > p { margin-bottom: 0; }.approach-grid { width: min(100%, 650px); margin: 50px auto 0; grid-template-columns: 1fr; gap: 12px; }.approach-card { min-height: 210px; }.approach-card h3 { margin-top: 28px; }.capabilities, .calm-layout { grid-template-columns: 1fr; margin-top: 75px; }.calm { padding-top: 85px; }.intro-band { padding: 75px 22px; }.conversation { padding: 85px 22px; }.conversation-copy { width: min(100%, 650px); margin: auto; }.site-footer { min-height: auto; grid-template-columns: 1fr 1fr; gap: 17px 20px; padding: 37px 0; }.brand-footer { grid-column: 1 / -1; margin-bottom: 7px; }
}
@media (max-width: 560px) {
  .site-header, .hero, .site-footer { width: calc(100% - 36px); }.hero { padding-top: 43px; }.hero-art { min-height: 365px; }.sun { width: 164px; height: 164px; top: 50px; }.building-back { right: 3%; bottom: 49px; transform: scale(.75) skewY(-8deg); transform-origin: bottom right; }.building-front { right: 20%; bottom: 19px; transform: scale(.75) skewY(5deg); transform-origin: bottom right; }.foliage-one { left: -2%; bottom: 30px; transform: scale(.7); }.foliage-two { left: 20%; bottom: 22px; transform: scale(.7); }.art-caption { right: 17px; bottom: 13px; }.hero-actions { align-items: flex-start; flex-direction: column; gap: 20px; }.intro-band p { font-size: 29px; }.section { padding: 74px 18px; }.section-heading h2, .partnership h2, .calm-heading h2, .conversation h2 { font-size: 46px; }.experience-tabs { margin-bottom: 15px; }.experience-tab { min-height: 68px; }.experience-tab b { font-size: 20px; }.experience-panel { min-height: 0; grid-template-columns: 32px minmax(0, 1fr); grid-template-rows: auto auto; padding: 25px; }.panel-content { min-width: 0; }.panel-visual { position: relative; grid-column: 1 / -1; width: calc(100% + 50px); height: 170px; min-height: 170px; right: auto; bottom: auto; margin: 22px -25px -25px; overflow: hidden; border-top: 1px solid rgba(255,255,255,.12); }.panel-content h3 { max-width: none; font-size: clamp(34px, 10.4vw, 42px); }.panel-content > p:not(.panel-label) { max-width: none; font-size: 13px; }.panel-content ul { margin-top: 14px; }.panel-content li { font-size: 11px; line-height: 1.45; }.visual-identity::before { inset: 0 -20px -10px 10px; }.window-grid { transform: scale(.65); transform-origin: bottom right; }.panel-orb { transform: scale(.7); transform-origin: top right; }.capability-list summary { font-size: 22px; }.conversation { min-height: 540px; }.conversation-shape { right: -405px; top: 23px; }.site-footer { grid-template-columns: 1fr; gap: 10px; }.brand-footer { grid-column: auto; }.site-footer p { margin-top: 6px; }
}
