Check server response of

Server response
NS records
Whois domain
Response headers
Request headers
Raw HTML code
301 Moved Permanently - js4mi.com
HTTP Status: 301
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
Content-Type: text/plain; charset=utf-8
Date: Fri, 02 May 2025 01:11:55 GMT
Location: https://jessicaswartz.vote/
Server: Netlify
X-Nf-Request-Id: 01JT78SM1GB0NBGQPQW5F1HYDS
Content-Length: 42

HTTP Code 301 Moved Permanently

301 http code means that the requested resource has been permanently moved to a new URL. All future requests should use the new address.

When is Code 301 used?

  • When changing a website domain
  • When modifying URL structures
  • When setting up redirects for SEO

What does Code 301 mean for the user?

The browser will automatically redirect the user to the new address, and search engines will update their indexes.

302 Found - https://js4mi.com/
HTTP Status: 302
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
Date: Fri, 02 May 2025 01:11:55 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Content-Language: en
Content-Security-Policy: worker-src * data: blob:; style-src * 'unsafe-inline'; script-src * 'unsafe-eval' 'unsafe-inline'; default-src * data:
Cross-Origin-Opener-Policy: same-origin
Location: http://jessicaswartz.vote
Permissions-Policy: camera=(), geolocation=(), microphone=()
Referrer-Policy: same-origin
Strict-Transport-Security: max-age=3600; includeSubDomains
Vary: Accept-Language, Cookie, Origin
Via: 1.1 spaces-router (60cfadc35250)
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-Request-Id: 79dcc3e4-add8-733b-531c-825fa2ef8827
X-Sb-Host: H
cf-cache-status: DYNAMIC
Set-Cookie: __cf_bm=BqGv0jtMnlW5r4hbnjwGdquDxScs0YDpyhHlmxAVFkU-1746148315-1.0.1.1-xzEIV.6Q.eh_3JmkfalXr4ID7bhtwg14bcU5zVxXZM6jw2GD2zTbLfDeGpWVJFJAhd4uw5plH_PYKL1pjsw5zfcJuBwuF23GEK5SnJNHnlk; path=/; expires=Fri, 02-May-25 01:41:55 GMT; domain=.oneswitchboard.com; HttpOnly; Secure; SameSite=None
Server: cloudflare
CF-RAY: 9393a5b63ac4d92e-HEL

HTTP Code 302 Found (Moved Temporarily)

302 http code indicates that the requested resource is temporarily available at a different URL.

When is Code 302 used?

  • When temporarily changing a page URL
  • When testing new content
  • During temporary maintenance

What does Code 302 mean for the user?

The user is automatically redirected to the new URL, but search engines continue to index the old address.

200 OK - https://link.oneswitchboard.com/shortlinks/js4mi.com//
HTTP Status: 200
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
Accept-Ranges: bytes
Age: 0
Cache-Control: public,max-age=0,must-revalidate
Cache-Status: "Netlify Edge"; fwd=miss
Content-Length: 22175
Content-Type: text/html; charset=UTF-8
Date: Fri, 02 May 2025 01:11:55 GMT
Etag: "0fbb1078b3a373221524d367c2e44047-ssl"
Server: Netlify
Strict-Transport-Security: max-age=31536000
X-Nf-Request-Id: 01JT78SM9N6G78RCX6HE30AWCB

HTTP Code 200 OK

200 http code is a standard successful HTTP server response. It means that the client’s request (e.g., from a browser) was successfully processed, and the server is delivering the requested data.

When is Code 200 used?

  • When loading a web page
  • When successfully receiving an API response
  • When processing a form or another HTTP request

What does Code 200 mean for the user?

The user receives content without errors, and the page or application functions properly. If Code 200 is accompanied by data, the browser or program processes and displays it to the user.

