1<!DOCTYPE html> 2<html lang="en"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta name="description" content="Discover the historic granite quarries of Cape Ann, Massachusetts. Learn about Rockport's thriving granite industry and visit Halibut Point State Park."> 7 <meta name="keywords" content="Cape Ann, Quarries, Granite, Rockport, Halibut Point, History, Babson Farm Quarry, Massachusetts"> 8 <meta name="author" content="Cape-Ann.com"> 9 10 <meta property="og:title" content="Cape Ann, MA | Quarries of Cape Ann"> 11 <meta property="og:description" content="Discover the historic granite quarries of Cape Ann and Rockport's thriving quarrying past."> 12 <meta property="og:type" content="website"> 13 <meta property="og:url" content="https://www.cape-ann.com/quarries"> 14 <meta property="og:image" content="https://www.cape-ann.com/homebutn.gif"> 15 16 <title>Cape Ann, MA | Quarries of Cape Ann</title> 17 18
18<script type="application/ld+json"> 19 { 20 "@context": "https://schema.org", 21 "@type": "TouristAttraction", 22 "name": "Quarries of Cape Ann", 23 "description": "Historic granite quarries dating back to 1800, now filled with water and popular with visitors and artists. Guided tours available at Halibut Point State Park.", 24 "url": "https://cape-ann.com/quarries", 25 "geo": { 26 "@type": "GeoCoordinates", 27 "latitude": "42.6870", 28 "longitude": "-70.6320" 29 }, 30 "address": { 31 "@type": "PostalAddress", 32 "addressLocality": "Rockport", 33 "addressRegion": "MA", 34 "addressCountry": "US" 35 }, 36 "touristType": [ 37 "History", 38 "Nature", 39 "Photography", 40 "Guided Tours" 41 ] 42 } 43 </script>
43 44 45 <style> 46 :root { 47 --primary-color: #0f4c81; 48 --accent-color: #e6b800; 49 --text-dark: #1a202c; 50 --text-light: #f7fafc; 51 --bg-light: #f8f9fa; 52 --spacing-unit: 1rem; 53 --font-main: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; 54 } 55 56 * { margin: 0; padding: 0; box-sizing: border-box; } 57 58 body { 59 font-family: var(--font-main); 60 color: var(--text-dark); 61 line-height: 1.6; 62 background-color: #fff; 63 } 64 65 a { text-decoration: none; color: inherit; transition: 0.3s; } 66 ul { list-style: none; } 67 68 header { 69 background-color: white; 70 box-shadow: 0 2px 10px rgba(0,0,0,0.1); 71 position: sticky; 72 top: 0; 73 z-index: 1000; 74 } 75 76 .nav-container { 77 max-width: 1200px; 78 margin: 0 auto; 79 padding: 1rem 1.5rem; 80 display: flex; 81 justify-content: space-between; 82 align-items: center; 83 position: relative; 84 } 85 86 .logo { 87 font-size: 1.5rem; 88 font-weight: 800; 89 color: var(--primary-color); 90 text-transform: uppercase; 91 letter-spacing: 1px; 92 } 93 94 .nav-links { 95 display: flex; 96 gap: 2rem; 97 } 98 .nav-links a { 99 font-weight: 600; 100 color: var(--text-dark); 101 } 102 .nav-links a:hover { 103 color: var(--primary-color); 104 } 105 106 /* Mobile Menu Button */ 107 .mobile-menu-btn { 108 display: none; 109 font-size: 1.5rem; 110 cursor: pointer; 111 background: none; 112 border: none; 113 padding: 0.5rem; 114 z-index: 1001; 115 color: var(--text-dark); 116 } 117 118 /* Mobile Navigation Overlay */ 119 .mobile-nav { 120 display: none; 121 position: fixed; 122 top: 0; 123 left: 0; 124 width: 100%; 125 height: 100%; 126 background-color: rgba(0, 0, 0, 0.95); 127 z-index: 999; 128 flex-direction: column; 129 justify-content: center; 130 align-items: center; 131 gap: 2rem; 132 opacity: 0; 133 visibility: hidden; 134 transition: opacity 0.3s ease, visibility 0.3s ease; 135 } 136 137 .mobile-nav.active { 138 opacity: 1; 139 visibility: visible; 140 } 141 142 .mobile-nav a { 143 color: white; 144 font-size: 1.5rem; 145 font-weight: 600; 146 padding: 0.75rem 2rem; 147 transition: color 0.3s ease; 148 } 149 150 .mobile-nav a:hover { 151 color: var(--accent-color); 152 } 153 154 .close-btn { 155 position: absolute; 156 top: 1.5rem; 157 right: 1.5rem; 158 font-size: 2rem; 159 color: white; 160 background: none; 161 border: none; 162 cursor: pointer; 163 padding: 0.5rem; 164 } 165 166 .close-btn:hover { 167 color: var(--accent-color); 168 } 169 170 #chat-widget { 171 width: 100%; 172 height: 400px; 173 margin: 10px 0; 174 border: none; 175 } 176 177 .cta-button { 178 background-color: var(--accent-color); 179 color: var(--primary-color); 180 padding: 0.8rem 2rem; 181 border-radius: 4px; 182 font-weight: bold; 183 font-size: 1.1rem; 184 display: inline-block; 185 } 186 .cta-button:hover { background-color: #fff; } 187 188 .section-padding { padding: 4rem 1.5rem; } 189 .container { max-width: 1200px; margin: 0 auto; } 190 .bg-light { background-color: var(--bg-light); } 191 192 .section-title { 193 text-align: center; 194 margin-bottom: 3rem; 195 color: var(--primary-color); 196 } 197 198 /* Article content styles */ 199 .article-content { 200 max-width: 800px; 201 margin: 0 auto; 202 } 203 204 .article-content .intro { 205 font-size: 1.15rem; 206 line-height: 1.8; 207 margin-bottom: 2rem; 208 color: #444; 209 } 210 211 .article-content p { 212 line-height: 1.8; 213 margin-bottom: 1.5rem; 214 } 215 216 .highlight-box { 217 background: white; 218 border-radius: 8px; 219 padding: 2rem; 220 margin: 2rem 0; 221 box-shadow: 0 2px 4px rgba(0,0,0,0.05); 222 border-left: 4px solid var(--accent-color); 223 } 224 225 .highlight-box h3 { 226 color: var(--primary-color); 227 margin-bottom: 1rem; 228 font-size: 1.25rem; 229 } 230 231 .highlight-box p { 232 margin-bottom: 0; 233 } 234 235 .fun-fact { 236 background: var(--primary-color); 237 color: white; 238 border-radius: 8px; 239 padding: 1.5rem 2rem; 240 margin: 2rem 0; 241 text-align: center; 242 } 243 244 .fun-fact strong { 245 color: var(--accent-color); 246 } 247 248 .timeline { 249 background: white; 250 border-radius: 8px; 251 padding: 2rem; 252 margin: 2rem 0; 253 box-shadow: 0 2px 4px rgba(0,0,0,0.05); 254 } 255 256 .timeline h3 { 257 color: var(--primary-color); 258 margin-bottom: 1.5rem; 259 font-size: 1.25rem; 260 text-align: center; 261 } 262 263 .timeline-item { 264 display: flex; 265 margin-bottom: 1rem; 266 padding-bottom: 1rem; 267 border-bottom: 1px solid #eee; 268 } 269 270 .timeline-item:last-child { 271 margin-bottom: 0; 272 padding-bottom: 0; 273 border-bottom: none; 274 } 275 276 .timeline-year { 277 font-weight: 700; 278 color: var(--primary-color); 279 min-width: 80px; 280 font-size: 1.1rem; 281 } 282 283 .timeline-desc { 284 flex: 1; 285 } 286 287 .visit-info { 288 background: linear-gradient(135deg, var(--primary-color) 0%, #1a5a96 100%); 289 color: white; 290 border-radius: 8px; 291 padding: 2rem; 292 margin: 2rem 0; 293 text-align: center; 294 } 295 296 .visit-info h3 { 297 color: var(--accent-color); 298 margin-bottom: 1rem; 299 font-size: 1.25rem; 300 } 301 302 .visit-info p { 303 margin-bottom: 0; 304 } 305 306 footer { 307 background-color: var(--primary-color); 308 color: white; 309 padding: 3rem 1.5rem; 310 text-align: center; 311 } 312 .footer-links { 313 display: flex; 314 justify-content: center; 315 gap: 2rem; 316 margin-bottom: 2rem; 317 } 318 .footer-links a:hover { text-decoration: underline; } 319 320 body.menu-open { 321 overflow: hidden; 322 } 323 324 /* RESPONSIVE STYLES */ 325 @media (max-width: 768px) { 326 .nav-links { 327 display: none; 328 } 329 330 .mobile-menu-btn { 331 display: block; 332 } 333 334 .mobile-nav { 335 display: flex; 336 } 337 338 .section-padding { 339 padding: 2.5rem 1rem; 340 } 341 342 .section-title { 343 font-size: 1.5rem; 344 margin-bottom: 2rem; 345 } 346 347 #chat-widget { 348 height: 350px; 349 } 350 351 .footer-links { 352 flex-direction: column; 353 gap: 1rem; 354 } 355 356 .article-content .intro { 357 font-size: 1.05rem; 358 } 359 360 .highlight-box, 361 .timeline, 362 .visit-info { 363 padding: 1.5rem; 364 } 365 366 .timeline-item { 367 flex-direction: column; 368 } 369 370 .timeline-year { 371 margin-bottom: 0.25rem; 372 } 373 } 374 375 @media (max-width: 480px) { 376 .logo { 377 font-size: 1.2rem; 378 } 379 } 380 </style> 381 382
382<script> 383 (function(g,b,d,f){(function(a,c,d){if(a){var e=b.createElement("style");e.id=c;e.innerHTML=d;a.appendChild(e)}})(b.getElementsByTagName("head")[0],"at-body-style",d);setTimeout(function(){var a=b.getElementsByTagName("head")[0];if(a){var c=b.getElementById("at-body-style");c&&a.removeChild(c)}},f)})(window,document,"body {opacity: 0 !important}",3E3); 384 </script>
384 385
385<script async src="//assets.adobedtm.com/c4a89ccc6311/d19db66bcfbc/launch-a1dbae6d516a-development.min.js"></script>
vendor: 69 bytes, lines 385-386
385 386 <script async src="https://www.googletagmanager.com/gtag/js?id=
386G-PJMC3M75PN
vendor: 17 bytes, lines 386-387
386"></script> 387
387<script> 388
vendor: 148 bytes, lines 388-391
388window.dataLayer = window.dataLayer || []; 389 function gtag(){dataLayer.push(arguments);} 390 gtag('js', new Date()); 391 gtag('config', '
391G-PJMC3M75PN
vendor: 9 bytes, lines 391-392
391'); 392
392</script>
392 393</head> 394 395<body> 396 397 <header> 398 <div class="nav-container"> 399 <div class="logo"><a href="https://www.cape-ann.com">Cape-Ann.com</a></div> 400 <nav class="nav-links"> 401 <a href="https://www.cape-ann.com">Home</a> 402 <a href="https://www.cape-ann.com/#explore">Explore</a> 403 <a href="https://www.cape-ann.com/#thingstodo">Things To Do</a> 404 <a href="https://www.cape-ann.com/#arts">Arts</a> 405 <a href="https://www.cape-ann.com/#events">Events</a> 406 <a href="https://www.cape-ann.com/#chat">Chat</a> 407 </nav> 408 <button class="mobile-menu-btn" aria-label="Open menu" aria-expanded="false">â°</button> 409 </div> 410 </header> 411 412 <!-- Mobile Navigation Overlay --> 413 <nav class="mobile-nav" aria-hidden="true"> 414 <button class="close-btn" aria-label="Close menu">Ã</button> 415 <a href="https://www.cape-ann.com">Home</a> 416 <a href="https://www.cape-ann.com/#explore">Explore</a> 417 <a href="https://www.cape-ann.com/#thingstodo">Things To Do</a> 418 <a href="https://www.cape-ann.com/#arts">Arts</a> 419 <a href="https://www.cape-ann.com/#events">Events</a> 420 <a href="https://www.cape-ann.com/#chat">Chat</a> 421 </nav> 422 423 <main> 424 <section id="quarries" class="section-padding bg-light"> 425 <div class="container"> 426 <h2 class="section-title">Quarries of Cape Ann</h2> 427 428 <div class="article-content"> 429 <img src="https://www.cape-ann.com/iris.jpg" alt="Example" style="float: right; margin: 0 0 15px 20px;"> 430 <p class="intro">For many years Cape AnnâRockport in particularâsustained a thriving granite industry. As early as 1800, the inhabitants of Cape Ann began cutting the peninsula's 450 million year old granite into blocks of stone.</p><br><br> 431 432 <div class="timeline"> 433 <h3>Timeline of Cape Ann's Granite Industry</h3> 434 <div class="timeline-item"> 435 <span class="timeline-year">~1800</span> 436 <span class="timeline-desc">Granite quarrying begins on Cape Ann</span> 437 </div> 438 <div class="timeline-item"> 439 <span class="timeline-year">1850s</span> 440 <span class="timeline-desc">Steam engines and drills replace hand tools and oxen</span> 441 </div> 442 <div class="timeline-item"> 443 <span class="timeline-year">~1910</span> 444 <span class="timeline-desc">Quarrying reaches its peakâsurpassing fishing as Rockport's primary industry</span> 445 </div> 446 <div class="timeline-item"> 447 <span class="timeline-year">1930s</span> 448 <span class="timeline-desc">The Great Depression ends the granite industry</span> 449 </div> 450 </div> 451 452 <div class="highlight-box"> 453 <h3>Why Cape Ann Granite?</h3> 454 <p>The Cape Ann granite industry became successful for a number of reasons. The fine quality of the granite quickly attracted the attention of builders all along the eastern seaboard. As word spread, the granite was regularly shipped throughout the world. Cape Ann's location allowed for quarries to be set up close to shore so that the granite blocks could be shipped by vessel. This was important in the early days when railway service was non-existent.</p> 455 </div> 456 457 <p>Despite the above advantages, it was the rugged character, ingenuity, and perseverance of the people of Cape Ann that made quarrying successful. The men worked year-round in the quarriesâirrespective of weather. Before steam engines and drills became available in the 1850s, most of the arduous work was done by hand or with teams of oxen.</p> 458 459 <div class="fun-fact"> 460 <strong>Did you know?</strong> Cape Ann granite was used in the construction of parts of the Statue of Liberty and other great monuments. Paving stones from local quarries were used in the construction of thousands of streets worldwide! 461 </div> 462 463 <div class="highlight-box"> 464 <h3>The End of an Era</h3> 465 <p>The Great Depression ushered in the collapse of the local granite industry. By that time, demand shifted to concrete and steel for building construction and asphalt for street paving. For over 100 years, however, the rock cut and shipped from Cape Ann was used in the construction of many famous buildings throughout the U.S.</p> 466 </div> 467 468 <p>Today, most of the quarries in Cape Ann have filled with both rain and spring water to form deep ponds. Many of the quarries are now hidden in forests which nature has reclaimed. Owing to their colorful beauty and intriguing nature, the quarries are popular with visitors and artists alike.</p> 469 470 <div class="visit-info"> 471 <h3>Visit the Quarries</h3> 472 <p>Guided quarry tours are offered frequently at <strong>Halibut Point State Park</strong> in Rockportâsite of the Babson Farm Quarry. Experience the history and beauty of these remarkable geological and historical treasures.</p> 473 </div> 474 </div> 475 476 </div> 477 </section> 478 479 <section id="chat" class="section-padding bg-light"> 480 <div class="container"> 481 <h2 class="section-title">
481Chat</h2> 482 <iframe id="chat-widget" src="https://chatwith.tools/embed/4439df31-fb8a-44d9-b226-7acf4c2428e9" title="Chat widget"></iframe> 483 </div> 484 </section> 485 486 <section class="section-padding"> 487 <div class="container"> 488 <h2 class="section-title">Why Visit Cape Ann?</h2> 489 <div style="max-width: 800px; margin: 0 auto; line-height: 1.8;"> 490 <p>Unlike the crowded Cape Cod, <strong>Cape Ann</strong> offers a rugged, authentic New England experience. Located just 30 miles north of Boston, this region is a haven for artists, history buffs, and ocean lovers. Whether you are looking for the <em>best whale watching in New England</em> or the freshest lobster rolls, Cape Ann delivers year-round.</p> 491 </div> 492 </div> 493 </section> 494 </main> 495 496 <footer> 497 <div class="container"> 498 <a href="mailto:cape.ann.intermarketing@gmail.com">Contact</a> 499 </div> 500 <p>© 2026 Cape-Ann.com. All Rights Reserved.</p> 501 <p><small>Based in Gloucester, MA.</small></p> 502 </div> 503 </footer> 504 505 <!-- Mobile Menu JavaScript --> 506
506<script> 507 document.addEventListener('DOMContentLoaded', function() { 508 var menuBtn = document.querySelector('.mobile-menu-btn'); 509 var closeBtn = document.querySelector('.close-btn'); 510 var mobileNav = document.querySelector('.mobile-nav'); 511 var mobileNavLinks = document.querySelectorAll('.mobile-nav a'); 512 513 function openMenu() { 514 mobileNav.classList.add('active'); 515 mobileNav.setAttribute('aria-hidden', 'false'); 516 menuBtn.setAttribute('aria-expanded', 'true'); 517 document.body.classList.add('menu-open'); 518 } 519 520 function closeMenu() { 521 mobileNav.classList.remove('active'); 522 mobileNav.setAttribute('aria-hidden', 'true'); 523 menuBtn.setAttribute('aria-expanded', 'false'); 524 document.body.classList.remove('menu-open'); 525 } 526 527 menuBtn.addEventListener('click', openMenu); 528 closeBtn.addEventListener('click', closeMenu); 529 530 mobileNavLinks.forEach(function(link) { 531 link.addEventListener('click', closeMenu); 532 }); 533 534 document.addEventListener('keydown', function(e) { 535 if (e.key === 'Escape' && mobileNav.classList.contains('active')) { 536 closeMenu(); 537 } 538 }); 539 540 mobileNav.addEventListener('click', function(e) { 541 if (e.target === mobileNav) { 542 closeMenu(); 543 } 544 }); 545 }); 546 </script>
546 547 548</body> 549</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.