* { margin: 0; padding: 0; box-sizing: border-box; } /* Force left-align: overrides FS site's centered article body CSS */ h1, h2, h3, h4, h5, h6, p, div, span, li, ul, ol, a, td, th, .container, .title-area, .card, .card-header, .card-body, .challenge-content, .facility-caption, .facility-caption-text, .quote-block, .faq-list, .faq-answer, .faq-question, .steps-grid, .step-content, .guide-intro, .guide-card-body, .hood-grid, .nearby-pills, .service-info, .service-description, .promo-box, .meta-pills, .location-tag, .detail-content, .detail-description, .detail-bullets { text-align: left !important; } html, body { font-family: 'Montserrat', sans-serif; background-color: #f4f5f7; color: #7f7f7f; line-height: 1.6; text-align: left !important; } /* ===== HEADER ===== */ .site-header { background-color: #1a2a3a; padding: 16px 0; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .header-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; } .logo { font-size: 24px; font-weight: 700; color: #ecc486; text-decoration: none; } .nav-items { display: flex; gap: 24px; list-style: none; } .nav-items a { color: #fff; text-decoration: none; font-size: 13px; font-weight: 500; transition: color 0.3s; } .nav-items a:hover { color: #ecc486; } /* ===== MAIN CONTAINER ===== */ .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; } /* ===== TITLE AREA ===== */ .title-area { background-color: #fff; padding: 40px; margin-top: 0; border-bottom: 1px solid #e4e7eb; } .location-tag { display: inline-block; background-color: #f0f0f0; color: #293241; padding: 6px 12px; border-radius: 4px; font-size: 12px; font-weight: 600; margin-bottom: 12px; text-transform: uppercase; letter-spacing: 0.5px; } .title-area h1 { font-size: 48px; font-weight: 700; margin-bottom: 12px; color: #293241; } .title-area p { font-size: 16px; color: #666; margin-bottom: 20px; line-height: 1.7; } .meta-pills { display: flex; flex-wrap: wrap; gap: 16px; } .meta-pill { display: flex; align-items: center; gap: 6px; font-size: 13px; color: #555; } .meta-pill a { color: #ecc486; text-decoration: none; font-weight: 600; } .meta-pill a:hover { text-decoration: underline; } /* ===== PROMO BOXES ===== */ .promo-section { margin-top: 30px; display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; } .promo-box { background: linear-gradient(135deg, #f9f9f9 0%, #fff 100%); border: 1px solid #e4e7eb; border-radius: 8px; padding: 24px; text-align: left; } .promo-box h3 { font-size: 16px; font-weight: 600; color: #293241; margin-bottom: 8px; display: flex; align-items: center; gap: 10px; } .promo-box p { font-size: 14px; color: #666; margin-bottom: 12px; line-height: 1.5; } .promo-tag { display: inline-block; background-color: #293241; color: #fff; padding: 6px 12px; border-radius: 4px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 12px; } .promo-button { display: inline-block; background-color: #293241; color: #fff; padding: 10px 16px; border-radius: 4px; text-decoration: none; font-size: 13px; font-weight: 600; transition: background-color 0.3s; border: none; cursor: pointer; } .promo-button:hover { background-color: #1a2a3a; } /* ===== CARD LAYOUT ===== */ .card { background-color: #fff; border: 1px solid #e4e7eb; border-radius: 8px; margin-top: 30px; overflow: hidden; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); } .card-header { padding: 22px; border-bottom: 1px solid #f0f0f0; display: flex; align-items: center; gap: 14px; } .card-header h2 { font-size: 35px; font-weight: 600; color: rgb(41, 50, 65); margin: 0; } .card-icon { font-size: 40px; display: flex; align-items: center; } .card-body { padding: 30px; } /* ===== TRUST CHIPS ===== */ .trust-bar { background-color: #293241; padding: 20px 30px; display: flex; flex-wrap: wrap; gap: 30px; justify-content: center; align-items: center; border-radius: 8px; margin-top: 30px; } .trust-chip { display: flex; align-items: center; gap: 8px; color: #fff; font-size: 14px; font-weight: 500; } /* ===== SERVICES LIST ===== */ .services-list { display: grid; grid-template-columns: 1fr; gap: 0; } .service-row { display: grid; grid-template-columns: 140px 1fr auto; gap: 20px; padding: 20px 0; border-bottom: 1px solid #f0f0f0; align-items: start; } .service-row:last-child { border-bottom: none; } .service-icon img { width: 100%; height: 100%; object-fit: cover; } .service-icon { display: flex; align-items: center; justify-content: center; width: 140px; height: 140px; overflow: hidden; border-radius: 8px; flex-shrink: 0; } .service-info h3 { font-size: 16px; font-weight: 600; margin-bottom: 6px; } .service-info h3 a { color: #ecc486; text-decoration: none; } .service-info h3 a:hover { text-decoration: underline; } .service-description { font-size: 13px; color: #666; line-height: 1.5; } .service-price { font-size: 16px; font-weight: 700; color: #293241; text-align: right; white-space: nowrap; } /* ===== DETAIL CARDS ===== */ .detail-card { background-color: #fff; border: 1px solid #e4e7eb; border-radius: 8px; margin-top: 30px; overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; gap: 0; } .detail-image { width: 100%; height: 100%; min-height: 300px; background-size: cover; background-position: center; } .detail-content { padding: 30px; display: flex; flex-direction: column; justify-content: center; } .detail-content h3 { font-size: 28px; font-weight: 700; color: rgb(95, 138, 164); margin-bottom: 12px; } .detail-price { font-size: 13px; font-weight: 600; color: #ecc486; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 16px; } .detail-description { font-size: 14px; color: #666; margin-bottom: 18px; line-height: 1.6; } .detail-bullets { list-style: none; padding: 0; } .detail-bullets li { font-size: 13px; color: #555; padding: 8px 0; padding-left: 24px; position: relative; } .detail-bullets li:before { content: "•"; position: absolute; left: 0; color: #ecc486; font-weight: 700; } @media (max-width: 768px) { .detail-card { grid-template-columns: 1fr; } .detail-image { min-height: 250px; } } /* ===== CHALLENGE CARD ===== */ .challenge-content { padding: 30px; } .challenge-content p { font-size: 15px; color: #666; margin-bottom: 16px; line-height: 1.7; } /* ===== HOW IT WORKS ===== */ .steps-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 30px; padding: 20px 0; } .step-row { display: flex; gap: 20px; align-items: flex-start; } .step-number { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; background-color: #293241; color: #ecc486; border-radius: 50%; font-weight: 700; font-size: 20px; flex-shrink: 0; } .step-content h3 { font-size: 16px !important; font-weight: 600 !important; color: #293241 !important; margin-bottom: 8px !important; text-transform: none !important; letter-spacing: normal !important; line-height: 1.3 !important; min-height: 42px !important; display: flex !important; align-items: center !important; } .step-content p { font-size: 13px; color: #666; line-height: 1.5; } .step-content a { color: #ecc486; text-decoration: none; } .step-content a:hover { text-decoration: underline; } /* ===== PHOTO GRID ===== */ .photo-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; padding: 20px 0; } .grid-image { width: 100%; height: 250px; background-size: cover; background-position: center; border-radius: 6px; overflow: hidden; } @media (max-width: 768px) { .photo-grid { grid-template-columns: 1fr; } .grid-image { height: 300px; } } /* ===== LOCAL GUIDE ===== */ .guide-intro { font-size: 16px; color: #666; line-height: 1.8; margin-bottom: 30px; font-style: italic; } .guide-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; margin-bottom: 30px; } .guide-card { background: #fff; border: 1px solid #e4e7eb; border-radius: 8px; overflow: hidden; text-decoration: none; transition: box-shadow 0.3s, transform 0.2s; display: block; } .guide-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.1); transform: translateY(-2px); } .guide-card-img { width: 100%; height: 160px; object-fit: cover; display: block; } .guide-card-body { padding: 16px; } .guide-card-body h4 { font-size: 15px; font-weight: 700; color: #293241; margin-bottom: 4px; } .guide-card-body p { font-size: 12px; color: #888; line-height: 1.5; margin: 0; } .guide-card-tag { display: inline-block; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; color: #ecc486; margin-bottom: 6px; } .guide-neighborhoods { background: #f7f8fa; border: 1px solid #e4e7eb; border-radius: 8px; padding: 24px; } .guide-neighborhoods h3 { font-size: 18px; font-weight: 600; color: rgb(95, 138, 164); margin-bottom: 14px; } .hood-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; } .hood-item { font-size: 13px; color: #7f7f7f; line-height: 1.4; padding: 10px 14px; background: #f8f9fa; border-radius: 6px; } .hood-item strong { display: block; color: #293241; font-size: 14px; margin-bottom: 2px; } .hood-item span { display: block; font-size: 12px; } .guide-facts { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 24px; padding: 20px 24px; background: #293241; border-radius: 8px; } .guide-fact { flex: 1; min-width: 120px; text-align: center; } .guide-fact .val { font-size: 20px; font-weight: 800; color: #ecc486; display: block; } .guide-fact .lbl { font-size: 11px; color: rgba(255,255,255,0.7); text-transform: uppercase; letter-spacing: 0.5px; } /* ===== NEARBY LOCATIONS ===== */ .nearby-pills { display: flex; flex-wrap: wrap; gap: 12px; padding: 20px 0; } .location-pill { display: inline-block; background-color: #e8eef3; color: #293241; padding: 10px 18px; border-radius: 24px; text-decoration: none; font-size: 13px; font-weight: 600; transition: all 0.3s; border: 1px solid #d4dceb; } .location-pill:hover { background-color: #ecc486; color: #fff; border-color: #ecc486; } /* ===== FAQ SECTION ===== */ .faq-list { display: flex; flex-direction: column; gap: 0; } .faq-item { border-bottom: 1px solid #e4e7eb; padding: 20px 0; } .faq-item:last-child { border-bottom: none; } .faq-question { font-size: 16px; font-weight: 700; color: #293241; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 12px; } .faq-question::after { content: '+'; font-size: 22px; font-weight: 300; color: #ecc486; flex-shrink: 0; transition: transform 0.3s; } .faq-item.open .faq-question::after { content: '−'; } .faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.3s ease, padding 0.3s ease; } .faq-item.open .faq-answer { max-height: 300px; padding-top: 12px; } .faq-answer p { font-size: 14px; color: #7f7f7f; line-height: 1.7; margin: 0; } .faq-answer a { color: rgb(95, 138, 164); } /* ===== FACILITY SHOWCASE ===== */ .facility-showcase { margin-top: 30px; border-radius: 8px; overflow: hidden; background: #fff; border: 1px solid #e4e7eb; } .facility-showcase img { width: 100%; height: 320px; object-fit: cover; object-position: center top; display: block; } .facility-caption { padding: 24px 30px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; } .facility-caption-text { flex: 1; min-width: 240px; } .facility-caption-text h3 { font-size: 18px; font-weight: 700; color: #293241; margin-bottom: 6px; } .facility-caption-text p { font-size: 14px; color: #7f7f7f; margin: 0; line-height: 1.6; } .facility-cta { display: inline-block; background: #ecc486; color: #1a2a3a !important; padding: 14px 28px; border-radius: 6px; text-decoration: none; font-size: 14px; font-weight: 700; white-space: nowrap; transition: all 0.3s; border: 2px solid #ecc486; } .facility-cta:hover { background: #c19a2a; border-color: #c19a2a; } /* ===== BOTTOM CTA ===== */ .bottom-cta { background-color: #293241; color: #fff; padding: 60px 40px; text-align: left; margin-top: 50px; border-radius: 8px; } .bottom-cta h2 { font-size: 42px; font-weight: 700; margin-bottom: 16px; } .bottom-cta p { font-size: 16px; margin-bottom: 24px; line-height: 1.7; max-width: 600px; margin-left: auto; margin-right: auto; } .cta-buttons { display: flex; flex-wrap: wrap; gap: 16px; justify-content: center; align-items: center; } .cta-button { background-color: #ecc486; color: #1a2a3a !important; padding: 14px 28px; border-radius: 6px; text-decoration: none; font-size: 14px; font-weight: 700; transition: all 0.3s; display: inline-block; border: 2px solid #ecc486; } .cta-button:hover { background-color: #c19a2a; border-color: #c19a2a; } .cta-phone { color: #fff; font-size: 15px; font-weight: 600; } /* ===== QUOTE BLOCKS ===== */ .quote-block { background-color: #fff; border: 1px solid #e4e7eb; border-radius: 8px; margin-top: 30px; padding: 30px 36px; position: relative; } .quote-block::before { content: '"'; font-family: Georgia, serif; font-size: 72px; color: #ecc486; position: absolute; top: -10px; left: 24px; line-height: 1; } .quote-text { font-size: 16px; color: #555; line-height: 1.8; font-style: italic; margin-bottom: 16px; padding-left: 10px; } .quote-attribution { display: flex; align-items: center; gap: 14px; } .quote-avatar { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; border: 2px solid #ecc486; } .quote-name { font-size: 14px; font-weight: 700; color: #293241; } .quote-role { font-size: 12px; color: #888; } .quote-stars { color: #ecc486; font-size: 14px; letter-spacing: 2px; } /* ===== SLIDESHOW (CSS-only animation) ===== */ @keyframes slideFade { 0% { opacity: 1; } 13% { opacity: 1; } 17% { opacity: 0; } 97% { opacity: 0; } 100% { opacity: 1; } } .slideshow { position: relative; width: 100%; height: 400px; overflow: hidden; border-radius: 8px; margin: 8px 0 24px 0; background: #1a1a2e; } .slide { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; animation: slideFade 30s infinite; } .slide:nth-child(1) { animation-delay: 0s; } .slide:nth-child(2) { animation-delay: 5s; } .slide:nth-child(3) { animation-delay: 10s; } .slide:nth-child(4) { animation-delay: 15s; } .slide:nth-child(5) { animation-delay: 20s; } .slide:nth-child(6) { animation-delay: 25s; } .slide img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; display: block !important; border-radius: 0 !important; } .slide-caption { position: absolute; bottom: 0; left: 0; right: 0; padding: 20px 28px; background: linear-gradient(transparent, rgba(0,0,0,0.7)); color: #fff; font-size: 15px; font-weight: 600; line-height: 1.5; } /* ===== RESPONSIVE ===== */ @media (max-width: 768px) { .title-area h1 { font-size: 32px; } .title-area { padding: 30px; } .card-header h2 { font-size: 24px; } .card-body, .challenge-content { padding: 20px; } .service-row { grid-template-columns: 1fr; gap: 12px; } .service-price { text-align: left; } .nav-items { display: none; } .trust-bar { flex-direction: column; gap: 16px; text-align: center; } .steps-grid { grid-template-columns: 1fr; } .bottom-cta { padding: 40px 20px; } .bottom-cta h2 { font-size: 28px; } .cta-buttons { flex-direction: column; } .cta-button, .cta-phone { width: 100%; text-align: center; } } Nearby Locations Browse Forever Studios services in other Florida cities Bradenton Brandon Cape Coral Clearwater Estero Fort Myers Largo Lehigh Acres Marco Island Naples Port Charlotte Sarasota St. Petersburg Tampa Vintage University Curious about what's possible with your media? Explore Vintage University and learn how to preserve what matters, from identifying old formats to understanding the digitizing process. Visit Vintage U 🔗 Explore Our Services Browse our full range of media preservation services available to residents throughout Florida: 📼 VHS & Tape Digitizing 📸 Photo Scanning 🎬 Film Transfer 🎵 Audio Digitizing ❓ Common Questions from Bonita Springs Customers I'm in Bonita Springs and can't drive to Boca Raton. What are my options? No problem. We offer two alternatives: our free insured shipping kit program (we send you the box, you pack and ship) or our concierge pickup service where our team comes directly to your Bonita Springs home. Both options include full insurance and tracking. Call 561-235-7808 to arrange either option. What's included in the $12 per tape VHS digitizing price? Everything. Professional capture using commercial-grade equipment, digital file creation in your preferred format (USB, cloud, or DVD), frame-by-frame quality review by our technicians, and safe return of your original tapes. No hidden fees, no surprise charges, no per-minute pricing. Request a quote for your collection. How long will it take to get my Bonita Springs order back? Standard turnaround is 2 to 4 weeks from the day we receive your collection at our Boca Raton facility. Rush processing is available for time-sensitive projects like family reunions or memorial services. We keep you updated throughout the process with status notifications. Can I get my photos scanned if I live in Bonita Springs? Absolutely. Our photo scanning service is available to anyone in Lee County and across Florida. We scan at 600 DPI with professional color correction, dust and scratch removal, and deliver your images on USB or via cloud download. Bulk discounts kick in at 100+ photos. Is my collection insured while it's at your facility? Yes. Your collection is insured from the moment it leaves your Bonita Springs home through processing and return. Our Boca Raton facility has climate-controlled storage, 24/7 security monitoring, and fire suppression systems. We never outsource to third-party labs: your originals stay in our custody the entire time.