More stories

  • in

    Republican in New York’s mayor race: eccentric street vigilante who could secure Mamdani’s win

    @font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Light.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Light.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Light.ttf) format(“truetype”);font-weight:300;font-style:normal}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-LightItalic.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-LightItalic.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-LightItalic.ttf) format(“truetype”);font-weight:300;font-style:italic}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Regular.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Regular.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Regular.ttf) format(“truetype”);font-weight:400;font-style:normal}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-RegularItalic.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-RegularItalic.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-RegularItalic.ttf) format(“truetype”);font-weight:400;font-style:italic}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Medium.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Medium.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Medium.ttf) format(“truetype”);font-weight:500;font-style:normal}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-MediumItalic.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-MediumItalic.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-MediumItalic.ttf) format(“truetype”);font-weight:500;font-style:italic}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Semibold.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Semibold.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Semibold.ttf) format(“truetype”);font-weight:600;font-style:normal}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-SemiboldItalic.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-SemiboldItalic.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-SemiboldItalic.ttf) format(“truetype”);font-weight:600;font-style:italic}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Bold.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Bold.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Bold.ttf) format(“truetype”);font-weight:700;font-style:normal}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BoldItalic.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BoldItalic.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BoldItalic.ttf) format(“truetype”);font-weight:700;font-style:italic}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Black.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Black.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-Black.ttf) format(“truetype”);font-weight:900;font-style:normal}@font-face{font-family:Guardian Headline Full;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BlackItalic.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BlackItalic.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-headline/noalts-not-hinted/GHGuardianHeadline-BlackItalic.ttf) format(“truetype”);font-weight:900;font-style:italic}@font-face{font-family:Guardian Titlepiece;src:url(https://assets.guim.co.uk/static/frontend/fonts/guardian-titlepiece/noalts-not-hinted/GTGuardianTitlepiece-Bold.woff2) format(“woff2”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-titlepiece/noalts-not-hinted/GTGuardianTitlepiece-Bold.woff) format(“woff”),url(https://assets.guim.co.uk/static/frontend/fonts/guardian-titlepiece/noalts-not-hinted/GTGuardianTitlepiece-Bold.ttf) format(“truetype”);font-weight:700;font-style:normal}@media (min-width: 71.25em){.content__main-column–interactive{margin-left:160px}}@media (min-width: 81.25em){.content__main-column–interactive{margin-left:240px}}.content__main-column–interactive .element-atom{max-width:620px}@media (max-width: 46.24em){.content__main-column–interactive .element-atom{max-width:100%}}.content__main-column–interactive .element-showcase{margin-left:0}@media (min-width: 46.25em){.content__main-column–interactive .element-showcase{max-width:620px}}@media (min-width: 71.25em){.content__main-column–interactive .element-showcase{max-width:860px}}.content__main-column–interactive .element-immersive{max-width:1100px}@media (max-width: 46.24em){.content__main-column–interactive .element-immersive{width:calc(100vw – var(–scrollbar-width));position:relative;left:50%;right:50%;margin-left:calc(-50vw + var(–half-scrollbar-width))!important;margin-right:calc(-50vw + var(–half-scrollbar-width))!important}}@media (min-width: 46.25em){.content__main-column–interactive .element-immersive{transform:translate(-20px);width:calc(100% + 60px)}}@media (max-width: 71.24em){.content__main-column–interactive .element-immersive{margin-left:0;margin-right:0}}@media (min-width: 71.25em){.content__main-column–interactive .element-immersive{transform:translate(0);width:auto}}@media (min-width: 81.25em){.content__main-column–interactive .element-immersive{max-width:1260px}}.content__main-column–interactive p,.content__main-column–interactive ul{max-width:620px}.content__main-column–interactive:before{position:absolute;top:0;height:calc(100% + 15px);min-height:100px;content:””}@media (min-width: 71.25em){.content__main-column–interactive:before{border-left:1px solid #dcdcdc;z-index:-1;left:-10px}}@media (min-width: 81.25em){.content__main-column–interactive:before{border-left:1px solid #dcdcdc;left:-11px}}.content__main-column–interactive .element-atom{margin-top:0;margin-bottom:0;padding-bottom:12px;padding-top:12px}.content__main-column–interactive p+.element-atom{padding-top:0;padding-bottom:0;margin-top:12px;margin-bottom:12px}.content__main-column–interactive .element-inline{max-width:620px}@media (min-width: 61.25em){figure[data-spacefinder-role=inline].element{max-width:620px}}:root{–dateline: #606060;–headerBorder: #dcdcdc;–captionText: #999;–captionBackground: hsla(0, 0%, 7%, .72);–feature: #c70000;–new-pillar-colour: var(–primary-pillar, var(–feature))}.content__main-column–interactive .element.element-atom,.element.element-atom{padding:0}#article-body >div .element-atom:first-of-type+p:first-of-type,#article-body >div .element-atom:first-of-type+.sign-in-gate+p:first-of-type,#article-body >div .element-atom:first-of-type+#sign-in-gate+p:first-of-type,#article-body >div hr:not(.last-horizontal-rule)+p,.content–interactive >div .element-atom:first-of-type+p:first-of-type,.content–interactive >div .element-atom:first-of-type+.sign-in-gate+p:first-of-type,.content–interactive >div .element-atom:first-of-type+#sign-in-gate+p:first-of-type,.content–interactive >div hr:not(.last-horizontal-rule)+p,#comment-body .element-atom:first-of-type+p:first-of-type,#comment-body .element-atom:first-of-type+.sign-in-gate+p:first-of-type,#comment-body .element-atom:first-of-type+#sign-in-gate+p:first-of-type,#comment-body hr:not(.last-horizontal-rule)+p,[data-gu-name=body] .element-atom:first-of-type+p:first-of-type,[data-gu-name=body] .element-atom:first-of-type+.sign-in-gate+p:first-of-type,[data-gu-name=body] .element-atom:first-of-type+#sign-in-gate+p:first-of-type,[data-gu-name=body] hr:not(.last-horizontal-rule)+p,#feature-body .element-atom:first-of-type+p:first-of-type,#feature-body .element-atom:first-of-type+.sign-in-gate+p:first-of-type,#feature-body .element-atom:first-of-type+#sign-in-gate+p:first-of-type,#feature-body hr:not(.last-horizontal-rule)+p{padding-top:14px}#article-body >div .element-atom:first-of-type+p:first-of-type:first-letter,#article-body >div .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,#article-body >div .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,#article-body >div hr:not(.last-horizontal-rule)+p:first-letter,.content–interactive >div .element-atom:first-of-type+p:first-of-type:first-letter,.content–interactive >div .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,.content–interactive >div .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,.content–interactive >div hr:not(.last-horizontal-rule)+p:first-letter,#comment-body .element-atom:first-of-type+p:first-of-type:first-letter,#comment-body .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,#comment-body .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,#comment-body hr:not(.last-horizontal-rule)+p:first-letter,[data-gu-name=body] .element-atom:first-of-type+p:first-of-type:first-letter,[data-gu-name=body] .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,[data-gu-name=body] .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,[data-gu-name=body] hr:not(.last-horizontal-rule)+p:first-letter,#feature-body .element-atom:first-of-type+p:first-of-type:first-letter,#feature-body .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,#feature-body .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,#feature-body hr:not(.last-horizontal-rule)+p:first-letter{font-family:Guardian Headline,Guardian Egyptian Web,Guardian Headline Full,Georgia,serif;font-weight:700;font-size:111px;line-height:92px;float:left;text-transform:uppercase;box-sizing:border-box;margin-right:8px;vertical-align:text-top;color:var(–drop-cap, var(–new-pillar-colour))}#article-body >div hr+p,.content–interactive >div hr+p,#comment-body hr+p,[data-gu-name=body] hr+p,#feature-body hr+p{padding-top:0}#article-body >div [data-gu-name=pullquote],.content–interactive >div [data-gu-name=pullquote],#comment-body [data-gu-name=pullquote],[data-gu-name=body] [data-gu-name=pullquote],#feature-body [data-gu-name=pullquote]{max-width:620px}#maincontent .element.element–showcase.element-showcase figcaption,#feature-article-container .element.element–showcase.element-showcase figcaption,#standard-article-container .element.element–showcase.element-showcase figcaption,#comment-article-container .element.element–showcase.element-showcase figcaption{position:static!important;width:100%;max-width:620px}.element.element–immersive.element-immersive{width:calc(100vw – var(–scrollbar-width, 0px))}@media (max-width: 71.24em){.element.element–immersive.element-immersive{max-width:978px}.element.element–immersive.element-immersive figcaption{padding-inline:10px}}@media (max-width: 71.24em) and (min-width: 30em){.element.element–immersive.element-immersive figcaption{padding-inline:20px}}@media (min-width: 46.25em) and (max-width: 61.24em){.element.element–immersive.element-immersive{max-width:738px}}@media (max-width: 46.24em){.element.element–immersive.element-immersive{margin-left:-10px!important;margin-right:0!important;left:0}}@media (max-width: 46.24em) and (min-width: 30em){.element.element–immersive.element-immersive{margin-left:-20px!important}.element.element–immersive.element-immersive figcaption{padding-inline:20px}}.furniture-wrapper{position:relative}@media (min-width: 61.25em){.furniture-wrapper{display:grid;grid-column-gap:20px;grid-row-gap:0px;grid-template-columns:[title-start headline-start meta-start standfirst-start] repeat(5,1fr) [title-end headline-end meta-end standfirst-end portrait-start] repeat(5,1fr) [portrait-end];grid-template-rows:[title-start portrait-start] .25fr [title-end headline-start] 1fr [headline-end standfirst-start] .75fr [standfirst-end meta-start] auto [meta-end portrait-end]}.furniture-wrapper #headline >div:first-child,.furniture-wrapper [data-gu-name=headline] >div:first-child,.furniture-wrapper .headline >div:first-child{border-top:1px solid var(–headerBorder)}.furniture-wrapper #meta,.furniture-wrapper [data-gu-name=meta]{position:relative;padding-top:2px;margin-right:0}.furniture-wrapper .standfirst .content__standfirst,.furniture-wrapper #standfirst .content__standfirst,.furniture-wrapper [data-gu-name=standfirst] .content__standfirst{margin-bottom:4px}.furniture-wrapper .standfirst ul li,.furniture-wrapper #standfirst ul li,.furniture-wrapper [data-gu-name=standfirst] ul li{font-size:20px}.furniture-wrapper .standfirst li a,.furniture-wrapper .standfirst a,.furniture-wrapper #standfirst li a,.furniture-wrapper #standfirst a,.furniture-wrapper [data-gu-name=standfirst] li a,.furniture-wrapper [data-gu-name=standfirst] a{border-bottom:none;background-image:none!important;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(–headerBorder, #dcdcdc)}.furniture-wrapper .standfirst li a:hover,.furniture-wrapper .standfirst a:hover,.furniture-wrapper #standfirst li a:hover,.furniture-wrapper #standfirst a:hover,.furniture-wrapper [data-gu-name=standfirst] li a:hover,.furniture-wrapper [data-gu-name=standfirst] a:hover{text-decoration-color:var(–new-pillar-colour)}.furniture-wrapper .standfirst p:first-of-type,.furniture-wrapper #standfirst p:first-of-type,.furniture-wrapper [data-gu-name=standfirst] p:first-of-type{border-top:1px solid var(–headerBorder);padding-bottom:0}}@media (min-width: 61.25em) and (min-width: 71.25em){.furniture-wrapper .standfirst p:first-of-type,.furniture-wrapper #standfirst p:first-of-type,.furniture-wrapper [data-gu-name=standfirst] p:first-of-type{border-top:unset}}@media (min-width: 61.25em){.furniture-wrapper figure{margin:0 0 0 -10px}.furniture-wrapper figure[data-spacefinder-role=inline].element{max-width:630px}}@media (min-width: 71.25em){.furniture-wrapper{grid-template-columns:[title-start headline-start meta-start] repeat(2,1fr) [meta-end standfirst-start] repeat(5,1fr) [title-end headline-end standfirst-end portrait-start] repeat(7,1fr) [portrait-end];grid-template-rows:[title-start portrait-start] 80px [title-end headline-start] auto [headline-end standfirst-start meta-start] auto [standfirst-end meta-end portrait-end]}.furniture-wrapper #meta:before,.furniture-wrapper [data-gu-name=meta]:before{content:””;width:540px;position:absolute;top:0;background-color:var(–headerBorder);height:1px}.furniture-wrapper .standfirst p,.furniture-wrapper #standfirst p,.furniture-wrapper [data-gu-name=standfirst] p{border-top:unset}.furniture-wrapper .standfirst:before,.furniture-wrapper #standfirst:before,.furniture-wrapper [data-gu-name=standfirst]:before{content:””;width:1px;background-color:var(–headerBorder);height:100%;position:absolute;top:0;left:.5px}}@media (min-width: 81.25em){.furniture-wrapper{grid-template-columns:[title-start headline-start meta-start] repeat(3,1fr) [meta-end standfirst-start] repeat(5,1fr) [title-end headline-end standfirst-end portrait-start] repeat(8,1fr) [portrait-end];grid-template-rows:[title-start portrait-start] .25fr [title-end headline-start] 1fr [headline-end standfirst-start meta-start] .75fr [standfirst-end meta-end portrait-end]}.furniture-wrapper #meta:before,.furniture-wrapper [data-gu-name=meta]:before{width:620px}.furniture-wrapper .standfirst:before,.furniture-wrapper #standfirst:before,.furniture-wrapper [data-gu-name=standfirst]:before{left:-.5px}}.furniture-wrapper .article-header .content__labels >div,.furniture-wrapper [data-gu-name=title] .content__labels >div{padding-top:2px}.furniture-wrapper #headline h1,.furniture-wrapper [data-gu-name=headline] h1,.furniture-wrapper .headline h1{font-weight:600;max-width:620px;font-size:32px}@media (min-width: 71.25em){.furniture-wrapper #headline h1,.furniture-wrapper [data-gu-name=headline] h1,.furniture-wrapper .headline h1{max-width:540px;font-size:50px}}@media (min-width: 46.25em){.furniture-wrapper .keyline-4,.furniture-wrapper [data-gu-name=lines]{margin-right:0}}@media (min-width: 61.25em){.furniture-wrapper .keyline-4,.furniture-wrapper [data-gu-name=lines]{display:none}}.furniture-wrapper .keyline-4 svg,.furniture-wrapper [data-gu-name=lines] svg{stroke:var(–headerBorder)}@media (min-width: 46.25em){.furniture-wrapper #meta,.furniture-wrapper [data-gu-name=meta]{margin-right:0}}.furniture-wrapper #meta .meta__social,.furniture-wrapper #meta .meta__social ul li a span,.furniture-wrapper #meta .meta__comment,.furniture-wrapper [data-gu-name=meta] .meta__social,.furniture-wrapper [data-gu-name=meta] .meta__social ul li a span,.furniture-wrapper [data-gu-name=meta] .meta__comment{border-color:var(–headerBorder)}.furniture-wrapper #meta .content__meta-container_dcr >div >gu-island,.furniture-wrapper [data-gu-name=meta] .content__meta-container_dcr >div >gu-island{display:none}.furniture-wrapper .standfirst,.furniture-wrapper #standfirst,.furniture-wrapper [data-gu-name=standfirst]{margin-left:-10px;padding-left:10px;position:relative}@media (min-width: 46.25em){.furniture-wrapper .standfirst,.furniture-wrapper #standfirst,.furniture-wrapper [data-gu-name=standfirst]{padding-top:2px}}.furniture-wrapper .standfirst p,.furniture-wrapper #standfirst p,.furniture-wrapper [data-gu-name=standfirst] p{font-weight:400;font-size:20px;padding-bottom:14px}.furniture-wrapper #main-media,.furniture-wrapper [data-gu-name=media]{position:relative;margin-top:0;margin-bottom:2px;grid-area:portrait}.furniture-wrapper #main-media div div,.furniture-wrapper [data-gu-name=media] div div{width:100%;margin-inline:0}@media (min-width: 61.25em){.furniture-wrapper #main-media,.furniture-wrapper [data-gu-name=media]{margin-bottom:0}}@media (max-width: 46.24em){.furniture-wrapper #main-media,.furniture-wrapper [data-gu-name=media]{width:calc(100vw – var(–scrollbar-width, 0px));margin-left:-10px}}@media (max-width: 46.24em) and (min-width: 30em){.furniture-wrapper #main-media,.furniture-wrapper [data-gu-name=media]{margin-left:-20px}}.furniture-wrapper figcaption{position:absolute;bottom:0;padding:4px 10px 12px;background-color:var(–captionBackground);color:var(–captionText);max-width:unset;width:100%;margin-bottom:0;min-height:46px}.furniture-wrapper figcaption span{color:var(–headerBorder)}.furniture-wrapper figcaption span svg{fill:var(–headerBorder)}.furniture-wrapper figcaption span:nth-of-type(1){display:none}.furniture-wrapper figcaption span:nth-of-type(2){display:block;max-width:90%}@media (min-width: 30em){.furniture-wrapper figcaption{padding:4px 20px 12px}}.furniture-wrapper figcaption.hidden{opacity:0}.furniture-wrapper #caption-button{display:block;position:absolute;bottom:10px;right:8px;z-index:30;background-color:var(–captionBackground);border:none;border-radius:50%;padding:6px 5px 5px}.furniture-wrapper #caption-button svg{transform:scale(.85)}@media (min-width: 30em){.furniture-wrapper #caption-button{right:10px}}@media (min-width: 71.25em){.content__main-column–interactive:before{top:-12px!important;height:calc(100% + 24px)!important}}.content__main-column–interactive h2{max-width:620px}:root:has(.ios,.android){–darkBackground: #1a1a1a;–feature: #c70000;–darkmodeFeature: #ff5943;–new-pillar-colour: var(–primary-pillar, var(–feature))}@media (prefers-color-scheme: dark){:root:has(.ios,.android){–new-pillar-colour: var(–darkmode-pillar, var(–darkmodeFeature))}}body.ios #feature-article-container .element-atom:first-of-type+p:first-of-type:first-letter,body.ios #feature-article-container .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,body.ios #feature-article-container .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,body.ios #standard-article-container .element-atom:first-of-type+p:first-of-type:first-letter,body.ios #standard-article-container .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,body.ios #standard-article-container .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,body.ios #comment-article-container .element-atom:first-of-type+p:first-of-type:first-letter,body.ios #comment-article-container .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,body.ios #comment-article-container .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,body.android #feature-article-container .element-atom:first-of-type+p:first-of-type:first-letter,body.android #feature-article-container .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,body.android #feature-article-container .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,body.android #standard-article-container .element-atom:first-of-type+p:first-of-type:first-letter,body.android #standard-article-container .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,body.android #standard-article-container .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter,body.android #comment-article-container .element-atom:first-of-type+p:first-of-type:first-letter,body.android #comment-article-container .element-atom:first-of-type+.sign-in-gate+p:first-of-type:first-letter,body.android #comment-article-container .element-atom:first-of-type+#sign-in-gate+p:first-of-type:first-letter{color:var(–secondary-pillar, #000)}body.ios #feature-article-container .article__header,body.ios #standard-article-container .article__header,body.ios #comment-article-container .article__header,body.android #feature-article-container .article__header,body.android #standard-article-container .article__header,body.android #comment-article-container .article__header{height:0}body.ios #feature-article-container .furniture-wrapper,body.ios #standard-article-container .furniture-wrapper,body.ios #comment-article-container .furniture-wrapper,body.android #feature-article-container .furniture-wrapper,body.android #standard-article-container .furniture-wrapper,body.android #comment-article-container .furniture-wrapper{padding:4px 10px 0}body.ios #feature-article-container .furniture-wrapper .content__labels,body.ios #standard-article-container .furniture-wrapper .content__labels,body.ios #comment-article-container .furniture-wrapper .content__labels,body.android #feature-article-container .furniture-wrapper .content__labels,body.android #standard-article-container .furniture-wrapper .content__labels,body.android #comment-article-container .furniture-wrapper .content__labels{font-weight:700;font-family:Guardian Headline,Guardian Egyptian Web,Guardian Headline Full,Georgia,serif;color:var(–new-pillar-colour);text-transform:capitalize}body.ios #feature-article-container .furniture-wrapper h1.headline,body.ios #standard-article-container .furniture-wrapper h1.headline,body.ios #comment-article-container .furniture-wrapper h1.headline,body.android #feature-article-container .furniture-wrapper h1.headline,body.android #standard-article-container .furniture-wrapper h1.headline,body.android #comment-article-container .furniture-wrapper h1.headline{font-size:32px;font-weight:700;padding-bottom:12px;color:#121212!important}body.ios #feature-article-container .furniture-wrapper figure.element-image,body.ios #standard-article-container .furniture-wrapper figure.element-image,body.ios #comment-article-container .furniture-wrapper figure.element-image,body.android #feature-article-container .furniture-wrapper figure.element-image,body.android #standard-article-container .furniture-wrapper figure.element-image,body.android #comment-article-container .furniture-wrapper figure.element-image{position:relative;margin:14px 0 0 -10px;width:calc(100vw – var(–scrollbar-width, 0px));height:auto}body.ios #feature-article-container .furniture-wrapper figure.element-image .figure__inner,body.ios #feature-article-container .furniture-wrapper figure.element-image img,body.ios #feature-article-container .furniture-wrapper figure.element-image a,body.ios #standard-article-container .furniture-wrapper figure.element-image .figure__inner,body.ios #standard-article-container .furniture-wrapper figure.element-image img,body.ios #standard-article-container .furniture-wrapper figure.element-image a,body.ios #comment-article-container .furniture-wrapper figure.element-image .figure__inner,body.ios #comment-article-container .furniture-wrapper figure.element-image img,body.ios #comment-article-container .furniture-wrapper figure.element-image a,body.android #feature-article-container .furniture-wrapper figure.element-image .figure__inner,body.android #feature-article-container .furniture-wrapper figure.element-image img,body.android #feature-article-container .furniture-wrapper figure.element-image a,body.android #standard-article-container .furniture-wrapper figure.element-image .figure__inner,body.android #standard-article-container .furniture-wrapper figure.element-image img,body.android #standard-article-container .furniture-wrapper figure.element-image a,body.android #comment-article-container .furniture-wrapper figure.element-image .figure__inner,body.android #comment-article-container .furniture-wrapper figure.element-image img,body.android #comment-article-container .furniture-wrapper figure.element-image a{background-color:transparent;width:calc(100vw – var(–scrollbar-width, 0px));height:auto!important}body.ios #feature-article-container .furniture-wrapper .standfirst,body.ios #standard-article-container .furniture-wrapper .standfirst,body.ios #comment-article-container .furniture-wrapper .standfirst,body.android #feature-article-container .furniture-wrapper .standfirst,body.android #standard-article-container .furniture-wrapper .standfirst,body.android #comment-article-container .furniture-wrapper .standfirst{padding-top:4px;padding-bottom:24px;margin-right:-10px}body.ios #feature-article-container .furniture-wrapper .standfirst__inner p,body.ios #standard-article-container .furniture-wrapper .standfirst__inner p,body.ios #comment-article-container .furniture-wrapper .standfirst__inner p,body.android #feature-article-container .furniture-wrapper .standfirst__inner p,body.android #standard-article-container .furniture-wrapper .standfirst__inner p,body.android #comment-article-container .furniture-wrapper .standfirst__inner p{font-family:Guardian Headline,Guardian Egyptian Web,Guardian Headline Full,Georgia,serif}body.ios #feature-article-container .furniture-wrapper .standfirst__inner li a,body.ios #feature-article-container .furniture-wrapper .standfirst__inner a,body.ios #standard-article-container .furniture-wrapper .standfirst__inner li a,body.ios #standard-article-container .furniture-wrapper .standfirst__inner a,body.ios #comment-article-container .furniture-wrapper .standfirst__inner li a,body.ios #comment-article-container .furniture-wrapper .standfirst__inner a,body.android #feature-article-container .furniture-wrapper .standfirst__inner li a,body.android #feature-article-container .furniture-wrapper .standfirst__inner a,body.android #standard-article-container .furniture-wrapper .standfirst__inner li a,body.android #standard-article-container .furniture-wrapper .standfirst__inner a,body.android #comment-article-container .furniture-wrapper .standfirst__inner li a,body.android #comment-article-container .furniture-wrapper .standfirst__inner a{color:var(–new-pillar-colour)!important;background-image:none!important;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(–headerBorder, #dcdcdc);border-bottom:none}body.ios #feature-article-container .furniture-wrapper .standfirst__inner li a:hover,body.ios #feature-article-container .furniture-wrapper .standfirst__inner a:hover,body.ios #standard-article-container .furniture-wrapper .standfirst__inner li a:hover,body.ios #standard-article-container .furniture-wrapper .standfirst__inner a:hover,body.ios #comment-article-container .furniture-wrapper .standfirst__inner li a:hover,body.ios #comment-article-container .furniture-wrapper .standfirst__inner a:hover,body.android #feature-article-container .furniture-wrapper .standfirst__inner li a:hover,body.android #feature-article-container .furniture-wrapper .standfirst__inner a:hover,body.android #standard-article-container .furniture-wrapper .standfirst__inner li a:hover,body.android #standard-article-container .furniture-wrapper .standfirst__inner a:hover,body.android #comment-article-container .furniture-wrapper .standfirst__inner li a:hover,body.android #comment-article-container .furniture-wrapper .standfirst__inner a:hover{text-decoration-color:var(–new-pillar-colour)}body.ios #feature-article-container .furniture-wrapper .meta,body.ios #standard-article-container .furniture-wrapper .meta,body.ios #comment-article-container .furniture-wrapper .meta,body.android #feature-article-container .furniture-wrapper .meta,body.android #standard-article-container .furniture-wrapper .meta,body.android #comment-article-container .furniture-wrapper .meta{margin:0}body.ios #feature-article-container .furniture-wrapper .meta .byline,body.ios #feature-article-container .furniture-wrapper .meta .byline__author,body.ios #feature-article-container .furniture-wrapper .meta span.byline__author a,body.ios #feature-article-container .furniture-wrapper .meta .meta__byline span,body.ios #standard-article-container .furniture-wrapper .meta .byline,body.ios #standard-article-container .furniture-wrapper .meta .byline__author,body.ios #standard-article-container .furniture-wrapper .meta span.byline__author a,body.ios #standard-article-container .furniture-wrapper .meta .meta__byline span,body.ios #comment-article-container .furniture-wrapper .meta .byline,body.ios #comment-article-container .furniture-wrapper .meta .byline__author,body.ios #comment-article-container .furniture-wrapper .meta span.byline__author a,body.ios #comment-article-container .furniture-wrapper .meta .meta__byline span,body.android #feature-article-container .furniture-wrapper .meta .byline,body.android #feature-article-container .furniture-wrapper .meta .byline__author,body.android #feature-article-container .furniture-wrapper .meta span.byline__author a,body.android #feature-article-container .furniture-wrapper .meta .meta__byline span,body.android #standard-article-container .furniture-wrapper .meta .byline,body.android #standard-article-container .furniture-wrapper .meta .byline__author,body.android #standard-article-container .furniture-wrapper .meta span.byline__author a,body.android #standard-article-container .furniture-wrapper .meta .meta__byline span,body.android #comment-article-container .furniture-wrapper .meta .byline,body.android #comment-article-container .furniture-wrapper .meta .byline__author,body.android #comment-article-container .furniture-wrapper .meta span.byline__author a,body.android #comment-article-container .furniture-wrapper .meta .meta__byline span{color:var(–new-pillar-colour)}body.ios #feature-article-container .furniture-wrapper .meta__misc,body.ios #standard-article-container .furniture-wrapper .meta__misc,body.ios #comment-article-container .furniture-wrapper .meta__misc,body.android #feature-article-container .furniture-wrapper .meta__misc,body.android #standard-article-container .furniture-wrapper .meta__misc,body.android #comment-article-container .furniture-wrapper .meta__misc{padding:0}body.ios #feature-article-container .furniture-wrapper .meta__misc svg,body.ios #standard-article-container .furniture-wrapper .meta__misc svg,body.ios #comment-article-container .furniture-wrapper .meta__misc svg,body.android #feature-article-container .furniture-wrapper .meta__misc svg,body.android #standard-article-container .furniture-wrapper .meta__misc svg,body.android #comment-article-container .furniture-wrapper .meta__misc svg{stroke:var(–new-pillar-colour)}body.ios #feature-article-container .furniture-wrapper .element–showcase #caption-button,body.ios #standard-article-container .furniture-wrapper .element–showcase #caption-button,body.ios #comment-article-container .furniture-wrapper .element–showcase #caption-button,body.android #feature-article-container .furniture-wrapper .element–showcase #caption-button,body.android #standard-article-container .furniture-wrapper .element–showcase #caption-button,body.android #comment-article-container .furniture-wrapper .element–showcase #caption-button{display:flex;padding:5px;justify-content:center;align-items:center;width:28px;height:28px;right:14px}body.ios #feature-article-container .article__body,body.ios #standard-article-container .article__body,body.ios #comment-article-container .article__body,body.android #feature-article-container .article__body,body.android #standard-article-container .article__body,body.android #comment-article-container .article__body{padding:0 12px}body.ios #feature-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive),body.ios #standard-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive),body.ios #comment-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive),body.android #feature-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive),body.android #standard-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive),body.android #comment-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive){margin:0;width:calc(100vw – 24px – var(–scrollbar-width, 0px));height:auto}body.ios #feature-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive) figcaption,body.ios #standard-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive) figcaption,body.ios #comment-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive) figcaption,body.android #feature-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive) figcaption,body.android #standard-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive) figcaption,body.android #comment-article-container .article__body figure.element-image:not(.element–thumbnail):not(.element–immersive) figcaption{padding:0}body.ios #feature-article-container .article__body figure.element-image.element-immersive,body.ios #standard-article-container .article__body figure.element-image.element-immersive,body.ios #comment-article-container .article__body figure.element-image.element-immersive,body.android #feature-article-container .article__body figure.element-image.element-immersive,body.android #standard-article-container .article__body figure.element-image.element-immersive,body.android #comment-article-container .article__body figure.element-image.element-immersive{width:calc(100vw – var(–scrollbar-width, 0px))}body.ios #feature-article-container .article__body .prose blockquote.quoted:before,body.ios #standard-article-container .article__body .prose blockquote.quoted:before,body.ios #comment-article-container .article__body .prose blockquote.quoted:before,body.android #feature-article-container .article__body .prose blockquote.quoted:before,body.android #standard-article-container .article__body .prose blockquote.quoted:before,body.android #comment-article-container .article__body .prose blockquote.quoted:before{color:var(–new-pillar-colour)}body.ios #feature-article-container .article__body .prose a,body.ios #standard-article-container .article__body .prose a,body.ios #comment-article-container .article__body .prose a,body.android #feature-article-container .article__body .prose a,body.android #standard-article-container .article__body .prose a,body.android #comment-article-container .article__body .prose a{color:var(–primary-pillar);background-image:none;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(–headerBorder)}body.ios #feature-article-container .article__body .prose a:hover,body.ios #standard-article-container .article__body .prose a:hover,body.ios #comment-article-container .article__body .prose a:hover,body.android #feature-article-container .article__body .prose a:hover,body.android #standard-article-container .article__body .prose a:hover,body.android #comment-article-container .article__body .prose a:hover{text-decoration-color:var(–new-pillar-colour)}@media (prefers-color-scheme: dark){body.ios #feature-article-container .furniture-wrapper,body.ios #standard-article-container .furniture-wrapper,body.ios #comment-article-container .furniture-wrapper,body.android #feature-article-container .furniture-wrapper,body.android #standard-article-container .furniture-wrapper,body.android #comment-article-container .furniture-wrapper{background-color:#1a1a1a}body.ios #feature-article-container .furniture-wrapper .content__labels,body.ios #standard-article-container .furniture-wrapper .content__labels,body.ios #comment-article-container .furniture-wrapper .content__labels,body.android #feature-article-container .furniture-wrapper .content__labels,body.android #standard-article-container .furniture-wrapper .content__labels,body.android #comment-article-container .furniture-wrapper .content__labels{color:var(–new-pillar-colour)}body.ios #feature-article-container .furniture-wrapper h1.headline,body.ios #standard-article-container .furniture-wrapper h1.headline,body.ios #comment-article-container .furniture-wrapper h1.headline,body.android #feature-article-container .furniture-wrapper h1.headline,body.android #standard-article-container .furniture-wrapper h1.headline,body.android #comment-article-container .furniture-wrapper h1.headline{background-color:unset;color:var(–headerBorder)!important}body.ios #feature-article-container .furniture-wrapper .standfirst p,body.ios #standard-article-container .furniture-wrapper .standfirst p,body.ios #comment-article-container .furniture-wrapper .standfirst p,body.android #feature-article-container .furniture-wrapper .standfirst p,body.android #standard-article-container .furniture-wrapper .standfirst p,body.android #comment-article-container .furniture-wrapper .standfirst p{color:var(–headerBorder)}body.ios #feature-article-container .furniture-wrapper .standfirst a,body.ios #standard-article-container .furniture-wrapper .standfirst a,body.ios #comment-article-container .furniture-wrapper .standfirst a,body.android #feature-article-container .furniture-wrapper .standfirst a,body.android #standard-article-container .furniture-wrapper .standfirst a,body.android #comment-article-container .furniture-wrapper .standfirst a,body.ios #feature-article-container .furniture-wrapper .meta .byline__author,body.ios #feature-article-container .furniture-wrapper .meta span.byline__author a,body.ios #standard-article-container .furniture-wrapper .meta .byline__author,body.ios #standard-article-container .furniture-wrapper .meta span.byline__author a,body.ios #comment-article-container .furniture-wrapper .meta .byline__author,body.ios #comment-article-container .furniture-wrapper .meta span.byline__author a,body.android #feature-article-container .furniture-wrapper .meta .byline__author,body.android #feature-article-container .furniture-wrapper .meta span.byline__author a,body.android #standard-article-container .furniture-wrapper .meta .byline__author,body.android #standard-article-container .furniture-wrapper .meta span.byline__author a,body.android #comment-article-container .furniture-wrapper .meta .byline__author,body.android #comment-article-container .furniture-wrapper .meta span.byline__author a{color:var(–new-pillar-colour)}body.ios #feature-article-container .furniture-wrapper .meta__misc svg,body.ios #standard-article-container .furniture-wrapper .meta__misc svg,body.ios #comment-article-container .furniture-wrapper .meta__misc svg,body.android #feature-article-container .furniture-wrapper .meta__misc svg,body.android #standard-article-container .furniture-wrapper .meta__misc svg,body.android #comment-article-container .furniture-wrapper .meta__misc svg{stroke:var(–new-pillar-colour)}body.ios #feature-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,body.ios #standard-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,body.ios #comment-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,body.android #feature-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,body.android #standard-article-container .furniture-wrapper figure.element-image.element–showcase figcaption,body.android #comment-article-container .furniture-wrapper figure.element-image.element–showcase figcaption{color:var(–dateline)}body.ios #feature-article-container .article__body .prose blockquote.quoted,body.ios #standard-article-container .article__body .prose blockquote.quoted,body.ios #comment-article-container .article__body .prose blockquote.quoted,body.android #feature-article-container .article__body .prose blockquote.quoted,body.android #standard-article-container .article__body .prose blockquote.quoted,body.android #comment-article-container .article__body .prose blockquote.quoted{color:var(–new-pillar-colour)}body.ios #feature-article-container #article-body >div,body.ios #feature-article-container .content–interactive >div,body.ios #feature-article-container #feature-body,body.ios #feature-article-container [data-gu-name=body],body.ios #feature-article-container #comment-body,body.ios #standard-article-container #article-body >div,body.ios #standard-article-container .content–interactive >div,body.ios #standard-article-container #feature-body,body.ios #standard-article-container [data-gu-name=body],body.ios #standard-article-container #comment-body,body.ios #comment-article-container #article-body >div,body.ios #comment-article-container .content–interactive >div,body.ios #comment-article-container #feature-body,body.ios #comment-article-container [data-gu-name=body],body.ios #comment-article-container #comment-body,body.android #feature-article-container #article-body >div,body.android #feature-article-container .content–interactive >div,body.android #feature-article-container #feature-body,body.android #feature-article-container [data-gu-name=body],body.android #feature-article-container #comment-body,body.android #standard-article-container #article-body >div,body.android #standard-article-container .content–interactive >div,body.android #standard-article-container #feature-body,body.android #standard-article-container [data-gu-name=body],body.android #standard-article-container #comment-body,body.android #comment-article-container #article-body >div,body.android #comment-article-container .content–interactive >div,body.android #comment-article-container #feature-body,body.android #comment-article-container [data-gu-name=body],body.android #comment-article-container #comment-body{background-color:var(–darkBackground)!important}body.ios #feature-article-container #article-body >div .element-atom+p:first-letter,body.ios #feature-article-container #article-body >div .element-atom+.sign-in-gate+p:first-letter,body.ios #feature-article-container #article-body >div .element-atom+#sign-in-gate+p:first-letter,body.ios #feature-article-container .content–interactive >div .element-atom+p:first-letter,body.ios #feature-article-container .content–interactive >div .element-atom+.sign-in-gate+p:first-letter,body.ios #feature-article-container .content–interactive >div .element-atom+#sign-in-gate+p:first-letter,body.ios #feature-article-container #feature-body .element-atom+p:first-letter,body.ios #feature-article-container #feature-body .element-atom+.sign-in-gate+p:first-letter,body.ios #feature-article-container #feature-body .element-atom+#sign-in-gate+p:first-letter,body.ios #feature-article-container [data-gu-name=body] .element-atom+p:first-letter,body.ios #feature-article-container [data-gu-name=body] .element-atom+.sign-in-gate+p:first-letter,body.ios #feature-article-container [data-gu-name=body] .element-atom+#sign-in-gate+p:first-letter,body.ios #feature-article-container #comment-body .element-atom+p:first-letter,body.ios #feature-article-container #comment-body .element-atom+.sign-in-gate+p:first-letter,body.ios #feature-article-container #comment-body .element-atom+#sign-in-gate+p:first-letter,body.ios #standard-article-container #article-body >div .element-atom+p:first-letter,body.ios #standard-article-container #article-body >div .element-atom+.sign-in-gate+p:first-letter,body.ios #standard-article-container #article-body >div .element-atom+#sign-in-gate+p:first-letter,body.ios #standard-article-container .content–interactive >div .element-atom+p:first-letter,body.ios #standard-article-container .content–interactive >div .element-atom+.sign-in-gate+p:first-letter,body.ios #standard-article-container .content–interactive >div .element-atom+#sign-in-gate+p:first-letter,body.ios #standard-article-container #feature-body .element-atom+p:first-letter,body.ios #standard-article-container #feature-body .element-atom+.sign-in-gate+p:first-letter,body.ios #standard-article-container #feature-body .element-atom+#sign-in-gate+p:first-letter,body.ios #standard-article-container [data-gu-name=body] .element-atom+p:first-letter,body.ios #standard-article-container [data-gu-name=body] .element-atom+.sign-in-gate+p:first-letter,body.ios #standard-article-container [data-gu-name=body] .element-atom+#sign-in-gate+p:first-letter,body.ios #standard-article-container #comment-body .element-atom+p:first-letter,body.ios #standard-article-container #comment-body .element-atom+.sign-in-gate+p:first-letter,body.ios #standard-article-container #comment-body .element-atom+#sign-in-gate+p:first-letter,body.ios #comment-article-container #article-body >div .element-atom+p:first-letter,body.ios #comment-article-container #article-body >div .element-atom+.sign-in-gate+p:first-letter,body.ios #comment-article-container #article-body >div .element-atom+#sign-in-gate+p:first-letter,body.ios #comment-article-container .content–interactive >div .element-atom+p:first-letter,body.ios #comment-article-container .content–interactive >div .element-atom+.sign-in-gate+p:first-letter,body.ios #comment-article-container .content–interactive >div .element-atom+#sign-in-gate+p:first-letter,body.ios #comment-article-container #feature-body .element-atom+p:first-letter,body.ios #comment-article-container #feature-body .element-atom+.sign-in-gate+p:first-letter,body.ios #comment-article-container #feature-body .element-atom+#sign-in-gate+p:first-letter,body.ios #comment-article-container [data-gu-name=body] .element-atom+p:first-letter,body.ios #comment-article-container [data-gu-name=body] .element-atom+.sign-in-gate+p:first-letter,body.ios #comment-article-container [data-gu-name=body] .element-atom+#sign-in-gate+p:first-letter,body.ios #comment-article-container #comment-body .element-atom+p:first-letter,body.ios #comment-article-container #comment-body .element-atom+.sign-in-gate+p:first-letter,body.ios #comment-article-container #comment-body .element-atom+#sign-in-gate+p:first-letter,body.android #feature-article-container #article-body >div .element-atom+p:first-letter,body.android #feature-article-container #article-body >div .element-atom+.sign-in-gate+p:first-letter,body.android #feature-article-container #article-body >div .element-atom+#sign-in-gate+p:first-letter,body.android #feature-article-container .content–interactive >div .element-atom+p:first-letter,body.android #feature-article-container .content–interactive >div .element-atom+.sign-in-gate+p:first-letter,body.android #feature-article-container .content–interactive >div .element-atom+#sign-in-gate+p:first-letter,body.android #feature-article-container #feature-body .element-atom+p:first-letter,body.android #feature-article-container #feature-body .element-atom+.sign-in-gate+p:first-letter,body.android #feature-article-container #feature-body .element-atom+#sign-in-gate+p:first-letter,body.android #feature-article-container [data-gu-name=body] .element-atom+p:first-letter,body.android #feature-article-container [data-gu-name=body] .element-atom+.sign-in-gate+p:first-letter,body.android #feature-article-container [data-gu-name=body] .element-atom+#sign-in-gate+p:first-letter,body.android #feature-article-container #comment-body .element-atom+p:first-letter,body.android #feature-article-container #comment-body .element-atom+.sign-in-gate+p:first-letter,body.android #feature-article-container #comment-body .element-atom+#sign-in-gate+p:first-letter,body.android #standard-article-container #article-body >div .element-atom+p:first-letter,body.android #standard-article-container #article-body >div .element-atom+.sign-in-gate+p:first-letter,body.android #standard-article-container #article-body >div .element-atom+#sign-in-gate+p:first-letter,body.android #standard-article-container .content–interactive >div .element-atom+p:first-letter,body.android #standard-article-container .content–interactive >div .element-atom+.sign-in-gate+p:first-letter,body.android #standard-article-container .content–interactive >div .element-atom+#sign-in-gate+p:first-letter,body.android #standard-article-container #feature-body .element-atom+p:first-letter,body.android #standard-article-container #feature-body .element-atom+.sign-in-gate+p:first-letter,body.android #standard-article-container #feature-body .element-atom+#sign-in-gate+p:first-letter,body.android #standard-article-container [data-gu-name=body] .element-atom+p:first-letter,body.android #standard-article-container [data-gu-name=body] .element-atom+.sign-in-gate+p:first-letter,body.android #standard-article-container [data-gu-name=body] .element-atom+#sign-in-gate+p:first-letter,body.android #standard-article-container #comment-body .element-atom+p:first-letter,body.android #standard-article-container #comment-body .element-atom+.sign-in-gate+p:first-letter,body.android #standard-article-container #comment-body .element-atom+#sign-in-gate+p:first-letter,body.android #comment-article-container #article-body >div .element-atom+p:first-letter,body.android #comment-article-container #article-body >div .element-atom+.sign-in-gate+p:first-letter,body.android #comment-article-container #article-body >div .element-atom+#sign-in-gate+p:first-letter,body.android #comment-article-container .content–interactive >div .element-atom+p:first-letter,body.android #comment-article-container .content–interactive >div .element-atom+.sign-in-gate+p:first-letter,body.android #comment-article-container .content–interactive >div .element-atom+#sign-in-gate+p:first-letter,body.android #comment-article-container #feature-body .element-atom+p:first-letter,body.android #comment-article-container #feature-body .element-atom+.sign-in-gate+p:first-letter,body.android #comment-article-container #feature-body .element-atom+#sign-in-gate+p:first-letter,body.android #comment-article-container [data-gu-name=body] .element-atom+p:first-letter,body.android #comment-article-container [data-gu-name=body] .element-atom+.sign-in-gate+p:first-letter,body.android #comment-article-container [data-gu-name=body] .element-atom+#sign-in-gate+p:first-letter,body.android #comment-article-container #comment-body .element-atom+p:first-letter,body.android #comment-article-container #comment-body .element-atom+.sign-in-gate+p:first-letter,body.android #comment-article-container #comment-body .element-atom+#sign-in-gate+p:first-letter{color:var(–new-pillar-colour, #ffffff)}}body.ios.garnett–type-comment #comment-article-container .furniture-wrapper .standfirst,body.android.garnett–type-comment #comment-article-container .furniture-wrapper .standfirst{padding-top:24px;margin-top:0}.prose h2{font-size:24px}body.ios #feature-article-container #caption-button,body.ios #standard-article-container #caption-button,body.ios #comment-article-container #caption-button{padding:6px 5px 0}body.android #feature-article-container #caption-button,body.android #standard-article-container #caption-button,body.android #comment-article-container #caption-button{padding:4px 4px 0}@media (prefers-color-scheme: dark){:root:root:not([data-color-scheme=light]){–follow-text: #dcdcdc;–follow-icon-fill: var(–darkmode-pillar);–standfirst-text: #dcdcdc;–standfirst-link-text: var(–darkmode-pillar);–standfirst-link-border: var(–darkmode-pillar);–byline: var(–darkmode-pillar)}}.furniture-wrapper.has-guardian-org-logo #meta gu-island[name=Branding],.furniture-wrapper.has-guardian-org-logo [data-gu-name=meta] gu-island[name=Branding]{display:block!important}body.ios,body.android{background-color:#fff}body.ios #feature-article-container .furniture-wrapper .content__labels,body.ios #standard-article-container .furniture-wrapper .content__labels,body.ios #comment-article-container .furniture-wrapper .content__labels,body.android #feature-article-container .furniture-wrapper .content__labels,body.android #standard-article-container .furniture-wrapper .content__labels,body.android #comment-article-container .furniture-wrapper .content__labels,body.ios #feature-article-container .furniture-wrapper h1.headline,body.ios #standard-article-container .furniture-wrapper h1.headline,body.ios #comment-article-container .furniture-wrapper h1.headline,body.android #feature-article-container .furniture-wrapper h1.headline,body.android #standard-article-container .furniture-wrapper h1.headline,body.android #comment-article-container .furniture-wrapper h1.headline{font-weight:700}.article .article__body h2,article.content–interactive [data-gu-name=body] h2{font-weight:200}.article .article__body h2:has(strong),article.content–interactive [data-gu-name=body] h2:has(strong){font-weight:700}

    With less than a month to go, the race to be New York City’s mayor is continuing to fascinate and bemuse: and in an election that could have political ramifications across the country, it’s a beret-wearing, cat-loving vigilante who seems like he could have the final say.Curtis Sliwa, the founder of the crime-fighting group the Guardian Angels and the Republican candidate to run the largest US city, has little chance of winning the election in November. But his presence may be the thing that helps confirm Zohran Mamdani, the 33-year-old democratic socialist, as New York’s next mayor.Polling shows Mamdani, who was little known a year ago but has arguably become one the most talked-about politicians in the country, leading Andrew Cuomo, the former Democratic governor running as an independent, by as much as 20 points. With Sliwa attracting up to 18% of the vote, an emerging theory popular among some of Cuomo’s wealthy backers is that Sliwa should drop out, allowing his voters to flock to their man.There’s just one problem. The 71-year-old isn’t going anywhere.“Curtis Sliwa never dropped out of anything in his life,” Sliwa told the Wall Street Journal, the Rupert Murdoch-owned, rightwing newspaper that has made it pretty clear it wants Cuomo to triumph, last week.Asked by others if he will exit the race, Sliwa has offered more visceral rebuttals.“A Mack truck hits me and I get turned into a speed bump, and they can’t recover me in the ICU. That’s the only way,” Sliwa said in an interview with amNewYork.It is an attitude that comes as no surprise to anyone who has followed Sliwa’s decades in public life. His role with the Guardian Angels – Sliwa wears the group’s distinctive red beret almost permanently – led to him being shot several times in 1992 after he criticized a mafia boss, and he stubbornly stayed in the mayoral race in 2021, winning 30% of the vote.Sliwa has never faced the pressure he has now come under, however, with Donald Trump and billionaire mega-donors calling for him to quit. According to Sliwa, some of the pressure has been of an illegal nature, with wealthy figures connected to Cuomo offering him money to drop out.View image in fullscreen“They all think that everybody has a price, that’s the way they talk. ‘Come on Curtis, everybody has a price,’” Sliwa told reporters recently. “Curtis Sliwa doesn’t have a price. I came into this world with nothing, I’m going to leave with nothing, ashes to ashes, dust to dust.”Sliwa has avoided naming names but insists he has been offered “bribes”.“Seven different people, a total of $10m when you bifurcate it out over the years,” he told Fox5 New York.“Car, Jeep, chauffeur, headquarters to operate out of, helping the Guardian Angels, helping animal welfare – and you know something? If you’re watching out there, you can’t bribe me, buy me, lease me: I’m not for sale.”Sliwa accompanied his words with a chin-flicking gesture, which the New York Post translated as meaning “fuck outta here”. Cuomo’s campaign denied the claims and pointed to Sliwa’s track record with the truth, which has, at times, been patchy: in the 1990s Sliwa admitted he had faked some of the Guardian Angels’ crime-fighting exploits.That hasn’t stopped Sliwa from talking about the alleged bribes – and last week he began campaigning with a private security detail after he said he had received “very credible” threats against him and his wife.Whether Sliwa’s claims are true or not, the pressure on him to quit is undeniable.John Catsimatidis, the billionaire Republican mega-donor and a close friend of Sliwa’s, recently said he should drop out “if he reaches a point that he feels that he’s not turning it around”. In a separate statement last week, Catsimatidis said: “In two weeks from now, if he hasn’t shown any progress, how did Sgt Schultz say it? Machine kaput!”Joe Lhota, who was deputy mayor under Republican Rudy Giuliani, endorsed Cuomo, describing Sliwa as a “fruit loop” to the New York Post. Anthony Carbonetti, Giuliani’s former chief of staff, was more diplomatic, but said “the numbers aren’t there for him to win”. Bill Ackman, the billionaire who backed Trump in 2024, called out Sliwa directly on social media on Thursday.View image in fullscreen“A vote for Curtis Sliwa is a vote for Zohran Mamdani. Curtis Sliwa, it is time for you to leave the race,” Ackman wrote. “Every day you wait to leave the race reduces the probability of stopping Mamdani. I know you don’t want to hand the City to him.”Sliwa has responded to the attempts at coercion as one might expect.“I believe the people have a right to vote and determine who the next mayor is,” the Guardian Angels founder added. “They don’t get picked by billionaires or the professional political class. That’s not how our elections work.”Ackman claimed in his social media post that Cuomo could beat Mamdani in a “one-on-one election”. But it’s not a given that Sliwa’s Republican voters would automatically flock to Cuomo, who has criticized Trump and resigned as New York governor under a cloud after being accused of sexual harassment by multiple women. Head-to-head matchups show Mamdani comfortably beating Cuomo in November.Still, national Republicans want Sliwa gone. Asked about his fellow Republican in an interview with Fox and Friends, Trump described Sliwa as “not exactly prime-time”.In a typically chaotic answer, Trump said Sliwa “wants cats to be in Gracie Mansion”, referring to the mayor’s official residence.“The magnificent home of the mayor, it’s beautiful. Gracie Mansion, to me, is like a fabled place if you’re in New York. No, we don’t need to have thousands of cats living in it,” Trump said.Sliwa has not said he wants thousands of cats living in the Gracie Mansion, although he has suggested using some of the 11 acres the building sits in to house sheltered cats and dogs that would otherwise be put down. Cats hold a particular place in Sliwa’s heart – he and his wife, Nancy, have rescued and fostered hundreds of cats. When the Guardian visited the couple’s studio apartment in 2021 they were sharing the tiny space with no less than 16 cats.Given New York is an overwhelmingly Democratic city, Sliwa is very unlikely to see his Gracie Mansion plans come to fruition. But his willingness to defy the billionaires, and the president, could see him have a big impact on the identity of the mansion’s next resident. More

  • in

    A candidate for local office in New York disappeared months ago. He could still win

    A political candidate in the New York City suburbs went for a night swim in the Atlantic Ocean this past spring and never returned.Petros Krommidas’s phone, keys and clothes were found on the sands at Long Beach on Long Island. The 29-year-old former Ivy League rower, who was training for a triathlon, had parked his car just off the picturesque wooden boardwalk.As the months passed, local Democrats attempted to field a replacement to run for the seat in the Nassau County legislature.But two Republican voters took them to court and won: a state judge recently ordered Krommidas’s name to remain on the November ballot, ruling that he’s still considered missing and not officially deceased.Now, as election day approaches, voters in Long Beach and other communities on the south shore of Long Island have a curious choice: re-elect the Republican incumbent or the Democrat who seemingly vanished at sea.James Hodge is among those calling on residents to cast their ballots for Krommidas regardless – hoping to trigger a special election in which Democrats can put forward another candidate to run against Republican lawmaker Patrick Mullaney.The Long Beach resident worked with Krommidas at the Nassau county board of elections and had been tapped by Democrats to run in his place.“We need to stand by and honor his name and memory,” Hodge told the Associated Press. “Let’s give him that victory. It’s the right thing to do.”The Republican voters argued in their lawsuit that Democrats couldn’t claim Krommidas was dead because authorities still considered him a missing person. They pointed to a New York state law that someone is presumed dead after being “absent for a continuous period of three years”.A county judge, Gary Knobel, agreed, writing in his ruling last month that “‘missing person’ status does not qualify as a vacancy that can be filled”.The judge noted a similar situation decades earlier in Alaska.Nicholas Begich Sr, a congressman, disappeared in a plane crash weeks before the 1972 election but still won. The Alaska Democrat was eventually declared dead, and his Republican opponent claimed the seat in a special election.In 2000, the Democratic governor of Missouri, Mel Carnahan, died in a plane crash while campaigning for a seat in the US Senate. Although Carnahan was trailing in the polls when he died, he made a political comeback after his death and narrowly defeated his Republican opponent, John Ashcroft. Carnahan’s widow, Jean, was appointed to serve in the Senate until a special election in 2022, which she lost.More recently, Dennis Hof, owner of the Nevada brothel featured on HBO’s Cathouse documentary series, died weeks before a 2018 election but still captured a seat in the state legislature.In 2020, North Dakota legislative candidate David Andahl died from Covid-19 the month before the election and still won. And in 2022, Pennsylvania state lawmaker Anthony DeLuca won reelection despite dying from lymphoma the month prior.Hodge and other Long Island Democrats argue that Republicans only sued to assure themselves victory as they seek to bolster their majority in the county legislature. They say the lawsuit has only prolonged the anguish for Krommidas’s family.“I understand politics, but there’s a time to stop and be a human being,” said Ellen Lederer-DeFrancesco, who met Krommidas through the local Democratic Pparty. “Petros is someone’s son, brother, friend.”The Nassau county Republican committee chairperson, Joseph Cairo Jr, in a statement, vowed the party and its candidates will “show the highest level of sensitivity during these challenging times for the Krommidas family”.Krommidas’s family declined to comment when reached by phone, but his mother and sister both called for residents to “honor and vote” for him in recent Facebook posts.“My Peter cared deeply about people and his community and continues to inspire kindness and unity in our community,” his mother, Maria, wrote.Eleni-Lemonia Krommidas, his sister, described him in her own post as a first-generation American who loved his country and “believed in equality, education, and the power of unity”.In the days after his disappearance, family and friends joined first responders in scouring Long Beach’s broad swath of sand, which is located just east of the New York City borough of Queens.View image in fullscreenSome of the missing person fliers they put up with images of Krommidas’s youthful, smiling face are tattered and faded but still visible on telephone poles around Long Beach.Meanwhile campaign signs for Mullaney, his opponent, are prominently displayed on fences along the main thoroughfares and on tidy residential lawns. The Republican didn’t respond to emails seeking comment.Along the Long Beach boardwalk last week, longtime resident Maude Carione was dumbstruck at the choice facing voters in November.“It’s insane to leave his name on the ballot. You’ll confuse people,” said the 72-year-old Trump supporter, who didn’t have plans to vote in the upcoming local election. “In fairness, you have to give another candidate a chance for the Democrats. You have to.”For resident Regina Pecorella, the decision, while grim, was clear. “If it’s between those two, I’m voting for the person that’s alive,” said the 54-year old independent, who voted for a straight Republican ticket in the previous election. “I don’t know how else to answer that.”Guardian staff contributed reporting More

  • in

    The mortgage fraud case against Letitia James is ‘bupkis’, experts say

    A prosecutor installed by Donald Trump may have been able to secure an indictment against the New York attorney general, Letitia James, but actually obtaining a conviction may be an uphill battle, legal experts say.Even before a grand jury handed down the indictment on Thursday, there was already deep skepticism about possible charges. Career prosecutors in the US attorney’s office for the eastern district of Virginia had looked at accusations James committed mortgage fraud and concluded there was no probable cause to charge the case. Lindsey Halligan, Trump’s handpicked interim US attorney, nonetheless went ahead and presented the case to the grand jury. Her decision to do so reportedly caught top justice department officials off-guard.The indictment handed down on Thursday charges James with bank fraud and making a false statement when she secured a mortgage to buy a second home in Norfolk, Virginia, in 2020. As part of the purchase, James signed a rider that indicated she would use it as her second home and prohibited her from renting it out, according to the indictment. James proceeded to then rent out the home, prosecutors allege. By lying on the mortgage statement, prosecutors say, James secured a better mortgage rate and a seller credit that saved her about $18,933 over the life of the loan.“In this case, prosecutors will be required to show that at the moment James signed the mortgage paperwork, she was aware of the provision regarding a secondary home, that she intended to use it for some different purpose, and that she intended to obtain a financial benefit as a result of her deceit,” said Barbara McQuade, a former US attorney for the eastern district of Michigan. “That can be very difficult for a prosecutor to do because we cannot read other people’s minds. Anyone who has ever participated in a mortgage closing is familiar with the daunting pile of papers they put in front of you.”The second-home rider James signed does not prohibit renting the home outright, Adam Levitin, a law professor at Georgetown University, wrote in a blogpost. Instead, the rider prevents the owner from giving control over rental decisions to someone else. The agreement also only imposes the restriction starting one year after the agreement. The indictment made public on Thursday does not say when James rented the home or for how long.The rider also includes an exemption for “extenuating circumstances”, Levitin noted, pointing out that the mortgage was obtained in August 2020 during the Covid-19 pandemic.“I’m unaware of the federal government having previously charged anyone for fraud based on renting out a second home,” Levitin wrote in the post on Credit Slips. “It’s clear why the career prosecutors in the Eastern District of Virginia refused to bring a case: James doesn’t appear to have made any misrepresentation in her mortgage because the mortgage does not directly prohibit rentals.”James has forcefully denied the charges. Last month, Trump publicly admonished the US attorney general, Pam Bondi, to indict her, along with the former FBI director James Comey and California senator Adam Schiff.“These charges are baseless, and the president’s own public statements make clear that his only goal is political retribution at any cost. The president’s actions are a grave violation of our Constitutional order and have drawn sharp criticism from members of both parties,” James said in a statement on Thursday evening.Trump’s public statements, combined with the conclusion of career prosecutors about a lack of probable cause, make it likely James will bring a selective prosecution argument to try to get the case thrown out.“Normally, a claim [that] this is a vindictive prosecution does not work,” said John Coffee, a professor at Columbia Law School. But, he added: “You don’t usually have the president calling for these sort of things.”The charges against James come as William Pulte, the head of the Federal Housing Finance Agency, has deployed mortgage filings to attack Trump’s rivals. In April, Pulte, a staunch Trump ally, sent a criminal referral to the Department of Justice regarding two different real estate transactions involving James. Neither of the transactions in the referral were the ones actually charged this week.Pulte has also accused Schiff of mortgage fraud as he has the Federal Reserve governor Lisa Cook, whom Trump is trying to remove from the central bank. In Cook’s case, Pulte has made an allegation similar to the one against James, alleging she rented out a property she indicated was her second home on mortgage documents.skip past newsletter promotionafter newsletter promotionAlso unusual in James’s case is the amount of money she is said to have benefited from because of the fraud. Typically, investigators in the inspector general’s office at the Federal Housing Finance Agency, which handles mortgage fraud investigations, pursue cases where there are substantial losses to Fannie Mae or Freddie Mac, government-sponsored enterprises that support the housing market by guaranteeing mortgages.Even the most junior prosecutor in a US attorney’s office would turn down a case with a loss amount that low, said Jacqueline Kelly, a former federal prosecutor in New York who is now a partner at Boies Schiller Flexner.“It would never be signed off on by a supervisor with a loss amount that low,” she said. The low loss amount could also bolster James’s claims of selective prosecution. “When she has to prove that someone similarly situated would not have been prosecuted, she is on really strong ground there because if you look at other cases charged under these same statutes, you’re not going to find one similar to this at all.”While the length of James’s loan is not clear, if it was a standard 30-year mortgage she would have defrauded the government out of about $633 each year.“That’s bupkis,” said one former federal prosecutor who spoke on condition of anonymity to avoid professional repercussions. “Are you really going to believe when you get up there that the attorney general of New York would commit this willfulness over $600 a year?“It’s a race as to whether this is weaker than the Comey case or stronger because they’re the two weakest cases I’ve ever seen in my life.” More

  • in

    Mamdani attends Israelis for Peace vigil after his 7 October statement draws ire from Israel

    The New York City Democratic mayoral candidate Zohran Mamdani on Tuesday evening attended a vigil in Manhattan convened by Israelis for Peace, an anti-occupation group of Israelis in New York who have rallied weekly since 2023 to call for a ceasefire and the release of Israeli hostages.Sitting in Union Square alongside New York City comptroller Brad Lander, his one-time rival for the Democratic nomination who has been campaigning for him, Mamdani listened as speakers at the event – which marked the two-year anniversary of the 7 October Hamas attacks on Israel – called for an end to the killing and to Israel’s occupation, and for equal rights for Palestinians.Earlier in the day, Mamdani drew ire from Israel over his statement on the anniversary in which he commemorated both the Israeli victims from that day and Palestinian victims from Israel’s ensuing war on Gaza.“Two years ago today, Hamas carried out a horrific war crime, killing more than 1,100 Israelis and kidnapping 250 more. I mourn these lives and pray for the safe return of every hostage still held and for every family whose lives were torn apart by these atrocities,” Mamdani said in the statement on Tuesday.He denounced Israel’s prime minister, Benjamin Netanyahu, and his government for launching a “genocidal war” in Gaza as well. He also accused the US government of being “complicit”.“A death toll that now far exceeds 67,000; with the Israeli military bombing homes, hospitals, and schools into rubble,” Mamdani wrote. “Every day in Gaza has become a place where grief itself has run out of language. I mourn these lives and pray for the families that have been shattered.”He said the last two years had “demonstrated the very worst of humanity” and called for an end to Israeli “occupation and apartheid”.Mamdani’s statement prompted a sharp rebuke from the Israeli foreign ministry on X, accusing him of “acting as a mouthpiece for Hamas propaganda” and “spreading Hamas’s fake genocide campaign”.“By repeating Hamas’s lies, he excuses terror and normalizes antisemitism. He stands with Jews only when they are dead. Shameful,” the post said.Israel stands widely accused of committing genocide in Gaza, where its ongoing military assault has killed tens of thousands of civilians, some 20,000 of them children, caused famine and mass starvation, and razed much of the Palestinian territory. Netanyahu and his former defense minister Yoav Gallant are wanted by the international criminal court for alleged war crimes and crimes against humanity in Gaza.Mamdani is no stranger to criticism for his views on the Israeli government and its war in Gaza, and the issue has proved a major flashpoint in the mayoral race.He has won significant support from certain segments of the Jewish community particularly among younger and more progressive voters, and faces stronger opposition from more conservative groups. A recent Marist poll found 35% of Jewish voters supported Mamdani, as does the same proportion supporting Cuomo. (The poll was taken before Eric Adams dropped out of the race.)The democratic socialist has faced criticism over his past refusal to condemn the phrase “globalize the intifada”, which some view as a call to violence. He has since said he would discourage use of the phrase. He also recently reiterated his intention to order the NYPD to arrest Netanyahu should he travel to New York.His October 7 statement on Tuesday attracted pushback from other pro-Israel voices. David Frum, a writer at the Atlantic and former speechwriter for George W Bush, wrote on X: “The chilly formulaic language about the 10/7 atrocity … the intense angry passion of the denunciation of Israel’s self-defense … together they arrestingly reveal what the author cares about and what/who he does not care about.”Fox News anchor David Asman called the statement “obscene”. He wrote on X: “The ‘very worst of mankind’ is what Mamdani supporters are on the streets today celebrating…‘honoring’ the beasts responsible for Oct 7. He supports a ‘global intifada,’ responsible for 9/11 and Oct 7. He should not be mayor of a city hit so hard by Jihadists.”Noa Yachot contributed reporting More

  • in

    US attorney resists pressure from Trump to prosecute Letitia James

    A career federal prosecutor in Virginia has told colleagues she does not believe there is probable cause to file criminal mortgage fraud charges against New York attorney general Letitia James, according to a person familiar with the matter.The prosecutor, Elizabeth Yusi, oversees major criminal cases in the Norfolk office for the US attorney for the eastern district of Virginia and plans to soon present her conclusion to Lindsey Halligan, a Trump ally, who was installed as the US attorney for the eastern district of Virginia last month. Yusi’s thinking was first reported by MSNBC on Monday.The justice department declined to comment. The US attorney for the eastern district of Virginia did not return a request for comment.The case sets up another high profile confrontation between the justice department and Trump, who has fired attorneys who have refused to punish his enemies. Halligan, who has no prosecutorial experience, was put in the role at the urging of Trump after her predecessor concluded there wasn’t probable cause to file criminal charges against James Comey, the former FBI director. Halligan personally presented the case against Comey to a grand jury after she was appointed and secured a two-count indictment.Trump has openly asked Pam Bondi, the US attorney general, to prosecute James, who led a civil fraud case against the president that led to a $500m fine, which was recently overturned by a New York state appellate court.William Pulte, the Federal Housing Finance Agency head and a staunch Trump ally, made a criminal referral of James to the justice department in April, alleging she may have committed mortgage fraud. Pulte pointed to mortgage documents related to a 2023 Norfolk, Virginia, home James helped purchase for her niece in which James appeared to indicate on a document she intended to use the home as her primary residence. James was serving as the attorney general of New York at the time.Prosecutors empaneled a grand jury in May to investigate, but struggled to build a case against James, despite pressure from Trump allies. Emails from the time of the home purchase and other mortgage documents show James clearly indicating that she did not intend for the home to be her primary residence. That evidence makes it difficult for prosecutors to prove that James knowingly lied on the mortgage documents.Multiple prosecutors in the eastern district of Virginia have either been fired or resigned in recent weeks as Trump has increased pressure on the office to bring charges against Comey and James.Erik Siebert, Halligan’s predecessor, resigned on 19 September after facing pressure from Trump to file charges. Maya Song, a top Siebert deputy, was also fired in late September. Michael Ben’Ary, a top national security prosecutor in the office, was also fired last week after Julie Kelly, a pro-Trump media personality, falsely accused him of working on the Comey case.“The leadership is more concerned with punishing the President’s perceived enemies than they are with protecting our national security,” he wrote in his farewell letter to colleagues.“Justice for Americans killed and injured by our enemies should not be contingent on what someone in the Department of Justice sees in their social media feed that day.” More

  • in

    Make green great again: Can appeals to the wallet make climate policy an election-winner?

    At stuffy United Nations press conferences, in swanky auditoriums and at sticky socialist dance parties, one word was on everyone’s lips at this year’s Climate Week NYC: affordability.The US energy secretary, Chris Wright, said under that under President Trump the United States is “returning to commonsense energy policies that focus on affordability”. The former energy secretary, Jennifer Granholm, said Democrats must focus on renewable power’s ability to shrink power bills to win elections. And supporters of the almost certainly soon-to-be New York City mayor, Zohran Mamdani, trumpeted their efforts to link green policies with efforts to lower city residents’ rent and make transit affordable.The attempt to link everyday cost issues to global warming is not new. The concept was a key part of the Green New Deal, a progressive policy platform popularized by youth-led climate group the Sunrise Movement and New York representative Alexandria Ocasio-Cortez in 2018. Joe Biden picked up the framing in the White House, naming his signature green carbon-cutting policy the Inflation Reduction Act, from 2022.Now, as utility bills soar around the country, Americans on every part of the political spectrum are framing their energy and climate proposals as ways to protect ordinary people’s pocketbooks.More on that after the most important reads from the week.Essential reads

    Revealed: Europe losing 600 football pitches of nature and crop land a day

    UK fracking ban to be brought forward as Labour counters Reform promise

    Israel’s ecocide in Gaza sends this message: even if we stopped dropping bombs, you couldn’t live here | George Monbiot
    In focusView image in fullscreenEvery year, Climate Week in New York City brings together government officials, corporate actors, scholars and activists for a vast array of climate-focused events, timed to coincide with the United Nations general assembly.This year, the Trump administration’s anti-environmental blitz cast a massive shadow over the event. In appearances through the week, White House officials aimed to peg its deregulatory agenda as a win to lower Americans’ bills, with Trump calling green energy a “scam” and Wright saying: “The more people have gotten into so-called climate action, the more expensive their energy has become.”Climate advocates attempted to expose those statements as false while getting Americans on board with green policies on the grounds that they can cut costs. For instance, two Democratic representatives, from Illinois and California, unveiled a proposal to speed new power-line construction and restore green energy incentives which Trump repealed earlier this year. Its name: the Cheap Energy Act.It’s a framework that Jennifer Granholm, who served as US energy secretary under Biden, said she expected as climate slips down the list of political concerns for Americans, while economic worries rise. “My guess is you’re not going to see a lot of politicians using the word ‘climate’, because people see that as a nice-to-have [concern], not a must-have, and right now they’re in the must-have mode,” she told reporters over avocado toast one morning. “Affordability is key.”Those well to Granholm’s left also called for a focus on affordability in the climate fight. But many called for more ambitious solutions that deliver more immediate benefits. Instead of merely tinkering with the tax code to incentivize green technology buildout – a hallmark of Biden’s climate efforts – politicians should prioritize less wonky, “green economic populist” campaigns such as fare-free transit and the build-out of decarbonized public housing.“These kinds of programs do have decarbonization benefits, but they’re extremely important for starting to build up a mass base [who have] trust in public institutions and trust in the government,” Batul Hassan, labor director at the left-leaning thinktank Climate and Community Institute, said at a panel.skip past newsletter promotionafter newsletter promotionMamdani, the socialist who achieved a stunning win in the New York City mayoral primary this summer, embodies this kind of agenda, said Hassan. On Wednesday of Climate Week, progressives gathered for a dance party at the legendary Sounds of Brazil music venue to celebrate the candidate’s success.“It has long been understood that if we’re going to build a mass movement, people need to see the connection between the transition to renewable energy and spending less money,” New York City comptroller Brad Lander said in an interview with the Guardian at the party, shouting over the thrum of Charli xcx.Messaging is important, but merely talking about affordability is not enough, Alexa Avilés, a New York City council member and democratic socialist, told the Guardian at the Mamdani event. Trump, for instance, has failed to deliver on his promise of lowering bills while handing massive benefits to oil giants and other corporations. And many Democrats are also guilty of prioritizing their corporate donors’ interests, Avilés said.“Some people talk about working-class folks, but then they make policies that are designed for the rich. We’ve been living with that frustration for a long time,” she said. “We need to focus on actually bringing relief to people. And we see that when we really center people over profit, people respond to that. People can tell who is for real.”Read more:

    US energy department cracks down on workers’ use of climate crisis language

    Trump administration spending $625m to revive dying coal industry

    Los Angeles vowed to host the Olympics without breaking the bank and environment. Can it? More

  • in

    Eric Adams drops out of New York City mayoral race

    The mayor of New York City, Eric Adams, announced on Sunday that he is abandoning his faltering bid to win re-election, just over a month before election day, delivering the message in a social media video set to the strains of My Way.Adams, who was trailing in the polls, was elected as a Democrat but ran for re-election as an independent after he was indicted on federal corruption charges, which were then dropped by the Trump administration in exchange for his cooperation on immigration raids.In his video statement, seated on the steps of the mayor’s residence beside a photograph of his late mother, Adams said that it had been impossible for him to mount a winning campaign, blaming “constant media speculation about my future” and a decision by the city’s campaign finance board’s decision to withhold millions of dollars in matching funds over suspicious donations.View image in fullscreenHe also acknowledged that he had lost the trust of some New Yorkers after being charged with corruption but claimed the charges were unjust. “I was wrongfully charged because I fought for this city, and if I had to do it again, I would fight for New York again” Adams said, without explaining how allegedly obtaining illegal campaign contributions and luxury travel from foreign nationals for himself was in the best interest of New Yorkers.The mayor will serve the remainder of his term in office, which ends on New Year’s Eve, and his name remains on the ballot for the November election since the deadline to remove it has passed.The withdrawal of Adams narrows the race to lead the country’s largest city to a three-way contest between the Democratic nominee, Zohran Mamdani; the former governor, Andrew Cuomo; and the Republican candidate, Curtis Sliwa.Three weeks ago, when Adams had insisted that he would stay in the race, amid reports that he had been offered an ambassadorship by the Trump administration if he would drop out to make it easier for Cuomo to defeat the democratic socialist frontrunner, Mamdani, the mayor was scathing about the former governor. “Andrew Cuomo is a snake and a liar,” Adams told reporters. “Andrew has had a career of pushing Black candidates out of races.”After Adams announced the end of his campaign on Sunday, Cuomo nonetheless praised him for “putting the well-being of New York City ahead of personal ambition”.Without mentioning Mamdani by name, Cuomo added: “We face destructive extremist forces that would devastate our city through incompetence or ignorance, but it is not too late to stop them.”Mamdani, a New York state assembly member who defeated Cuomo to win the Democratic nomination earlier this year, did not immediately comment on the mayor’s withdrawal.Earlier on Sunday, he posted video on Instagram of an influential Black pastor welcoming him to address the congregation of a Black Christian megachurch in East New York. The pastor, A R Bernard, pointed out to congregants that, if elected, Mamdani would not be the first democratic socialist mayor on the city, since the late David Dinkins, the city’s first Black mayor, was also a member of the Democratic Socialists of America.Sliwa, the Republican nominee, said last week that he had turned down multiple offers of millions of dollars to end his own campaign.Recent polls of the four-way contest have shown Mamdani leading Cuomo by more than 20 points, with Sliwa and Adams far behind. When pollsters asked likely voters for their preferences in a race without Adams, Mamdani still led Cuomo by a sizable margin. More

  • in

    Rare orange lobster found in New York supermarket returned to sea

    A rare orange lobster was released back into the wild this week after being spotted by an enthusiast at a local grocery store.The lobster, swiftly nicknamed Jean-Clawed Van Damme, is a one-in-30m catch, according to Humane Long Island, a wildlife rescue group, and the New York Aquarium, who aided in releasing it.Given that seeing an orange lobster typically means it is dead and boiled and on a plate, shopper Kyle Brancato did a double take when he spotted the lobster moving among the others for sale at a Tops grocery store in upstate New York.“I walked by the lobster tank, and I saw this bright orange lobster,” Brancato told WHAM, a local CNN affiliate. “Very different from all the other ones in the tank.”He suspected other shoppers mistook the lobster as diseased and passed it by.View image in fullscreenBrancato decided to buy it, with the hopes of ultimately freeing it, but without much experience in crustacean care he improvised at first.“I borrowed some tank water from Palmer’s, down the road,” said Brancato, referring to a local restaurant. “That bought me enough time to go to [pet supply store] Petco and pick up a 20-gallon tank, and I got 20 gallons of sea water that they sell in the store in boxes. And I emptied it into the tank, and cooled it down to the proper temperature.”The lobster was released into the open waters of the Long Island Sound on Wednesday, just a day before National Lobster Day, which marks the peak of the annual US lobster harvesting season.Amid seasonal special offers from eateries, thousands more lobsters than usual suffered a different fate from their wild orange cousin and ended up boiled, buttered, and eaten.In 2021 an orange lobster was rescued in Ontario by a Canadian couple, after being held captive in a grocery store tank, where it had languished for weeks after being shunned by shoppers because of its rare hue and was apparently being picked on by the other lobsters. That one ended up in an aquarium. More