:root{--bg:#D4EAF2;--header:#C3E1EB;--section:#EDF7FA;--navy:#0B4F78;--green:#63A83B;--ink:#123B53;--muted:#42677A;--line:#9CC8D6;--white:#F8FCFD;--shadow:0 18px 46px rgba(11,79,120,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}.skip-link{position:absolute;left:-999px;top:auto}.skip-link:focus{left:1rem;top:1rem;background:var(--green);color:var(--navy);padding:.75rem 1rem;z-index:10}.site-header,.site-footer{max-width:1320px;margin:auto;padding:1.1rem 5vw;display:flex;align-items:center;justify-content:space-between;gap:2rem}.site-header{background:var(--header);max-width:none;border-bottom:1px solid var(--line)}.site-footer{border-top:1px solid var(--line);margin-top:4rem}.brand{display:flex;align-items:center;gap:.75rem;color:var(--navy);text-decoration:none;font-weight:800;letter-spacing:.09em;line-height:1}.brand img{width:48px;height:48px;object-fit:contain;border-radius:10px;background:var(--white);padding:4px}.brand span{display:grid;font-size:.9rem}.brand small{font-size:.52rem;letter-spacing:.19em;color:var(--green);margin-top:.4rem}nav{display:flex;align-items:center;gap:clamp:1rem,3vw,2.25rem)}nav a,.site-footer a{color:var(--navy);text-decoration:none;font-size:.82rem;font-weight:700}nav a:hover,.site-footer a:hover,.arrow-link:hover{color:var(--green)}nav a:focus-visible,.button:focus-visible,.arrow-link:focus-visible,.brand:focus-visible{outline:3px solid var(--green);outline-offset:4px}.nav-cta{border:1px solid var(--navy);padding:.65rem .9rem;color:var(--navy)}main{overflow:hidden}.hero{max-width:1320px;margin:auto;padding:clamp(4rem,9vw,8rem) 5vw;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(3rem,7vw,8rem);align-items:center}.hero.centered{display:block;text-align:center;max-width:980px}.eyebrow,.section-label{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--green);margin:0 0 1rem}.hero h1,h2{font-weight:800;letter-spacing:-.065em;line-height:.98;margin:0;color:var(--navy)}.hero h1{font-size:clamp(3.2rem,7vw,6.8rem);max-width:850px}.hero.centered h1{margin-inline:auto}.hero h1 em,h2 em{font-style:normal;color:var(--green)}.lede{font-size:clamp(1.05rem,1.5vw,1.25rem);max-width:600px;color:var(--muted);margin:1.6rem 0 0}.hero.centered .lede{margin-inline:auto}.actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button{display:inline-flex;align-items:center;gap:.8rem;padding:.85rem 1.1rem;text-decoration:none;font-weight:800;font-size:.82rem;border:1px solid var(--navy);transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--navy);color:var(--white)}.button-primary:hover{background:var(--green);color:var(--navy)}.button-quiet{color:var(--navy);background:transparent}.button-dark{background:var(--green);color:var(--navy);border-color:var(--green)}.hero-panel,.image-reserve{min-height:360px;background:var(--navy);color:var(--white);display:flex;align-items:flex-end;padding:1.5rem;box-shadow:var(--shadow);position:relative}.hero-panel:before,.image-reserve:before{content:'RIVER EDGE';position:absolute;top:1.5rem;left:1.5rem;color:var(--green);font-size:.7rem;letter-spacing:.18em;font-weight:800}.hero-panel span,.image-reserve span{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.hero-panel strong{display:block;font-size:1.8rem;letter-spacing:-.04em;color:var(--green);text-transform:none;margin-top:.35rem}.statement,.split-section,.service-grid{max-width:1320px;margin:auto;padding:clamp(4rem,8vw,7rem) 5vw}.statement:nth-of-type(even),.service-grid,.split-section:nth-of-type(even){background:var(--section)}.statement{display:grid;grid-template-columns:.7fr 1.3fr;gap:4rem}.statement h2,.split-section h2,.service-grid h2{font-size:clamp(2.4rem,5vw,5rem)}.statement p:not(.section-label),.split-section p:not(.section-label){max-width:620px;color:var(--muted)}.arrow-link{display:inline-flex;gap:.75rem;margin-top:1rem;color:var(--navy);font-weight:800;text-decoration:none}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background-color:var(--navy)}.service-grid>div:first-child{background:var(--section);padding:2rem}.service-card{background:var(--bg);padding:2rem;min-height:220px}.service-card span{color:var(--green);font-weight:800}.service-card h3{color:var(--navy);font-size:1.4rem;margin:1.5rem 0 .75rem}.service-card p{color:var(--muted);margin:0}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,7rem);align-items:center}.portfolio-callout{background:var(--section)}.image-reserve{min-height:420px}.site-footer .brand img{width:38px;height:38px}.site-footer{font-size:.8rem}@media(max-width:760px){.site-header{align-items:flex-start;flex-direction:column}.site-header nav{width:100%;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.hero,.statement,.split-section{grid-template-columns:1fr}.hero{padding-top:4rem}.hero-panel,.image-reserve{min-height:280px}.service-grid{grid-template-columns:1fr;padding:0}.service-grid>div:first-child,.service-card{padding:1.5rem}.statement{gap:1.5rem}.site-footer{align-items:flex-start;flex-direction:column}.hero h1{font-size:clamp(3rem,15vw,5rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Required client-supplied branding */
:root{--navy:#0b4f78!important;--gold:#63a83b!important;--paper:#d4eaf2!important;--ink:#12384d!important;--primary:#0b5f8f!important;--accent:#63a83b!important;--background:#d4eaf2!important}html,body{background:#d4eaf2!important;color:#12384d!important}.site-header{background:#c3e1eb!important;border-bottom-color:#0b4f78!important}.hero{background:linear-gradient(145deg,#d4eaf2 0%,#b9dce8 100%)!important}.hero h1,.hero h2{color:#0b4f78!important}.hero h1 em,.hero h2 em{color:#4e982f!important}.hero .lede,.hero>p,.hero-copy>p{color:#315d70!important}.brand span{color:#0b4f78!important}.button-primary{background:#0b5f8f!important;color:#fff!important}.button-secondary{border-color:#0b5f8f!important;color:#12384d!important}main section:nth-of-type(even){background:#edf7fa!important}main section:nth-of-type(odd){background:#d4eaf2!important}
.client-brand-logo{display:block;width:auto;max-width:min(260px,70vw);max-height:110px;object-fit:contain}.client-brand-lockup{display:flex;align-items:center;padding:1rem 0}.client-brand-lockup img,[data-nnytc-client-logo]{filter:none!important;opacity:1!important}.brand img[data-nnytc-client-logo]{width:auto!important;height:64px!important;max-width:190px!important;object-fit:contain!important}
.quote{max-width:1320px;margin:3rem auto 0;padding:0 5vw;display:grid;gap:1rem}
.quote h2{color:var(--navy);font-size:clamp(2rem,4vw,3rem);line-height:1.05;margin:.25rem 0 .75rem}
.quote h2 em{color:var(--green);font-style:normal}
.quote-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:clamp(1rem,3vw,2rem);box-shadow:var(--shadow);margin-top:1.25rem}
.quote-form label{display:grid;gap:.35rem;font-size:.85rem;font-weight:700;color:var(--navy)}
.quote-form .wide{grid-column:1/-1}
.quote-form input,.quote-form select,.quote-form textarea{font:inherit;font-weight:400;color:var(--ink);background:var(--section);border:1px solid var(--line);border-radius:10px;padding:.7rem .8rem;width:100%}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:3px solid var(--green);outline-offset:1px}
.quote-form button{justify-self:start;cursor:pointer;border:0;font:inherit}
.quote-form .fine{grid-column:1/-1;margin:0;color:var(--muted);font-size:.85rem}
.quote-form .trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
