*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;line-height:1.6}img{max-width:100%;display:block}a{color:inherit}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px}.sec{padding:110px 0}.small{font-size:.85rem;opacity:.75}
.top{position:sticky;top:0;z-index:50}.nav{display:flex;align-items:center;justify-content:space-between;height:76px}.links{display:flex;gap:28px;align-items:center}.links a{text-decoration:none;font-size:.92rem}
.navtoggle{display:none;background:none;border:0;font-size:1.6rem;color:inherit;cursor:pointer}
.btn{display:inline-block;padding:15px 26px;text-decoration:none;font-weight:600;border:2px solid transparent;cursor:pointer;font:inherit;font-weight:600;transition:.2s}.btn.sm{padding:9px 16px;font-size:.88rem}
.ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.fine{margin-top:16px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.stats div{display:flex;flex-direction:column;gap:6px}
.who{display:grid;grid-template-columns:1fr 1fr;gap:34px}.who h4{font-size:1.12rem;margin-bottom:6px}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:30px 0 22px}.plan{position:relative;padding:34px 30px;display:flex;flex-direction:column;gap:12px}.plan .price b{font-size:2.8rem;line-height:1}.tag{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}
.phchip{position:absolute;top:16px;right:16px;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border:1px dashed currentColor;opacity:.8}
.ph-note{display:inline-block;margin-top:18px;padding:8px 14px;font-size:.85rem;font-weight:600;background:#fff3cd;color:#6b4e00;border:1px dashed #c9a227}
.checks{list-style:none;display:grid;gap:14px;margin-top:26px}.checks li{padding-left:34px;position:relative}.checks li:before{content:"";position:absolute;left:0;top:.45em;width:16px;height:9px;border-left:2px solid;border-bottom:2px solid;transform:rotate(-45deg)}
.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:40px 34px;margin-top:46px}.steps .n{display:block;font-size:.85rem;margin-bottom:12px}.steps h4{font-size:1.15rem;margin-bottom:6px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.lead{display:grid;gap:14px}.lead label{display:grid;gap:6px;font-size:.85rem;font-weight:500}.lead input,.lead select,.lead textarea{font:inherit;font-size:1rem;padding:12px 14px;border:1px solid rgba(0,0,0,.2);background:#fff;color:#222;border-radius:0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lead .chk{display:flex;gap:10px;align-items:center}.hp{position:absolute;left:-9999px}
.foot{padding:60px 0}.foot .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.foot .mark{display:inline-block;margin-bottom:12px}
.rv{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.rv.in{opacity:1;transform:none}
@media(max-width:860px){.sec{padding:72px 0}.links{display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;padding:24px;gap:18px}.navopen .links{display:flex}.navtoggle{display:block}
.stats,.who,.plans,.steps,.split,.grid2,.foot .wrap{grid-template-columns:1fr}.split{gap:40px}}
.plan:last-child .price b{font-size:2.1rem;white-space:nowrap}
:root{--black:#0F0F0F;--warm:#F5F2ED;--char:#2A2A2A;--sand:#D8CFC4;--copper:#B87333}
body{font-family:Inter,sans-serif;color:var(--black);background:var(--warm)}
h1,h2,h3,h4,.big,.btn,.eyebrow,.script,.wm,.links a,.stats b,.steps .n{font-family:Montserrat,sans-serif}
h1,.big,h2,h3{font-weight:600;text-transform:uppercase;letter-spacing:.01em}
h1{font-size:clamp(2.4rem,6vw,5rem);line-height:1;max-width:11em}.big{font-size:clamp(1.8rem,3.8vw,3.1rem);line-height:1.08;margin-bottom:28px}.big span{color:var(--copper)}
.eyebrow,.script{font-size:.75rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--copper);margin-bottom:16px;display:flex;align-items:center;gap:14px}.script:before,.eyebrow:before{content:"";width:40px;height:2px;background:currentColor;transform:skewX(-30deg)}
.lede{font-size:1.08rem;max-width:38em;margin-top:20px}
.top{position:fixed;left:0;right:0;color:#fff;background:linear-gradient(rgba(15,15,15,.6),transparent)}.links{background:var(--black)}@media(min-width:861px){.links{background:none}}.links a{font-weight:600;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.mark{display:flex;align-items:center;gap:14px;text-decoration:none;padding:6px 0}.mark img{width:88px;height:auto;min-height:24px}.wm{font-weight:600;letter-spacing:.3em;font-size:.9rem;line-height:1.15;display:flex;flex-direction:column}.wm small{font-weight:500;font-size:.58rem;letter-spacing:.52em;opacity:.75}
.btn{background:var(--warm);color:var(--black);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:600;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);padding:16px 30px}.btn:hover{background:var(--copper);color:#fff}.btn.ghost{background:transparent;color:#fff;border-color:#fff;clip-path:none}.btn.dark{background:var(--black);color:var(--warm)}.btn.dark:hover{background:var(--copper)}
.hero{min-height:100vh;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;color:#fff;padding:140px 0 90px}.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,15,15,.25),rgba(15,15,15,.9))}.herotext{position:relative}
.ticker{background:var(--black);color:var(--warm);padding:40px 0;border-top:3px solid var(--copper)}.stats b{font-weight:600;font-size:2.2rem;color:var(--warm)}.stats span{color:var(--sand);font-size:.9rem}
.partner{background:var(--warm);padding:110px 0}.partner .btn{margin-top:26px}.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pgrid img{width:100%;aspect-ratio:4/3;object-fit:cover}.pgrid img:first-child{grid-column:span 2;aspect-ratio:16/9}
.who div{background:#fff;padding:28px;border-left:4px solid var(--copper)}.who h4{font-weight:600}
.homes-sec{background:#fff}.mapwrap{display:grid;grid-template-columns:2.2fr 1fr;gap:30px;align-items:center;margin:40px 0 34px;background:var(--black);color:var(--warm);padding:30px}
.okmap{width:100%;height:auto;display:block}.okmap .state{fill:var(--char);stroke:var(--sand);stroke-width:1.5}.city circle{fill:var(--sand);opacity:.6}.city text{fill:var(--sand);font:500 13px Inter,sans-serif;opacity:.7}.anywhere{fill:var(--sand);opacity:.18;font:600 26px Montserrat,sans-serif;letter-spacing:.2em}
.cluster{cursor:pointer;outline:none}.cluster .halo{fill:var(--copper);opacity:.18;transition:.25s;transform-box:fill-box;transform-origin:center}.cluster .dot{fill:var(--copper);stroke:var(--warm);stroke-width:3}.cluster .cl{fill:var(--warm);font:600 17px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.08em}.cluster .cs{fill:var(--sand);font:500 13px Inter,sans-serif}
.cluster:hover .halo,.cluster:focus .halo,.cluster.on .halo{opacity:.45;transform:scale(1.35)}
.mapside .ml{font:600 1.3rem Montserrat,sans-serif;text-transform:uppercase;color:var(--copper);min-height:2.6em}.legend{list-style:none;display:grid;gap:10px;margin-top:16px;color:var(--sand);font-size:.9rem}.legend b{color:var(--warm);display:block;font-family:Montserrat;font-weight:600}.linkbtn{background:none;border:1px solid var(--sand);color:var(--warm);padding:8px 14px;font:500 .75rem Montserrat;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.homes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.home{display:block;text-decoration:none;color:inherit;background:var(--warm);transition:transform .25s,box-shadow .25s,opacity .25s}.home:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(15,15,15,.12)}.home img{width:100%;aspect-ratio:3/2;object-fit:cover}.hb{padding:16px 18px 18px}.hs{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--copper);font-weight:600}.home h4{font-weight:600;font-size:1.02rem;margin:4px 0 10px}.hm{display:flex;justify-content:space-between;font-size:.85rem;align-items:center}.rt{font-weight:700}.rt em{font-style:normal;font-weight:400;color:#666}.stay{font-size:.72rem;border:1px solid var(--sand);padding:3px 8px}.home.hide{display:none}
.mosaic{display:none}
.red{background:var(--black);color:var(--warm);position:relative;overflow:hidden}.red .wrap{position:relative}.watermark{position:absolute;right:-6%;top:40px;width:60%;opacity:.05;pointer-events:none}
.plan{background:var(--char);color:var(--warm);border:1px solid #3a3a3a}.plan.feat{background:var(--warm);color:var(--black);border-color:var(--copper);outline:2px solid var(--copper)}.plan h3{font-size:1.1rem;letter-spacing:.08em}.plan .price b{font-family:Montserrat;font-weight:600;color:var(--warm)}.plan.feat .price b{color:var(--black)}.tag{color:var(--copper);font-weight:600;letter-spacing:.2em}
.checks li:before{color:var(--copper)}.tilt{border:10px solid #fff;box-shadow:0 24px 50px rgba(0,0,0,.2);aspect-ratio:4/5;object-fit:cover;clip-path:polygon(6% 0,100% 0,94% 100%,0 100%)}
.sand{background:var(--sand)}.steps .n{font-weight:600;font-size:2.4rem;color:var(--black)}.steps .n:after{content:"";display:block;width:34px;height:3px;background:var(--copper);margin-top:6px;transform:skewX(-30deg)}
.quote{position:relative;background-size:cover;background-position:center;color:#fff;padding:150px 0}.quote .wrap{position:relative}
.staystrip{display:flex;justify-content:space-between;align-items:center;gap:30px;border:2px solid var(--black);padding:40px}.staystrip h2{font-size:1.6rem}
.lead{background:#fff;padding:32px;border-top:4px solid var(--copper)}.lead .btn{background:var(--black);color:var(--warm)}.lead .btn:hover{background:var(--copper)}
.foot{background:var(--black);color:var(--warm)}.foot p{color:var(--sand)}
@media(max-width:1000px){.homes{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.mapwrap{grid-template-columns:1fr;padding:18px}.staystrip{flex-direction:column;align-items:flex-start}.hero{min-height:88vh}.mark img{width:64px}.wm{font-size:.78rem}.partner{padding:72px 0}.cluster .cl{font-size:22px}.cluster .cs{font-size:17px}}
@media(max-width:520px){.homes{grid-template-columns:1fr 1fr;gap:10px}.hb{padding:10px}.home h4{font-size:.85rem}.hm{flex-direction:column;align-items:flex-start;gap:6px}}
.cluster .hit{fill:transparent}.cluster .ld{stroke:var(--sand);stroke-width:1;opacity:.6}
@media(max-width:860px){.city{display:none}.anywhere{display:none}.cluster .cl{font-size:30px}.cluster .cs{font-size:22px}.cluster .dot{r:14}.cluster .hit{r:44}}
.lg{all:unset;cursor:pointer;display:block;padding:8px 0;border-bottom:1px solid #333;width:100%}.lg:hover b,.lg:focus b{color:var(--copper)}
/* Typography: Montserrat 900 uppercase headlines, tracked uppercase labels; Inter body */
h1,.big,h2,h3{text-transform:uppercase;font-weight:900;letter-spacing:-.02em}
h1{font-size:clamp(2.5rem,6.6vw,5.6rem);line-height:.95}.big{line-height:1}
h4{font-weight:700}.btn,.stats b,.steps .n,.plan .price b{font-weight:900}.cluster .cl,.hs,.tag,.eyebrow,.script,.legend b,.mapside .ml,.links a{font-weight:700}
.links a{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem}
.wm{flex-direction:column;letter-spacing:0;font-size:1.15rem;text-transform:none;font-weight:600!important}.wm i{font-style:normal;color:var(--copper)}.wm small{letter-spacing:.42em;font-size:.56rem;text-transform:uppercase;margin-top:3px;opacity:.75}
.mark{padding:10px 0;gap:14px}.mark img{width:72px}
.btn{clip-path:none;border-radius:4px;background:var(--copper);color:#fff;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700!important;padding:16px 28px}.btn:hover{background:#9c5f28;color:#fff}
.btn.ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.8);border-radius:4px}.btn.dark{background:var(--copper);color:#fff}.links .btn{background:var(--copper);color:#fff}.lead .btn,.staystrip .btn{background:var(--copper);color:#fff}
.eyebrow,.script{letter-spacing:.3em}
.mapside .ml{text-transform:uppercase;font-size:1.3rem;font-weight:900}.cluster .cl{text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.plan h3{text-transform:uppercase;letter-spacing:.06em;font-size:1.15rem}.plan{border-radius:6px}.home{border-radius:6px;overflow:hidden}.mapwrap{border-radius:8px}.who div{border-radius:0 6px 6px 0}.lead{border-radius:0 0 6px 6px}
.signband{background:var(--char);color:var(--warm);padding:70px 0}.signband .wrap{display:flex;align-items:center;gap:40px}.signcard{background:var(--black);border:6px solid #8a5a33;padding:34px 40px;border-radius:4px;box-shadow:0 20px 40px rgba(0,0,0,.35);display:flex;flex-direction:column;align-items:center;gap:14px;min-width:300px}.signcard img{width:170px}.signcard span{font:600 1.5rem Montserrat,sans-serif}.signband p{max-width:34em;color:var(--sand)}.signband h2{font-size:clamp(1.6rem,3vw,2.4rem);margin-bottom:12px}
@media(max-width:860px){.signband .wrap{flex-direction:column;align-items:flex-start}.signcard{min-width:0;width:100%}.wm{font-size:1rem}.mark img{width:56px}}
.hero .script,.quote .script{color:var(--sand)}.wm>span{white-space:nowrap}
.newb{display:inline-block;background:var(--copper);color:#fff;font:700 .68rem Montserrat,sans-serif;letter-spacing:.16em;text-transform:uppercase;padding:4px 9px;border-radius:3px}

.thanks{align-self:start}.thanks h3{font-family:Montserrat,sans-serif;margin:0 0 8px}.cf-turnstile{min-height:65px}#formmsg a{color:var(--copper)}
[hidden]{display:none!important}
.feats{padding-top:64px;padding-bottom:64px}.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:14px}.fcard{background:#fff;border-radius:6px;overflow:hidden;border-top:4px solid var(--copper);box-shadow:0 10px 30px rgba(0,0,0,.08)}.fcard img{width:100%;height:240px;object-fit:cover;display:block}.fcard div{padding:24px 26px 28px}.fcard h3{font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.04em;font-size:1.1rem;margin:0 0 10px}.fcard p{margin:0;line-height:1.6}.checks b{font-weight:700}@media(max-width:860px){.fgrid{grid-template-columns:1fr}.fcard img{height:200px}}
.fcard picture{display:block;background:#efe9df;padding:18px 18px 0}.fcard img.mock{height:222px;object-fit:cover;object-position:top;border-radius:8px 8px 0 0;box-shadow:0 8px 20px rgba(0,0,0,.15)}@media(max-width:860px){.fcard img.mock{height:182px}}
