/* Unified FloodNYC design system. */
:root{--ink:#153c40;--green:#17494b;--paper:#f7f8f4;--muted:#52686a;--line:#d6e0dc;--accent:#bed9ac}body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.75}h1,h2,h3{text-wrap:balance}p{ text-wrap:pretty }.wrap{width:min(1200px,calc(100% - 80px))}header.top,header.wrap{padding:24px 0}.brand{letter-spacing:-1px}.byline,.operator{font-size:10px;letter-spacing:.55px}.nav{gap:26px}.nav>a:not(.phone){padding:12px 0;border-bottom:2px solid transparent}.nav>a:not(.phone):hover{border-bottom-color:#2b6768}.nav .phone{min-height:48px}.flood .hero{border-radius:16px;background:#143e42;padding:48px;grid-template-columns:1.05fr 1fr;gap:42px;margin-top:24px;margin-bottom:0;box-shadow:0 14px 35px #153c400a}.flood .hero h1{font-size:clamp(40px,4.5vw,62px);letter-spacing:-2.6px;line-height:1.06;font-weight:700;margin-bottom:24px}.flood .hero h1 em{font:inherit;color:#c9dfb7}.flood .hero .intro{font-size:16px;line-height:1.75;color:#d9e4df;margin-bottom:22px}.hero-location{font-size:11px;line-height:1.6;letter-spacing:1px}.flood .hero .eyebrow{font-size:11px;letter-spacing:1.3px;color:#c2dbbb}.hero .actions{gap:12px;margin-top:24px}.hero .note{font-size:12px;line-height:1.7;color:#cfdbd6}.flood .project-hero{border-radius:10px;box-shadow:0 8px 24px #0002;transform:none;margin:0;align-self:center}.flood .project-hero img{height:480px;object-position:center 48%}.project-hero .photo-kicker{font-size:9px;letter-spacing:.8px}.project-hero figcaption{padding:18px 20px;background:#edf1e8;font-size:12px;line-height:1.6}.project-hero figcaption strong{font-size:15px}.project-hero .photo-count{display:none}.diagram-link{font-size:13px;margin-top:8px;line-height:1.6}.ribbon{grid-template-columns:repeat(3,1fr);border-top:0;padding:25px 12px;gap:30px;font-size:12px}.ribbon b{font-size:14px}.ribbon span{line-height:1.5}.section-head{gap:60px;align-items:start}.section-head>p{font-size:16px;line-height:1.75;color:var(--muted)}section h2{font-size:clamp(30px,3.5vw,44px);letter-spacing:-1.6px;line-height:1.13}.eyebrow{font-size:11px;letter-spacing:1.2px;color:#3f6663}.services{gap:22px}.service{background:#fff;border:1px solid #d6e0dc;border-radius:10px;padding:30px;box-shadow:none}.service .number{font-size:25px;color:#225a5b}.service .number span{font-size:10px;letter-spacing:1px}.service p{font-size:15px;line-height:1.8;color:#52686a}.service h3{font-size:22px;letter-spacing:-.6px}.field-note{border-radius:8px;background:#e9f0e8;padding:24px 28px}.field-note p{font-size:14px;line-height:1.75}.project-detail{gap:60px;padding-bottom:60px}.project-detail p{font-size:16px;line-height:1.8}.project-detail .photo-footnote{font-size:12px}.project-detail figure{border-radius:10px;overflow:hidden;background:#e8eeea}.project-detail figcaption{padding:14px 18px;font-size:12px}.flood .project-detail img{height:420px}.flood .dispatch{background:#eaf0e9;color:#153c40;border:1px solid #cedbd3;box-shadow:none;border-radius:12px}.dispatch p,.dispatch .order-intro,.dispatch .order-label{color:#52686a}.dispatch .dispatch-top strong{color:#153c40}.dispatch li{border-color:#c8d6cf}.dispatch h3{color:#153c40}.dispatch .city-study{color:#366c64}.dark{background:#123d41}.dark .section-head>p{color:#d2dfd9}.safe-list li{font-size:15px}.caution p{font-size:14px;line-height:1.8}.coverage p,.building li,.building p{font-size:15px;line-height:1.8}.resource-card{background:#fff;border-color:#d6e0dc;border-radius:10px;padding:28px;display:flex;flex-direction:column;box-shadow:none;transition:border-color .18s,box-shadow .18s,transform .18s}.resource-card:hover{background:#fff;border-color:#739b91;box-shadow:0 10px 24px #153c400d;transform:translateY(-3px)}.resource-card h3{font-size:22px;line-height:1.3}.resource-card p{font-size:14px;line-height:1.75}.resource-card>span{margin-top:auto;padding-top:16px;font-size:13px}.resource-body{font-size:17px;line-height:1.85}.resource-body h2{font-size:30px}.resource-hero h1{letter-spacing:-2px;line-height:1.08}.resource-hero .intro{color:#52686a}.resource-cta{background:#e8efe7}.resource-cta p{font-size:14px}.resource-cta a{min-height:46px}.faq summary{font-size:17px;padding:24px 0}.faq details p{font-size:15px;line-height:1.8}.closing h2{letter-spacing:-1.5px}footer{padding-top:42px}footer p,footer a{font-size:12px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #d49616;outline-offset:5px}.flood .cta-control{box-shadow:0 3px 0 #b77813,0 5px 14px #ffbe381f;transition:background .18s,transform .18s,box-shadow .18s}.flood .cta-control:hover{transform:translateY(-2px)}.flood .cta-control:active{transform:translateY(1px)}.flood .button.secondary{box-shadow:none}.page-menu{display:none}.jump-nav{display:flex;justify-content:center;gap:30px;padding:17px 0;border-bottom:1px solid var(--line);font-size:12px;font-weight:600}.jump-nav a{text-decoration:none;min-height:28px;display:inline-flex;align-items:center}.jump-nav a:hover{text-decoration:underline}.resource-nav-mobile{display:none!important}
@media(max-width:1000px){.flood .hero{padding:32px;gap:28px}.flood .hero h1{font-size:44px}.flood .project-hero img{height:460px}.hero .actions{flex-direction:column;align-items:stretch}.hero .actions a{width:100%}.section-head,.project-detail{gap:32px}.service{padding:24px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}header.top,header.wrap{padding:20px 0}.brand{font-size:24px}.byline,.operator{font-size:8px}.nav{gap:0}.nav>a:not(.phone){display:none}.page-menu{display:block;border-bottom:1px solid var(--line);font-size:13px}.page-menu summary{padding:13px 0;cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between}.page-menu summary::after{content:'+';font-size:19px;line-height:1}.page-menu[open] summary::after{content:'−'}.page-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0 0 12px}.page-menu nav a{padding:12px 4px;min-height:44px;text-decoration:none}.jump-nav{display:none}.flood .hero{padding:28px 22px;grid-template-columns:1fr;gap:28px;margin-top:18px;border-radius:12px}.flood .hero h1{font-size:clamp(36px,8vw,48px);letter-spacing:-1.7px;line-height:1.08}.flood .hero .intro{font-size:15px}.hero .actions{margin-top:22px}.flood .project-hero img{height:auto;aspect-ratio:4/4.6;object-position:center 48%}.project-hero figcaption{padding:16px}.project-hero .photo-kicker{font-size:8px}.ribbon{grid-template-columns:1fr;gap:0;padding:8px 0 14px}.ribbon>div{padding:14px 8px;border:0;border-bottom:1px solid #e0e6de;display:flex;justify-content:space-between;gap:22px;align-items:center}.ribbon>div:last-child{border-bottom:0}.ribbon b{font-size:13px;min-width:110px}.ribbon span{font-size:11px;text-align:right;max-width:190px}.section-head{gap:18px}.section-head>p{font-size:15px}.services{gap:14px}.service{padding:25px}.field-note{padding:22px}.project-detail{gap:25px;padding-bottom:35px}.flood .project-detail img{height:auto;aspect-ratio:4/3}.project-detail p{font-size:15px}.project-detail figure{order:2}.dispatch{padding:25px!important}.resource-card{padding:25px}.resource-body{font-size:16px}.resource-body h2{font-size:27px}.resource-hero h1{font-size:37px;letter-spacing:-1.5px}.faq summary{font-size:16px}.safe-list li{font-size:14px}.flood .mobile-call{padding-bottom:max(12px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.resource-card,.cta-control{transition:none!important;transform:none!important}}
.flood .dispatch .dispatch-body>p:last-child{color:#52686a;font-size:12px}.flood .dispatch li:before,.flood .dispatch li::marker{color:#46746a}.flood .dispatch .live{color:#325f53;border-color:#76978b}.flood .services{background:transparent;border:0;overflow:visible}.flood .service+.service{border-left:1px solid #d6e0dc}
.page-menu{padding:0;margin:0}.page-menu summary{min-height:48px;font-size:13px}.page-menu summary:after{width:24px;height:24px;line-height:22px;font-size:18px}.faq details{padding:0}.faq summary{padding:22px 0}.faq details p{margin-bottom:22px}.flood .hero h1 em{display:block}
.flood header .phone.cta-control,.flood .mobilebar a.cta-control,.flood .resource-cta .button:not(.secondary){background:linear-gradient(115deg,#ffd45b,#ffb62d);color:#193a34;border-color:#dfa020}.flood header .phone.cta-control:hover,.flood .mobilebar a.cta-control:hover{background:#ffda6b}.flood .mobilebar{padding-bottom:max(12px,env(safe-area-inset-bottom))}.flood .resource-cta .button:not(.secondary){box-shadow:0 3px 0 #b77813}
