:root{--ink:#0B1F26;--paper:#FFFFFF;--accent:#C7D1D5;--steel:#7A7D7D;--mist:#C7D1D5;--accent-dark:#2A5D6F;--line:rgba(199,209,213,.28);--soft:rgba(199,209,213,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,sans-serif;line-height:1.75;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,p,ul{margin:0}h1,h2,h3,h4,h5{line-height:1.15}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent-dark);outline-offset:6px}img{display:block;max-width:100%}button:disabled{cursor:default;opacity:.45}.wrap{max-width:1380px;margin:0 auto;padding:0 64px}.skip-link{position:absolute;top:-90px;left:20px;padding:12px;background:var(--paper);color:var(--ink);z-index:999}.skip-link:focus{top:12px}.eyebrow{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.13em;color:var(--accent-dark)}
nav#nav{position:fixed;inset:0 0 auto;z-index:100;background:var(--ink);transition:box-shadow .3s,background .3s;border-bottom:1px solid var(--line)}nav#nav.scrolled{background:rgba(11,31,38,.96);backdrop-filter:blur(14px);box-shadow:0 6px 24px rgba(11,31,38,.08)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;height:100px}.brand{flex:none}.brand img{width:188px;height:auto}.nav-links{display:flex;align-items:center;gap:27px}.nav-links a{color:var(--paper);font-size:12px;font-weight:500;white-space:nowrap;position:relative}.nav-links a:not(.nav-cta)::after{content:'';position:absolute;bottom:-7px;left:0;right:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .22s}.nav-links a:hover::after{transform:scaleX(1)}.nav-cta{border:1px solid rgba(199,209,213,.6);padding:12px 18px;transition:color .22s,background .22s}.nav-cta:hover{background:var(--paper);color:var(--ink)}.menu-btn{display:none;color:var(--paper);background:none;border:1px solid var(--line);padding:10px;line-height:1}
.hero{background:var(--ink);color:var(--paper);padding:164px 0 0;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;column-gap:58px;align-items:center}.hero-copy{padding:16px 0 44px}.hero .eyebrow{color:var(--accent);margin-bottom:28px}.hero h1{font-size:clamp(42px,4.3vw,64px);font-weight:500;line-height:1.1;letter-spacing:-.04em;max-width:15ch}.hero h1 em{font-style:normal;color:var(--mist)}.slogan{margin:28px 0 24px;display:flex;gap:14px;align-items:center}.slogan-line{width:28px;height:1px;background:var(--accent);flex-shrink:0}.slogan-line:last-child{display:none}.slogan-text{font-size:12px;letter-spacing:.055em;text-transform:none;color:var(--accent);line-height:1.7}.lede{font-size:16px;color:var(--accent);line-height:1.8;max-width:56ch}.hero-actions{display:flex;align-items:center;gap:16px;margin-top:30px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:14px 23px;border:1px solid transparent;border-radius:0;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;transition:background .22s,color .22s,border-color .22s}.btn-primary{background:var(--paper);color:var(--ink)}.btn-primary:hover{background:var(--accent)}.btn-ghost{border-color:var(--line);color:var(--paper)}.btn-ghost:hover{border-color:var(--paper);background:rgba(255,255,255,.05)}.hero-visual{position:relative;align-self:stretch;min-height:590px;overflow:hidden;margin-bottom:42px;background:var(--accent-dark)}.hero-land{width:100%;height:100%;position:absolute;object-fit:cover;object-position:53% center;animation:land-drift 32s ease-in-out infinite alternate;animation-play-state:paused}.hero-visual.motion-active .hero-land{animation-play-state:running}.land-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,38,.04) 30%,rgba(11,31,38,.68))}.visual-label{position:absolute;left:28px;right:28px;bottom:72px;display:flex;align-items:center;gap:16px;color:var(--paper);font-size:10px;letter-spacing:.13em}.visual-label span:first-child{font-size:16px;font-weight:600;letter-spacing:.06em}.visual-label span:last-child{border-left:1px solid var(--line);padding-left:16px}.motion-control{position:absolute;bottom:22px;left:28px;border:0;background:none;color:var(--paper);font-size:12px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.5)}.motion-control span{margin-left:16px}.hero-meta{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);padding:30px 0 32px;gap:24px}.hero-meta .item{border-right:1px solid var(--line);padding-right:24px}.hero-meta .item:last-child{border:0}.hero-meta .k{display:block;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:7px}.hero-meta .v{display:block;font-size:13px;line-height:1.6;color:var(--paper)}
.section{padding:112px 0}.sec-head{display:flex;flex-direction:column;gap:22px;align-items:flex-start;text-align:left;margin-bottom:56px}.sec-head .eyebrow{display:block}.sec-head h2{font-size:clamp(30px,3.3vw,46px);font-weight:500;letter-spacing:-.035em;max-width:24ch;line-height:1.16}.cards{display:grid;grid-template-columns:1fr 1fr;column-gap:70px}.card{display:grid;grid-template-columns:30px 1fr;column-gap:20px;padding:34px 0 40px;border-top:1px solid var(--mist);transition:border-color .25s}.card:hover{border-color:var(--accent-dark)}.card .idx{grid-row:1/3;font-size:12px;color:var(--accent-dark);padding-top:3px;letter-spacing:.05em}.card h3{font-size:21px;font-weight:500;letter-spacing:-.02em;line-height:1.3;margin-bottom:16px}.card p{font-size:15px;color:var(--ink);line-height:1.8}.path{background:var(--ink);color:var(--paper)}.on-ink .eyebrow{color:var(--accent)}.steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative;gap:0;border-top:1px solid var(--accent)}.step{padding:34px 32px 0 0;position:relative}.step::before{content:'';position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--accent)}.step .n{font-size:12px;color:var(--accent);letter-spacing:.1em}.step h3{font-size:21px;font-weight:500;letter-spacing:-.02em;margin:22px 0 16px}.step p{font-size:14px;color:var(--accent);line-height:1.85;max-width:28ch}.door-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.door{padding-top:28px;border-top:1px solid var(--mist)}.door .eyebrow{margin-bottom:24px}.door h3{font-size:clamp(27px,3vw,39px);font-weight:500;letter-spacing:-.035em;line-height:1.18;max-width:19ch;margin-bottom:26px}.door p{font-size:16px;line-height:1.8}.door ul{padding:28px 0 0;list-style:none}.door li{position:relative;padding:16px 0 16px 25px;font-size:14px;border-bottom:1px solid var(--mist)}.door li::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:5px;background:var(--accent-dark);border:1px solid var(--accent-dark)}.door:nth-child(2){border-top-color:var(--accent-dark)}.consulting{background:var(--ink);color:var(--paper)}.consulting-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:90px}.consulting-text p{font-size:16px;color:var(--accent);margin-bottom:24px;line-height:1.85}.consulting-text p:last-child{margin:0}.consulting-list{list-style:none;padding:0;display:flex;flex-direction:column;justify-content:space-between}.consulting-list li:not(.divider){font-size:16px;padding:20px 0 20px 28px;position:relative}.consulting-list li:not(.divider)::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:7px;height:7px;background:var(--accent);border:1px solid var(--accent)}.consulting-list .divider{height:1px;background:var(--line)}.btn-dark{background:var(--ink);color:var(--paper)}.btn-dark:hover{background:var(--accent-dark)}.consulting-link{margin-top:40px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.tmember{display:flex;flex-direction:column;align-items:start}.tmember img{width:100%;aspect-ratio:4/4.4;object-fit:cover;object-position:center 28%;margin-bottom:30px}.tmember h3{font-size:21px;font-weight:500;letter-spacing:-.025em;line-height:1.3;margin-bottom:10px}.tmember .role{font-size:11px;color:var(--accent-dark);letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px}.tmember .bio{font-size:14px;line-height:1.9;margin-bottom:25px}.tlink{margin-top:auto}.cta{background:var(--ink);color:var(--paper);padding:94px 0}.cta .inner{display:grid;grid-template-columns:1.2fr 1fr;column-gap:80px;align-items:start}.cta h2{font-size:clamp(32px,4vw,52px);font-weight:500;letter-spacing:-.035em;line-height:1.18;grid-row:1/3}.cta h2 em{font-style:normal;color:var(--accent)}.cta p{color:var(--accent);font-size:16px;line-height:1.85}.cta .btn{justify-self:start;margin-top:28px}footer{background:var(--ink);color:var(--paper);border-top:1px solid var(--line);padding:58px 0 26px}.foot-top{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-bottom:56px}.foot-brand img{width:220px;height:auto;margin-bottom:24px}.foot-brand p{font-size:14px;color:var(--accent);max-width:38ch}.foot-cols{display:grid;grid-template-columns:1fr 1.25fr;gap:28px}.foot-col{display:flex;flex-direction:column;align-items:start;gap:12px;font-size:13px;color:var(--accent)}.foot-col h4{color:var(--paper);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.foot-col a:hover{color:var(--paper)}.foot-disclosure{border-top:1px solid var(--line);padding-top:28px}.foot-disclosure h5{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px;color:var(--accent)}.foot-disclosure p{font-size:12px;line-height:1.9;color:var(--accent)}.foot-bottom{padding-top:30px;font-size:11px;color:var(--accent)}
.entitlement-film{margin-top:76px;padding-top:38px;border-top:1px solid var(--line)}.film-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.film-heading .eyebrow{color:var(--accent);font-size:10px;margin-bottom:15px}.film-heading h3{font-size:32px;font-weight:500;letter-spacing:-.03em}.film-duration{color:var(--accent);font-size:12px}.film-screen{position:relative;aspect-ratio:1.86/1;background:var(--ink);overflow:hidden;border:1px solid var(--line)}.film-aerial{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;opacity:.6;transition:opacity .55s}.film-screen[data-scene="1"] .film-aerial{opacity:.26}.film-screen:not([data-scene="0"]):not([data-scene="1"]) .film-aerial{opacity:0}.film-vignette{position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,31,38,.95),rgba(11,31,38,.04) 42%,rgba(11,31,38,.1))}.planning-drawing{position:absolute;width:80%;height:88%;right:2%;top:3%;transition:opacity .45s,transform .6s;transform:translateX(4%)}.film-screen[data-scene="0"] .planning-drawing{opacity:0}.film-screen[data-scene="1"] .planning-drawing{opacity:.85;transform:translateX(0)}.film-screen:not([data-scene="0"]):not([data-scene="1"]) .planning-drawing{opacity:1;transform:translateX(0)}.plan-label{fill:var(--accent);font-family:Montserrat,sans-serif;font-size:11px;letter-spacing:.06em}.plan-label.small{font-size:9px}.plan-layer{opacity:0;transform:translateY(7px);transition:opacity .45s,transform .6s}.plan-layer.visible{opacity:1;transform:translateY(0)}.survey-boundary{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.2s ease}.film-screen:not([data-scene="0"]) .survey-boundary{stroke-dashoffset:0}.film-scene-caption{position:absolute;left:34px;bottom:32px;right:34px}.film-scene-caption>span{font-size:10px;letter-spacing:.14em;color:var(--accent)}.film-scene-caption h4{font-size:clamp(23px,2.5vw,36px);font-weight:500;letter-spacing:-.03em;margin-top:12px}.film-end-logo{position:absolute;width:280px;height:auto;aspect-ratio:2343 / 886;object-fit:contain;max-width:calc(100% - 48px);left:50%;top:43%;transform:translate(-50%,-40%);opacity:0;transition:opacity .6s,transform .6s;pointer-events:none}.film-screen[data-scene="7"] .film-end-logo{opacity:1;transform:translate(-50%,-50%)}.film-screen[data-scene="7"] .planning-drawing{opacity:0!important;transition:opacity .6s,transform .6s}.film-screen[data-scene="7"] .film-scene-caption{text-align:center}.film-screen[data-scene="7"] .film-scene-caption h4{margin-top:0}.film-controls{display:flex;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.film-play,.film-skip{background:none;color:var(--paper);border:0;min-height:44px}.film-play{font-size:12px;font-weight:500;min-width:108px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:14px}.film-play span{font-size:18px}.film-skip{width:34px;font-size:22px;flex-shrink:0}.film-progress{flex:1;display:flex;align-items:center;min-width:40px}.film-progress input{width:100%;height:22px;margin:0;cursor:pointer;accent-color:var(--accent)}.film-time{font-size:11px;font-variant-numeric:tabular-nums;color:var(--accent);white-space:nowrap}.film-notes{display:flex;gap:36px;justify-content:space-between;align-items:start;margin-top:19px;min-height:60px}.film-notes p{font-size:14px;color:var(--accent);max-width:65ch}.film-notes>span{font-size:10px;line-height:1.7;color:var(--accent);max-width:30ch;flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.film-controls :focus-visible,.motion-control:focus-visible{outline-color:var(--paper)}
@media(max-width:900px){.film-screen{aspect-ratio:1.5/1}.planning-drawing{width:97%;right:0}.film-heading h3{font-size:29px}.film-notes{gap:24px}.film-notes>span{max-width:23ch}}
@media(max-width:640px){.entitlement-film{margin-top:52px;padding-top:32px}.film-heading{align-items:start;flex-direction:column;gap:12px}.film-heading h3{font-size:28px}.film-duration{font-size:11px}.film-screen{aspect-ratio:1/1.2}.planning-drawing{width:145%;max-width:none;right:-22%;height:74%;top:2%}.plan-label{display:none}.film-scene-caption{left:20px;right:20px;bottom:24px}.film-scene-caption h4{font-size:27px;max-width:18ch}.film-scene-caption>span{font-size:9px}.film-end-logo{width:190px;top:38%}.film-controls{gap:9px;flex-wrap:wrap}.film-play{min-width:98px;font-size:11px}.film-skip{width:30px}.film-time{width:100%;text-align:right;margin-top:-4px;font-size:10px}.film-notes{display:block;min-height:0}.film-notes p{font-size:13px;margin-bottom:14px}.film-notes>span{font-size:10px;max-width:none}.film-screen[data-scene="7"] .film-scene-caption h4{margin-left:auto;margin-right:auto}}
@keyframes land-drift{from{transform:scale(1.02) translateX(-.7%)}to{transform:scale(1.09) translateX(.7%)}}
@media(min-width:1600px){.wrap{max-width:1480px}.hero h1{font-size:72px}}
@media(max-width:1150px){.wrap{padding:0 40px}.nav-links{gap:18px}.nav-links a{font-size:11px}.brand img{width:165px}.hero-grid{gap:35px}.hero-visual{min-height:580px}.hero h1{font-size:48px}.cards{column-gap:45px}.door-grid,.consulting-grid{gap:50px}.step{padding-right:22px}.step h3{font-size:19px}.team-grid{gap:28px}}
@media(max-width:900px){html{scroll-padding-top:88px}.nav-inner{height:82px}.menu-btn{display:block}.nav-links{position:absolute;top:82px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:18px 40px 30px;background:var(--ink);border-bottom:1px solid var(--line)}.nav-links.open{display:flex}.nav-links a{padding:12px 0;font-size:14px}.nav-links .nav-cta{margin-top:12px;text-align:center}.hero{padding-top:128px}.hero-grid{grid-template-columns:1fr 1fr;gap:28px}.hero h1{font-size:43px}.lede{font-size:15px}.hero-visual{min-height:620px}.visual-label{left:20px;right:20px;display:block}.visual-label span:last-child{display:block;border:0;padding:8px 0 0;font-size:9px}.motion-control{left:20px}.hero-meta{grid-template-columns:1fr 1fr;gap:25px}.hero-meta .item:nth-child(2){border:0}.section{padding:80px 0}.sec-head{grid-template-columns:1fr;gap:20px;margin-bottom:44px}.sec-head h2{max-width:26ch}.steps{grid-template-columns:1fr 1fr;border:0;gap:36px}.step{border-top:1px solid var(--line);padding-top:26px}.step h3{margin-top:16px}.step p{max-width:38ch}.door-grid{gap:40px}.consulting-grid{gap:40px}.consulting-list li:not(.divider){font-size:14px}.team-grid{gap:22px}.tmember h3{font-size:18px}.tmember .bio{font-size:13px}.cta .inner{gap:35px}.foot-top{gap:40px}.foot-cols{grid-template-columns:1fr 1.5fr}}
@media(max-width:640px){.wrap{padding:0 24px}.hero{padding-top:115px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:0}.hero-copy{padding:0 0 34px}.hero .eyebrow{margin-bottom:24px;font-size:11px}.hero h1{font-size:clamp(40px,10vw,52px);max-width:15ch}.slogan{margin:22px 0}.slogan-text{font-size:10px}.lede{font-size:15px}.hero-actions{gap:12px;margin-top:26px}.btn{padding:13px 18px;font-size:11px;min-height:48px}.hero-visual{min-height:350px;margin:0 0 28px}.hero-land{object-position:50% 62%}.visual-label{display:flex;left:22px;right:22px;bottom:62px}.visual-label span:last-child{font-size:9px;padding:0 0 0 14px;border-left:1px solid var(--line)}.motion-control{left:22px}.hero-meta{padding:24px 0 28px;gap:24px 14px}.hero-meta .item{padding-right:12px}.hero-meta .v{font-size:12px}.hero-meta .k{font-size:10px}.section{padding:66px 0}.sec-head{gap:22px;margin-bottom:38px}.sec-head h2{font-size:32px}.eyebrow{font-size:11px}.cards{grid-template-columns:1fr;gap:0}.card{padding:28px 0 30px;column-gap:16px}.card h3{font-size:21px}.card p{font-size:15px}.steps{grid-template-columns:1fr;gap:0;margin-left:5px;display:block;border-left:1px solid var(--accent)}.step{border:0;padding:0 0 36px 28px}.step:last-child{padding-bottom:0}.step::before{display:none}.step .n{font-size:11px;position:relative}.step .n::before{content:'';position:absolute;left:-32px;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:var(--accent)}.step h3{font-size:23px;margin:12px 0}.step p{max-width:none;font-size:15px}.door-grid{grid-template-columns:1fr;gap:48px}.door h3{font-size:34px;max-width:21ch}.door p{font-size:15px}.door li{font-size:14px}.consulting-grid{grid-template-columns:1fr;gap:30px}.consulting-text p{font-size:15px}.consulting-list li:not(.divider){font-size:15px;padding:20px 0 20px 27px}.consulting-link{font-size:11px;margin-top:30px}.team-grid{grid-template-columns:1fr;gap:48px}.tmember img{aspect-ratio:1/1.05;max-height:460px}.tmember h3{font-size:23px}.tmember .bio{font-size:15px}.tmember .role{font-size:11px}.cta{padding:65px 0}.cta .inner{display:block}.cta h2{font-size:37px;max-width:18ch;margin-bottom:26px}.cta p{font-size:15px}.foot-top{grid-template-columns:1fr;gap:42px}.foot-cols{grid-template-columns:1fr 1.5fr;gap:20px}.foot-col{font-size:12px;overflow-wrap:anywhere}.foot-brand img{width:190px}.foot-disclosure p{font-size:12px}.foot-bottom{font-size:11px}.nav-links{padding:18px 24px 30px}}
.card p,.step p,.tmember .bio{font-size:16px}.door li{font-size:15px}.film-notes p{font-size:15px}.film-play{font-size:14px}.btn{font-size:13px}.nav-links a{font-size:13px}.film-notes>span,.film-duration{font-size:12px}.visual-label span:last-child{font-size:11px}.film-heading .eyebrow,.film-scene-caption>span{font-size:12px}
@media(max-width:1150px) and (min-width:901px){.nav-links a{font-size:12px}}
@media(max-width:640px){.btn{font-size:12px}.film-play{font-size:12px}.visual-label span:last-child{font-size:10px}.film-notes>span{font-size:11px}.film-heading .eyebrow,.film-scene-caption>span{font-size:11px}.film-controls{gap:7px}}
.hero-visual{background:var(--ink);border:1px solid var(--line)}
.hero-land{animation:none;transform:none;opacity:.55;transition:opacity 1s ease;object-position:center}

.hero-visual .land-shade{background:linear-gradient(180deg,rgba(11,31,38,.65),rgba(11,31,38,.02) 38%,rgba(11,31,38,.95) 76%)}
.hero-plan-wrap{position:absolute;inset:12px 8px 94px;display:flex;align-items:center;justify-content:center}.hero-plan{width:100%;height:100%;overflow:visible}
.hero-plan{font-family:Montserrat,sans-serif}.hero-parcel{fill:rgba(11,31,38,.28);stroke:none;transition:fill 1s}.parcel-boundary{fill:none;stroke:var(--paper);stroke-width:2}.hero-visual[data-phase="2"] .parcel-boundary{mask:url(#approval-access-gap)}.hero-visual[data-phase="1"] .hero-parcel{fill:rgba(42,93,111,.5)}.hero-visual[data-phase="2"] .hero-parcel{fill:rgba(42,93,111,.65)}.survey-corners{fill:none;stroke:var(--paper);stroke-width:1}
.hero-raw-layer,.hero-zoning-layer,.hero-approval-layer{opacity:0;transition:opacity .85s ease}.hero-visual[data-phase="0"] .hero-raw-layer,.hero-visual[data-phase="1"] .hero-zoning-layer,.hero-visual[data-phase="2"] .hero-approval-layer{opacity:1}
.parcel-small{fill:var(--accent);font-size:13px;font-weight:500;letter-spacing:.06em}.ag-title{fill:var(--paper);font-size:94px;font-weight:500;letter-spacing:-.04em}.ag-subtitle{fill:var(--paper);font-size:28px;font-weight:400}.parcel-divider{fill:none;stroke:var(--accent);stroke-width:.6;opacity:.7}.parcel-stat{fill:var(--paper);font-size:23px;font-weight:500}.residential-setback{fill:none;stroke:var(--accent);stroke-width:1;stroke-dasharray:5 7;opacity:.6}.residential-title{fill:var(--paper);font-size:43px;font-weight:500;letter-spacing:-.035em}.parcel-subtitle{fill:var(--accent);font-size:16px}
.sheet-paper{fill:var(--ink);stroke:var(--accent);stroke-width:1}.sheet-label{fill:var(--paper);font-size:13px;font-weight:500}.sheet-rule{stroke:var(--accent);stroke-width:.6;opacity:.5}.sheet-note{fill:var(--accent);font-size:10.5px}.document-ink{fill:none;stroke:var(--accent);stroke-width:1.2}.document-ink path{stroke-dasharray:1;stroke-dashoffset:0}.hero-visual[data-phase="1"] .study-sheet{animation:sheet-arrive .7s both;animation-delay:var(--sheet-delay)}.hero-visual[data-phase="1"] .document-ink path{animation:draft-line 3s ease both;animation-delay:var(--draw-delay)}
.site-plan-title{fill:var(--accent);font-size:14px;font-weight:500;letter-spacing:.1em}.road-fill{fill:var(--ink);stroke:none}.road-curb{stroke:var(--paper);stroke-width:1.6;fill:none;stroke-linejoin:round}.planned-sidewalks{fill:none}.sidewalk-band{stroke:rgba(199,209,213,.14);stroke-width:4;fill:none}.sidewalk-edge{stroke:var(--accent);stroke-width:1;fill:none;opacity:.8}.lot-boundary{fill:rgba(199,209,213,.06);stroke:var(--accent);stroke-width:1}.pad-envelope{fill:rgba(199,209,213,.17);stroke:var(--paper);stroke-width:.8;stroke-dasharray:2 1.5}.lot-number{fill:var(--paper);font-size:12px;font-weight:500}.park-outline{fill:rgba(199,209,213,.06);stroke:var(--accent);stroke-width:1}.park-walk{fill:none;stroke:var(--accent);stroke-width:2}.site-feature-label{fill:var(--paper);font-size:11px;font-weight:500;letter-spacing:.04em}.stormwater-basin{fill:var(--ink);stroke:var(--accent);stroke-width:1}.stormwater-texture{fill:url(#stormwater-hatch);stroke:none}.water-contour{fill:none;stroke:var(--accent);stroke-width:.7;opacity:.5}.drainage-route{fill:none;stroke:var(--accent);stroke-width:1.1;stroke-dasharray:3 4}.tree-canopy{fill:rgba(199,209,213,.16);stroke:var(--accent);stroke-width:.9;stroke-linejoin:round}.tree-trunk{fill:none;stroke:var(--accent);stroke-width:1;stroke-linecap:round}.driveway-paving{fill:rgba(11,31,38,.88);stroke:none}.driveway-sides{fill:none;stroke:var(--accent);stroke-width:.7}.plan-key{fill:var(--accent);font-size:12px}.plan-key-title{font-size:15px;font-weight:500;fill:var(--paper)}.plan-key-acreage{font-size:14px;fill:var(--paper)}.plan-callout{fill:none;stroke:var(--accent);stroke-width:.7}.plan-tiny{fill:var(--accent);font-size:9px;letter-spacing:.04em}.access-label{fill:var(--accent);font-size:11px;letter-spacing:.06em}
.hero-visual[data-phase="2"] .site-lot{animation:plan-appear .55s ease both;animation-delay:var(--pad-delay)}.hero-visual[data-phase="2"] .planned-roads,.hero-visual[data-phase="2"] .planned-sidewalks{animation:plan-appear .9s ease both}.hero-visual[data-phase="2"] .planned-park,.hero-visual[data-phase="2"] .stormwater-area,.hero-visual[data-phase="2"] .drainage-route{animation:plan-appear .8s 1.8s both}.hero-visual[data-phase="2"] .plan-tree{animation:plan-appear .6s both;animation-delay:var(--tree-delay)}
@keyframes draft-line{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes sheet-arrive{from{opacity:0;translate:0 9px}to{opacity:1;translate:0 0}}@keyframes plan-appear{from{opacity:0}to{opacity:1}}
.parcel-map-context{opacity:1;transition:opacity .5s;transition-delay:.8s}.hero-visual[data-phase="2"] .parcel-map-context{opacity:0;transition-delay:0s}.map-contours{fill:none;stroke:var(--accent);stroke-width:.8;opacity:.12}
.parcel-camera{transform-box:view-box;transform-origin:0 0;transform:matrix(.67,-.19,.23,.57,40,180);transition:transform 1.6s cubic-bezier(.22,1,.36,1);transition-delay:.35s}.hero-visual[data-phase="2"] .parcel-camera{transform:matrix(1,0,0,1,0,0);transition-delay:.12s}.parcel-depth{transform-box:view-box;transform-origin:0 0;transform:matrix(.67,-.19,.23,.57,40,190);fill:var(--ink);stroke:var(--accent);stroke-width:.9;opacity:.65;transition:opacity .35s}.hero-visual[data-phase="2"] .parcel-depth{opacity:0}
.map-callouts{opacity:0;pointer-events:none;transition:opacity .35s}.map-callouts>path{fill:none;stroke:var(--accent);stroke-width:1}.map-callouts>circle{fill:var(--ink);stroke:var(--paper);stroke-width:1}.map-callout-label,.map-callout-value{fill:var(--paper);stroke:none}.map-callout-label{font-size:12px;letter-spacing:.06em;font-weight:500}.map-callout-value{font-size:18px;font-weight:500}.hero-visual[data-phase="0"] .map-raw-callouts,.hero-visual[data-phase="1"] .map-zoning-callouts{opacity:1;transition-delay:1.65s}
.hero-approval-layer{transition:opacity .25s}.hero-visual[data-phase="2"] .hero-approval-layer{transition:opacity .6s 1.8s}.hero-visual[data-phase="2"] .site-lot{animation-delay:calc(var(--pad-delay) + 1.8s)}.hero-visual[data-phase="2"] .planned-roads,.hero-visual[data-phase="2"] .planned-sidewalks{animation-delay:1.8s}.hero-visual[data-phase="2"] .planned-park,.hero-visual[data-phase="2"] .stormwater-area,.hero-visual[data-phase="2"] .drainage-route{animation-delay:3.6s}.hero-visual[data-phase="2"] .plan-tree{animation-delay:calc(var(--tree-delay) + 1.8s)}
@media(max-width:640px){.map-callout-label{font-size:14px;letter-spacing:.02em}.map-callout-value{font-size:20px}}
.hero-visual[data-phase="2"] .planned-greenway{animation:plan-appear .8s 3.6s both}.approval-stamp{transform-box:fill-box;transform-origin:center;transform:scale(1);fill:none;stroke:var(--accent);stroke-width:1.8}.stamp-title{fill:var(--paper);stroke:none;font-size:24px;font-weight:900;letter-spacing:.07em}.hero-visual[data-phase="2"] .approval-stamp{animation:stamp-arrive .55s 5.35s both}
@keyframes stamp-arrive{0%{opacity:0;transform:scale(1.16)}70%{opacity:1;transform:scale(.98)}100%{opacity:1;transform:scale(1)}}
.hero-study-kicker{position:absolute;bottom:70px;left:26px;right:26px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0}
.hero-study-tabs{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);background:rgba(11,31,38,.75)}.hero-study-tabs button{position:relative;min-height:57px;background:none;color:var(--accent);border:0;padding:10px 8px;font-size:12px;line-height:1.5}.hero-study-tabs button+button{border-left:1px solid var(--line)}.hero-study-tabs button[aria-pressed="true"]{color:var(--paper);background:var(--soft)}.hero-study-tabs button::before{content:'';position:absolute;top:-1px;left:0;right:0;height:2px;background:var(--paper);transform:scaleX(0);transform-origin:left}.hero-study-tabs button[aria-pressed="true"]::before{transform:scaleX(var(--study-progress,0))}.hero-study-tabs button:hover{color:var(--paper);background:var(--soft)}.hero-study-tabs :focus-visible{outline-color:var(--paper);outline-offset:-6px}
.film-heading h3{max-width:28ch}.film-notes{display:block;min-height:0}.film-notes p{max-width:none;font-size:12px;line-height:1.7;margin:0}
@media(max-width:1150px) and (min-width:641px){.hero-study-tabs button{font-size:11px}}
@media(max-width:640px){.hero-plan-wrap{inset:4px 4px 77px}.hero-plan-label{font-size:12px}.hero-study-kicker{left:20px;right:20px;bottom:54px;font-size:10px}.hero-study-tabs button{min-height:45px;font-size:11px;padding:5px 7px}.film-controls{column-gap:7px}.film-notes p{font-size:12px}.consulting-link{max-width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}


/* Keep the mobile municipal review callout above the angled parcel. */
.municipal-review-leader-mobile{display:none}
@media(max-width:640px){.municipal-review-text{transform:translateY(-53px)}.municipal-review-leader{display:none}.municipal-review-leader-mobile{display:inline}}
