:root{--ink:#122d26;--body:#3e5a51;--dark:#124437;--lime:#dafa91;--paper:#f4f5ee;--line:#dbe4db;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:18px}body{margin:0;background:var(--white);color:var(--ink);font:16px/1.6 "Inter",Arial,sans-serif}button,input{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #50885f;outline-offset:4px}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.09}h1{font-size:clamp(3rem,6.4vw,6.6rem);letter-spacing:-.08em;margin:19px 0 23px}h2{font-size:clamp(2rem,4.15vw,3.8rem);letter-spacing:-.059em;margin:12px 0 15px}h3{font-size:1.42rem;letter-spacing:-.035em}.wrap{width:min(1200px,calc(100% - 88px));margin:auto}.skip{position:absolute;top:-100px;z-index:4;background:white;padding:10px}.skip:focus{top:5px}.demo-bar{text-align:center;background:var(--ink);color:white;font-size:.78rem;font-weight:700;padding:7px 12px;letter-spacing:.02em}.demo-bar span:first-child{color:var(--lime);margin-right:7px}.demo-detail{color:#d4e6dd;font-weight:400}header{border-bottom:1px solid #e7ede7}.nav,.footer-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:73px}.nav nav{display:flex;gap:30px;font-size:.91rem;font-weight:650}.nav nav a:hover,.textbtn:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65em;padding:12px 18px;min-height:48px;border:1px solid transparent;border-radius:8px;font-weight:700;font-size:.93rem;text-align:center;line-height:1.35}.btn:hover{filter:brightness(.93)}.small{min-height:40px;padding:8px 13px}.dark{background:var(--dark);color:white}.outline{border-color:#b8cbbf;background:white;color:var(--dark)}.lime{background:var(--lime);color:var(--ink)}.hero{display:grid;grid-template-columns:1fr 1.06fr;gap:40px;align-items:center;padding:61px 0 73px}.hero-photo{position:relative;border-radius:19px;overflow:hidden;min-height:490px;background:#dce5dd}.hero-photo img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.hero-photo figcaption{position:absolute;bottom:15px;left:15px;padding:13px 18px;border-radius:9px;background:#112e28f2;color:white}.hero-photo figcaption>*{display:block}.hero-photo span,.overline{font-size:.69rem;letter-spacing:.095em;font-weight:800}.hero-photo span{color:var(--lime)}.hero-photo strong{font-size:1.25rem}.hero-photo small{color:#e2ede7}.eyebrow{display:flex;gap:8px;align-items:center;color:var(--dark);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.eyebrow i{width:9px;height:9px;border-radius:50%;background:#8abb50;display:inline-block}.lede,.section-intro{color:var(--body);max-width:52ch;font-size:1.08rem}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px}.properties,.faq{background:var(--paper);padding:67px 0}.cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:27px}.property{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.property>img{width:100%;height:235px;object-fit:cover}.property-body{padding:20px}.property h3{margin:7px 0 13px}.overline{color:var(--body)}.price-row,.guide-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.price-row strong{font-size:1.23rem}.textbtn{padding:5px 0;border:0;background:none;color:var(--dark);font-weight:700;text-align:left}.fine{color:var(--body);font-size:.81rem;margin-top:10px}.guide-banner{margin-top:34px;border-radius:14px;padding:27px;background:var(--ink);color:white;gap:22px}.guide-banner .overline{color:var(--lime);margin-bottom:9px}.guide-banner p:last-child{margin-top:7px;color:#d9e8e0}.ownership,.faq-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:35px}.ownership{padding:75px 0}.ownership ol{list-style:none;padding:0;margin:0}.ownership li{display:flex;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}.ownership li:first-child{padding-top:0}.ownership li>span{font-size:.78rem;color:var(--dark);font-weight:800;background:#e7efd9;border-radius:50%;width:35px;height:35px;display:grid;place-items:center;flex:none}.ownership li p,details p{margin-top:7px;color:var(--body)}details{border-bottom:1px solid #cbd9cc;padding:13px 0}summary{cursor:pointer;font-weight:700;padding:6px 0}.footer-row{min-height:84px;flex-wrap:wrap;color:var(--body);font-size:.86rem}.footer-row a{text-decoration:underline}.footer-row img{max-width:105px}
dialog{width:min(535px,calc(100% - 24px));max-height:calc(100dvh - 28px);padding:31px;border:1px solid var(--line);border-radius:17px;color:var(--ink);box-shadow:0 24px 100px #04171160}dialog::backdrop{background:#08211dd0}dialog h2{font-size:clamp(1.9rem,6vw,2.75rem);padding-right:9px}dialog section>p:not(.eyebrow){color:var(--body)}.close{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:1.55rem;line-height:1}.close:hover{background:#dbe9dc}form{margin-top:20px}form>label:first-child{display:block;font-weight:700;margin-bottom:5px}.email-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.email-row input{border:1px solid #9db2a6;border-radius:7px;padding:10px;min-width:0;flex:1 1 170px}.email-row button{font-size:.82rem}.check{display:flex;gap:8px;align-items:flex-start;font-size:.87rem;margin:13px 0}.check input{margin-top:5px;accent-color:var(--dark)}.full{width:100%;margin-top:9px}.mail{padding:15px;background:var(--paper);border-radius:8px;margin:15px 0}.mail p+p,.mail .btn{margin-top:7px}dialog h3{margin:15px 0 0}dialog ul{padding-left:22px}dialog [hidden]{display:none!important}
@media(max-width:930px){.wrap{width:calc(100% - 54px)}.hero{gap:22px}.hero-photo{min-height:390px}.nav nav{gap:15px}.property>img{height:190px}}
@media(max-width:680px){.wrap{width:calc(100% - 32px)}.nav{min-height:59px}.nav img{width:106px;height:auto}.nav nav{display:none}.hero,.cards,.ownership,.faq-grid{grid-template-columns:1fr}.hero{padding:31px 0 36px;gap:21px}.hero-photo{min-height:290px}.hero h1{margin:13px 0}.properties,.ownership,.faq{padding:40px 0}.ownership,.faq-grid{gap:13px}.guide-banner{padding:19px}.footer-row{padding:17px 0;gap:9px}.footer-row p{width:100%}dialog{padding:22px}.price-row{gap:5px}.property-body{padding:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.modal-open{overflow:hidden}

/* Guide preview and signup */
.guide-banner {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(22px, 4vw, 50px);
  padding: clamp(24px, 4.8vw, 58px);
  align-items: center;
}
.guide-copy h2 { font-size: clamp(2.2rem, 4.4vw, 4.05rem); }
.guide-copy > p:not(.overline) { color: #d9e8e0; max-width: 42ch; }
.guide-copy .btn { margin-top: 23px; }
.guide-preview { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; align-items: stretch; }
.video-cover { min-height: 230px; display: grid; position: relative; overflow: hidden; border-radius: 10px; background: #274b40; isolation: isolate; }
.video-cover img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; z-index: -2; }
.video-cover::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, #102a23a3, #102a2350 32%, #081d18f0 80%); }
.video-cover figcaption { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; gap: 5px; padding: 15px; }
.duration { position: absolute; top: 12px; right: 12px; padding: 3px 9px; color: var(--ink); background: var(--lime); border-radius: 20px; font-size: .78rem; font-weight: 800; }
.asset-label { display: block; font-size: .68rem; line-height: 1.35; letter-spacing: .09em; font-weight: 800; }
.video-cover strong { font-size: 1.36rem; line-height: 1.15; }
.checklist-cover { padding: 16px; color: var(--ink); background: #f7f9ec; border-radius: 10px; }
.checklist-cover .asset-label { color: #386249; }
.checklist-cover h3 { font-size: 1.36rem; margin: 7px 0 10px; }
.guide-banner .checklist-cover p:not(.asset-label) { padding: 9px 0 0 14px; border-top: 1px solid #ced9c9; font-size: .88rem; line-height: 1.42; color: #254338; position: relative; margin-top: 7px; }
.checklist-cover p:not(.asset-label)::before { content: ""; position: absolute; left: 1px; top: 15px; background: #538348; width: 5px; height: 5px; border-radius: 50%; }
@media (max-width: 890px) { .guide-banner { grid-template-columns: 1fr; } }
@media (max-width: 465px) {
  .guide-banner { padding: 19px; }
  .guide-preview { gap: 8px; }
  .video-cover { min-height: 200px; }
  .video-cover figcaption, .checklist-cover { padding: 11px; }
  .video-cover strong, .checklist-cover h3 { font-size: 1.05rem; }
  .guide-banner .checklist-cover p:not(.asset-label) { font-size: .8rem; }
}

/* The timed popup shows the offer before the signup form. */
dialog[data-stage="preview"] {
  width: min(685px, calc(100% - 24px));
  padding: 0;
  border-color: #31574c;
  background: var(--ink);
  color: white;
}
.popup-preview { padding: clamp(20px, 4vw, 38px); }
.popup-intro { padding-right: 18px; }
.popup-intro .eyebrow { color: var(--lime); }
.popup-intro h2 { font-size: clamp(2rem, 6vw, 3.45rem); max-width: 18ch; }
.popup-intro > p:last-child { color: #dce9e2; max-width: 50ch; }
#popup-assets { margin-top: 21px; }
#popup-assets .video-cover { min-height: 177px; }
#popup-assets .checklist-cover p:not(.asset-label) { color: #254338; position: relative; padding: 7px 0 0 13px; margin-top: 7px; border-top: 1px solid #ced9c9; font-size: .86rem; line-height: 1.42; }
.popup-actions { display: flex; gap: 10px 18px; align-items: center; flex-wrap: wrap; margin-top: 19px; }
.popup-actions .textbtn { color: #e4eee7; }
.popup-actions .btn:focus-visible, .popup-actions .textbtn:focus-visible { outline-color: var(--lime); }
@media (max-width: 460px) {
  #popup-assets { margin-top: 15px; }
  #popup-assets .video-cover { min-height: 152px; }
  #popup-assets .checklist-cover p:not(.asset-label) { font-size: .78rem; }
  .popup-actions { gap: 7px; justify-content: center; margin-top: 15px; }
  .popup-actions .btn { width: 100%; }
}

dialog h2[tabindex="-1"]:focus { outline: none; }
