`;\n const iconCheckElements = document.querySelectorAll(\".step-label .icon-check\");\n iconCheckElements.forEach((icon, index) => {\n icon.textContent = `${index + 1}`;\n icon.classList.remove('icon-check');\n });\n let bridgeSpans = document.querySelectorAll(\".bridge\");\n let newBridgeCheck = document.querySelector(\".new-bridge\");\n !newBridgeCheck && bridgeSpans.forEach((bridgeSpan) => {\n let newBridgeSpan = document.createElement(\"span\");\n newBridgeSpan.classList.add('bridge', 'new-bridge');\n bridgeSpan.parentNode.insertBefore(newBridgeSpan, bridgeSpan.nextSibling);\n });\n\n let currentUrl = window.location.href;\n // Disclosure\n if (currentUrl.toLowerCase().includes(\"plans\")) {\n let labelElement = document.querySelector('label[for=\"phoneNumber\"]');\n if (labelElement) labelElement.innerHTML = 'Mobile Phone Number*';\n if (vwo_$('footer.signup .disclosure').length <= 0) {\n vwo_$('footer').prepend(\n `
\n
Terms & Conditions
\n
By providing your contact information, you consent to be contacted by Anytime Fitness, LLC, its affiliates, master franchisees and/or its franchisees and their authorized designees, through email, telephone, text message, or by other means, some of which may be from an automated service, as well as any other communication described in our Privacy Policy. For mobile messaging, message and data rates apply and consent is not required to become a member. Data collected will be sent outside your jurisdiction and to the United States and will be governed by our Privacy Policy, as it may be updated or amended. Full terms and conditions can be found at: www.anytimefitness.com or your local Anytime Fitness club.\n
\n
For California Residents
\n
Please review if you are a California resident, and to comply with Section 1798.100(b) of the California Consumer Privacy Act. For information regarding the categories of personal information collected about you, and the purposes for which your information will be used, please visit Anytime Fitness, LLC’s Privacy Notice for California Residents.
`\n );\n }\n\n vwo_$('footer.signup.forms').css('padding', '0 0 4rem');\n }\n\n\n // Account\n if (currentUrl.toLowerCase().includes(\"account\")) {\n /* EDITELEMENT */\n vwo_$(\".form-headline\").html(\"Create Your Account\");\n /* REMOVE */\n vwo_$(\".btn-clear\").vwoCss({ \"display\": \"none !important\" });\n }\n\n // Address\n if (currentUrl.toLowerCase().includes(\"address\")) {\n /* EDITELEMENT */\n vwo_$(\".form-headline\").html(\"Enter Address\");\n const bridgeSpans = document.querySelectorAll('.bridge');\n // Loop through the first 3 bridge spans and change their background color\n for (let i = 0; i < 3 && i < bridgeSpans.length; i++) {\n bridgeSpans[i].style.backgroundColor = '#6E38D5';\n }\n if (vwo_$('.margin-bottom').length <= 0) {\n vwo_$('.form-header').append('
* Indicates a required field
');\n }\n }\n\n // Review\n if (currentUrl.toLowerCase().includes(\"review\")) {\n vwo_$(\".form-headline\").html(\"Review Your Plan\");\n let elements = document.querySelectorAll('.display-plans .item');\n vwo_$(\".display-plans .item\").vwoCss({ \"box-shadow\": \"none\", \"border\": \"1px solid #707070\", \"border-radius\": \"8px\" });\n const bridgeSpans = document.querySelectorAll('.bridge');\n // Loop through the first 5 bridge spans and change their background color\n for (let i = 0; i < 5 && i < bridgeSpans.length; i++) {\n bridgeSpans[i].style.backgroundColor = '#6E38D5';\n }\n document.querySelectorAll('h4 br').forEach(function (brElement) {\n brElement.remove();\n });\n document.querySelectorAll('p.disclosure').forEach(function (paragraph) {\n if (paragraph.innerHTML.trim() === 'You will have access to over 4,000 Anytime Fitness clubs worldwide! How cool is that?') {\n paragraph.textContent = paragraph.textContent.replace('4,000', '5,000');\n }\n });\n /* EDITELEMENT */\n vwo_$(\".bod > ul:nth-of-type(1) > li:nth-of-type(4)\").vwoCss({ \"border-bottom-style\": \"none !important\" });\n }\n\n // Terms\n if (currentUrl.toLowerCase().includes(\"terms\")) {\n vwo_$(\".form-headline\").html(\"Terms & Conditions\");\n const bridgeSpans = document.querySelectorAll('.bridge');\n // Loop through the first 7 bridge spans and change their background color\n for (let i = 0; i < 7 && i < bridgeSpans.length; i++) {\n bridgeSpans[i].style.backgroundColor = '#6E38D5';\n }\n // Select the first paragraph element\n const firstParagraph = document.querySelector('.terms-segment p');\n\n // Select the first child paragraph within the first paragraph element\n const firstChildParagraph = firstParagraph.querySelector('p');\n\n // Remove the tags from the first child paragraph\n const strongTags = firstChildParagraph.querySelectorAll('strong');\n strongTags.forEach(tag => tag.outerHTML = tag.innerHTML);\n\n // Check if you need to replace the content without the tags inside the first paragraph child\n const searchText = \"MEMBERS’ RIGHT TO CANCEL:\";\n const textContent = firstChildParagraph.textContent;\n const index = textContent.indexOf(searchText);\n\n if (index !== -1) {\n const strongText = textContent.substring(index, index + searchText.length);\n const newHTML = textContent.replace(strongText, `${strongText}`);\n\n firstChildParagraph.innerHTML = newHTML;\n }\n }\n\n // Agreement Actions on Terms and Success pages\n const download = document.querySelectorAll('span.icon.icon-cloud-download');\n if (download) download.forEach(spanElement => {\n // Create a new SVG element\n const svgElement = document.createElement('svg');\n svgElement.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svgElement.setAttribute('class', 'h-5 w-5');\n svgElement.setAttribute('viewBox', '0 0 20 20');\n svgElement.setAttribute('fill', 'currentColor');\n svgElement.setAttribute('height', '20px'); // Set height to 20px\n svgElement.setAttribute('width', '20px'); // Set width to 20px\n spanElement.parentNode.innerHTML = ``;\n });\n const printer = document.querySelectorAll('span.icon.icon-print2');\n if (printer) printer.forEach(spanElement => {\n // Create a new SVG element\n const svgElement = document.createElement('svg');\n svgElement.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svgElement.setAttribute('class', 'h-5 w-5');\n svgElement.setAttribute('viewBox', '0 0 20 20');\n svgElement.setAttribute('fill', 'currentColor');\n svgElement.setAttribute('height', '20px'); // Set height to 20px\n svgElement.setAttribute('width', '20px'); // Set width to 20px\n svgElement.innerHTML = `\n \n `;\n spanElement.parentNode.innerHTML = ``;\n });\n let anchorElements = document.querySelectorAll('.agreement-actions a');\n if (anchorElements) anchorElements.forEach(anchorElement => {\n anchorElement.setAttribute('href', 'javascript:;');\n });\n\n // Billing\n if (currentUrl.toLowerCase().includes(\"billing\")) {\n const bridgeSpans = document.querySelectorAll('.bridge');\n // Loop through the first 9 bridge spans and change their background color\n for (let i = 0; i < 9 && i < bridgeSpans.length; i++) {\n bridgeSpans[i].style.backgroundColor = '#6E38D5';\n }\n vwo_$(\".form-headline\").html(\"Payment\");\n vwo_$('.form-headline').css('text-align', 'left');\n if (vwo_$(\"#billing .secure-payment\").length <= 0) {\n vwo_$(\"#billing .icon-lock.pull-left\").append(`
Secure Payment
`);\n }\n vwo_$(\"#billing .icon-lock.pull-left\").each(function () {\n var destP = vwo_$(\"#main\"),\n dest = vwo_$(\"#abcPayPage\");\n if (dest.length)\n dest.before(this);\n else\n destP.append(this);\n });\n vwo_$(\"#billing p.text-left:not(.disclosure)\").each(function () {\n var dest = vwo_$(\"#abcPayPage\");\n if (dest.length)\n vwo_$(\"#abcPayPage\").before(this);\n this.classList.add(\"mb-0\", \"mb-lg-3\", \"pb-4\");\n });\n // Select the first element to be wrapped\n var firstElement = document.querySelector('#billing .icon-lock.pull-left');\n\n // Select the second element to be wrapped\n var secondElement = document.querySelector('#billing p.text-left:not(.disclosure)');\n\n // Create a new div element with the class \"bg-light-gray\"\n var divElement = document.createElement('div');\n divElement.className = 'bg-dark-purple mx-auto';\n if (!vwo_$('.bg-dark-purple.mx-auto').length) {\n // Insert the created div element before the first element\n firstElement.parentNode.insertBefore(divElement, firstElement);\n\n // Move the first to the newly created div\n divElement.appendChild(firstElement);\n\n // Move the second element inside the newly created div\n divElement.appendChild(secondElement);\n }\n let container = document.querySelector('.form-container.form-width-sml:nth-of-type(1)');\n\n // Select all the ` ` elements inside the container\n let brElements = container.querySelectorAll('br');\n\n // Determine the number of ` ` elements to remove\n let elementsToRemove = 3;\n\n // Remove the last three ` ` elements\n for (let i = brElements.length - 1; i >= 0 && elementsToRemove > 0; i--) {\n container.removeChild(brElements[i]);\n elementsToRemove--;\n }\n let element = document.querySelector('#billing .form-footer .btn-rounded');\n\n // Change the text content to \"Submit\"\n if (element) {\n element.textContent = \"Submit\";\n }\n }\n\n // Success\n if (currentUrl.toLowerCase().includes(\"success\")) {\n // Add font awesome links\n const linkElement = document.createElement('link');\n\n // Set attributes for the link element\n linkElement.rel = 'stylesheet';\n linkElement.href = 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css';\n\n // Append the link element to the head of the HTML document\n document.head.appendChild(linkElement);\n const heroGymElement = document.querySelector('section.hero.hero-gym');\n if (heroGymElement) heroGymElement.classList.add('bg-line-blend-aqua-5');\n const successMsg = document.querySelector('.success-msg');\n if (vwo_$('.container.bg-white.text.center').length <= 0) {\n successMsg.style.marginTop = 0;\n successMsg.innerHTML = `
\n
\n
\n
Success! Congrats on becoming a member.
\n
We sent a confirmation email which includes your membership confirmation and receipt.
\n
\n
\n
`;\n }\n vwo_$(\".whats-next > h2:nth-of-type(1) > strong:nth-of-type(1) > span:nth-of-type(1)\").html(\"Next Steps\");\n vwo_$(\"h2 strong span\").vwoCss({ \"font-size\": \"1.25rem\" });\n vwo_$(\"#success figcaption.hero-content.slim\").each(function () {\n if (vwo_$(\".success-msg .col\").length) vwo_$(\".success-msg .col\").append(this);\n });\n const whatsNextParent = document.querySelector('.whats-next');\n\n if (whatsNextParent) {\n // Create a new section element with the class 'bg-gray' and a div with the class 'container'\n const containerDiv = document.createElement('div');\n containerDiv.classList.add('container', 'my-4');\n\n const sectionElement = document.createElement('section');\n sectionElement.classList.add('bg-gray', 'py-5');\n\n // Move all children of .whats-next into the new section.bg-gray element\n Array.from(whatsNextParent.children).forEach(childElement => {\n\n // Check if the child element has the classes 'd-block', 'd-sm-flex', and 'py-4'\n if (!childElement.classList.contains('d-block') && !childElement.classList.contains('d-sm-flex') && !childElement.classList.contains('py-4')) {\n containerDiv.appendChild(childElement.cloneNode(true));\n whatsNextParent.removeChild(childElement);\n }\n });\n\n // Append the section.bg-gray element into the div.container\n sectionElement.appendChild(containerDiv);\n\n const heroElement = document.querySelector('.hero.hero-gym');\n // Append the new container with filtered elements to the body of the document\n if (heroElement) heroElement.insertAdjacentElement('afterend', sectionElement);\n }\n const leadParagraph = document.querySelector('.bg-gray p.lead');\n const phoneNumber = document.querySelector('.bg-gray a.phone').innerHTML;\n if (leadParagraph) {\n leadParagraph.classList.add('px-0', 'px-lg-5', 'px-xl-0');\n // Update the content of the paragraph with the dynamically fetched phone number\n leadParagraph.innerHTML = `Our gym staff will reach out to you to schedule a time to pick up your access passes.\n Or if you’re excited to get in here, just call us at ${phoneNumber}.`;\n }\n /* EDITELEMENT */\n vwo_$(\".mr-4 > h2:nth-of-type(1) > strong:nth-of-type(1) > span:nth-of-type(1)\").html(\"Download the AF app\");\n /* EDITELEMENT */\n vwo_$(\".my-4 > div:nth-of-type(1) > p:nth-of-type(1) > span:nth-of-type(1)\").html(\"Using the AF App, you can access the club 24/7 as well as any Anytime Fitness worldwide.\");\n if (vwo_$('.next-step-1').length <= 0) {\n const iconGpsMarkers = document.querySelector('.icon-gps-markers');\n const iconGroupEx = document.querySelector('.icon-groupex-fill');\n const iconMobilePhone = document.querySelector('.icon-mobile-phone');\n if (iconGpsMarkers) {\n // HTML content to be inserted\n const htmlContent = '
1. Get Your Access Pass
';\n // Insert the HTML content adjacent after the .icon-gps-markers element\n iconGpsMarkers.insertAdjacentHTML('afterend', htmlContent);\n }\n if (iconGroupEx) {\n // HTML content to be inserted\n const htmlContent = '
2. Get FREE Consultation
';\n // Insert the HTML content adjacent after the .icon-gps-markers element\n iconGroupEx.insertAdjacentHTML('afterend', htmlContent);\n }\n if (iconMobilePhone) {\n // HTML content to be inserted\n const htmlContent = '
3. Download the AF App
';\n // Insert the HTML content adjacent after the .icon-gps-markers element\n iconMobilePhone.insertAdjacentHTML('afterend', htmlContent);\n }\n }\n const elements = document.querySelectorAll('.bg-gray .container .d-flex.align-items-start');\n\n if (elements.length > 0) {\n // Create a new div element with the class 'd-flex'\n const divWrapper = document.createElement('div');\n divWrapper.classList.add('d-flex', 'next-steps', 'flex-column', 'flex-md-row', 'mt-4', 'pt-2');\n\n // Move each selected element into the new div container\n elements.forEach(element => {\n // Create a copy of the element without the 'd-flex' and 'align-items-start' classes\n const elementCopy = element.cloneNode(true);\n elementCopy.classList.remove('d-flex', 'align-items-start');\n\n // Append the updated element to the new div container\n divWrapper.appendChild(elementCopy);\n\n // Remove the element with classes 'd-flex align-items-start' from its original parent\n element.parentNode.removeChild(element);\n });\n\n const lead = document.querySelector('.bg-gray .lead');\n // Append the new container with filtered elements to the body of the document\n if (lead) lead.insertAdjacentElement('afterend', divWrapper);\n }\n const removeFlex = document.querySelectorAll('.bg-white .d-block.d-sm-flex.py-4');\n\n removeFlex.forEach(element => {\n // Check if the element has the class 'd-sm-flex'\n if (element.classList.contains('d-sm-flex')) {\n element.classList.remove('d-sm-flex'); // Remove the class 'd-sm-flex'\n }\n });\n vwo_$(\"#success .staffed-hours\").each(function () {\n if (vwo_$(\".cta\").length) {\n const cta = document.querySelector('.cta');\n if (cta) cta.insertAdjacentElement('afterend', this);\n }\n });\n // Move Facebook Inside the column\n vwo_$(\"#success section.bg-white p.text-center a\").vwoCss({ \"display\": \"none\" });\n const newAElement = document.createElement('a');\n const facebookLink = document.querySelector(\"#success section.bg-white p.text-center a\").href;\n newAElement.classList.add('cta-item');\n newAElement.href = facebookLink;\n newAElement.setAttribute('data-toggle', 'lightbox');\n newAElement.setAttribute('data-gallery', 'gym-photos');\n\n // Add the inner HTML content to the anchor element\n newAElement.innerHTML = '' +\n '
Join Facebook Page
';\n\n // Select the parent element with the class .cta and the second col-sm-4 element\n const ctaParent = document.querySelector('.cta');\n const secondCol = ctaParent.querySelector('.col-sm-4:nth-of-type(2)');\n\n if (ctaParent && secondCol) {\n // Append the new anchor element to the second col-sm-4 element\n secondCol.appendChild(newAElement);\n }\n const container = document.querySelector('.cta .row');\n\n if (container) {\n // Get the col-sm-4 elements\n const colElements = container.querySelectorAll('.col-sm-4');\n\n if (colElements.length >= 2) {\n // Swap the position of the first two col-sm-4 elements in the container\n const firstElement = colElements[0];\n const secondElement = colElements[1];\n\n // Insert the second element before the first element to switch positions\n container.insertBefore(secondElement, firstElement);\n }\n }\n const iconBinoculars = document.querySelector('.cta span.icon.icon-binoculars');\n if (iconBinoculars) {\n const newIcon = document.createElement('i');\n newIcon.classList.add('icon-binoculars2');\n iconBinoculars.parentNode.replaceChild(newIcon, iconBinoculars);\n }\n const iconPin = document.querySelector('.cta span.icon.icon-pin');\n if (iconPin) {\n const newIcon = document.createElement('i');\n newIcon.classList.add('icon-geo');\n iconPin.parentNode.replaceChild(newIcon, iconPin);\n }\n const staffedHoursHeader = document.querySelector('.staffed-hours h2');\n if (staffedHoursHeader) {\n // Capitalize only the first letter of the text content\n let textContent = staffedHoursHeader.textContent;\n staffedHoursHeader.textContent = textContent.charAt(0).toUpperCase() + textContent.slice(1).toLowerCase();\n }\n vwo_$(\".mr-4\").vwoAttr({ \"class\": { \"removedClasses\": [\"mr-4\"] } });\n vwo_$(\".d-block > div:nth-of-type(2)\").vwoAttr({ \"class\": { \"addedClasses\": [\"d-flex\", \"flex-column\", \"flex-sm-row\", \"app-links\", \"justify-content-center\", \"mt-4\", \"pt-2\"] } });\n }\n\n // Contact Us\n if (currentUrl.toLowerCase().includes(\"contactus\")) {\n let aside = document.querySelector('aside');\n if (aside) aside.style.display = 'none';\n const diffText = document.querySelector('.navbar li:nth-of-type(1) a').innerHTML;\n const formHeader = document.querySelector('.form-header');\n\n if (diffText && formHeader) {\n // Create a new h1 element with class 'step-header' containing the diffText\n const newH1 = document.createElement('h1');\n newH1.classList.add('step-header', 'text-center');\n newH1.innerHTML = diffText;\n\n // Create another h1 element with text 'Join Now'\n const joinNowH1 = document.createElement('h1');\n joinNowH1.innerHTML = 'Join Now';\n\n // Append the joinNowH1 element before the new h1 element and diffText\n newH1.append(joinNowH1);\n\n // Prepend the new h1 element with class 'step-header' to the form header\n formHeader.prepend(newH1);\n\n }\n }\n\n if (currentUrl.toLowerCase().includes(\"plans\")) {\n let modalElement = document.createElement(\"div\");\n modalElement.className = \"modal\";\n modalElement.id = \"afpModal\";\n modalElement.setAttribute(\"tabindex\", \"-1\");\n modalElement.setAttribute(\"role\", \"dialog\");\n modalElement.setAttribute(\"aria-labelledby\", \"afpModal\");\n modalElement.setAttribute(\"aria-hidden\", \"true\");\n\n let modalDialog = document.createElement(\"div\");\n modalDialog.className = \"modal-dialog\";\n modalDialog.setAttribute(\"role\", \"document\");\n\n let modalContent = document.createElement(\"div\");\n modalContent.className = \"modal-content\";\n\n let modalHeader = document.createElement(\"div\");\n modalHeader.className = \"modal-header\";\n let h5Title = document.createElement(\"h5\");\n h5Title.className = \"modal-title\";\n h5Title.id = \"afpModal\";\n h5Title.innerText = \"*APPLE FITNESS+ TERMS & CONDITIONS\";\n let closeButton = document.createElement(\"button\");\n closeButton.type = \"button\";\n closeButton.className = \"close\";\n closeButton.id = \"closeModalBtn\";\n closeButton.setAttribute(\"data-dismiss\", \"modal\");\n closeButton.setAttribute(\"aria-label\", \"Close\");\n closeButton.innerHTML = `×`;\n\n modalHeader.appendChild(h5Title);\n modalHeader.appendChild(closeButton);\n\n let modalBody = document.createElement(\"div\");\n modalBody.className = \"modal-body\";\n modalBody.innerHTML = `\n
Fitness+ Trial Offer: Offer open to new Anytime Fitness®️ customers, local residents to participating locations in the United States & Canada, only. Photo ID required. Offer valid for 1 or 7 days’ (as applicable) access to participating Anytime Fitness location plus up to 3 months access to Apple Fitness+℠ beginning on eligible device activation. Prior Fitness+ subscribers will qualify for 2 months. Fitness+ requires a subscription & Apple ID with payment card on file. After trial ends, payment card on file will be charged $9.99/month & subscription automatically renews until cancelled. Apple may change the subscription price at its discretion, other terms & Apple Privacy Policy apply; see the applicable terms. Offer requires use of the Anytime Fitness mobile. Offer limited to 1 subscription per Family Sharing group, Apple IDs already associated with a trial or subscription for Fitness+ are not eligible. Valid only for Fitness+ in the United States & Canada. Fitness+ requires iPhone 8 or later with iOS 16.1 or later, or Apple Watch Series 3 or later with watchOS 7.2 or later paired with iPhone 6s or later with iOS 14.3 or later. Fitness+ is a registered trademark of Apple Inc. Apple is not a sponsor of this promotion. No cash value, not valid with any other offer, no refunds or credits. Each Anytime Fitness location is independently owned & operated. Void where prohibited.
\n
Existing Anytime Members: Offer open to existing Anytime Fitness®️ members of participating locations in the United States & Canada, only. Offer valid for access to Apple Fitness+℠ access begins on eligible device activation & continues for 3 months. Fitness+ requires a subscription & Apple ID with payment card on file. Reactivation of the offer is required every 3 months to maintain access. If free access ends payment card on file will be charged $9.99/month & subscription automatically renews until cancelled. Apple may change the subscription price at its discretion, other terms & Apple Privacy Policy apply; see the applicable terms. Offer requires use of the Anytime Fitness mobile application. Offer limited to 1 subscription per Family Sharing group, Apple IDs already associated with a trial or subscription for Fitness+ are not eligible. Valid only for Fitness+ in the United States & Canada. Fitness+ requires iPhone 8 or later with iOS 16.1 or later, or Apple Watch Series 3 or later with watchOS 7.2 or later paired with iPhone 6s or later with iOS 14.3 or later. Fitness+ is a registered trademark of Apple Inc. Apple is not a sponsor of this promotion. No cash value, not valid with any other offer, no refunds or credits. Each Anytime Fitness location is independently owned & operated. Void where prohibited.
\n `;\n\n modalContent.appendChild(modalHeader);\n modalContent.appendChild(modalBody);\n\n modalDialog.appendChild(modalContent);\n\n modalElement.appendChild(modalDialog);\n\n document.body.appendChild(modalElement);\n\n const modal = document.getElementById('afpModal');\n const openModalBtn = document.getElementById('openModalBtn');\n // const openModalBtn = document.querySelector('.btn-modal');\n const closeModalBtn = document.getElementById('closeModalBtn');\n const modalWindow = document.querySelector('.modal-dialog');\n // const cancelBtn = document.getElementById('cancelBtn');\n // const confirmBtn = document.getElementById('confirmBtn');\n\n // Open modal function\n function openModal() {\n modal.style.display = 'block';\n }\n\n // Close modal function\n function closeModal() {\n modal.style.display = 'none';\n }\n\n // Event listeners for opening and closing the modal\n openModalBtn && openModalBtn.addEventListener('click', openModal);\n closeModalBtn && closeModalBtn.addEventListener('click', closeModal);\n // cancelBtn.addEventListener('click', closeModal);\n\n // Close modal if user clicks outside of it\n window.addEventListener('click', function (event) {\n if (event.target === modalWindow) {\n closeModal();\n }\n });\n\n // Optional: Close modal with Escape key\n document.addEventListener('keydown', function (event) {\n if (event.key === 'Escape' && modal.style.display === 'block') {\n closeModal();\n }\n });\n\n\n let elements = document.querySelectorAll('.display-plans .item');\n elements.forEach(element => {\n element.style.boxShadow = '0 0 10px 0 rgba(0, 0, 0, 0.2)';\n });\n }\n\n // Miscellaneous Global Styling\n /* EDITELEMENT */\n vwo_$(\".p-2 > p:nth-of-type(2)\").vwoAttr({ \"class\": { \"removedClasses\": [\"mb-0\"] } });\n /* EDITELEMENT */\n vwo_$(\".step-header\").vwoAttr({ \"class\": { \"addedClasses\": [\"mt-md-4\"] } });\n /* EDITELEMENT */\n vwo_$(\".form-footer\").vwoAttr({ \"class\": { \"addedClasses\": [\"mt-4\", \"pt-2\"] } });\n\n /* CONTENT */\n vwo_$(\"#plans > div:nth-of-type(1) > div:nth-of-type(1) > h1:nth-of-type(1) > strong:nth-of-type(1)\").replaceWith(\"Select the plan that works for you.\");\n /* EDITELEMENT */\n vwo_$(\"#plans > div:nth-of-type(1) > p:nth-of-type(1)\").vwoAttr({ \"class\": { \"addedClasses\": [\"text-gray\"], \"removedClasses\": [\"text-white\"] } });\n /* EDITELEMENT */\n vwo_$(\".col-md-4 > a:nth-of-type(1)\").vwoAttr({ \"class\": { \"addedClasses\": [\"btn-outline-primary\", \"fw-800\"], \"removedClasses\": [\"btn-white\"] } });\n /* CONTENT */\n vwo_$(\".disclosure .mt-0\").replaceWith(\"
By providing your contact information, you consent to be contacted by Anytime Fitness, LLC, its affiliates, master franchisees and/or its franchisees and their authorized designees, through email, telephone, text message, or by other means, some of which may be from an automated service, as well as any other communication described in our Privacy Policy, which can be found at: https://www.anytimefitness.com/privacy/. For mobile messaging, message and data rates apply and consent is not required to become a member. Data collected will be sent outside your jurisdiction and to the United States and will be governed by our Privacy Policy, as it may be updated or amended. Full terms and conditions can be found at: www.anytimefitness.com or your local Anytime Fitness club.
`,t.innerHTML="TAKE ADVANTAGE TODAY. JOIN AT THE GYM."))):(t=document.querySelector("div.form-body h3"),e=document.querySelector("div[data-join-online-promo-plan-url], li.active[data-join-online-promo-plan-url]"),e&&(o=e.getAttribute("data-join-online-promo-plan-url"),e&&!document.querySelector(".join-online-container")&&(document.querySelector(".step3-content").innerHTML+=`\n
\n
\n
Join Online to Get Started Today
\n
Complete your membership signup in minutes—right now.
Virtual Workouts • Health Coaching Advice • Community
At-Home Circuit Workout — No Equipment Needed!
Just because you can’t make it to the gym doesn’t mean you can’t get a workout in. This full-body circuit workout requires no equipment. Let's get started!
Whether you’re a runner, weight lifter or you practice yoga on the daily, mixing up your routine can not only get you through a plateau, but it can also just be fun to try something new. This at-home circuit training workout is a challenging and rewarding way to switch up your routine on those days where you can’t make it to the gym or just want to lay low but still break a sweat.
What are the benefits of circuit training workouts?
There are lots of full-body benefits to circuit training-style workouts. If you’re traditionally a runner, circuit training can help work your upper body. If yoga is your workout of choice, a workout program that includes circuit training can help you get your heart rate up and speed your metabolism. And if you typically do resistance training or weight lifting, this circuit training workout gives your body high-intensity movement using only your own weight. We can’t emphasize it enough: When it comes to circuit training, there’s something for everyone!
Another perk of circuit training workouts is that they’re often low on equipment while still delivering on intensity. The bodyweight exercises in circuit training are compound exercises, meaning the movements require activation from different muscle groups. Rather than isolating individual muscles, like standard weight-training moves do, compound exercises work your major muscle groups. Plus, when done in circuit format with shorter recovery times and minimal rest, you’re getting cardio exercise in addition to building muscle. Win-win!
Need more proof that circuit training workouts are where it’s at? Studies have shown that interval training can be incredibly effective for burning fat. If fat loss is one of your goals, try adding this at-home circuit training workout into your exercise routine a few times a week.
The at-home full-body workout below is primarily focused on strength training, but it’ll torch calories, too, and without requiring any equipment. You’ll just need some floor space and a chair for triceps exercises. If you’re working out on a hard surface, a workout or yoga mat can also be helpful for cushioning your knees and forearms.
Ready to give circuit training a try? Let’s get started!
At-home Circuit Training Workout
This workout features eight exercises that will challenge your entire body. In between each exercise you’ll have about 20 seconds of rest time. If you choose to repeat this workout in the same workout session, we recommend resting a full minute in between sets. If you’d like, you can add dumbbells to the squats, but it’s completely optional, and you’ll be moving so fast that weights might just slow you down!
Follow this cadence, and keep scrolling for more details on how to do each exercise properly. Ready, set, go!
Push-Ups — 15 reps Rest — 20 seconds
Rest — 20 seconds
2. Burpees — 15 reps Rest — 20 seconds
Rest — 20 seconds
3. Plank — 1 minute Rest — 20 seconds
Rest — 20 seconds
4. Jump Lunges — 20 reps Rest — 20 seconds
Rest — 20 seconds
5. Dolphin Push-Ups — 15 reps Rest — 20 seconds
Rest — 20 seconds
6. Frog Squats — 20 reps Rest — 20 seconds
Rest — 20 seconds
7. Tricep Dips — 15 reps Rest — 20 seconds
Rest — 20 seconds
8. Wall Sit — 1 minute
Finish
Push-Ups
We’re not easing you into this circuit workout! Push-ups are a great way to start since they’ll warm up every muscle in your body while also giving you a challenge. Challenge yourself with a traditional starting position on the floor, but drop down to your knees if you need to! Good form is the key here, so it’s better to do push-ups on your knees if you feel your form slipping.
Burpees
Get ready to sweat, because we’re moving right into Burpees next. While the push-up portion of this move is optional, including it will ensure you’re getting the most out of this at-home circuit training workout. You can always take the reps slowly and do the push-ups on your knees. If you need a lower-impact version of this exercise, you can take the jumping out of the movement.
Plank
This plank will give your arms one last challenge while strengthening your core. Your starting position can either be in a high or low plank on the floor, depending on what you prefer. If you need to adapt this move, drop down to your knees. You can also perform side planks, switching sides at the 30-second mark. If you want to make it more challenging, try lifting one leg at a time. You won’t be able to lift your legs very high, but even raising each foot a couple of inches will challenge your core!
Jump Lunges
Jump lunges are a great workout for your lower body and will also get your heart rate up. Start by standing on the floor with your right leg in front of you, your left leg back, and your right knee bent at a 90-degree angle. Jump up, pushing through both your right leg and left leg, and land with your left foot in front of you and your right foot behind you. You can land with your legs straight or with your knees bent, whichever is best for your fitness level. Drop back into a lunge position, and repeat. If you’re feeling too tired, you can always perform traditional lunges, lunging either back or forward with your right leg and then switching sides to your left.
Dolphin Push-Ups
Dolphin Push-Ups are a great challenge for your core, and they work your leg and shoulder muscles uniquely as well. While it’s tempting to push off the floor from your feet, make sure you’re keeping your legs even and straight, so that you’re getting the most out of this move. Your knees can have a gentle bend, but try to keep them even and straight as well. Dolphin Push-Ups can be tricky, so feel free to substitute regular push-ups if you can’t maintain proper form.
Frog Squats
Frog Squats are another fun, animal-inspired move which really works your hips. For your starting position, your hips should be very low and close to the floor, like they would be for a Goblet Squat. Then, raise your hips into a normal squat starting position so that your hips are in a straight line with your knees. Get ready to feel the burn, because your leg muscles will be activated during the entire duration of this section of the circuit training workout.
If it’s too difficult for you to perform this move with good form, you can always try Squat Jumps or regular Bodyweight Squats.
Tricep Dips
You’re almost to the end! Tricep Dips are an awesome resistance training move for your upper body. Use a nearby chair or coffee table, and start by facing away from the chair with both palms resting on the edge of the chair and your feet on the floor. Keep your knees straight as you lift and lower your body with your arms. Try to get your hips down to the floor, if you can. Even if you can only lower your body a few inches closer to the floor, you’ll see progress after just a few weeks of this at-home circuit training workout.
Wall Sit
Let’s work your lower body one last time with a good ol’ Wall Sit. Proper form is crucial to getting the most out of this move, so make sure your feet are flat on the floor and your knees are bent at a 90º angle. We recommend one minute, but see how much time you can hold this move for! If wall sits don’t work for you, you can finish this circuit training workout with 15 reps of squats.
If you’re new to circuit training, give this workout a try and see how it feels. It should be pretty challenging, but remember, it’s only going to make you stronger! If you have enough energy for another round, go for it! For intermediate athletes who want to get a full session in, we recommend trying this workout three times through.
Free 7-Day Passes are only available for new customers who live or work nearby. Most Anytime Fitness locations have a drop-in charge for non-residents who want to use the gym for a short period of time. If you cannot provide proof of local residency, you may be charged a fee to use this club.
Free {{nday}}-Day Passes are only available for new customers who live or work nearby. Most Anytime Fitness locations have a drop-in charge for non-residents who want to use the gym for a short period of time. If you cannot provide proof of local residency, you may be charged a fee to use this club.