{"id":2746,"date":"2024-04-24T16:20:36","date_gmt":"2024-04-24T16:20:36","guid":{"rendered":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/?post_type=avada_portfolio&#038;p=2746"},"modified":"2024-07-01T20:18:03","modified_gmt":"2024-07-01T20:18:03","slug":"charleston-county","status":"publish","type":"avada_portfolio","link":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/portfolio-items\/charleston-county\/","title":{"rendered":"Charleston County, SC"},"content":{"rendered":"<p><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--link_hover_color: #434549;--link_color: #141617;--awb-border-sizes-top:0px;--awb-border-sizes-bottom:0px;--awb-border-sizes-left:0px;--awb-border-sizes-right:0px;--awb-border-color:#fcf4ec;--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:19px;--awb-padding-right:30px;--awb-padding-bottom:0px;--awb-padding-left:30px;--awb-padding-top-small:60px;--awb-padding-bottom-small:60px;--awb-margin-top:-50px;--awb-margin-bottom:0px;--awb-background-color:#fcf4ec;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-justify-content-center fusion-flex-content-wrap\" style=\"max-width:calc( 1170px + 100px );margin-left: calc(-100px \/ 2 );margin-right: calc(-100px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_1 1_1 fusion-flex-column fusion-animated\" style=\"--awb-padding-right:58px;--awb-padding-left:55px;--awb-padding-right-small:2px;--awb-padding-left-small:0px;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:0px;--awb-margin-bottom-large:16px;--awb-spacing-left-large:0px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:0px;--awb-spacing-left-medium:0px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:50px;--awb-margin-bottom-small:44px;--awb-spacing-left-small:50px;\" data-animationType=\"fadeInUp\" data-animationDuration=\"1.3\" data-animationOffset=\"top-into-view\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div ><a class=\"fusion-button button-3d button-large button-custom fusion-button-default button-1 fusion-button-default-span \" style=\"--button_bevel_color:var(--awb-color5);--button_bevel_color_hover:var(--awb-custom_color_12);--button_accent_color:var(--awb-color2);--button_border_color:var(--awb-color2);--button_accent_hover_color:var(--awb-color1);--button_border_hover_color:var(--awb-color1);--button_gradient_top_color:var(--awb-custom_color_4);--button_gradient_bottom_color:var(--awb-custom_color_4);--button_gradient_top_color_hover:var(--awb-custom_color_6);--button_gradient_bottom_color_hover:var(--awb-custom_color_6);\" target=\"_self\" data-hover=\"text_slide_up\" href=\"#yelp\"><span class=\"fusion-button-icon-divider button-icon-divider-left\"><i class=\"fa-yelp fab awb-button__icon awb-button__icon--default\" aria-hidden=\"true\"><\/i><\/span><div class=\"awb-button-text-transition \"><span class=\"fusion-button-text awb-button__text awb-button__text--default fusion-button-text-left\">Local Yelp Search<\/span><span class=\"fusion-button-text awb-button__text awb-button__text--default fusion-button-text-left\">Local Yelp Search<\/span><\/div><\/a><\/div><div class=\"fusion-title title fusion-title-1 fusion-title-center fusion-title-text fusion-title-size-one\" style=\"--awb-text-color:#141617;--awb-margin-top:2px;--awb-margin-bottom:-50px;--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:-20px;--awb-margin-left-small:0px;--awb-sep-color:#fcf4ec;--awb-font-size:65px;\"><div class=\"title-sep-container title-sep-container-left\"><div class=\"title-sep sep- sep-solid\" style=\"border-color:#fcf4ec;\"><\/div><\/div><span class=\"awb-title-spacer\"><\/span><h1 class=\"fusion-title-heading title-heading-center\" style=\"font-family:&quot;Unna&quot;;font-style:normal;font-weight:400;margin:0;text-transform:var(--awb-typography1-text-transform);font-size:1em;line-height:1.2;\"><h2 class=\"fusion-title-heading title-heading-left fusion-live-editable fusion-responsive-typography-calculated medium-editor-element\" role=\"textbox\" contenteditable=\"true\" spellcheck=\"true\" data-inline-parent-cid=\"10\" data-inline-override-color=\"text_color\" data-inline-override-font-size=\"font_size\" data-inline-override-line-height=\"line_height\" data-inline-override-letter-spacing=\"letter_spacing\" data-inline-override-tag=\"size\" data-toolbar=\"full\" data-param=\"element_content\" data-fontsize=\"26\" data-lineheight=\"28.8667px\" data-medium-editor-element=\"true\" aria-multiline=\"true\" data-medium-editor-editor-index=\"1\" data-placeholder=\"Your Content Goes Here\" data-medium-focused=\"true\"><strong><b>Charleston County, SC<\/b><\/strong><\/h2>\n<p>&nbsp;<\/p><\/h1><span class=\"awb-title-spacer\"><\/span><div class=\"title-sep-container title-sep-container-right\"><div class=\"title-sep sep- sep-solid\" style=\"border-color:#fcf4ec;\"><\/div><\/div><\/div><div class=\"fusion-text fusion-text-1 fusion-text-no-margin\" style=\"--awb-content-alignment:center;--awb-font-size:15px;--awb-line-height:24px;--awb-letter-spacing:0px;--awb-text-transform:var(--awb-typography4-text-transform);--awb-text-color:#141617;--awb-margin-right:0px;--awb-margin-bottom:0px;--awb-margin-left:0px;--awb-text-font-family:&quot;Montserrat&quot;;--awb-text-font-style:normal;--awb-text-font-weight:400;\"><p style=\"text-align: left;\">Charleston County, SC, is an exceptional place to live, renowned for its rich history, vibrant culture, and stunning coastal scenery. Residents enjoy a unique blend of Southern charm and modern sophistication, with access to pristine beaches, historic landmarks, and world-class dining. The county offers a variety of recreational activities, from sailing and fishing in Charleston Harbor to exploring scenic parks and nature reserves. Excellent schools, a thriving arts scene, and a strong sense of community make it an ideal place for families and young professionals. With its lively festivals, diverse neighborhoods, and warm, welcoming atmosphere, Charleston County provides an unparalleled lifestyle for those seeking both relaxation and excitement.<\/p>\n<\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_1_1 1_1 fusion-flex-column fusion-animated\" style=\"--awb-padding-right:37px;--awb-padding-left:8px;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:calc( 0.051 * calc( 100% - 100px ) );--awb-margin-bottom-large:80px;--awb-spacing-left-large:50px;--awb-width-medium:33.333333333333%;--awb-order-medium:0;--awb-spacing-right-medium:calc( 0.153 * calc( 100% - 100px ) );--awb-spacing-left-medium:50px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:50px;--awb-margin-bottom-small:40px;--awb-spacing-left-small:50px;\" data-animationType=\"fadeInUp\" data-animationDuration=\"1.3\" data-animationOffset=\"top-into-view\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-2\"><p><a href=\"https:\/\/www.townofawendawsc.org\/\"><strong>Awendaw<\/strong><\/a><br \/>Located just a short drive from the bustling city of Charleston, Awendaw, South Carolina offers a serene and picturesque escape characterized by its rich natural beauty and close-knit community feel. This quaint coastal town is surrounded by the breathtaking landscapes of the Francis Marion National Forest and the Cape Romain National Wildlife Refuge, providing ample opportunities for outdoor enthusiasts to engage in activities such as hiking, bird watching, and kayaking. Residents and visitors alike enjoy a slower, more relaxed pace of life, often participating in local traditions and festivals that celebrate the area\u2019s unique culture and history. The community places a strong emphasis on preserving its natural environment, creating a harmonious blend of small-town living and environmental stewardship. With its proximity to the Intracoastal Waterway, water-based activities are a staple, from fishing to boating, enhancing the appeal of this tranquil haven. Local businesses and eateries reflect the town\u2019s commitment to sustainability and support for local artisans, making every visit to Awendaw a unique and enriching experience<\/p>\n<p><a href=\"https:\/\/cityoffollybeach.com\/\"><strong>Folly Beach<\/strong><\/a><br \/>Imagine a vibrant coastal community where the rhythmic sound of the Atlantic Ocean waves harmonizes with the laid-back, yet lively atmosphere that defines everyday life. Here, the golden sands stretch out invitingly, perfect for sunbathing, beachcombing, and water sports like surfing and paddleboarding. The streets are lined with quaint cottages and stylish beach homes, each exuding a sense of relaxed elegance. Residents and visitors alike can enjoy the numerous seafood restaurants offering the freshest catches of the day, while eclectic shops and cozy cafes provide delightful spots for leisurely strolls and casual gatherings. The local culture is rich with events and festivals, celebrating everything from local arts to the vibrant music scene, making it a hub for both relaxation and excitement. As the sun sets, the beach transforms into a serene haven, where bonfires and beach parties bring the community together, fostering a spirit of warmth and camaraderie that is felt year-round.<br \/><strong><br \/><\/strong><a href=\"https:\/\/www.townofhollywood.org\/\"><strong>Hollywood<\/strong><\/a><br \/>Beneath a sprawling canopy of ancient live oaks draped with Spanish moss, Hollywood, SC, offers a serene escape from the bustle of nearby Charleston. This small, rural town provides residents with a relaxed pace of life, where the community thrives on a blend of Southern hospitality and a strong connection to nature. Equestrian trails and verdant fields define the landscape, while the Edisto River provides opportunities for kayaking and fishing, making outdoor activities a staple of daily life. Local farmers&#8217; markets and quaint eateries showcase the area&#8217;s commitment to fresh, locally sourced produce and cuisine, fostering a tight-knit, welcoming atmosphere. Hollywood&#8217;s residents enjoy a unique lifestyle that balances the tranquility of country living with easy access to the cultural and historical richness of the Lowcountry. This balance allows for a harmonious blend of leisure and the conveniences of modern living, all while preserving the area&#8217;s natural beauty and cultural heritage.<\/p>\n<p><a href=\"https:\/\/www.iop.net\/\"><strong>Isle of Palms<\/strong><\/a><br \/>A barrier island just north of Charleston, Isle of Palms, South Carolina, offers a tranquil yet vibrant coastal lifestyle that attracts both residents and visitors with its pristine sandy beaches, lush maritime forests, and picturesque waterfront views. Life here is infused with a laid-back charm, where mornings often begin with sunrise strolls along the shoreline and afternoons are filled with activities such as kayaking through winding creeks, golfing at the world-class Wild Dunes Resort, or sailing on the shimmering Atlantic waters. The local community is tight-knit and welcoming, with a rich calendar of events ranging from farmers markets to outdoor concerts, making it easy to embrace the island&#8217;s warm, friendly atmosphere. Culinary enthusiasts will find a variety of dining options, from casual seafood shacks to upscale restaurants offering the freshest local catches. Nature lovers can explore the island&#8217;s numerous parks and natural reserves, while families appreciate the safe, family-friendly environment and top-rated schools. Whether it&#8217;s enjoying the natural beauty, engaging in water sports, or simply soaking in the serene environment, Isle of Palms offers an idyllic coastal escape with a perfect blend of relaxation and recreation.<\/p>\n<p><a href=\"https:\/\/www.jamesislandsc.us\/\"><strong>James Island<\/strong><\/a><br \/>Located just a few miles from the bustling heart of Charleston, James Island offers a vibrant coastal lifestyle that blends convenience and natural beauty. Residents enjoy a relaxed yet active way of life, with easy access to stunning beaches, lush parks, and scenic waterways perfect for boating and fishing. The community is characterized by its warm, friendly atmosphere, where neighbors know each other and local businesses thrive. Outdoor enthusiasts can explore the island&#8217;s numerous trails and green spaces, while food lovers delight in the array of local seafood restaurants and farmers markets. Families appreciate the excellent schools and a variety of recreational activities, including sports leagues and cultural events. With its close proximity to downtown Charleston, James Island residents can enjoy the best of both worlds: a tranquil, suburban feel with all the amenities of a dynamic city just a short drive away.<\/p>\n<p><a href=\"https:\/\/charleston.com\/areas\/johns-island\"><strong>Johns Island<\/strong><\/a><br \/>Stretching along the serene waters of the Atlantic, Johns Island, South Carolina, is a haven for those seeking a blend of natural beauty and a relaxed lifestyle. This coastal gem offers a unique blend of modern amenities and rustic charm, where centuries-old live oaks draped in Spanish moss provide a picturesque backdrop to everyday life. Residents and visitors alike enjoy a myriad of outdoor activities, from kayaking and boating in the tranquil creeks to exploring the lush landscapes of numerous parks and nature preserves. The island is dotted with farms and local markets, contributing to a farm-to-table culinary scene that thrives alongside fine dining establishments. Community spirit is strong, with local festivals, farmers&#8217; markets, and art fairs fostering a vibrant, close-knit atmosphere. Johns Island boasts a range of housing options, from historic homes to luxurious waterfront estates, making it an attractive destination for families, retirees, and professionals. The island\u2019s proximity to Charleston adds an urban edge to its rural tranquility, offering the best of both worlds.<br \/><strong><br \/><\/strong><a href=\"https:\/\/kiawahisland.org\/\"><strong>Kiawah Island<\/strong><\/a><br \/>A sanctuary of natural beauty and serene coastal living, Kiawah Island, SC, offers an unparalleled blend of relaxation and recreation. This barrier island is renowned for its pristine beaches, lush maritime forests, and abundant wildlife, creating a paradise for nature lovers and outdoor enthusiasts. Residents and visitors alike enjoy a lifestyle that balances tranquility with vibrant community activities. From world-class golf courses and tennis facilities to scenic bike trails and kayaking adventures, there&#8217;s no shortage of ways to stay active and engaged. The island&#8217;s commitment to conservation ensures that its unique ecosystem remains unspoiled, providing a peaceful retreat away from the hustle and bustle of urban life. Luxurious oceanfront homes and upscale amenities such as fine dining, boutique shopping, and wellness spas cater to those seeking both comfort and elegance. With a strong sense of community and an emphasis on environmental stewardship, Kiawah Island offers a harmonious blend of sophistication and simplicity, making it an ideal destination for those looking to embrace a more balanced and fulfilling way of life.<\/p>\n<p><a href=\"https:\/\/www.mcclellanvillesc.org\/\"><strong>McClellanville<\/strong><\/a><br \/>Situated along the southeastern coast of South Carolina, McClellanville is a quaint fishing village that exudes a tranquil, laid-back lifestyle, where the hustle and bustle of modern life feels worlds away. This serene town is characterized by its pristine natural beauty, with sprawling marshlands, ancient live oaks draped in Spanish moss, and a network of creeks and rivers that offer abundant opportunities for boating, fishing, and kayaking. The close-knit community thrives on local seafood, with fresh catches of shrimp, crabs, and fish playing a central role in both daily life and the town&#8217;s celebrated culinary scene. Historic homes and buildings, many of which date back to the 19th century, add a timeless quality to the town, while the streets are often lined with front porches where residents can be found enjoying the gentle coastal breezes. The town&#8217;s pace is leisurely, encouraging a deep appreciation for the surrounding natural environment and fostering strong community bonds. Local events and festivals further enhance the sense of community, bringing residents together to celebrate their rich heritage and the simple pleasures of life in this coastal haven.<\/p>\n<p><a href=\"https:\/\/www.townofmeggettsc.org\/\"><strong>Meggett<\/strong><\/a><br \/>In the serene Lowcountry of South Carolina, life in Meggett offers a peaceful escape from the bustle of urban living. Residents here enjoy the tranquility of vast marshlands, shaded by ancient oak trees draped in Spanish moss. The community thrives on a slower pace, where neighbors know each other by name and local events foster a strong sense of camaraderie. With its close proximity to the water, boating and fishing are common pastimes, while the open spaces and fertile soil make gardening a favorite hobby. Meggett&#8217;s rich history is evident in its well-preserved architecture and the stories shared by lifelong residents. The town is an ideal spot for those who appreciate a quiet, rural lifestyle with the conveniences of nearby Charleston, allowing for easy access to cultural and economic opportunities without sacrificing the peace and beauty of country living.<\/p>\n<p><a href=\"https:\/\/tompsc.com\/\"><strong>Mount Pleasant<\/strong><\/a><br \/>Located just across the Cooper River from Charleston, this thriving coastal town boasts a blend of historical significance and modern amenities, offering residents and visitors an inviting lifestyle. With its scenic waterfront parks, such as Shem Creek and Mount Pleasant Memorial Waterfront Park, the area provides ample opportunities for outdoor activities like kayaking, fishing, and sunset strolls along the pier. The vibrant community is characterized by top-rated schools, diverse dining options, and boutique shopping experiences at places like Towne Centre. The town is also home to well-preserved historic sites, including Boone Hall Plantation, which offers a glimpse into the past with its beautiful gardens and tours. The local farmers market, held seasonally, showcases fresh produce and handmade goods, fostering a strong sense of community. Additionally, the proximity to Charleston allows easy access to cultural events, festivals, and the renowned hospitality of the Lowcountry, making Mount Pleasant a desirable place for families, professionals, and retirees alike.<\/p>\n<p><a href=\"https:\/\/www.northcharleston.org\/\"><strong>North Charleston<\/strong><\/a><br \/>Lively and dynamic, North Charleston, SC, pulses with a unique blend of modern urban energy and Southern hospitality. The city offers a diverse lifestyle, catering to both young professionals and families, with its thriving economy centered around industries such as aerospace, automotive, and advanced manufacturing. The warm climate encourages an outdoor-centric way of life, with ample parks, recreational areas, and waterfront activities along the Cooper River. The North Charleston Coliseum and Performing Arts Center hosts a variety of entertainment, from concerts to Broadway shows, providing cultural enrichment for residents. Its culinary scene is vibrant, featuring everything from low-country cuisine to international flavors, reflecting the area&#8217;s rich cultural diversity. The city is also a shopping haven, with numerous retail centers and boutique shops that cater to all tastes. With a robust public transportation system, commuting is convenient, making it easy to explore nearby historic Charleston or the scenic beaches along the Atlantic coast. Education is a priority, with several top-rated schools and institutions catering to all levels of learning. Community events and festivals throughout the year foster a strong sense of community and belonging, making North Charleston a welcoming and dynamic place to live.<\/p>\n<p><a href=\"https:\/\/www.townofseabrookisland.org\/\"><strong>Seabrook<\/strong><\/a><br \/>A serene coastal haven, Seabrook, South Carolina, offers an idyllic lifestyle characterized by its pristine beaches, lush marshes, and abundant wildlife, making it a paradise for nature lovers and outdoor enthusiasts. Residents enjoy a slower pace of life, with ample opportunities for boating, fishing, and kayaking in the Atlantic waters and the Kiawah River. The community thrives with a blend of Southern hospitality and a strong sense of community, where neighbors often gather for social events, farmers&#8217; markets, and local festivals. Elegant homes and luxurious amenities, including golf courses, tennis courts, and equestrian centers, provide a backdrop of comfort and leisure. The area&#8217;s rich history and cultural heritage are reflected in its well-preserved architecture and local traditions, offering a perfect balance of relaxation and engagement in a stunning natural setting.<\/p>\n<p><a href=\"https:\/\/sullivansisland.sc.gov\/\"><strong>Sullivan&#8217;s Island<\/strong><\/a> <br \/>South of Mount Pleasant and across from the Intracoastal Waterway, the community of Sullivan&#8217;s Island is one of the area&#8217;s true barrier islands. Access is available via the Ben Sawyer Causeway from Mt. Pleasant or the Isle of Palms Connector. This residential island blends charming older beach houses with newer construction for a medley of housing choices. A scattering of quaint 19th century &#8220;summer homes&#8221; have also managed to survive severe storms and the changing tastes in vacation architecture. Middle Street is the hub for the island&#8217;s cluster of restaurants and pubs, creating a casual strip for those who enjoy evening strolls. Sullivan&#8217;s Island is home to the site of the historic Fort Moultrie and its interpretation center, operated by the National Park Service. The center traces the fort&#8217;s history from the American Revolution through World War II. The island&#8217;s former military era has also left a fine old row of quarters that date back to World War I.<\/p>\n<\/div><\/div><\/div><\/div><\/div><div id=\"yelp\" class=\"fusion-container-anchor\"><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:26px;--awb-flex-wrap:wrap;--awb-flex-wrap-small:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:1216.8px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-2 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:20px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-2 fusion-title-center fusion-title-text fusion-title-size-one\" style=\"--awb-text-color:var(--awb-custom_color_4);--awb-margin-bottom:-10px;--awb-margin-top-small:0px;--awb-margin-right-small:0px;--awb-margin-bottom-small:20px;--awb-margin-left-small:0px;\"><div class=\"title-sep-container title-sep-container-left\"><div class=\"title-sep sep- sep-solid\" style=\"border-color:var(--awb-color3);\"><\/div><\/div><span class=\"awb-title-spacer\"><\/span><h1 class=\"fusion-title-heading title-heading-center\" style=\"margin:0;\"><h1 style=\"text-align: center;\">Local Activities &amp; Information<\/h1><\/h1><span class=\"awb-title-spacer\"><\/span><div class=\"title-sep-container title-sep-container-right\"><div class=\"title-sep sep- sep-solid\" style=\"border-color:var(--awb-color3);\"><\/div><\/div><\/div><div class=\"fusion-text fusion-text-3\"><p style=\"text-align: center;\"><span style=\"color: var(--awb-custom_color_5);\">Use the search box below to find listings on anything from Restaurants and Coffee Shops, to Grocery Stores, Schools and much more.<br \/>\nThe <\/span><b style=\"color: var(--awb-custom_color_5);\">More<\/b><span style=\"color: var(--awb-custom_color_5);\"> menu will give you some options as well. <\/span><\/p>\n<\/div><!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>Yelp Store Locator<\/title>\n<style>\nbody {\n    font-family: Arial, sans-serif;\n    margin: 0;\n    padding: 0;\n    background: #f8f8f8; \/* Slight grey background *\/\n}\n\n\/* Flex container for the whole page content *\/\n.form-wrapper {\n    display: flex;\n    justify-content: space-around; \/* Evenly distribute space around items *\/\n    flex-wrap: wrap; \/* Allow items to wrap if not enough space *\/\n    margin: 20px;\n}\n\n\/* Search form and results container *\/\n.form-wrapper .form-container {\n    flex-basis: 47%;\n    margin-bottom: 20px;\n}\n\n\/* Search bar at the top *\/\n.search-top {\n    margin-top: 20px;\n}\n.search-bar {\n    max-width: 1024px;\n    padding:0 20px;\n    padding: 10px;\n    border-radius: 4px;\n    margin: 0 auto 20px;\n}\n.search-bar #searchForm {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    box-shadow: rgba(0,0,0,0.15) 0px 2px 18px 0px;\n}\n.search-field {\n    flex: 1;\n}\n.search-field.desc {\n    position: relative;\n}\n.search-field.desc::after {\n    content: '';\n    position: absolute;\n    top: 10px;\n    bottom: 10px;\n    right: 0;\n    width: 2px;\n    background-color: rgba(0, 0, 0, 0.2);\n}\n#searchForm .search-field input {\n    border: 0;\n  \n}\n.search-field.category-dropdown select {\n    width: auto;\n    background: transparent;\n    margin-top:15px;\n}\n.search-field input[type=\"text\"],\n.search-field select {\n    width: 100%; \/* Full width of parent *\/\n    padding: 15px 10px;\n    border: 1px solid #ddd;\n    font-size: 14px;\n    box-sizing: border-box;\n}\n\n\/* Search button styling *\/\n.search-button button {\n    padding: 17px 20px;\n    background-color: #ff0000; \/* Yelp red *\/\n    color: #fff;\n    border: none;\n    border-radius: 4px;\n    cursor: pointer;\n    text-transform: uppercase;\n    font-weight: bold;\n}\n\n\/* Style the pagination buttons *\/\n.pagination{\n    border-top: 1px solid #e3d8d8;\n    padding: 15px 0;\n    margin-top: 20px;\n    border-bottom: 1px solid #e3d8d8;\n}\n\n\n.pagination button {\n    background: none;\n    padding: 5px 10px;\n    border-radius: 4px;\n    margin-right: 5px;\n    border: none;\n    cursor: pointer;\n    font-size: 16px;\n}\n\n.pagination button.active,\n.pagination button:hover {\n    font-weight: bold;\n}\n\n\/* Map container styling *\/\n#map {\n    flex: 1;\n    height: 700px; \/* Adjusted height for consistency *\/\n    border-radius: 4px; \/* Rounded corners *\/\n    overflow: hidden; \/* Clip the content *\/\n    margin-left: 20px; \/* Space from the form container *\/\n}\n\n\/* Search results card styles *\/\n.card {\n    display: flex;\n    background: #fff;\n    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n    border-radius: 4px;\n    overflow: hidden;\n    align-items: center;\n    padding: 0 15px;\n    border-bottom: 1px solid #eee;\n}\n\n.card img {\n    width: 200px; \/* Slightly smaller images *\/\n    height: 200px;\n    object-fit: cover;\n}\n\n.card-content {\n    padding: 15px;\n    flex-grow: 1;\n}\n\n\/* Loader style adjustments *\/\n#loader {\n    display: none; \/* Hide by default, show when loading *\/\n    position: fixed; \/* Or absolute, depending on use-case *\/\n    top: 50%;\n    left: 50%;\n    transform: translate(-50%, -50%);\n    text-align: center;\n}\n\n#loader img {\n    width: 50px; \/* Adjust as needed *\/\n    height: 50px; \/* Adjust as needed *\/\n    \/* Animation for spinning *\/\n    animation: spin 1s linear infinite;\n}\n\n\/* Loader animation *\/\n@keyframes spin {\n    0% { transform: translate(-50%, -50%) rotate(0deg); }\n    100% { transform: translate(-50%, -50%) rotate(360deg); }\n}\n\n@media (max-width: 768px) {\n    .form-wrapper {\n        flex-direction: column; \/* Stack on smaller screens *\/\n    }\n\n    .form-container,\n    #map {\n        width: 100%;\n        max-width: none;\n        margin-left: 0; \/* Remove margin for full width *\/\n    }\n\n    #map {\n        order: -1; \/* Map comes before search results on small screens *\/\n    }\n}\n\n\/* Add responsive design for very small screens *\/\n@media (max-width: 480px) {\n    .search-bar {\n        flex-direction: column; \/* Stack form fields vertically *\/\n    }\n\n    .search-field,\n    .search-button button {\n        width: 100%; \/* Full width for small screens *\/\n        margin: 5px 0; \/* Add space between stacked items *\/\n    }\n}\n\n\/* Style the dropdown button *\/\n.dropbtn {\n    background-color: transparent;\n    color: black;\n    padding: 16px;\n    font-size: 16px;\n    border: none;\n    cursor: pointer;\n}\n\n\/* The container <div> - needed to position the dropdown content *\/\n.dropdown {\n    position: relative;\n    display: inline-block;\n    margin: 10px 0;\n}\n\n\/* Dropdown Content (Hidden by Default) *\/\n.dropdown-content {\n    display: none;\n    position: absolute;\n    background-color: #f9f9f9;\n    min-width: 240px;\n    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);\n    z-index: 1;\n    gap: 20px;\n    padding: 0 10px;\n}\n\n\/* Links inside the dropdown *\/\n.dropdown-content span {\n    color: black;\n    padding: 16px 0;\n    text-decoration: none;\n    display: flex;\n    align-items: center;\n    cursor: pointer;\n}\n\n.dropdown-content .flex-links{\n        padding: 12px 0\n}\n\n\/* Icon styling *\/\n.icon {\n    margin-right: 10px;\n    \/* You can use SVGs or Font Icons like FontAwesome, or background-image with sprites *\/\n}\n\n\/* Change color of dropdown links on hover *\/\n.dropdown-content span:hover {background-color: #ddd;}\n\n\/* Show the dropdown menu on hover *\/\n.dropdown:hover .dropdown-content {\n    \/* display: block; *\/\n    display: flex;\n}\n\n\/* Show the dropdown menu on focus *\/\n.dropdown:focus-within .dropdown-content {\n    display: block;\n}\n\n\/* Other styles for icons can be added here, using the specific class names *\/\n.dry-cleaning-icon {\n    \/* Add background-image or other styling for the dry cleaning icon *\/\n}\n\n.pagination, #loader {\n    display: none; \/* Hidden by default *\/\n}\n\n.autocomplete-results {\n    display: none;\n    position: absolute;\n    background: white;\n    border: 1px solid #ddd;\n    border-top: none;\n    z-index: 2;\n    width: 100%;\n    box-sizing: border-box;\n}\n\n.autocomplete-suggestion {\n    padding: 10px;\n    border-bottom: 1px solid #ddd;\n    cursor: pointer;\n}\n\n.autocomplete-suggestion:last-child {\n    border-bottom: none;\n}\n\n.autocomplete-suggestion:hover {\n    background-color: #f8f8f8;\n}\n\n\n\/* Similarly add specific icon styles for other menu items *\/\n<\/style>\n<\/head>\n<body>\n<div class=\"search-top\">\n    <div class=\"search-bar\">\n        <form id=\"searchForm\" action=\"\/yelp-store-locator\" method=\"get\">\n            <div class=\"search-field desc\">\n                <input type=\"text\" id=\"searchDescription\" name=\"searchDescription\" placeholder=\"Search description\">\n                <div id=\"autocomplete-results\" class=\"autocomplete-results\"><\/div>\n            <\/div>\n            \n            <div class=\"search-field location\">\n                <input type=\"text\" id=\"locationQuery\" name=\"location\" placeholder=\"Enter search location\" value=\"Charleston County, SC\" required>\n            <\/div>\n            <div class=\"search-button\">\n                <button type=\"submit\">Search<\/button>\n            <\/div>\n        <\/form>\n\n        <div class=\"dropdown\">\n            <span class=\"dropbtn\">More \u25bc<\/span>\n            <div class=\"dropdown-content\">\n                <div class=\"flex-links\">\n                    <span>\n                        <i class=\"icon dry-cleaning-icon\"><\/i> Restaurants\n                    <\/span>\n                    <span>\n                        <i class=\"icon hair-salons-icon\"><\/i> Coffee Shops\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Grocery Stores\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Nightlife\n                    <\/span>\n                <\/div>\n                <div class=\"flex-links\">\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Medical\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Activities\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Schools\n                    <\/span>\n                    <span>\n                        <i class=\"icon phone-repair-icon\"><\/i> Hair Salon\n                    <\/span>\n                <\/div>\n                <!-- Add other menu items here -->\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n\n<div class=\"form-wrapper\">\n    <div class=\"form-container\">\n        <div id=\"searchResults\"><\/div>\n        <div class=\"pagination\"><\/div>\n    <\/div>\n    <!-- Map Container -->\n    <div id=\"map\"><\/div>\n<\/div>\n\n<!-- Loader HTML -->\n<!-- <div id=\"loader\">Loading...<\/div> -->\n<div id=\"loader\">\n    <img class=\"lazyload\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" data-orig-src=\"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-content\/plugins\/yelp-store-locator\/assets\/images\/loader.png\" alt=\"Loading...\" \/>\n<\/div>\n\n\n<script src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/3.5.1\/jquery.min.js\"><\/script>\n<script>\n    $(document).ready(function () {\n        var yelpAutocompleteUrl = \"https:\/\/api.yelp.com\/v3\/autocomplete\";\n\n        $('#searchDescription').on('input', function() {\n            var searchText = $(this).val();\n        \n            \/\/ Make sure the search text is not empty\n            if (searchText.length > 0) {\n                $.ajax({\n                    url: '\/wp-content\/plugins\/yelp-store-locator\/proxy\/yelp-autocomplete-proxy.php',\n                    method: 'GET',\n                    data: {\n                        text: searchText \/\/ text entered by the user\n                    },\n                    success: function(data) {\n                        \/\/ Clear previous suggestions\n                        $('#autocomplete-results').empty();\n                        \n                        \/\/ Process the response and append suggestions\n                        if(data.terms && data.terms.length > 0) {\n                            data.terms.forEach(function(term) {\n                                $('#autocomplete-results').append('<div class=\"autocomplete-suggestion\">' + term.text + '<\/div>');\n                            });\n                            $('#autocomplete-results').show();\n                        }\n                    },\n                    error: function(jqXHR, textStatus, errorThrown) {\n                        console.error(\"Error with Autocomplete API:\", textStatus, errorThrown);\n                    }\n                });\n            } else {\n                \/\/ If the search text is empty, clear and hide suggestions\n                $('#autocomplete-results').empty().hide();\n            }\n        });\n\n        \/\/ Listener for clicking on an autocomplete suggestion\n        $('#autocomplete-results').on('click', '.autocomplete-suggestion', function() {\n            \/\/ Set the input to the clicked suggestion and hide suggestions\n            $('#searchDescription').val($(this).text());\n            $('#autocomplete-results').empty().hide();\n        });\n    \n        \/\/ Initially hide pagination and loader\n        $('.pagination').hide();\n        $('#loader').hide();\n\n        var map; \/\/ Declare map variable globally\n        var markers = []; \/\/ Array to store markers\n        var currentPage = 1;\n        var resultsPerPage = 5;\n        var totalResults = 0;\n\n        \/\/ Event handler for category selection\n        $('.dropdown-content span').on('click', function() {\n            \/\/ Get the text of the clicked category\n            var categoryText = $(this).text().trim();\n\n            \/\/ Set the value of the searchDescription input\n            $('#searchDescription').val(categoryText);\n\n            \/\/ Close the dropdown if needed\n            $('.dropdown-content').hide();\n\n            \/\/ Optionally, you could submit the form automatically after selection\n            \/\/ $('#searchForm').submit();\n        });\n\n        \/\/ Toggle dropdown content on click\n        $('.dropbtn').on('click', function() {\n            \/\/ Use slideToggle for a simple animation\n            $('.dropdown-content').slideToggle();\n        });\n\n        \/\/ Close the dropdown if clicked outside\n        $(document).on('click', function(e) {\n            if (!$(e.target).closest('.dropdown').length) {\n                $('.dropdown-content').hide();\n            }\n        });\n\n        \/\/ Populate search description initially\n        $('#searchDescription').val($('#category').find('option:selected').text());\n\n        \/\/ Update search description when category changes\n        $('#category').change(function() {\n            $('#searchDescription').val($(this).find('option:selected').text());\n        });\n\n        \/\/ Check if the location is provided and trigger search\n        if ($('#locationQuery').val() !== '') {\n            setTimeout(function() {\n                $('#searchForm').submit();\n            }, 500);\n        }\n\n        $('#searchForm').submit(function (event) {\n            event.preventDefault();\n            $('#loader').show(); \/\/ Show loader here when the search starts\n            $('.pagination').hide(); \/\/ Hide pagination during loading\n\n            var locationQuery = $('#locationQuery').val();\n            \/\/ Use the value from the search description input\n            var searchDescription = $('#searchDescription').val();\n            var apiUrl = 'https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-content\/plugins\/yelp-store-locator\/proxy\/proxy.php?location=' + encodeURIComponent(locationQuery) + '&term=' + encodeURIComponent(searchDescription);\n\n            \/\/ Hide search results and map\n            $('#searchResults').hide();\n            $('#map').hide();\n            \/\/ Show loader before making the API request\n            $('#loader').show();\n\n            fetch(apiUrl)\n            .then(response => {\n                if (!response.ok) {\n                    throw new Error('Network response was not ok');\n                }\n                return response.json(); \/\/ Parse JSON response\n            })\n            .then(data => {\n                if (data && data.businesses && data.businesses.length > 0) {\n                    $('.pagination').show();\n                } else {\n                    $('.pagination').hide();\n                }\n                $('#loader').hide(); \/\/ Hide loader after data is processed\n                \/\/ ...Display results...\n                totalResults = data.businesses.length;\n\n                \/\/ Clear previous search results\n                $('#searchResults').empty();\n\n                \/\/ Initialize map\n                map = new google.maps.Map(document.getElementById('map'), {\n                    center: { lat: 0, lng: 0 }, \/\/ Default center\n                    zoom: 12 \/\/ Default zoom level\n                });\n\n                \/\/ Clear previous markers\n                markers.forEach(marker => marker.setMap(null));\n                markers = [];\n\n                \/\/ Create a LatLngBounds object to encompass all markers\n                var bounds = new google.maps.LatLngBounds();\n\n                \/\/ Calculate pagination values\n                var startIndex = (currentPage - 1) * resultsPerPage;\n                var endIndex = startIndex + resultsPerPage;\n                endIndex = endIndex > totalResults ? totalResults : endIndex;\n\n                \/\/ Iterate over each business in the response data for the current page\n                for (var i = startIndex; i < endIndex; i++) {\n                    var business = data.businesses[i];\n\n                    \/\/ Create card element to display business information\n                    var cardHtml = '<div class=\"card\">';\n                    cardHtml += '<img class=\"lazyload\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" data-orig-src=\"' + business.image_url + '\" alt=\"' + business.name + '\">';\n                    cardHtml += '<div class=\"card-content\">';\n                    cardHtml += '<h3><a href=\"' + business.url + '\">' + business.name + '<\/a><\/h3>';\n                    cardHtml += '<p><strong>Rating:<\/strong> ' + business.rating + '<\/p>';\n                    cardHtml += '<p><strong>Review Count:<\/strong> ' + business.review_count + '<\/p>';\n                    if (business.categories.length > 0) {\n                        cardHtml += '<p><strong>Category:<\/strong> ' + business.categories[0].title + '<\/p>';\n                    }\n                    cardHtml += '<p><strong>Address:<\/strong> ' + business.location.address1 + ', ' + business.location.city + ', ' + business.location.state + ' ' + business.location.zip_code + '<\/p>';\n                    cardHtml += '<p><strong>Phone:<\/strong> ' + business.display_phone + '<\/p>';\n                    cardHtml += '<\/div><\/div>';\n\n                    \/\/ Append the card HTML to the searchResults div\n                    $('#searchResults').append(cardHtml);\n\n                    \/\/ Display coordinates if available\n                    if (business.coordinates) {\n                        \/\/ Add marker to the map for each business\n                        var marker = new google.maps.Marker({\n                            position: { lat: business.coordinates.latitude, lng: business.coordinates.longitude },\n                            map: map,\n                            title: business.name\n                        });\n\n                        markers.push(marker);\n\n                        \/\/ Extend the bounds to include the marker's position\n                        bounds.extend(marker.getPosition());\n                    }\n                }\n\n                \/\/ Adjust map bounds to fit all markers\n                map.fitBounds(bounds);\n\n                \/\/ Hide loader after request is completed\n                $('#loader').hide();\n                \/\/ Show search results and map\n                $('#searchResults').show();\n                $('#map').show();\n\n                \/\/ Generate pagination controls\n                generatePaginationControls();\n            })\n            .catch(error => {\n                console.error('There was a problem with the fetch operation:', error);\n\n                $('#loader').hide(); \/\/ Ensure to hide loader on error as well\n                $('.pagination').hide(); \/\/ Hide pagination if there's an error\n                \/\/ Show search results and map\n                $('#searchResults').show();\n                $('#map').show();\n            });\n        });\n\n        \/\/ Function to generate pagination controls\n        function generatePaginationControls() {\n            var totalPages = Math.ceil(totalResults \/ resultsPerPage);\n            $('.pagination').empty();\n\n            for (var i = 1; i <= totalPages; i++) {\n                var button = $('<button>').text(i);\n                if (i === currentPage) {\n                    button.addClass('active');\n                }\n                button.click(function() {\n                    currentPage = parseInt($(this).text());\n                    $('#searchForm').submit();\n                });\n                $('.pagination').append(button);\n            }\n        }\n    });\n<\/script>\n\n<!-- Include Google Maps JavaScript API with your API key -->\n<script async defer src=\"https:\/\/maps.googleapis.com\/maps\/api\/js?key=AIzaSyDdc1Kke8as6XyfJRAv1veZfIqxp-ioDMo&callback=initMap\"><\/script>\n\n<\/body>\n<\/html>\n<\/div><\/div><\/div><\/div><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":2885,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"portfolio_category":[35],"portfolio_skills":[],"portfolio_tags":[],"class_list":["post-2746","avada_portfolio","type-avada_portfolio","status-publish","format-standard","has-post-thumbnail","hentry","portfolio_category-city-of-phoenix"],"_links":{"self":[{"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/avada_portfolio\/2746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/avada_portfolio"}],"about":[{"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/types\/avada_portfolio"}],"author":[{"embeddable":true,"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/comments?post=2746"}],"version-history":[{"count":9,"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/avada_portfolio\/2746\/revisions"}],"predecessor-version":[{"id":2887,"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/avada_portfolio\/2746\/revisions\/2887"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/media\/2885"}],"wp:attachment":[{"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/media?parent=2746"}],"wp:term":[{"taxonomy":"portfolio_category","embeddable":true,"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/portfolio_category?post=2746"},{"taxonomy":"portfolio_skills","embeddable":true,"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/portfolio_skills?post=2746"},{"taxonomy":"portfolio_tags","embeddable":true,"href":"https:\/\/sunraycityguide.com\/CharlestonSCRaveis\/wp-json\/wp\/v2\/portfolio_tags?post=2746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}