
:root{--forest:#183e43;--teal:#356b69;--cream:#faf6ee;--orange:#c96b3d;--ink:#243c3c;--muted:#64716e}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 Inter,Arial,sans-serif}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;line-height:1.07;font-weight:600;margin:.2em 0 .45em}
h1{font-size:clamp(3.4rem,7vw,6.5rem)}h2{font-size:clamp(2.5rem,4.3vw,4.1rem)}h3{font-size:2rem}p{margin:.5em 0 1.3em}a{color:var(--teal)}
header{position:sticky;top:0;z-index:10;background:#faf6eef5;backdrop-filter:blur(12px);border-bottom:1px solid #e6e0d4}
.nav{max-width:1220px;margin:auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.7rem;font-weight:700;color:var(--forest);text-decoration:none;white-space:nowrap}
nav{display:flex;gap:23px;flex-wrap:wrap}nav a{text-decoration:none;color:var(--forest);font-size:.86rem;font-weight:700}
nav a:hover,nav a[aria-current=page]{color:var(--orange)}
.hero{min-height:680px;height:77vh;max-height:850px;position:relative;display:flex;align-items:flex-end;background:#183e43 url('assets/lot-101-driveway.jpg') center 56%/cover no-repeat}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,38,40,.77),rgba(12,38,40,.26) 66%,rgba(12,38,40,.06))}
.hero-inner{position:relative;color:white;max-width:1220px;width:100%;margin:auto;padding:60px 32px}
.hero h1{max-width:760px}.hero p{max-width:650px;font-size:1.12rem}
.eyebrow{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:var(--orange)}
.hero .eyebrow{color:#f2d6b6}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.btn{display:inline-block;background:var(--orange);border:2px solid var(--orange);border-radius:100px;padding:11px 24px;color:white;text-decoration:none;font-weight:700}
.btn.alt{background:transparent;color:inherit;border-color:currentColor}.btn:hover{filter:brightness(.94)}
main .wrap{max-width:1180px;margin:auto;padding:80px 26px}.center{text-align:center}.center p{max-width:780px;margin:0 auto 22px}
.lead{font-size:1.18rem;color:#4c625f}.navcards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-top:35px}
.navcard{background:white;border:1px solid #e6e3d9;border-radius:14px;padding:26px 22px;text-decoration:none;color:var(--forest);box-shadow:0 8px 24px #1a3e3a10}
.navcard h3{font-size:1.8rem}.navcard p{font-size:.92rem;color:var(--muted)}.navcard strong{color:var(--orange)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.split img,.wideimg{width:100%;height:auto;display:block;border-radius:13px}
.soft{background:#f1ede3}.dark{background:var(--forest);color:white}.dark h2,.dark h3{color:white}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery figure{margin:0}.gallery img{width:100%;height:235px;object-fit:cover;border-radius:10px;cursor:zoom-in}.gallery figcaption{font-size:.85rem;color:var(--muted);padding-top:5px}
.rates{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rate{background:white;padding:30px;border:1px solid #e5e1d6;border-radius:14px}
.price{font:600 2.5rem "Cormorant Garamond",Georgia,serif;color:var(--forest)}
.steps{counter-reset:steps;display:grid;gap:14px;max-width:900px;margin:30px auto}.step{counter-increment:steps;position:relative;background:white;border-radius:12px;padding:22px 25px 22px 85px;border:1px solid #e6e3da}
.step:before{content:counter(steps);position:absolute;left:23px;top:21px;background:var(--forest);color:white;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:700}
.step h3{font-size:1.65rem;margin:0}.step p{margin:4px 0 0}
.pills{display:flex;gap:9px;flex-wrap:wrap}.pills span{padding:7px 14px;border-radius:100px;background:#e9efeb;font-size:.9rem;font-weight:700}
.mapgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.mapgrid img{width:100%;border-radius:12px}.mapgrid figcaption{font-size:.9rem;color:var(--muted)}
footer{background:#14353a;color:white;text-align:center;padding:35px 20px;font-size:.9rem}footer a{color:#f8d7b9}
.note{font-size:.9rem;color:var(--muted)}.availability{background:white;border-radius:14px;padding:24px;margin:20px 0}.availability b{color:var(--orange)}
.jotform{min-height:320px} .mobile-note{display:none}
@media(max-width:900px){.nav{align-items:flex-start;flex-direction:column}.navcards{grid-template-columns:repeat(2,1fr)}.split,.mapgrid{grid-template-columns:1fr}.hero{height:70vh;min-height:560px}}
@media(max-width:580px){nav{gap:10px 15px}.navcards,.rates,.gallery{grid-template-columns:1fr}.gallery img{height:auto}.hero{min-height:560px;background-position:50% center}.hero-inner{padding:35px 23px}h1{font-size:3.5rem}main .wrap{padding:55px 22px}.step{padding-left:75px}}

/* Click-to-enlarge gallery with next/previous navigation */
.gallery a[data-gallery-photo]{display:block;cursor:zoom-in}
.lightbox[hidden]{display:none!important}
.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(9,24,27,.96);display:flex;align-items:center;justify-content:center;color:white;padding:70px 78px 55px}
.lightbox-figure{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.lightbox-image{display:block;max-width:100%;max-height:calc(100dvh - 170px);width:auto;height:auto;object-fit:contain;border-radius:5px}
.lightbox-caption{color:#fff;text-align:center;font-size:1rem}
.lightbox-count{font-size:.83rem;color:#c8d6d3}
.lightbox button{appearance:none;border:0;color:#fff;background:rgba(255,255,255,.16);cursor:pointer;border-radius:50%;display:grid;place-items:center}
.lightbox button:hover,.lightbox button:focus-visible{background:rgba(255,255,255,.32)}
.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:2.7rem;line-height:1}
.lightbox-prev{left:16px}.lightbox-next{right:16px}
.lightbox-close{position:absolute;top:15px;right:18px;width:48px;height:48px;font-size:2.2rem}
body.lightbox-open{overflow:hidden}
@media(max-width:600px){.lightbox{padding:65px 10px 75px}.lightbox-image{max-height:calc(100dvh - 195px)}.lightbox-arrow{top:auto;bottom:12px;transform:none}.lightbox-prev{left:calc(50% - 70px)}.lightbox-next{right:calc(50% - 70px)}}

/* Header alignment fix — keep brand left and links in a single desktop row */
.site-header,header{width:100%}
header .nav{max-width:1440px;width:100%;margin:0 auto;padding:16px 32px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:28px}
header .logo{flex:0 0 auto;font-size:1.65rem;white-space:nowrap}
header nav{display:flex;flex:0 1 auto;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:clamp(12px,1.7vw,25px)}
header nav a{white-space:nowrap;line-height:1.4}
@media(max-width:960px){header .nav{flex-direction:column;align-items:center;gap:8px;padding:12px 20px}header nav{flex-wrap:wrap;justify-content:center;gap:8px 18px}}
@media(max-width:560px){header .logo{font-size:1.45rem}header nav a{font-size:.78rem}}