GET / HTTP/1.1
Host: js4mi.com
Accept: */*
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
<!DOCTYPE html><html lang="en"> <head><meta charset="utf-8"><meta name="viewport" content="width=device-width"><title>Jessica Swartz for Congress</title><link rel="canonical" href="https://jessicaswartz.vote/"><link rel="icon" type="image/png" href="/Fav.png"><link rel="apple-touch-icon" href="/Touch.png"><meta content="Born and raised in West Michigan by a public school teacher and small business owner, Jessica Swartz is running for reelection in Michigan's 4th Congressional District. Learn more here!" name="description"><meta content="Jessica Swartz for Congress" property="og:title"><meta content="Born and raised in West Michigan by a public school teacher and small business owner, Jessica Swartz is running for reelection in Michigan's 4th Congressional District. Learn more here!" property="og:description"><meta content="https://jessicaswartz.vote/Share.jpg" property="og:image"><meta content="Jessica Swartz for Congress" property="twitter:title"><meta content="Born and raised in West Michigan by a public school teacher and small business owner, Jessica Swartz is running for reelection in Michigan's 4th Congressional District. Learn more here!" property="twitter:description"><meta content="https://jessicaswartz.vote/Share.jpg" property="twitter:image"><meta content="summary_large_image" name="twitter:card"><meta property="og:type" content="website"><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link href="https://fonts.googleapis.com/css2?family=Licorice&family=Open+Sans:ital,wght@0,300..800;1,300..800&family=Signika:[email protected]&display=swap" rel="stylesheet"><script async src="https://www.googletagmanager.com/gtag/js?id=G-LRGNC5WDNY"></script><script type="module">window.dataLayer=window.dataLayer||[];function a(){dataLayer.push(arguments)}a("js",new Date);a("config","G-LRGNC5WDNY");</script><script type="text/javascript" src="https://identity.netlify.com/v1/netlify-identity-widget.js"></script><meta name="astro-view-transitions-enabled" content="true"><meta name="astro-view-transitions-fallback" content="animate"><script type="module" src="/_astro/ClientRouter.astro_astro_type_script_index_0_lang.BZs-2RF_.js"></script><link rel="stylesheet" href="/_astro/about.CsnU3IEP.css"></head> <body class="bg-medBlue font-open text-light relative flex min-h-svh flex-col lg:text-lg"> <a href="#main" class="sr-only" tabindex="0">Skip to main</a> <header> <style>astro-island,astro-slot,astro-static-slot{display:contents}</style><script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event("astro:load"));})();;(()=>{var A=Object.defineProperty;var g=(i,o,a)=>o in i?A(i,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):i[o]=a;var d=(i,o,a)=>g(i,typeof o!="symbol"?o+"":o,a);{let i={0:t=>m(t),1:t=>a(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(a(t)),5:t=>new Set(a(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t),11:t=>1/0*t},o=t=>{let[l,e]=t;return l in i?i[l](e):void 0},a=t=>t.map(o),m=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([l,e])=>[l,o(e)]));class y extends HTMLElement{constructor(){super(...arguments);d(this,"Component");d(this,"hydrator");d(this,"hydrate",async()=>{var b;if(!this.hydrator||!this.isConnected)return;let e=(b=this.parentElement)==null?void 0:b.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let c=this.querySelectorAll("astro-slot"),n={},h=this.querySelectorAll("template[data-astro-template]");for(let r of h){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute("data-astro-template")||"default"]=r.innerHTML,r.remove())}for(let r of c){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute("name")||"default"]=r.innerHTML)}let p;try{p=this.hasAttribute("props")?m(JSON.parse(this.getAttribute("props"))):{}}catch(r){let s=this.getAttribute("component-url")||"<unknown>",v=this.getAttribute("component-export");throw v&&(s+=` (export ${v})`),console.error(`[hydrate] Error parsing props for component ${s}`,this.getAttribute("props"),r),r}let u;await this.hydrator(this)(this.Component,p,n,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))});d(this,"unmount",()=>{this.isConnected||this.dispatchEvent(new CustomEvent("astro:unmount"))})}disconnectedCallback(){document.removeEventListener("astro:after-swap",this.unmount),document.addEventListener("astro:after-swap",this.unmount,{once:!0})}connectedCallback(){if(!this.hasAttribute("await-children")||document.readyState==="interactive"||document.readyState==="complete")this.childrenConnectedCallback();else{let e=()=>{document.removeEventListener("DOMContentLoaded",e),c.disconnect(),this.childrenConnectedCallback()},c=new MutationObserver(()=>{var n;((n=this.lastChild)==null?void 0:n.nodeType)===Node.COMMENT_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});c.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}async start(){let e=JSON.parse(this.getAttribute("opts")),c=this.getAttribute("client");if(Astro[c]===void 0){window.addEventListener(`astro:${c}`,()=>this.start(),{once:!0});return}try{await Astro[c](async()=>{let n=this.getAttribute("renderer-url"),[h,{default:p}]=await Promise.all([import(this.getAttribute("component-url")),n?import(n):()=>()=>{}]),u=this.getAttribute("component-export")||"default";if(!u.includes("."))this.Component=h[u];else{this.Component=h;for(let f of u.split("."))this.Component=this.Component[f]}return this.hydrator=p,this.hydrate},e,this)}catch(n){console.error(`[astro-island] Error hydrating ${this.getAttribute("component-url")}`,n)}}attributeChangedCallback(){this.hydrate()}}d(y,"observedAttributes",["props"]),customElements.get("astro-island")||customElements.define("astro-island",y)}})();</script><astro-island uid="1Qqkag" prefix="r4" component-url="/_astro/header.2AKMOZPe.js" component-export="default" renderer-url="/_astro/client.BO3Rm8ny.js" props="{}" ssr client="load" opts="{&quot;name&quot;:&quot;Header&quot;,&quot;value&quot;:true}" await-children><link rel="preload" as="image" href="/Logo-Light.png"/><div><a href="https://secure.actblue.com/donate/js-website25?refcode=preheader" target="_blank" rel="noreferrer" class="bg-purple group hover:bg-lightPurple flex items-center justify-center gap-2 px-6 py-2 text-center text-sm text-white transition-colors"><span>Join Our Team</span><span class="bg-medBlue group-hover:bg-darkBlue rounded-full px-3 py-1 font-semibold transition-colors">Donate Now</span></a></div><div class="relative px-6 pt-6 text-white"><div class=""><div class="flex grid-cols-3 items-center justify-between pb-6 md:grid"><a href="https://secure.actblue.com/donate/js-website25?refcode=header" target="_blank" rel="noreferrer" class="hover:bg-purple hover:text-light bg-lightPurple text-white rounded-full px-6 py-2 font-bold transition-colors md:place-self-start">Donate</a><a href="/" class="flex items-center justify-center"><img src="/Logo-Light.png" alt="Haley Stevens for Senate" class="w-48 transition-all hover:scale-95 md:w-56 md:place-self-center lg:w-64 xl:w-72" loading="eager"/></a><button class="relative h-10 w-10 place-self-end" aria-label="open menu"><span class="absolute h-1 w-5 bg-white" style="left:50%;top:35%;transform:translateX(-50%) translateY(-50%)"></span><span class="absolute h-1 w-5 bg-white" style="left:50%;top:50%;transform:translateX(-50%) translateY(-50%)"></span><span class="absolute h-1 w-5 bg-white" style="left:50%;bottom:35%;transform:translateX(-50%) translateY(50%)"></span></button></div><div></div></div></div><!--astro:end--></astro-island> </header> <main id="main" role="main" class="grow">  <section id="hero"> <div class="relative"> <div class=""> <img src="/images/Kalamazoo.jpg" alt="Kalamazoo, MI" class="absolute h-full w-full object-cover" loading="eager"> <div class="from-medBlue via-medBlue/80 to-darkBlue absolute h-full w-full bg-gradient-to-b"></div> </div> <div class="relative mx-auto -mt-6 flex max-w-7xl flex-col items-center p-6 md:flex-row lg:p-12"> <astro-island uid="ZsVdSk" prefix="r1" component-url="/_astro/slide-up-component.DKFwIWCT.js" component-export="default" renderer-url="/_astro/client.BO3Rm8ny.js" props="{&quot;delay&quot;:[0,&quot;0&quot;],&quot;className&quot;:[0,&quot;md:w-4/6 md:max-w-2xl&quot;]}" ssr client="load" opts="{&quot;name&quot;:&quot;SlideUpComp&quot;,&quot;value&quot;:true}" await-children><div class="md:w-4/6 md:max-w-2xl" style="opacity:0;transform:translateY(20px)"><astro-slot> <img src="/images/JS-Hero.jpg" alt="Jessica Swartz headshot" class="h-full w-full rounded-xl object-cover shadow-xl" loading="eager"> </astro-slot></div><!--astro:end--></astro-island> <astro-island uid="Z1nt0ih" prefix="r2" component-url="/_astro/slide-up-component.DKFwIWCT.js" component-export="default" renderer-url="/_astro/client.BO3Rm8ny.js" props="{&quot;delay&quot;:[0,&quot;0.3&quot;],&quot;className&quot;:[0,&quot;text-light from-lightPurple to-purple mx-6 -mt-6 flex flex-col items-center overflow-hidden rounded-xl bg-gradient-to-tl text-center shadow-xl md:absolute md:right-6 md:m-0 md:my-6 md:w-[45%]&quot;]}" ssr client="load" opts="{&quot;name&quot;:&quot;SlideUpComp&quot;,&quot;value&quot;:true}" await-children><div class="text-light from-lightPurple to-purple mx-6 -mt-6 flex flex-col items-center overflow-hidden rounded-xl bg-gradient-to-tl text-center shadow-xl md:absolute md:right-6 md:m-0 md:my-6 md:w-[45%]" style="opacity:0;transform:translateY(20px)"><astro-slot> <div class="flex flex-col items-center gap-3 p-8 text-xl font-bold text-balance md:p-4 md:text-2xl lg:p-10"> <q>Everywhere I go – from Girl Scout troop meetings to church on
              Sunday mornings – I hear from West Michiganders who are sick and
              tired of partisan politics. Let’s bring some common sense to
              Congress.</q> <span class="font-script text-5xl lg:text-6xl">- Jessica Swartz</span> </div> <a href="/endorsements" class="bg-medBlue group hover:bg-darkBlue z-50 flex w-full items-center gap-2 p-3 transition-colors"> <img src="/images/406.png" alt="Local 406 logo" class="w-12 lg:w-16"> <div class="flex w-full items-center justify-between gap-2"> <div class="text-left"> <p class="text-yellow text-sm font-bold uppercase">
Endorsement
</p> <p class="font-signika leading-none font-black uppercase">
Teamsters Local 406
</p> </div> <div class="group-hover:text-yellow flex items-center transition-colors"> <span class="hidden text-xs font-semibold sm:block lg:text-sm">See more</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="h-8 w-8"><path d="m9 18 6-6-6-6"></path></svg> </div> </div> </a> </astro-slot></div><!--astro:end--></astro-island> </div> </div> </section> <section id="action" class="bg-darkBlue"> <astro-island uid="1HBhcD" prefix="r0" component-url="/_astro/action-section.DQkiMbdw.js" component-export="default" renderer-url="/_astro/client.BO3Rm8ny.js" props="{}" ssr client="load" opts="{&quot;name&quot;:&quot;ActionSection&quot;,&quot;value&quot;:true}" await-children><div class="grid grid-cols-1 gap-2 p-2 md:grid-cols-3"><a href="https://secure.ngpvan.com/VpUMTKXVlEOZbAEnb32lIg2" target="_blank" rel="noreferrer" class="bg-darkPurple text-white hover:text-light hover:bg-blue flex items-center justify-center gap-1 rounded-md p-4 text-center font-semibold transition-colors"><span>Get updates</span><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="h-5 w-5 md:h-6 md:w-6"><path d="M22 17a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9.5C2 7 4 5 6.5 5H18c2.2 0 4 1.8 4 4v8Z"></path><polyline points="15,9 18,9 18,11"></polyline><path d="M6.5 5C9 5 11 7 11 9.5V17a2 2 0 0 1-2 2"></path><line x1="6" x2="7" y1="10" y2="10"></line></svg></a><a href="/volunteer" class="bg-lightPurple hover:bg-blue flex items-center justify-center gap-1 rounded-md p-4 text-center font-semibold transition-colors"><span>Volunteer</span><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="h-5 w-5 md:h-6 md:w-6"><rect width="8" height="4" x="8" y="2" rx="1"></rect><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-5.5"></path><path d="M4 13.5V6a2 2 0 0 1 2-2h2"></path><path d="M13.378 15.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z"></path></svg></a><div class="bg-blue flex items-center justify-center gap-3 rounded-md p-4 text-center font-semibold"><span>Follow</span><ul class="flex gap-3"><li><a href="http://facebook.com/jessicaformi" target="_blank" rel="noreferrer"><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill="currentcolor" class="text-light h-6 w-6 transition-colors hover:text-white"><title>Facebook</title><path d="M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z"></path></svg></a></li><li><a href="https://twitter.com/JessicaForMI" target="_blank" rel="noreferrer"><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill="currentcolor" class="text-light h-6 w-6 transition-colors hover:text-white"><title>X</title><path d="M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z"></path></svg></a></li></ul></div></div><!--astro:end--></astro-island> </section> <section id="meet"> <div class="bg-light p-2"> <div class="text-darkBlue rounded-lg bg-white px-6 py-12 md:py-16 lg:py-20"> <astro-island uid="1ieBp" prefix="r3" component-url="/_astro/slide-up-component.DKFwIWCT.js" component-export="default" renderer-url="/_astro/client.BO3Rm8ny.js" props="{&quot;className&quot;:[0,&quot;mx-auto flex max-w-2xl flex-col items-center gap-3 text-center&quot;],&quot;delay&quot;:[0,&quot;0&quot;]}" ssr client="load" opts="{&quot;name&quot;:&quot;SlideUpComp&quot;,&quot;value&quot;:true}" await-children><div class="mx-auto flex max-w-2xl flex-col items-center gap-3 text-center" style="opacity:0;transform:translateY(20px)"><astro-slot> <h2 class="text-blue font-signika text-3xl font-black uppercase md:text-4xl lg:text-5xl">
Meet Jessica Swartz
</h2> <p class="leading-relaxed">
Hard work is in Jessica Swartz’s DNA. Born and raised in West
            Michigan by a public school teacher and small business owner,
            Jessica got her first job at age 13. She went on to become a
            Division One rower at Michigan State University, picking up shifts
            in the school cafeteria and local restaurants when she wasn’t at
            practice or studying.
</p> <a href="/about" class="hover:bg-medBlue hover:border-medBlue mt-3 flex items-center justify-center gap-1 rounded-md border-2 px-4 py-3 text-center font-semibold transition-colors hover:text-white">Learn more</a> </astro-slot></div><!--astro:end--></astro-island> </div> </div> </section> <section id="news"> <div class="from-lightPurple to-purple bg-gradient-to-tl px-6 py-12 lg:py-20"> <div class="mx-auto flex max-w-4xl flex-col gap-3 md:gap-6"> <h2 class="font-signika text-center text-3xl font-black uppercase md:text-left md:text-4xl lg:text-5xl">
In the News
</h2> <ul class="grid grid-cols-1 gap-6 md:grid-cols-2"> <li class="mt-6 w-full"> <a href="/news/teamsters-endorsement" target rel class="bg-medBlue text-light border-blue group relative flex h-full flex-col rounded-lg border-t-10 p-6 pt-14 shadow-lg transition-all hover:scale-98 md:pt-16"> <div class="bg-blue text-light absolute -top-8 flex flex-col items-center rounded-md px-5 py-2 text-sm leading-none font-semibold uppercase"> <span>Apr</span> <span class="font-signika text-yellow text-2xl md:text-3xl"> 16 </span> <span>2025</span> </div> <p class="text-sm font-bold uppercase">press release</p> <h2 class="text-2xl font-black text-white md:text-3xl"> Michigan 4th District Congressional Candidate Jessica Swartz Earns Key Labor Endorsement </h2>  <span class="group-hover:text-lightPurple mt-4 font-semibold underline underline-offset-4 transition-colors">
Read more
</span> </a> </li><li class="mt-6 w-full"> <a href="/news/annoucement" target rel class="bg-medBlue text-light border-blue group relative flex h-full flex-col rounded-lg border-t-10 p-6 pt-14 shadow-lg transition-all hover:scale-98 md:pt-16"> <div class="bg-blue text-light absolute -top-8 flex flex-col items-center rounded-md px-5 py-2 text-sm leading-none font-semibold uppercase"> <span>Apr</span> <span class="font-signika text-yellow text-2xl md:text-3xl"> 9 </span> <span>2025</span> </div> <p class="text-sm font-bold uppercase">press release</p> <h2 class="text-2xl font-black text-white md:text-3xl"> Democrat Jessica Swartz Launches Campaign for Congress in Michigan’s Fourth District </h2>  <span class="group-hover:text-lightPurple mt-4 font-semibold underline underline-offset-4 transition-colors">
Read more
</span> </a> </li> </ul> </div> </div> </section>  </main> <footer> <div> <div class="relative"> <img src="/images/Kalamazoo.jpg" alt="Kalamazoo, MI" class="absolute h-full w-full object-cover"> <div class="to-darkBlue absolute inset-0 bg-gradient-to-b from-transparent"></div> <div class="relative z-10 px-6 pt-24 pb-12 md:pt-48 md:pb-24"> <div class="from-lightPurple to-purple mx-auto flex max-w-4xl flex-col items-center gap-6 rounded-lg bg-gradient-to-t px-6 py-8 shadow-lg md:flex-row md:gap-12 md:bg-gradient-to-l"> <div class="flex flex-col gap-4 text-center md:w-3/6 md:text-left"> <h2 class="font-signika text-2xl font-black uppercase md:text-3xl xl:text-4xl">
Chip in to join our campaign
</h2> <p>
We need your help to ensure we have the resources to reelect Jessica
            to Congress this November. Make a contribution to join our team!
</p> </div> <ul class="grid w-full grid-cols-3 gap-1 text-xl font-black md:w-3/6 md:grid-cols-2 md:text-2xl"> <li> <a href="https://secure.actblue.com/donate/js-website25?refcode=footer&amount=25" target="_blank" rel="noreferrer" class="bg-blue font-signika hover:bg-medBlue flex items-center justify-center rounded py-3 text-center"> $25 </a> </li><li> <a href="https://secure.actblue.com/donate/js-website25?refcode=footer&amount=50" target="_blank" rel="noreferrer" class="bg-blue font-signika hover:bg-medBlue flex items-center justify-center rounded py-3 text-center"> $50 </a> </li><li> <a href="https://secure.actblue.com/donate/js-website25?refcode=footer&amount=100" target="_blank" rel="noreferrer" class="bg-blue font-signika hover:bg-medBlue flex items-center justify-center rounded py-3 text-center"> $100 </a> </li><li> <a href="https://secure.actblue.com/donate/js-website25?refcode=footer&amount=250" target="_blank" rel="noreferrer" class="bg-blue font-signika hover:bg-medBlue flex items-center justify-center rounded py-3 text-center"> $250 </a> </li><li> <a href="https://secure.actblue.com/donate/js-website25?refcode=footer&amount=500" target="_blank" rel="noreferrer" class="bg-blue font-signika hover:bg-medBlue flex items-center justify-center rounded py-3 text-center"> $500 </a> </li><li> <a href="https://secure.actblue.com/donate/js-website25?refcode=footer" target="_blank" rel="noreferrer" class="bg-blue font-signika hover:bg-medBlue flex items-center justify-center rounded py-3 text-center"> Other </a> </li> </ul> </div> </div> </div> <div class="text-light from-darkBlue to-medBlue bg-gradient-to-b px-6 py-16 lg:py-24"> <div class="flex flex-col items-center gap-8 md:gap-12"> <a href="/"> <img src="/Logo-Light.png" alt="Jessica Swartz for Congress logo" class="w-56 transition-all hover:scale-95 md:w-64"> </a> <nav> <ul class="flex flex-wrap items-center justify-center gap-x-3 gap-y-1 font-semibold md:text-xl"> <li> <a href="/" class="hover:text-lightPurple transition-colors"> Home </a>  </li><li> <a href="/about" class="hover:text-lightPurple transition-colors"> About </a>  </li><li> <a href="/endorsements" class="hover:text-lightPurple transition-colors"> Endorsements </a>  </li><li> <a href="/news" class="hover:text-lightPurple transition-colors"> News </a>  </li><li>  <a href="https://secure.ngpvan.com/VpUMTKXVlEOZbAEnb32lIg2" target="_blank" rel="noreferrer" class="hover:text-lightPurple transition-colors"> Sign Up </a> </li><li> <a href="/volunteer" class="hover:text-lightPurple transition-colors"> Volunteer </a>  </li><li>  <a href="https://secure.actblue.com/donate/js-website25?refcode=menu" target="_blank" rel="noreferrer" class="hover:text-lightPurple transition-colors"> Donate </a> </li> </ul> </nav> <div class="flex flex-col gap-y-2 text-center text-sm font-semibold"> <p>310 E Michigan Ave Lowr A P.O. Box 51136 Kalamazoo, MI 49007</p> <a href="mailto:[email protected]" class="hover:text-lightPurple underline underline-offset-3 transition-colors">[email protected]</a> </div> <div class="flex gap-3 text-sm"> <a href="mailto:[email protected]" class="hover:text-lightPurple transition-colors">Contact</a> <a href="/privacy" class="hover:text-lightPurple transition-colors">Privacy Policy</a> <a href="/terms" class="hover:text-lightPurple transition-colors">Terms</a> </div> <div class="border p-2 text-sm"> <p>Paid for by Jessica for Michigan</p> </div> </div> </div> </div> </footer> </body></html>                               

Whois info of domain

Domain Name: JS4MI.COM
Registry Domain ID: 2841323370_DOMAIN_COM-VRSN
Registrar WHOIS Server: whois.namecheap.com
Registrar URL: http://www.namecheap.com
Updated Date: 2024-12-27T14:58:34Z
Creation Date: 2023-12-28T16:49:21Z
Registry Expiry Date: 2025-12-28T16:49:21Z
Registrar: NameCheap, Inc.
Registrar IANA ID: 1068
Registrar Abuse Contact Email: [email protected]
Registrar Abuse Contact Phone: +1.6613102107
Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
Name Server: DNS1.REGISTRAR-SERVERS.COM
Name Server: DNS2.REGISTRAR-SERVERS.COM
DNSSEC: unsigned
URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/
>>> Last update of whois database: 2025-05-02T01:11:45Z <<<
For more information on Whois status codes, please visit https://icann.org/epp
NOTICE: The expiration date displayed in this record is the date the
TERMS OF USE: You are not authorized to access or query our Whois
by the following terms of use: You agree that you may use this Data only
to: (1) allow, enable, or otherwise support the transmission of mass