:root{--sage:#a9b493;--sage2:#d7ddc9;--olive:#707766;--dark:#242823;--cream:#f4f0e7;--white:#fff;--line:rgba(255,255,255,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--dark);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}body.menu-open{overflow:hidden}img{display:block;width:100%;height:auto}a{text-decoration:none;color:inherit}button{font:inherit}.cursor-glow{position:fixed;z-index:40;width:360px;height:360px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.14),transparent 65%);transform:translate(-50%,-50%);opacity:0;transition:opacity .25s;mix-blend-mode:overlay}.site-header{position:fixed;z-index:60;left:0;right:0;top:0;height:82px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;color:#fff;transition:.45s ease}.site-header.scrolled{height:68px;background:rgba(43,49,42,.88);backdrop-filter:blur(18px);box-shadow:0 8px 30px rgba(0,0,0,.08)}.brand{display:flex;align-items:center;gap:12px;font-family:Georgia,serif;font-size:20px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.48);border-radius:50%;font-family:Georgia,serif;font-style:italic}.nav{display:flex;align-items:center;gap:28px;font-size:13px;letter-spacing:.06em}.nav>a{position:relative}.nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:#fff;transform:scaleX(0);transform-origin:right;transition:transform .35s}.nav>a:hover:after{transform:scaleX(1);transform-origin:left}.nav-cta{padding:11px 16px;border:1px solid rgba(255,255,255,.55);border-radius:999px}.nav-toggle{display:none;background:none;border:0}.hero{position:relative;min-height:100svh;display:grid;align-items:end;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:-5%;background:url('assets/contact.png') center 18%/cover no-repeat;transform:scale(1.08);animation:heroDrift 16s ease-in-out infinite alternate}.hero-overlay{position:absolute;inset:0;background:linear-gradient(100deg,rgba(28,32,27,.84) 0%,rgba(43,51,39,.48) 52%,rgba(25,27,23,.2) 100%),linear-gradient(0deg,rgba(25,28,24,.45),transparent 45%)}@keyframes heroDrift{to{transform:scale(1.15) translate3d(-1.5%,1%,0)}}.hero-content{position:relative;z-index:2;padding:150px clamp(22px,7vw,110px) 11vh;max-width:930px}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700}.hero-title{font:400 clamp(76px,14vw,190px)/.72 Georgia,serif;letter-spacing:-.07em;margin:28px 0 38px}.hero-title span{display:block;transform:translateY(130%);opacity:0;animation:titleIn 1.2s cubic-bezier(.18,.8,.2,1) forwards}.hero-title span:nth-child(2){margin-left:.48em;animation-delay:.12s;font-style:italic}.hero-copy{max-width:640px;font:400 clamp(17px,2vw,23px)/1.55 Georgia,serif;color:rgba(255,255,255,.9)}@keyframes titleIn{to{transform:none;opacity:1}}.hero-actions{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:15px 23px;font-size:13px;font-weight:700;letter-spacing:.04em;transition:.3s}.button.primary{background:var(--sage2);color:var(--dark)}.button.primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.18)}.button.ghost{border:1px solid rgba(255,255,255,.55);color:#fff}.scroll-cue{position:absolute;right:clamp(22px,5vw,70px);bottom:42px;z-index:3;display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.scroll-cue i{width:46px;height:1px;background:#fff;position:relative;overflow:hidden}.scroll-cue i:after{content:"";position:absolute;inset:0;background:#fff;transform:translateX(-100%);animation:swish 1.8s ease-in-out infinite}@keyframes swish{50%,100%{transform:translateX(100%)}}.section{padding:clamp(80px,10vw,150px) clamp(20px,6vw,90px)}.section-kicker{color:var(--olive);margin-bottom:24px}.split-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end;margin-bottom:60px}.split-heading h2,.section-head h2,.location h2,.contact h2{font:400 clamp(46px,7vw,94px)/.98 Georgia,serif;letter-spacing:-.045em;margin:0}.split-heading h2 em,.section-head h2 em,.location h2 em,.contact h2 em{font-weight:400;color:var(--olive)}.split-heading p,.section-head p,.location-copy>p{font-size:16px;line-height:1.8;color:#60665e;max-width:560px}.visual-frame{position:relative;overflow:hidden;border-radius:4px;background:#ddd;box-shadow:0 25px 70px rgba(32,40,30,.12)}.visual-frame img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}.visual-frame:hover img{transform:scale(1.03)}.frame-label{position:absolute;left:20px;bottom:20px;background:rgba(33,39,32,.82);color:#fff;padding:10px 14px;font-size:11px;letter-spacing:.06em;backdrop-filter:blur(10px)}.homes{background:var(--dark);color:#fff}.homes .section-kicker{color:var(--sage)}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:80px}.section-head p{color:rgba(255,255,255,.65)}.home-feature{display:grid;grid-template-columns:1.2fr .8fr;min-height:650px;border-top:1px solid var(--line);padding:70px 0;gap:7vw;align-items:center}.home-feature.reverse{grid-template-columns:.8fr 1.2fr}.home-feature.reverse .home-image{order:2}.home-image{overflow:hidden}.home-image img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.home-feature:hover .home-image img{transform:scale(1.035)}.home-copy{position:relative}.home-index{position:absolute;right:0;top:-12px;font:italic 70px/1 Georgia,serif;color:rgba(255,255,255,.09)}.home-copy h3{font:400 clamp(44px,6vw,80px)/1 Georgia,serif;margin:12px 0 22px}.home-copy>p{color:rgba(255,255,255,.65);line-height:1.7;max-width:520px}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin:28px 0 30px;border:1px solid var(--line)}.spec-grid span{padding:18px;background:var(--dark);font-size:12px;color:rgba(255,255,255,.62)}.spec-grid b{display:block;color:#fff;font-size:17px;margin-bottom:4px}.text-link{background:none;border:0;color:#fff;padding:0;cursor:pointer;font-weight:700}.text-link span{display:inline-block;transition:.3s}.text-link:hover span{transform:translate(5px,-5px)}.coming-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.coming-grid>div{padding:45px}.coming-grid>div+div{border-left:1px solid var(--line)}.coming-grid span{color:var(--sage);font-size:12px}.coming-grid h3{font:400 34px Georgia,serif;margin:12px 0 5px}.coming-grid p{color:rgba(255,255,255,.5);margin:0}.location{background:var(--sage2)}.location-copy{max-width:1180px}.distance-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(40,50,38,.14);margin:45px 0 60px}.distance-row div{background:var(--sage2);padding:22px}.distance-row b{display:block;font:400 28px Georgia,serif}.distance-row span{font-size:12px;color:#656d60}.location-visual,.map-strip{overflow:hidden}.location-visual img,.map-strip img{transition:transform 1s}.location-visual:hover img,.map-strip:hover img{transform:scale(1.025)}.map-strip{margin-top:24px;max-height:690px}.gallery{background:#eee9df}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.gallery-grid figure{margin:0;overflow:hidden;box-shadow:0 18px 50px rgba(36,40,35,.1)}.gallery-grid img{transition:transform .8s}.gallery-grid figure:hover img{transform:scale(1.025)}.contact{min-height:85vh;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.contact-bg{position:absolute;inset:0;background:url('assets/contact.png') center 18%/cover;transform:scale(1.06)}.contact:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(36,41,34,.9),rgba(36,41,34,.28))}.contact-card{position:relative;z-index:2;width:min(700px,100%);background:rgba(47,55,45,.76);backdrop-filter:blur(18px);padding:clamp(28px,5vw,64px);border:1px solid rgba(255,255,255,.22)}.contact .section-kicker{color:var(--sage2)}.contact h2 em{color:var(--sage2)}.contact-card>p{color:rgba(255,255,255,.72);line-height:1.6}.contact-links{display:grid;grid-template-columns:1fr 1fr;margin:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.contact-links a{font:400 24px Georgia,serif;padding:20px 0}.contact-links a+a{padding-left:24px;border-left:1px solid var(--line)}.contact-links small{display:block;font:700 10px Inter,sans-serif;text-transform:uppercase;letter-spacing:.15em;margin-bottom:6px;color:var(--sage2)}footer{background:#1d201c;color:rgba(255,255,255,.66);padding:32px clamp(20px,6vw,90px);display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px}footer .brand{color:#fff}.reveal{opacity:0;transform:translateY(35px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.in-view{opacity:1;transform:none}.tilt-card{transform-style:preserve-3d}.magnetic{will-change:transform}@media (max-width:900px){.nav-toggle{display:grid;gap:6px;padding:12px;z-index:3}.nav-toggle span{display:block;width:26px;height:1px;background:#fff;transition:.3s}.nav{position:fixed;inset:0;background:#2b312a;display:flex;flex-direction:column;justify-content:center;align-items:center;font:400 34px Georgia,serif;transform:translateY(-100%);transition:.55s cubic-bezier(.8,0,.2,1)}.menu-open .nav{transform:none}.menu-open .nav-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .nav-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.nav-cta{font:600 13px Inter,sans-serif;margin-top:12px}.split-heading,.home-feature,.home-feature.reverse{grid-template-columns:1fr}.home-feature.reverse .home-image{order:0}.section-head{display:block}.section-head p{margin-top:24px}.gallery-grid{grid-template-columns:1fr}.hero-title{font-size:clamp(74px,22vw,130px)}.distance-row{grid-template-columns:1fr 1fr}.contact-links{grid-template-columns:1fr}.contact-links a+a{border-left:0;border-top:1px solid var(--line);padding-left:0}.scroll-cue{display:none}footer{align-items:flex-start;flex-direction:column}}@media (max-width:580px){.site-header{height:68px;padding:0 18px}.brand{font-size:17px}.brand-mark{width:36px;height:36px}.hero-content{padding:120px 20px 10vh}.hero-title span:nth-child(2){margin-left:.18em}.hero-actions .button{width:100%}.section{padding:76px 18px}.split-heading{gap:28px;margin-bottom:36px}.home-feature{padding:45px 0;gap:30px}.home-copy h3{font-size:50px}.spec-grid{grid-template-columns:1fr 1fr}.coming-grid{grid-template-columns:1fr}.coming-grid>div+div{border-left:0;border-top:1px solid var(--line)}.coming-grid>div{padding:30px 0}.distance-row{grid-template-columns:1fr 1fr}.distance-row div{padding:16px}.contact{padding:70px 18px}.contact-card{padding:28px 20px}.contact h2{font-size:55px}.cursor-glow{display:none}}
/* v1.1 imagery + interactive local area */
.hero-bg{background-image:url('assets/hero-exterior.jpeg');background-position:center 48%}
.enhanced-gallery{grid-template-columns:1.15fr .85fr}.enhanced-gallery .wide{grid-column:1/-1}.enhanced-gallery figure{min-height:360px}.enhanced-gallery img{height:100%;object-fit:cover}
.area{background:#f4f0e7}.area-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);gap:30px;align-items:start}.live-map{position:sticky;top:92px;background:var(--dark);overflow:hidden}.live-map iframe{display:block;width:100%;height:650px;border:0;filter:saturate(.75) contrast(.95)}.map-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;color:#fff;font-size:12px}.map-actions button,.map-actions a{border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;padding:10px 13px;border-radius:999px;cursor:pointer}.area-panel{border-top:1px solid rgba(36,40,35,.2)}.accordion-item{border-bottom:1px solid rgba(36,40,35,.2)}.accordion-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:22px 4px;background:none;border:0;color:var(--dark);cursor:pointer;font:400 25px Georgia,serif}.accordion-toggle i{font:300 28px/1 Inter,sans-serif;font-style:normal;transition:transform .35s}.accordion-item.open .accordion-toggle i{transform:rotate(45deg)}.accordion-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.2,.7,.2,1)}.accordion-body>*{overflow:hidden}.accordion-item.open .accordion-body{grid-template-rows:1fr}.accordion-item .accordion-body{overflow:hidden}.place{display:block;width:100%;text-align:left;border:0;border-top:1px solid rgba(36,40,35,.09);background:rgba(255,255,255,.22);padding:15px 16px;cursor:pointer;color:var(--dark);transition:.25s}.place:hover{background:var(--sage2);padding-left:22px}.place b{display:block;font-size:13px;margin-bottom:4px}.place span{display:block;color:#6a7067;font-size:12px;line-height:1.45}.place:after{content:'Show on map  →';display:block;margin-top:7px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--olive)}
@media(max-width:900px){.area-layout{grid-template-columns:1fr}.live-map{position:relative;top:auto}.live-map iframe{height:500px}.enhanced-gallery{grid-template-columns:1fr}.enhanced-gallery .wide{grid-column:auto}}
@media(max-width:580px){.live-map iframe{height:390px}.map-actions{align-items:stretch;flex-direction:column}.map-actions button,.map-actions a{text-align:center}.accordion-toggle{font-size:21px;padding:19px 2px}.enhanced-gallery figure{min-height:240px}}

/* v1.2 local area accordion refinements */
.map-strip{display:none!important}
.area-panel{border-top:0;display:grid;gap:12px}
.accordion-item{--section-accent:#8f9b78;--section-tint:rgba(143,155,120,.11);border:1px solid rgba(36,40,35,.11);border-left:7px solid var(--section-accent);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 8px 26px rgba(36,40,35,.045);transition:box-shadow .3s ease,transform .3s ease}
.accordion-item:nth-child(1){--section-accent:#6f8f63;--section-tint:rgba(111,143,99,.13)}
.accordion-item:nth-child(2){--section-accent:#a87552;--section-tint:rgba(168,117,82,.13)}
.accordion-item:nth-child(3){--section-accent:#617f9d;--section-tint:rgba(97,127,157,.13)}
.accordion-item:nth-child(4){--section-accent:#b68a45;--section-tint:rgba(182,138,69,.13)}
.accordion-item:nth-child(5){--section-accent:#7a6d91;--section-tint:rgba(122,109,145,.13)}
.accordion-item:nth-child(6){--section-accent:#5f8f8a;--section-tint:rgba(95,143,138,.13)}
.accordion-item.open{box-shadow:0 14px 34px rgba(36,40,35,.09)}
.accordion-toggle{padding:20px 20px;background:linear-gradient(90deg,var(--section-tint),rgba(255,255,255,.7));font-size:22px;gap:14px}
.accordion-toggle span{min-width:0}
.accordion-toggle i{flex:0 0 34px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--section-accent);color:#fff;font-size:22px}
.accordion-item.open .accordion-toggle{background:var(--section-tint)}
.accordion-body{display:block;max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.2,.7,.2,1)}
.accordion-item.open .accordion-body{max-height:520px}
.place{position:relative;padding:16px 56px 16px 20px;background:#fff;border-top:1px solid rgba(36,40,35,.08)}
.place:hover{background:var(--section-tint);padding-left:24px}
.place:after{position:absolute;right:18px;top:50%;transform:translateY(-50%);content:'↗';display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--section-tint);color:var(--section-accent);font-size:14px;letter-spacing:0;margin:0}
.place b{font-size:14px}.place span{padding-right:8px}
@media(max-width:580px){.area-panel{gap:9px}.accordion-toggle{padding:17px 15px;font-size:19px}.accordion-toggle i{width:31px;height:31px;flex-basis:31px}.place{padding:14px 48px 14px 15px}.place:after{right:12px}}

/* v1.3 map journey interaction */
.map-status{min-height:64px;padding:14px 18px;background:#fff;color:var(--dark);border-bottom:4px solid var(--sage);display:flex;flex-direction:column;justify-content:center}.map-status b{font:400 20px Georgia,serif}.map-status span{font-size:11px;color:#697066;margin-top:4px}.place.selected{background:var(--section-tint);box-shadow:inset 4px 0 0 var(--section-accent)}.map-home{background:var(--sage)!important;border-color:var(--sage)!important;color:#20251f!important;font-weight:700}.live-map iframe{transition:opacity .35s ease}

/* v1.6: brochure site-plan imagery for Barn C and Barn D */
.brochure-home .home-image{background:#a9b493}.brochure-home .home-image a{display:block;height:100%}.brochure-home .home-image img{object-fit:contain;height:100%;max-height:580px;padding:20px}.plan-caption{font-size:13px;line-height:1.65;opacity:.78}

/* v1.7 property image strips */
.property-gallery{min-width:0;max-width:100%;overflow:hidden}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:14px}.gallery-toolbar button{border:1px solid currentColor;border-radius:50%;height:38px;width:38px;background:transparent;color:inherit;cursor:pointer;margin-left:6px}.property-strip{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:12px;overscroll-behavior-x:contain}.property-slide{position:relative;flex:0 0 88%;scroll-snap-align:start;border:0;padding:0;background:#e7e6dc;color:#242823;cursor:zoom-in;overflow:hidden;border-radius:4px}.property-slide img{width:100%;height:380px;object-fit:contain}.property-slide span{display:block;text-align:left;padding:12px 16px;background:#fff;font-size:14px}.strip-help{font-size:12px;opacity:.7}.home-feature>*{min-width:0}#property-lightbox{border:0;border-radius:8px;padding:16px;width:min(1100px,94vw);max-height:94vh;background:#f4f0e7;color:#242823}#property-lightbox::backdrop{background:rgba(0,0,0,.85)}.lightbox-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.lightbox-head button{font-size:24px;border:0;background:none;cursor:pointer}#lightbox-image{max-height:80vh;object-fit:contain;width:100%}@media(max-width:700px){.property-slide img{height:280px}.gallery-toolbar{font-size:12px}.property-slide{flex-basis:92%}}

.property-pending{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:5px;opacity:.65}.property-pending span{text-transform:uppercase;letter-spacing:.15em;font-size:12px}.home-feature.reverse .property-gallery{order:2}@media(max-width:700px){.home-feature.reverse .property-gallery{order:0}}

/* v1.9: four large, visible images for each property */
.home-feature.image-grid-feature{grid-template-columns:1fr;gap:32px;min-height:0}.image-grid-feature .home-copy{grid-row:1;max-width:900px}.image-grid-feature .property-gallery{grid-row:2;order:0;width:100%}.property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.property-image{display:block;width:100%;min-width:0;padding:0;border:1px solid #ccd2c0;border-radius:8px;overflow:hidden;background:#a5b18e;cursor:zoom-in;text-align:left;color:#283328}.property-image img{width:100%;aspect-ratio:1.42;object-fit:contain;height:auto}.property-image>span{display:flex;justify-content:space-between;background:#fffdf7;padding:14px 18px;font:15px system-ui,sans-serif}.property-image:hover{box-shadow:0 8px 25px #0002}.property-image:focus-visible{outline:3px solid #957346;outline-offset:4px}.image-help{font-size:13px;opacity:.7}.model-link{margin-top:8px;display:inline-flex}@media(max-width:600px){.property-grid{gap:12px}.property-image>span{padding:10px;font-size:12px}.property-image img{aspect-ratio:1.3}.home-feature.image-grid-feature{gap:20px}}
