/* Page: Home */
* { margin: 0px; padding: 0px; box-sizing: border-box; }
body { font-family: "Open Sans", sans-serif; line-height: 1.6; color: rgb(51, 51, 51); overflow-x: hidden; }
.pls-home-hero { position: relative; width: 100%; min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 60px 20px; background: rgb(139, 115, 85); overflow: hidden; }
.pls-home-hero-bg { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; object-fit: cover; z-index: 1; }
.pls-home-hero-overlay { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(139, 115, 85, 0.75); z-index: 2; }
.pls-home-hero-content { position: relative; z-index: 3; text-align: center; max-width: 1200px; }
.pls-home-hero h1 { font-family: Montserrat, sans-serif; font-size: 3.5rem; font-weight: 800; color: rgb(255, 255, 255); margin-bottom: 20px; text-shadow: rgba(0, 0, 0, 0.3) 2px 2px 8px; line-height: 1.2; }
.pls-home-hero-subtitle { font-size: 1.5rem; color: rgb(245, 241, 232); margin-bottom: 40px; font-weight: 400; text-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px; }
.pls-home-hero-buttons { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; margin-bottom: 40px; }
.pls-home-hero-btn { padding: 18px 40px; font-size: 1.2rem; font-weight: 600; border: none; border-radius: 8px; cursor: pointer; transition: 0.3s; text-decoration: none; display: inline-block; box-shadow: rgba(0, 0, 0, 0.2) 0px 4px 15px; }
.pls-home-hero-btn-primary { background: rgb(212, 165, 116); color: rgb(255, 255, 255); }
.pls-home-hero-btn-primary:hover { background: rgb(193, 149, 99); transform: translateY(-2px); box-shadow: rgba(212, 165, 116, 0.4) 0px 6px 20px; }
.pls-home-hero-btn-secondary { background: rgb(160, 120, 90); color: rgb(255, 255, 255); }
.pls-home-hero-btn-secondary:hover { background: rgb(143, 106, 79); transform: translateY(-2px); box-shadow: rgba(160, 120, 90, 0.4) 0px 6px 20px; }
.pls-home-hero-separator { width: 200px; height: 4px; background: rgb(201, 181, 145); margin: 0px auto; }
.pls-home-welcome { background: rgb(255, 255, 255); padding: 80px 20px; }
.pls-home-welcome-container { max-width: 1200px; margin: 0px auto; }
.pls-home-welcome h2 { font-family: Montserrat, sans-serif; font-size: 2.8rem; font-weight: 700; color: rgb(139, 115, 85); text-align: center; margin-bottom: 60px; }
.pls-home-welcome-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.pls-home-welcome-img-wrapper { width: 100%; }
.pls-home-welcome-img { width: 100%; height: auto; border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.15) 0px 8px 30px; }
.pls-home-welcome-text { color: rgb(51, 51, 51); font-size: 1.1rem; line-height: 1.8; }
.pls-home-welcome-text p { margin-bottom: 20px; }
.pls-home-why-choose { background: rgb(245, 241, 232); padding: 80px 20px; }
.pls-home-why-choose-container { max-width: 1200px; margin: 0px auto; }
.pls-home-why-choose h2 { font-family: Montserrat, sans-serif; font-size: 2.8rem; font-weight: 700; color: rgb(139, 115, 85); text-align: center; margin-bottom: 60px; }
.pls-home-why-choose-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.pls-home-why-choose-card { background: rgb(255, 255, 255); padding: 40px 30px; border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.1) 0px 8px 25px; text-align: center; transition: transform 0.3s, box-shadow 0.3s; }
.pls-home-why-choose-card:hover { transform: translateY(-8px); box-shadow: rgba(0, 0, 0, 0.15) 0px 12px 35px; }
.pls-home-why-choose-icon { font-size: 3.5rem; margin-bottom: 20px; color: rgb(212, 165, 116); }
.pls-home-why-choose-card h3 { font-family: Montserrat, sans-serif; font-size: 1.6rem; font-weight: 600; color: rgb(160, 120, 90); margin-bottom: 15px; }
.pls-home-why-choose-card p { color: rgb(51, 51, 51); font-size: 1rem; line-height: 1.7; }
.pls-home-why-choose-separator { width: 200px; height: 4px; background: rgb(201, 181, 145); margin: 60px auto 0px; }
.pls-home-services { background: rgb(139, 115, 85); padding: 80px 20px; color: rgb(245, 241, 232); }
.pls-home-services-container { max-width: 1200px; margin: 0px auto; }
.pls-home-services h2 { font-family: Montserrat, sans-serif; font-size: 2.8rem; font-weight: 700; color: rgb(245, 241, 232); text-align: center; margin-bottom: 20px; }
.pls-home-services-subtitle { font-size: 1.4rem; color: rgb(201, 181, 145); text-align: center; margin-bottom: 60px; }
.pls-home-services-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; margin-bottom: 50px; }
.pls-home-services-card { background: rgb(160, 120, 90); padding: 35px; border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.2) 0px 6px 20px; }
.pls-home-services-card h3 { font-family: Montserrat, sans-serif; font-size: 1.8rem; font-weight: 600; color: rgb(255, 255, 255); margin-bottom: 20px; }
.pls-home-services-card ul { list-style: none; padding-left: 0px; }
.pls-home-services-card li { color: rgb(245, 241, 232); font-size: 1.05rem; margin-bottom: 12px; padding-left: 25px; position: relative; }
.pls-home-services-card li::before { content: "✓"; position: absolute; left: 0px; color: rgb(212, 165, 116); font-weight: bold; font-size: 1.2rem; }
.pls-home-services-btn-wrapper { text-align: center; }
.pls-home-services-btn { background: rgb(212, 165, 116); color: rgb(255, 255, 255); padding: 16px 50px; font-size: 1.2rem; font-weight: 600; border: none; border-radius: 8px; cursor: pointer; transition: 0.3s; box-shadow: rgba(0, 0, 0, 0.2) 0px 4px 15px; }
.pls-home-services-btn:hover { background: rgb(193, 149, 99); transform: translateY(-2px); box-shadow: rgba(212, 165, 116, 0.4) 0px 6px 20px; }
.pls-home-advantage { background: rgb(255, 255, 255); padding: 80px 20px; }
.pls-home-advantage-container { max-width: 900px; margin: 0px auto; }
.pls-home-advantage-box { border: 3px solid rgb(212, 165, 116); background: rgb(245, 241, 232); padding: 50px 40px; border-radius: 12px; text-align: center; }
.pls-home-advantage-box h2 { font-family: Montserrat, sans-serif; font-size: 2.6rem; font-weight: 700; color: rgb(139, 115, 85); margin-bottom: 25px; }
.pls-home-advantage-box .pls-home-highlight { font-size: 1.5rem; font-weight: 700; color: rgb(160, 120, 90); margin-bottom: 20px; display: block; }
.pls-home-advantage-box p { color: rgb(51, 51, 51); font-size: 1.1rem; line-height: 1.8; margin-bottom: 30px; }
.pls-home-advantage-btn { background: rgb(212, 165, 116); color: rgb(255, 255, 255); padding: 16px 40px; font-size: 1.15rem; font-weight: 600; border: none; border-radius: 8px; cursor: pointer; transition: 0.3s; box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 15px; }
.pls-home-advantage-btn:hover { background: rgb(193, 149, 99); transform: translateY(-2px); box-shadow: rgba(212, 165, 116, 0.4) 0px 6px 20px; }
.pls-home-advantage-separator { width: 200px; height: 4px; background: rgb(201, 181, 145); margin: 60px auto 0px; }
.pls-home-gallery { background: rgb(245, 241, 232); padding: 80px 20px; }
.pls-home-gallery-container { max-width: 1200px; margin: 0px auto; }
.pls-home-gallery h2 { font-family: Montserrat, sans-serif; font-size: 2.8rem; font-weight: 700; color: rgb(139, 115, 85); text-align: center; margin-bottom: 15px; }
.pls-home-gallery-subtitle { font-size: 1.3rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 50px; }
.pls-home-gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-bottom: 50px; }
.pls-home-gallery-item { width: 100%; height: 280px; border-radius: 8px; border: 3px solid rgb(201, 181, 145); overflow: hidden; transition: transform 0.3s, box-shadow 0.3s; }
.pls-home-gallery-item:hover { transform: scale(1.05); box-shadow: rgba(0, 0, 0, 0.15) 0px 8px 25px; }
.pls-home-gallery-item img { width: 100%; height: 100%; object-fit: cover; }
.pls-home-gallery-btn-wrapper { text-align: center; }
.pls-home-gallery-btn { background: rgb(160, 120, 90); color: rgb(255, 255, 255); padding: 16px 45px; font-size: 1.15rem; font-weight: 600; border: none; border-radius: 8px; cursor: pointer; transition: 0.3s; box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 15px; }
.pls-home-gallery-btn:hover { background: rgb(143, 106, 79); transform: translateY(-2px); box-shadow: rgba(160, 120, 90, 0.4) 0px 6px 20px; }
.pls-home-quote { background: rgb(139, 115, 85); padding: 80px 20px; }
.pls-home-quote-container { max-width: 1200px; margin: 0px auto; }
.pls-home-quote h2 { font-family: Montserrat, sans-serif; font-size: 2.8rem; font-weight: 700; color: rgb(255, 255, 255); text-align: center; margin-bottom: 15px; }
.pls-home-quote-subtitle { font-size: 1.4rem; color: rgb(201, 181, 145); text-align: center; margin-bottom: 60px; }
.pls-home-quote-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; }
.pls-home-quote-img-wrapper { width: 100%; }
.pls-home-quote-img { width: 100%; height: auto; border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.3) 0px 8px 30px; }
.pls-home-quote-content { background: rgb(160, 120, 90); padding: 45px; border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.2) 0px 6px 20px; }
.pls-home-quote-content p { color: rgb(255, 255, 255); font-size: 1.15rem; margin-bottom: 30px; line-height: 1.7; }
.pls-home-quote-contact { margin-bottom: 35px; }
.pls-home-quote-phone { display: block; font-size: 2rem; font-weight: 700; color: rgb(212, 165, 116); margin-bottom: 15px; text-decoration: none; transition: color 0.3s; }
.pls-home-quote-phone:hover { color: rgb(193, 149, 99); }
.pls-home-quote-email { display: block; font-size: 1.2rem; color: rgb(245, 241, 232); text-decoration: none; transition: color 0.3s; }
.pls-home-quote-email:hover { color: rgb(212, 165, 116); }
.pls-home-quote-buttons { display: flex; flex-direction: column; gap: 15px; }
.pls-home-quote-btn { padding: 16px 35px; font-size: 1.1rem; font-weight: 600; border: none; border-radius: 8px; cursor: pointer; transition: 0.3s; text-align: center; }
.pls-home-quote-btn-primary { background: rgb(212, 165, 116); color: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 15px; }
.pls-home-quote-btn-primary:hover { background: rgb(193, 149, 99); transform: translateY(-2px); }
.pls-home-quote-btn-secondary { background: rgb(255, 255, 255); color: rgb(139, 115, 85); box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 15px; }
.pls-home-quote-btn-secondary:hover { background: rgb(245, 241, 232); transform: translateY(-2px); }
.pls-home-testimonial { background: rgb(255, 255, 255); padding: 80px 20px; }
.pls-home-testimonial-container { max-width: 1000px; margin: 0px auto; }
.pls-home-testimonial h2 { font-family: Montserrat, sans-serif; font-size: 2.8rem; font-weight: 700; color: rgb(139, 115, 85); text-align: center; margin-bottom: 50px; }
.pls-home-testimonial-box { background: rgb(245, 241, 232); padding: 40px 45px; border-left: 5px solid rgb(212, 165, 116); border-radius: 8px; margin-bottom: 30px; box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 15px; }
.pls-home-testimonial-quote { font-size: 1.25rem; color: rgb(51, 51, 51); font-style: italic; line-height: 1.8; margin-bottom: 20px; }
.pls-home-testimonial-author { font-size: 1.1rem; color: rgb(160, 120, 90); font-weight: 600; text-align: right; }
.pls-home-testimonial-footer { text-align: center; font-size: 1.15rem; color: rgb(139, 115, 85); font-weight: 600; }
.pls-home-footer { background: rgb(139, 115, 85); padding: 60px 20px 30px; color: rgb(245, 241, 232); }
.pls-home-footer-container { max-width: 1200px; margin: 0px auto; }
.pls-home-footer-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 50px; margin-bottom: 40px; }
.pls-home-footer-column h3 { font-family: Montserrat, sans-serif; font-size: 1.5rem; font-weight: 600; color: rgb(255, 255, 255); margin-bottom: 20px; }
.pls-home-footer-column p, .pls-home-footer-column a { color: rgb(245, 241, 232); font-size: 1rem; line-height: 1.8; text-decoration: none; display: block; margin-bottom: 10px; }
.pls-home-footer-column a { color: rgb(201, 181, 145); transition: color 0.3s; }
.pls-home-footer-column a:hover { color: rgb(212, 165, 116); }
.pls-home-footer-copyright { text-align: center; padding-top: 30px; border-top: 1px solid rgba(201, 181, 145, 0.3); color: rgb(201, 181, 145); font-size: 0.95rem; }
@media (max-width: 1024px) {
  .pls-home-hero h1 { font-size: 2.8rem; }
  .pls-home-hero-subtitle { font-size: 1.3rem; }
  .pls-home-welcome-grid, .pls-home-quote-grid { grid-template-columns: 1fr; gap: 40px; }
  .pls-home-why-choose-grid, .pls-home-services-grid { grid-template-columns: 1fr; gap: 30px; }
  .pls-home-gallery-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .pls-home-hero h1 { font-size: 2.2rem; }
  .pls-home-hero-subtitle { font-size: 1.1rem; }
  .pls-home-hero-buttons { flex-direction: column; width: 100%; max-width: 400px; margin: 0px auto 40px; }
  .pls-home-hero-btn { width: 100%; }
  .pls-home-welcome h2, .pls-home-why-choose h2, .pls-home-services h2, .pls-home-gallery h2, .pls-home-quote h2, .pls-home-testimonial h2 { font-size: 2.2rem; }
  .pls-home-footer-grid { grid-template-columns: 1fr; gap: 40px; text-align: center; }
  .pls-home-gallery-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .pls-home-hero h1 { font-size: 1.8rem; }
  .pls-home-hero-subtitle { font-size: 1rem; }
  .pls-home-hero-btn { font-size: 1rem; padding: 14px 30px; }
  .pls-home-welcome h2, .pls-home-why-choose h2, .pls-home-services h2, .pls-home-gallery h2, .pls-home-quote h2, .pls-home-testimonial h2 { font-size: 1.8rem; }
  .pls-home-quote-phone { font-size: 1.5rem; }
}
[data-section-id="photo_upload_section"] { background: linear-gradient(135deg, rgb(102, 126, 234) 0%, rgb(118, 75, 162) 100%); padding: 80px 20px; font-family: Inter, sans-serif; color: rgb(255, 255, 255); text-align: center; }
[data-section-id="photo_upload_section"] .photo-upload-container { max-width: 800px; margin: 0px auto; }
[data-section-id="photo_upload_section"] h2 { font-size: 2.5rem; font-weight: 700; margin-bottom: 15px; color: rgb(255, 255, 255); text-shadow: rgba(0, 0, 0, 0.2) 0px 2px 4px; }
[data-section-id="photo_upload_section"] .photo-upload-subtitle { font-size: 1.1rem; color: rgb(240, 240, 240); margin-bottom: 40px; font-weight: 400; }
[data-section-id="photo_upload_section"] .photo-upload-area { margin-bottom: 30px; }
[data-section-id="photo_upload_section"] .photo-upload-box { background: rgb(255, 255, 255); border-radius: 16px; padding: 50px 30px; box-shadow: rgba(0, 0, 0, 0.15) 0px 10px 40px; transition: 0.3s; position: relative; }
[data-section-id="photo_upload_section"] .photo-upload-box:hover { transform: translateY(-5px); box-shadow: rgba(0, 0, 0, 0.25) 0px 15px 50px; }
[data-section-id="photo_upload_section"] .photo-input { display: none; }
[data-section-id="photo_upload_section"] .photo-label { display: flex; flex-direction: column; align-items: center; justify-content: center; cursor: pointer; min-height: 250px; border: 3px dashed rgb(102, 126, 234); border-radius: 12px; background: rgb(248, 249, 255); transition: 0.3s; padding: 30px; }
[data-section-id="photo_upload_section"] .photo-label:hover { border-color: rgb(118, 75, 162); background: rgb(238, 240, 255); }
[data-section-id="photo_upload_section"] .upload-icon { width: 80px; height: 80px; margin-bottom: 20px; opacity: 0.8; transition: opacity 0.3s; }
[data-section-id="photo_upload_section"] .photo-label:hover .upload-icon { opacity: 1; }
[data-section-id="photo_upload_section"] .upload-text { font-size: 1.2rem; font-weight: 600; color: rgb(51, 51, 51); margin-bottom: 10px; }
[data-section-id="photo_upload_section"] .upload-formats { font-size: 0.9rem; color: rgb(102, 102, 102); font-weight: 400; }
[data-section-id="photo_upload_section"] .photo-preview { display: none; flex-direction: column; align-items: center; gap: 20px; min-height: 250px; }
[data-section-id="photo_upload_section"] .preview-image { max-width: 100%; max-height: 400px; border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 15px; }
[data-section-id="photo_upload_section"] .remove-photo-btn { background: rgb(220, 53, 69); color: rgb(255, 255, 255); border: none; padding: 12px 30px; border-radius: 8px; font-size: 1rem; font-weight: 600; cursor: pointer; transition: 0.3s; box-shadow: rgba(220, 53, 69, 0.3) 0px 4px 10px; }
[data-section-id="photo_upload_section"] .remove-photo-btn:hover { background: rgb(200, 35, 51); transform: translateY(-2px); box-shadow: rgba(220, 53, 69, 0.4) 0px 6px 15px; }
[data-section-id="photo_upload_section"] .submit-photo-btn { background: rgb(40, 167, 69); color: rgb(255, 255, 255); border: none; padding: 16px 50px; border-radius: 10px; font-size: 1.2rem; font-weight: 700; cursor: pointer; transition: 0.3s; box-shadow: rgba(40, 167, 69, 0.3) 0px 6px 20px; }
[data-section-id="photo_upload_section"] .submit-photo-btn:hover:not(:disabled) { background: rgb(33, 136, 56); transform: translateY(-3px); box-shadow: rgba(40, 167, 69, 0.4) 0px 8px 25px; }
[data-section-id="photo_upload_section"] .submit-photo-btn:disabled { background: rgb(204, 204, 204); cursor: not-allowed; box-shadow: none; }
@media (max-width: 768px) {
  [data-section-id="photo_upload_section"] { padding: 60px 15px; }
  [data-section-id="photo_upload_section"] h2 { font-size: 2rem; }
  [data-section-id="photo_upload_section"] .photo-upload-subtitle { font-size: 1rem; }
  [data-section-id="photo_upload_section"] .photo-upload-box { padding: 30px 20px; }
  [data-section-id="photo_upload_section"] .photo-label { min-height: 200px; padding: 20px; }
  [data-section-id="photo_upload_section"] .upload-text { font-size: 1rem; }
  [data-section-id="photo_upload_section"] .submit-photo-btn { padding: 14px 40px; font-size: 1.1rem; }
}
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }

/* Page: About Paul */
:root { --color-primary: #8B7355; --color-secondary: #A0785A; --color-accent: #C9B591; --color-gold: #D4A574; --color-bg-light: #F5F1E8; --color-white: #FFFFFF; --color-dark: #2c2c2c; --color-gray: #4a4a4a; }
* { margin: 0px; padding: 0px; box-sizing: border-box; }
body { font-family: Inter, sans-serif; color: var(--color-dark); line-height: 1.6; overflow-x: hidden; }
.about-paul-page { width: 100%; overflow-x: hidden; }
.about-page-header { background: var(--color-primary); padding: 80px 20px 60px; text-align: center; }
.about-page-header-content { max-width: 900px; margin: 0px auto; }
.about-page-main-heading { font-family: "Playfair Display", serif; font-size: 3.5rem; font-weight: 700; color: var(--color-white); margin-bottom: 20px; letter-spacing: -1px; }
.about-page-subheading { font-size: 1.4rem; color: var(--color-accent); font-weight: 300; margin-bottom: 35px; }
.about-page-separator { width: 120px; height: 4px; background: var(--color-secondary); margin: 0px auto; }
.about-hero-intro { background: var(--color-bg-light); padding: 80px 20px; }
.about-hero-content { max-width: 1000px; margin: 0px auto; text-align: center; }
.about-hero-image-wrapper { display: inline-block; margin-bottom: 25px; }
.about-hero-main-image { width: 100%; max-width: 800px; height: auto; border: 3px solid var(--color-secondary); border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.15) 0px 10px 30px; transition: transform 0.4s, box-shadow 0.4s; }
.about-hero-main-image:hover { transform: translateY(-5px); box-shadow: rgba(0, 0, 0, 0.2) 0px 15px 40px; }
.about-hero-caption { font-size: 1.1rem; color: var(--color-primary); font-style: italic; margin-top: 20px; font-weight: 500; }
.about-hero-spacer { height: 40px; }
.about-story-section { background: var(--color-white); padding: 90px 20px; }
.about-story-content { max-width: 1200px; margin: 0px auto; }
.about-story-heading { font-family: "Playfair Display", serif; font-size: 2.8rem; font-weight: 700; color: var(--color-primary); text-align: center; margin-bottom: 60px; }
.about-story-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start; }
.about-story-left { padding-right: 20px; }
.about-story-subheading { font-size: 1.6rem; font-weight: 600; color: var(--color-secondary); margin-bottom: 18px; margin-top: 30px; }
.about-story-subheading:first-child { margin-top: 0px; }
.about-story-text { font-size: 1.05rem; color: var(--color-gray); line-height: 1.8; margin-bottom: 25px; }
.about-story-right { display: flex; flex-direction: column; gap: 30px; }
.about-story-portrait { width: 100%; height: auto; border: 3px solid var(--color-secondary); border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.12) 0px 8px 25px; }
.about-info-box { background: var(--color-bg-light); padding: 35px; border-radius: 10px; border-left: 5px solid var(--color-primary); box-shadow: rgba(0, 0, 0, 0.08) 0px 5px 20px; }
.about-info-name { font-family: "Playfair Display", serif; font-size: 1.8rem; font-weight: 700; color: var(--color-primary); margin-bottom: 20px; }
.about-info-item { font-size: 1.05rem; color: var(--color-gray); margin-bottom: 12px; padding-left: 10px; border-left: 2px solid var(--color-accent); }
.about-separator-line { width: 100%; max-width: 1200px; height: 4px; background: var(--color-accent); margin: 80px auto; }
.about-building-section { background: var(--color-bg-light); padding: 90px 20px; }
.about-building-content { max-width: 1200px; margin: 0px auto; }
.about-building-heading { font-family: "Playfair Display", serif; font-size: 2.8rem; font-weight: 700; color: var(--color-primary); text-align: center; margin-bottom: 60px; }
.about-timeline { display: flex; flex-direction: column; gap: 40px; }
.about-timeline-box { padding: 40px; border-radius: 12px; transition: transform 0.3s, box-shadow 0.3s; }
.about-timeline-box:hover { transform: translateX(10px); box-shadow: rgba(0, 0, 0, 0.15) 0px 10px 30px; }
.about-timeline-dark { background: var(--color-secondary); color: var(--color-white); }
.about-timeline-light { background: var(--color-white); border: 2px solid var(--color-secondary); }
.about-timeline-heading { font-size: 1.8rem; font-weight: 700; margin-bottom: 18px; }
.about-timeline-dark .about-timeline-heading { color: var(--color-white); }
.about-timeline-light .about-timeline-heading { color: var(--color-primary); }
.about-timeline-text { font-size: 1.05rem; line-height: 1.8; }
.about-timeline-dark .about-timeline-text { color: var(--color-white); }
.about-timeline-light .about-timeline-text { color: var(--color-gray); }
.about-spacer { height: 40px; }
.about-approach-section { background: var(--color-white); padding: 90px 20px; }
.about-approach-content { max-width: 1200px; margin: 0px auto; }
.about-approach-heading { font-family: "Playfair Display", serif; font-size: 2.8rem; font-weight: 700; color: var(--color-primary); text-align: center; margin-bottom: 60px; }
.about-approach-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start; }
.about-approach-images { display: flex; flex-direction: column; gap: 30px; }
.about-approach-image { width: 100%; height: auto; border: 2px solid var(--color-accent); border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.12) 0px 8px 25px; transition: transform 0.3s; }
.about-approach-image:hover { transform: scale(1.02); }
.about-approach-text-content { display: flex; flex-direction: column; gap: 35px; }
.about-approach-text-block .about-story-subheading { margin-top: 0px; }
.about-specialization-section { background: var(--color-primary); padding: 90px 20px; }
.about-specialization-content { max-width: 1200px; margin: 0px auto; }
.about-specialization-heading { font-family: "Playfair Display", serif; font-size: 2.8rem; font-weight: 700; color: var(--color-white); text-align: center; margin-bottom: 20px; }
.about-specialization-subheading { font-size: 1.2rem; color: var(--color-accent); text-align: center; margin-bottom: 50px; max-width: 800px; margin-left: auto; margin-right: auto; }
.about-specialization-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 35px; }
.about-specialization-card { background: var(--color-secondary); padding: 45px 35px; border-radius: 12px; text-align: center; transition: transform 0.3s, box-shadow 0.3s; }
.about-specialization-card:hover { transform: translateY(-8px); box-shadow: rgba(0, 0, 0, 0.25) 0px 12px 35px; }
.about-specialization-icon { width: 80px; height: 80px; background: var(--color-gold); border-radius: 50%; margin: 0px auto 25px; display: flex; align-items: center; justify-content: center; font-size: 2.5rem; color: var(--color-white); }
.about-specialization-card-heading { font-size: 1.6rem; font-weight: 700; color: var(--color-gold); margin-bottom: 18px; }
.about-specialization-card-text { font-size: 1.05rem; color: var(--color-white); line-height: 1.7; }
.about-gallery-section { background: var(--color-bg-light); padding: 90px 20px; }
.about-gallery-content { max-width: 1400px; margin: 0px auto; }
.about-gallery-heading { font-family: "Playfair Display", serif; font-size: 2.8rem; font-weight: 700; color: var(--color-primary); text-align: center; margin-bottom: 20px; }
.about-gallery-subheading { font-size: 1.3rem; color: var(--color-secondary); text-align: center; margin-bottom: 50px; }
.about-gallery-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 30px; }
.about-gallery-item { position: relative; overflow: hidden; border-radius: 10px; box-shadow: rgba(0, 0, 0, 0.12) 0px 8px 25px; transition: transform 0.3s; }
.about-gallery-item:hover { transform: scale(1.03); }
.about-gallery-image { width: 100%; height: 300px; object-fit: cover; border: 2px solid var(--color-accent); border-radius: 10px; }
.about-gallery-caption { position: absolute; bottom: 0px; left: 0px; right: 0px; background: linear-gradient(to top, rgba(0, 0, 0, 0.85), transparent); color: var(--color-white); padding: 20px; font-size: 0.95rem; border-radius: 0px 0px 10px 10px; }
.about-qualities-section { background: var(--color-white); padding: 90px 20px; }
.about-qualities-content { max-width: 1200px; margin: 0px auto; }
.about-qualities-heading { font-family: "Playfair Display", serif; font-size: 2.8rem; font-weight: 700; color: var(--color-primary); text-align: center; margin-bottom: 60px; }
.about-qualities-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 35px; }
.about-quality-box { background: var(--color-bg-light); padding: 40px; border-radius: 10px; border-left: 5px solid var(--color-gold); transition: transform 0.3s, box-shadow 0.3s; }
.about-quality-box:hover { transform: translateX(8px); box-shadow: rgba(0, 0, 0, 0.12) 0px 8px 25px; }
.about-quality-heading { font-size: 1.6rem; font-weight: 700; color: var(--color-secondary); margin-bottom: 15px; }
.about-quality-text { font-size: 1.05rem; color: var(--color-gray); line-height: 1.7; }
.about-cta-section { background: var(--color-secondary); padding: 80px 20px; text-align: center; }
.about-cta-content { max-width: 900px; margin: 0px auto; }
.about-cta-heading { font-family: "Playfair Display", serif; font-size: 3rem; font-weight: 700; color: var(--color-white); margin-bottom: 20px; }
.about-cta-subheading { font-size: 1.3rem; color: var(--color-bg-light); margin-bottom: 40px; }
.about-cta-buttons { display: flex; gap: 25px; justify-content: center; flex-wrap: wrap; margin-bottom: 30px; }
.about-cta-btn { padding: 18px 45px; font-size: 1.1rem; font-weight: 600; border: none; border-radius: 8px; cursor: pointer; transition: 0.3s; text-decoration: none; display: inline-block; }
.about-cta-btn-primary { background: var(--color-gold); color: var(--color-white); }
.about-cta-btn-primary:hover { background: rgb(201, 151, 99); transform: translateY(-3px); box-shadow: rgba(0, 0, 0, 0.2) 0px 8px 20px; }
.about-cta-btn-secondary { background: var(--color-white); color: var(--color-primary); }
.about-cta-btn-secondary:hover { background: rgb(245, 245, 245); transform: translateY(-3px); box-shadow: rgba(0, 0, 0, 0.2) 0px 8px 20px; }
.about-cta-email { font-size: 1.1rem; color: var(--color-accent); }
.about-cta-email a { color: var(--color-accent); text-decoration: none; border-bottom: 1px solid var(--color-accent); transition: color 0.3s; }
.about-cta-email a:hover { color: var(--color-gold); border-bottom-color: var(--color-gold); }
.about-footer { background: var(--color-primary); padding: 50px 20px 30px; color: var(--color-bg-light); }
.about-footer-content { max-width: 1200px; margin: 0px auto 30px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.about-footer-column h3 { font-family: "Playfair Display", serif; font-size: 1.5rem; color: var(--color-white); margin-bottom: 20px; }
.about-footer-column p, .about-footer-column a { font-size: 1rem; color: var(--color-bg-light); margin-bottom: 10px; text-decoration: none; display: block; transition: color 0.3s; }
.about-footer-column a:hover { color: var(--color-gold); }
.about-footer-bottom { text-align: center; padding-top: 30px; border-top: 1px solid var(--color-secondary); color: var(--color-accent); font-size: 0.95rem; }
@media (max-width: 1024px) {
  .about-page-main-heading { font-size: 2.8rem; }
  .about-story-columns, .about-approach-layout { grid-template-columns: 1fr; gap: 40px; }
  .about-specialization-grid { grid-template-columns: repeat(2, 1fr); }
  .about-footer-content { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .about-page-main-heading { font-size: 2.2rem; }
  .about-page-subheading { font-size: 1.1rem; }
  .about-story-heading, .about-building-heading, .about-approach-heading, .about-specialization-heading, .about-gallery-heading, .about-qualities-heading { font-size: 2.2rem; }
  .about-specialization-grid, .about-qualities-grid { grid-template-columns: 1fr; }
  .about-cta-heading { font-size: 2.2rem; }
  .about-cta-buttons { flex-direction: column; align-items: center; }
  .about-cta-btn { width: 100%; max-width: 350px; }
  .about-footer-content { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .about-page-main-heading { font-size: 1.8rem; }
  .about-story-heading, .about-building-heading, .about-approach-heading, .about-specialization-heading, .about-gallery-heading, .about-qualities-heading { font-size: 1.8rem; }
  .about-gallery-grid { grid-template-columns: 1fr; }
  .about-cta-heading { font-size: 1.8rem; }
}

/* Page: Services */
* { margin: 0px; padding: 0px; box-sizing: border-box; }
body { font-family: Inter, sans-serif; line-height: 1.6; color: rgb(51, 51, 51); overflow-x: hidden; }
.services-page-header { background: rgb(139, 115, 85); padding: 80px 20px 60px; text-align: center; position: relative; }
.services-page-header::after { content: ""; position: absolute; bottom: 0px; left: 50%; transform: translateX(-50%); width: 200px; height: 4px; background: rgb(160, 120, 90); }
.services-header-title { font-family: "Playfair Display", serif; font-size: 3.5rem; font-weight: 700; color: rgb(255, 255, 255); margin-bottom: 20px; letter-spacing: 1px; }
.services-header-subtitle { font-size: 1.3rem; color: rgb(201, 181, 145); max-width: 800px; margin: 0px auto; font-weight: 300; }
.services-intro-section { background: rgb(245, 241, 232); padding: 80px 20px; text-align: center; }
.services-intro-container { max-width: 1000px; margin: 0px auto; }
.services-intro-heading { font-family: "Playfair Display", serif; font-size: 2.5rem; color: rgb(139, 115, 85); margin-bottom: 30px; font-weight: 700; }
.services-intro-body { font-size: 1.1rem; color: rgb(74, 74, 74); line-height: 1.8; margin-bottom: 40px; }
.services-highlight-box { background: rgb(255, 255, 255); border: 3px solid rgb(212, 165, 116); padding: 40px; border-radius: 8px; max-width: 700px; margin: 0px auto 40px; box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 15px; }
.services-highlight-text { font-size: 1.2rem; color: rgb(139, 115, 85); font-weight: 600; margin-bottom: 25px; }
.services-quote-btn { background: rgb(212, 165, 116); color: rgb(255, 255, 255); padding: 15px 40px; font-size: 1.1rem; border: none; border-radius: 5px; cursor: pointer; font-weight: 600; transition: 0.3s; box-shadow: rgba(212, 165, 116, 0.3) 0px 4px 10px; }
.services-quote-btn:hover { background: rgb(193, 149, 99); transform: translateY(-2px); box-shadow: rgba(212, 165, 116, 0.4) 0px 6px 15px; }
.services-section-separator { height: 40px; }
.services-lawn-section { background: rgb(255, 255, 255); padding: 80px 20px; }
.services-lawn-container { max-width: 1200px; margin: 0px auto; }
.services-section-heading { font-family: "Playfair Display", serif; font-size: 2.8rem; color: rgb(139, 115, 85); text-align: center; margin-bottom: 15px; font-weight: 700; }
.services-decorative-underline { width: 100px; height: 3px; background: rgb(201, 181, 145); margin: 0px auto 50px; }
.services-two-col-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; margin-top: 40px; }
.services-card { background: rgb(245, 241, 232); padding: 30px; border-radius: 8px; margin-bottom: 20px; transition: 0.3s; }
.services-card:hover { transform: translateY(-5px); box-shadow: rgba(0, 0, 0, 0.1) 0px 8px 20px; }
.services-card-heading { font-size: 1.5rem; color: rgb(160, 120, 90); margin-bottom: 15px; font-weight: 700; }
.services-card-description { color: rgb(74, 74, 74); line-height: 1.7; font-size: 1rem; }
.services-image-container { margin-bottom: 20px; }
.services-featured-image { width: 100%; height: 300px; object-fit: cover; border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 15px; margin-bottom: 20px; }
.services-callout-box { background: rgb(139, 115, 85); color: rgb(255, 255, 255); padding: 30px; border-radius: 8px; text-align: center; }
.services-callout-title { font-size: 1.4rem; font-weight: 700; margin-bottom: 15px; }
.services-callout-text { font-size: 1rem; line-height: 1.6; }
.services-line-separator { height: 4px; background: rgb(201, 181, 145); margin: 60px auto; max-width: 1200px; }
.services-tree-section { background: rgb(245, 241, 232); padding: 80px 20px; }
.services-tree-container { max-width: 1200px; margin: 0px auto; }
.services-banner-callout { background: rgb(160, 120, 90); color: rgb(255, 255, 255); padding: 25px; text-align: center; font-size: 1.3rem; font-weight: 700; border-radius: 8px; margin: 30px 0px 40px; box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 15px; }
.services-safety-box { background: rgb(255, 255, 255); border: 2px solid rgb(160, 120, 90); padding: 25px; border-radius: 8px; text-align: center; margin-top: 20px; }
.services-safety-heading { color: rgb(139, 115, 85); font-size: 1.3rem; font-weight: 700; margin-bottom: 10px; }
.services-safety-text { color: rgb(74, 74, 74); font-size: 1rem; }
.services-tree-card { background: rgb(255, 255, 255); border-left: 5px solid rgb(212, 165, 116); padding: 25px; margin-bottom: 20px; border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.05) 0px 2px 10px; transition: 0.3s; }
.services-tree-card:hover { box-shadow: rgba(0, 0, 0, 0.1) 0px 5px 20px; transform: translateX(5px); }
.services-pricing-note { color: rgb(139, 115, 85); font-weight: 600; margin-top: 15px; font-style: italic; }
.services-roofing-section { background: rgb(255, 255, 255); padding: 80px 20px; }
.services-roofing-container { max-width: 1200px; margin: 0px auto; }
.services-section-subheading { font-size: 1.5rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 40px; font-weight: 600; }
.services-three-col-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-bottom: 40px; }
.services-grid-card { background: rgb(245, 241, 232); padding: 35px; border-radius: 8px; text-align: center; transition: 0.3s; }
.services-grid-card:hover { transform: translateY(-5px); box-shadow: rgba(0, 0, 0, 0.12) 0px 8px 20px; }
.services-icon-placeholder { width: 80px; height: 80px; background: rgb(212, 165, 116); border-radius: 50%; margin: 0px auto 20px; display: flex; align-items: center; justify-content: center; font-size: 2rem; color: rgb(255, 255, 255); }
.services-bullet-list { list-style: none; margin-top: 15px; text-align: left; }
.services-bullet-list li { color: rgb(74, 74, 74); margin-bottom: 8px; padding-left: 25px; position: relative; }
.services-bullet-list li::before { content: "•"; position: absolute; left: 0px; color: rgb(160, 120, 90); font-weight: bold; font-size: 1.2rem; }
.services-eavestrough-subsection { background: rgb(139, 115, 85); padding: 50px; border-radius: 8px; margin-top: 20px; }
.services-eavestrough-heading { color: rgb(255, 255, 255); font-size: 2rem; text-align: center; margin-bottom: 30px; font-weight: 700; }
.services-eavestrough-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.services-eavestrough-service { color: rgb(245, 241, 232); margin-bottom: 25px; }
.services-eavestrough-service strong { font-size: 1.2rem; display: block; margin-bottom: 8px; }
.services-eavestrough-callout { background: rgb(160, 120, 90); padding: 30px; border-radius: 8px; color: rgb(255, 255, 255); }
.services-eavestrough-callout h4 { font-size: 1.3rem; margin-bottom: 15px; }
.services-why-list { list-style: none; margin-top: 15px; }
.services-why-list li { margin-bottom: 10px; padding-left: 20px; position: relative; }
.services-why-list li::before { content: "✓"; position: absolute; left: 0px; font-weight: bold; }
.services-fence-section { background: rgb(245, 241, 232); padding: 80px 20px; }
.services-fence-container { max-width: 1200px; margin: 0px auto; }
.services-fence-card { background: rgb(255, 255, 255); padding: 30px; border-radius: 8px; margin-bottom: 20px; box-shadow: rgba(0, 0, 0, 0.08) 0px 3px 15px; transition: 0.3s; }
.services-fence-card:hover { box-shadow: rgba(0, 0, 0, 0.12) 0px 6px 25px; }
.services-tip-box { background: rgb(255, 255, 255); border: 3px solid rgb(212, 165, 116); padding: 25px; border-radius: 8px; margin-top: 20px; }
.services-tip-heading { color: rgb(139, 115, 85); font-size: 1.2rem; font-weight: 700; margin-bottom: 10px; }
.services-tip-text { color: rgb(74, 74, 74); font-size: 1rem; }
.services-hardscape-section { background: rgb(255, 255, 255); padding: 80px 20px; }
.services-hardscape-container { max-width: 1200px; margin: 0px auto; }
.services-intro-text { text-align: center; font-size: 1.3rem; color: rgb(160, 120, 90); margin-bottom: 40px; font-weight: 600; }
.services-feature-list { list-style: none; margin-top: 15px; }
.services-feature-list li { color: rgb(74, 74, 74); margin-bottom: 10px; padding-left: 25px; position: relative; }
.services-feature-list li::before { content: "•"; position: absolute; left: 0px; color: rgb(212, 165, 116); font-weight: bold; font-size: 1.3rem; }
.services-seasonal-section { background: rgb(160, 120, 90); padding: 80px 20px; }
.services-seasonal-container { max-width: 1200px; margin: 0px auto; }
.services-seasonal-heading { color: rgb(255, 255, 255); text-align: center; font-family: "Playfair Display", serif; font-size: 2.8rem; margin-bottom: 10px; font-weight: 700; }
.services-seasonal-subheading { color: rgb(201, 181, 145); text-align: center; font-size: 1.3rem; margin-bottom: 50px; }
.services-four-col-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 25px; }
.services-seasonal-card { background: rgb(255, 255, 255); padding: 30px; border-radius: 8px; text-align: center; }
.services-seasonal-card-heading { color: rgb(139, 115, 85); font-size: 1.4rem; margin-bottom: 20px; font-weight: 700; }
.services-seasonal-list { list-style: none; text-align: left; }
.services-seasonal-list li { color: rgb(74, 74, 74); margin-bottom: 10px; padding-left: 20px; position: relative; }
.services-seasonal-list li::before { content: "✓"; position: absolute; left: 0px; color: rgb(139, 115, 85); font-weight: bold; }
.services-pricing-section { background: rgb(245, 241, 232); padding: 80px 20px; }
.services-pricing-container { max-width: 1000px; margin: 0px auto; text-align: center; }
.services-pricing-heading { font-family: "Playfair Display", serif; font-size: 2.5rem; color: rgb(139, 115, 85); margin-bottom: 40px; font-weight: 700; }
.services-pricing-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; text-align: left; }
.services-pricing-subheading { color: rgb(160, 120, 90); font-size: 1.5rem; margin-bottom: 20px; font-weight: 700; }
.services-pricing-body { color: rgb(74, 74, 74); line-height: 1.8; font-size: 1rem; }
.services-promise-box { background: rgb(255, 255, 255); border: 3px solid rgb(212, 165, 116); padding: 35px; border-radius: 8px; }
.services-promise-heading { color: rgb(139, 115, 85); font-size: 1.5rem; margin-bottom: 20px; font-weight: 700; text-align: center; }
.services-checkmark-list { list-style: none; }
.services-checkmark-list li { color: rgb(160, 120, 90); margin-bottom: 12px; font-size: 1.1rem; padding-left: 30px; position: relative; font-weight: 500; }
.services-checkmark-list li::before { content: "✓"; position: absolute; left: 0px; font-weight: bold; font-size: 1.3rem; }
.services-area-section { background: rgb(255, 255, 255); padding: 80px 20px; }
.services-area-container { max-width: 900px; margin: 0px auto; text-align: center; }
.services-area-heading { font-family: "Playfair Display", serif; font-size: 2.5rem; color: rgb(139, 115, 85); margin-bottom: 40px; font-weight: 700; }
.services-map-placeholder { width: 100%; max-width: 600px; height: 400px; background: rgb(245, 241, 232); border-radius: 8px; margin: 0px auto 30px; display: flex; align-items: center; justify-content: center; color: rgb(160, 120, 90); font-size: 1.2rem; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 15px; }
.services-area-text { color: rgb(74, 74, 74); font-size: 1.1rem; line-height: 1.8; margin-bottom: 25px; }
.services-area-callout { color: rgb(160, 120, 90); font-size: 1.2rem; font-weight: 600; font-style: italic; }
.services-cta-section { background: rgb(139, 115, 85); padding: 80px 20px; text-align: center; }
.services-cta-container { max-width: 900px; margin: 0px auto; }
.services-cta-heading { font-family: "Playfair Display", serif; font-size: 3rem; color: rgb(255, 255, 255); margin-bottom: 20px; font-weight: 700; }
.services-cta-subheading { font-size: 1.4rem; color: rgb(201, 181, 145); margin-bottom: 30px; }
.services-cta-summary { color: rgb(245, 241, 232); font-size: 1.1rem; line-height: 1.8; margin-bottom: 40px; }
.services-contact-info { margin-bottom: 40px; }
.services-phone-large { font-size: 3rem; color: rgb(212, 165, 116); font-weight: 700; display: block; margin-bottom: 15px; }
.services-email { font-size: 1.3rem; color: rgb(245, 241, 232); }
.services-button-group { display: flex; gap: 20px; justify-content: center; margin-bottom: 30px; }
.services-cta-btn-primary { background: rgb(212, 165, 116); color: rgb(255, 255, 255); padding: 18px 45px; font-size: 1.2rem; border: none; border-radius: 5px; cursor: pointer; font-weight: 600; transition: 0.3s; box-shadow: rgba(212, 165, 116, 0.4) 0px 4px 15px; }
.services-cta-btn-primary:hover { background: rgb(193, 149, 99); transform: translateY(-3px); box-shadow: rgba(212, 165, 116, 0.5) 0px 6px 20px; }
.services-cta-btn-secondary { background: rgb(255, 255, 255); color: rgb(139, 115, 85); padding: 18px 45px; font-size: 1.2rem; border: none; border-radius: 5px; cursor: pointer; font-weight: 600; transition: 0.3s; box-shadow: rgba(255, 255, 255, 0.3) 0px 4px 15px; }
.services-cta-btn-secondary:hover { background: rgb(245, 241, 232); transform: translateY(-3px); box-shadow: rgba(255, 255, 255, 0.4) 0px 6px 20px; }
.services-additional-text { color: rgb(201, 181, 145); font-size: 1.1rem; font-style: italic; }
.services-footer { background: rgb(139, 115, 85); padding: 50px 20px 30px; }
.services-footer-container { max-width: 1200px; margin: 0px auto; }
.services-footer-content { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; margin-bottom: 30px; }
.services-footer-column h4 { color: rgb(245, 241, 232); font-size: 1.2rem; margin-bottom: 15px; font-weight: 600; }
.services-footer-column ul { list-style: none; }
.services-footer-column ul li { color: rgb(201, 181, 145); margin-bottom: 8px; font-size: 0.95rem; }
.services-footer-column ul li a { color: rgb(201, 181, 145); text-decoration: none; transition: color 0.3s; }
.services-footer-column ul li a:hover { color: rgb(245, 241, 232); }
.services-footer-bottom { border-top: 1px solid rgb(160, 120, 90); padding-top: 20px; text-align: center; color: rgb(201, 181, 145); font-size: 0.9rem; }
@media (max-width: 1024px) {
  .services-two-col-layout, .services-eavestrough-layout, .services-pricing-layout { grid-template-columns: 1fr; }
  .services-three-col-grid { grid-template-columns: 1fr; }
  .services-four-col-grid { grid-template-columns: repeat(2, 1fr); }
  .services-header-title { font-size: 2.5rem; }
  .services-section-heading { font-size: 2.2rem; }
}
@media (max-width: 768px) {
  .services-header-title { font-size: 2rem; }
  .services-header-subtitle { font-size: 1.1rem; }
  .services-intro-heading { font-size: 2rem; }
  .services-section-heading { font-size: 1.8rem; }
  .services-four-col-grid { grid-template-columns: 1fr; }
  .services-button-group { flex-direction: column; }
  .services-phone-large { font-size: 2.2rem; }
  .services-cta-heading { font-size: 2.2rem; }
  .services-footer-content { grid-template-columns: 1fr; }
}

/* Page: Gallery */
* { margin: 0px; padding: 0px; box-sizing: border-box; }
body { font-family: Inter, sans-serif; overflow-x: hidden; }
.gallery-page-header { background-color: rgb(139, 115, 85); padding: 80px 20px 60px; text-align: center; }
.gallery-page-header h1 { font-family: "Playfair Display", serif; font-size: 3rem; font-weight: 700; color: rgb(255, 255, 255); margin-bottom: 20px; letter-spacing: -0.5px; }
.gallery-page-header p { font-size: 1.25rem; color: rgb(201, 181, 145); max-width: 800px; margin: 0px auto 30px; line-height: 1.6; }
.gallery-page-separator { width: 120px; height: 4px; background-color: rgb(160, 120, 90); margin: 0px auto; }
.gallery-intro-section { background-color: rgb(245, 241, 232); padding: 80px 20px; text-align: center; }
.gallery-intro-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); margin-bottom: 30px; }
.gallery-intro-section p { font-size: 1.1rem; color: rgb(51, 51, 51); max-width: 900px; margin: 0px auto 20px; line-height: 1.8; }
.gallery-intro-section .subtext { font-size: 1rem; color: rgb(160, 120, 90); font-style: italic; margin-top: 30px; }
.gallery-whitespace { height: 40px; background-color: transparent; }
.gallery-beforeafter-section { background-color: rgb(255, 255, 255); padding: 80px 20px; }
.gallery-beforeafter-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); text-align: center; margin-bottom: 60px; }
.gallery-comparison-row { max-width: 1200px; margin: 0px auto 60px; display: grid; grid-template-columns: 1fr 1fr; gap: 30px; align-items: center; }
.gallery-comparison-row img { width: 100%; height: 400px; object-fit: cover; border: 3px solid rgb(201, 181, 145); border-radius: 8px; transition: transform 0.3s, box-shadow 0.3s; }
.gallery-comparison-row img:hover { transform: scale(1.02); box-shadow: rgba(139, 115, 85, 0.2) 0px 8px 24px; }
.gallery-comparison-caption { text-align: center; color: rgb(160, 120, 90); font-size: 1rem; margin-top: 15px; grid-column: 1 / -1; font-weight: 500; }
.gallery-section-separator { width: 100%; height: 4px; background-color: rgb(201, 181, 145); margin: 40px 0px; }
.gallery-lawn-section { background-color: rgb(245, 241, 232); padding: 80px 20px; }
.gallery-lawn-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); text-align: center; margin-bottom: 20px; }
.gallery-lawn-section h3 { font-size: 1.5rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 50px; font-weight: 500; }
.gallery-masonry-grid { max-width: 1200px; margin: 0px auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
.gallery-masonry-item { position: relative; overflow: hidden; border-radius: 8px; border: 2px solid rgb(160, 120, 90); transition: transform 0.3s; }
.gallery-masonry-item img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.4s; }
.gallery-masonry-item:hover img { transform: scale(1.1); }
.gallery-masonry-overlay { position: absolute; bottom: 0px; left: 0px; right: 0px; background: rgba(139, 115, 85, 0.9); color: rgb(255, 255, 255); padding: 20px; transform: translateY(100%); transition: transform 0.3s; text-align: center; font-size: 1rem; font-weight: 500; }
.gallery-masonry-item:hover .gallery-masonry-overlay { transform: translateY(0px); }
.gallery-tree-section { background-color: rgb(255, 255, 255); padding: 80px 20px; }
.gallery-tree-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); text-align: center; margin-bottom: 20px; }
.gallery-tree-section h3 { font-size: 1.5rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 30px; font-weight: 500; }
.gallery-callout-banner { background-color: rgb(160, 120, 90); color: rgb(255, 255, 255); padding: 25px 30px; text-align: center; font-size: 1.2rem; font-weight: 600; max-width: 900px; margin: 0px auto 50px; border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 12px; }
.gallery-tree-grid { max-width: 1200px; margin: 0px auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; }
.gallery-tree-item { position: relative; }
.gallery-tree-item img { width: 100%; height: 350px; object-fit: cover; border: 3px solid rgb(201, 181, 145); border-radius: 8px; transition: transform 0.3s; }
.gallery-tree-item:hover img { transform: scale(1.02); }
.gallery-tree-caption { color: rgb(51, 51, 51); font-size: 1rem; margin-top: 15px; text-align: center; font-weight: 500; }
.gallery-hardscaping-section { background-color: rgb(245, 241, 232); padding: 80px 20px; }
.gallery-hardscaping-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); text-align: center; margin-bottom: 20px; }
.gallery-hardscaping-section h3 { font-size: 1.5rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 50px; font-weight: 500; }
.gallery-hardscaping-grid { max-width: 1200px; margin: 0px auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
.gallery-hardscaping-item { position: relative; overflow: hidden; border-radius: 8px; border: 2px solid rgb(160, 120, 90); }
.gallery-hardscaping-item img { width: 100%; height: 280px; object-fit: cover; display: block; transition: transform 0.4s; }
.gallery-hardscaping-item:hover img { transform: scale(1.1); }
.gallery-hardscaping-item .gallery-masonry-overlay { position: absolute; bottom: 0px; left: 0px; right: 0px; background: rgba(139, 115, 85, 0.9); color: rgb(255, 255, 255); padding: 20px; transform: translateY(100%); transition: transform 0.3s; text-align: center; font-size: 1rem; font-weight: 500; }
.gallery-hardscaping-item:hover .gallery-masonry-overlay { transform: translateY(0px); }
.gallery-roofing-section { background-color: rgb(255, 255, 255); padding: 80px 20px; }
.gallery-roofing-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); text-align: center; margin-bottom: 20px; }
.gallery-roofing-section h3 { font-size: 1.5rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 50px; font-weight: 500; }
.gallery-roofing-grid { max-width: 1200px; margin: 0px auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.gallery-roofing-item img { width: 100%; height: 300px; object-fit: cover; border: 3px solid rgb(201, 181, 145); border-radius: 8px; transition: transform 0.3s; }
.gallery-roofing-item:hover img { transform: scale(1.02); }
.gallery-roofing-caption { color: rgb(51, 51, 51); font-size: 1rem; margin-top: 15px; text-align: center; font-weight: 500; }
.gallery-fence-section { background-color: rgb(245, 241, 232); padding: 80px 20px; }
.gallery-fence-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); text-align: center; margin-bottom: 20px; }
.gallery-fence-section h3 { font-size: 1.5rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 50px; font-weight: 500; }
.gallery-fence-comparison { max-width: 1200px; margin: 0px auto 50px; display: grid; grid-template-columns: 1fr 1fr; gap: 30px; align-items: center; }
.gallery-fence-comparison img { width: 100%; height: 350px; object-fit: cover; border: 3px solid rgb(160, 120, 90); border-radius: 8px; transition: transform 0.3s; }
.gallery-fence-comparison:hover img { transform: scale(1.02); }
.gallery-fence-caption { text-align: center; color: rgb(51, 51, 51); font-size: 1rem; margin-top: 15px; grid-column: 1 / -1; font-weight: 500; }
.gallery-fence-grid { max-width: 1200px; margin: 60px auto 0px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }
.gallery-fence-grid img { width: 100%; height: 280px; object-fit: cover; border: 2px solid rgb(160, 120, 90); border-radius: 8px; transition: transform 0.3s; }
.gallery-fence-grid img:hover { transform: scale(1.05); }
.gallery-paul-section { background-color: rgb(139, 115, 85); padding: 80px 20px; }
.gallery-paul-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(255, 255, 255); text-align: center; margin-bottom: 20px; }
.gallery-paul-section h3 { font-size: 1.5rem; color: rgb(201, 181, 145); text-align: center; margin-bottom: 50px; font-weight: 500; }
.gallery-paul-grid { max-width: 1200px; margin: 0px auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.gallery-paul-item { position: relative; }
.gallery-paul-item img { width: 100%; height: 350px; object-fit: cover; border: 3px solid rgb(160, 120, 90); border-radius: 8px; transition: transform 0.3s; }
.gallery-paul-item:hover img { transform: scale(1.02); }
.gallery-paul-caption { color: rgb(245, 241, 232); font-size: 1rem; margin-top: 15px; text-align: center; font-weight: 500; }
.gallery-homes-section { background-color: rgb(245, 241, 232); padding: 80px 20px; }
.gallery-homes-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); text-align: center; margin-bottom: 20px; }
.gallery-homes-section h3 { font-size: 1.5rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 50px; font-weight: 500; }
.gallery-homes-grid { max-width: 1200px; margin: 0px auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; }
.gallery-homes-item img { width: 100%; height: 400px; object-fit: cover; border: 3px solid rgb(201, 181, 145); border-radius: 8px; transition: transform 0.3s; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 16px; }
.gallery-homes-item:hover img { transform: scale(1.02); box-shadow: rgba(139, 115, 85, 0.25) 0px 8px 24px; }
.gallery-homes-caption { color: rgb(51, 51, 51); font-size: 1rem; margin-top: 15px; text-align: center; line-height: 1.6; font-weight: 500; }
.gallery-seasonal-section { background-color: rgb(255, 255, 255); padding: 80px 20px; }
.gallery-seasonal-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); text-align: center; margin-bottom: 20px; }
.gallery-seasonal-section h3 { font-size: 1.5rem; color: rgb(160, 120, 90); text-align: center; margin-bottom: 50px; font-weight: 500; }
.gallery-seasonal-grid { max-width: 1200px; margin: 0px auto; display: grid; grid-template-columns: repeat(4, 1fr); gap: 25px; }
.gallery-seasonal-column { display: flex; flex-direction: column; gap: 20px; }
.gallery-seasonal-header { background-color: rgb(201, 181, 145); color: rgb(255, 255, 255); padding: 15px; text-align: center; font-size: 1.2rem; font-weight: 600; border-radius: 8px 8px 0px 0px; }
.gallery-seasonal-column img { width: 100%; height: 220px; object-fit: cover; border: 2px solid rgb(201, 181, 145); border-radius: 8px; transition: transform 0.3s; }
.gallery-seasonal-column img:hover { transform: scale(1.05); }
.gallery-testimonial-section { background-color: rgb(160, 120, 90); padding: 80px 20px; }
.gallery-testimonial-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(255, 255, 255); text-align: center; margin-bottom: 50px; }
.gallery-testimonial-grid { max-width: 1200px; margin: 0px auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.gallery-testimonial-card { background-color: rgb(255, 255, 255); padding: 30px; border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 16px; transition: transform 0.3s; }
.gallery-testimonial-card:hover { transform: translateY(-5px); box-shadow: rgba(0, 0, 0, 0.2) 0px 8px 24px; }
.gallery-testimonial-card img { width: 100%; height: 200px; object-fit: cover; border-radius: 8px; margin-bottom: 20px; }
.gallery-testimonial-quote { color: rgb(51, 51, 51); font-size: 1.05rem; line-height: 1.7; margin-bottom: 15px; font-style: italic; }
.gallery-testimonial-attribution { color: rgb(139, 115, 85); font-size: 0.95rem; font-weight: 600; text-align: right; }
.gallery-cta-section { background-color: rgb(245, 241, 232); padding: 80px 20px; text-align: center; }
.gallery-cta-section h2 { font-family: "Playfair Display", serif; font-size: 2.5rem; font-weight: 600; color: rgb(139, 115, 85); margin-bottom: 20px; }
.gallery-cta-section h3 { font-size: 1.5rem; color: rgb(160, 120, 90); margin-bottom: 30px; font-weight: 500; }
.gallery-cta-section p { font-size: 1.1rem; color: rgb(51, 51, 51); max-width: 800px; margin: 0px auto 40px; line-height: 1.8; }
.gallery-contact-box { background-color: rgb(255, 255, 255); border: 3px solid rgb(212, 165, 116); padding: 40px; max-width: 600px; margin: 0px auto 40px; border-radius: 12px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 16px; }
.gallery-contact-phone { font-size: 2.5rem; color: rgb(139, 115, 85); font-weight: 700; margin-bottom: 15px; letter-spacing: 1px; }
.gallery-contact-email { font-size: 1.2rem; color: rgb(160, 120, 90); font-weight: 500; }
.gallery-cta-buttons { display: flex; justify-content: center; gap: 20px; margin-bottom: 30px; flex-wrap: wrap; }
.gallery-cta-btn { padding: 16px 40px; font-size: 1.1rem; font-weight: 600; border: none; border-radius: 8px; cursor: pointer; transition: 0.3s; text-decoration: none; display: inline-block; box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 12px; }
.gallery-cta-btn-primary { background-color: rgb(212, 165, 116); color: rgb(255, 255, 255); }
.gallery-cta-btn-primary:hover { background-color: rgb(201, 149, 95); transform: translateY(-2px); box-shadow: rgba(0, 0, 0, 0.2) 0px 6px 16px; }
.gallery-cta-btn-secondary { background-color: rgb(139, 115, 85); color: rgb(255, 255, 255); }
.gallery-cta-btn-secondary:hover { background-color: rgb(115, 96, 74); transform: translateY(-2px); box-shadow: rgba(0, 0, 0, 0.2) 0px 6px 16px; }
.gallery-cta-final-text { color: rgb(160, 120, 90); font-size: 1.1rem; font-weight: 600; margin-top: 20px; }
.gallery-footer { background-color: rgb(139, 115, 85); padding: 60px 20px 30px; color: rgb(245, 241, 232); }
.gallery-footer-content { max-width: 1200px; margin: 0px auto 40px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.gallery-footer-column h4 { color: rgb(201, 181, 145); font-size: 1.3rem; margin-bottom: 20px; font-weight: 600; }
.gallery-footer-column ul { list-style: none; }
.gallery-footer-column li { margin-bottom: 12px; }
.gallery-footer-column a { color: rgb(245, 241, 232); text-decoration: none; transition: color 0.3s; font-size: 1rem; }
.gallery-footer-column a:hover { color: rgb(201, 181, 145); }
.gallery-footer-bottom { text-align: center; padding-top: 30px; border-top: 1px solid rgb(160, 120, 90); color: rgb(201, 181, 145); font-size: 0.95rem; }
@media (max-width: 1024px) {
  .gallery-page-header h1 { font-size: 2.5rem; }
  .gallery-comparison-row, .gallery-tree-grid, .gallery-fence-comparison, .gallery-homes-grid { grid-template-columns: 1fr; }
  .gallery-masonry-grid, .gallery-hardscaping-grid, .gallery-roofing-grid, .gallery-fence-grid, .gallery-paul-grid { grid-template-columns: repeat(2, 1fr); }
  .gallery-seasonal-grid { grid-template-columns: repeat(2, 1fr); }
  .gallery-testimonial-grid { grid-template-columns: 1fr; }
  .gallery-footer-content { grid-template-columns: 1fr; text-align: center; }
}
@media (max-width: 768px) {
  .gallery-page-header h1 { font-size: 2rem; }
  .gallery-page-header p { font-size: 1.1rem; }
  .gallery-intro-section h2, .gallery-beforeafter-section h2, .gallery-lawn-section h2, .gallery-tree-section h2, .gallery-hardscaping-section h2, .gallery-roofing-section h2, .gallery-fence-section h2, .gallery-paul-section h2, .gallery-homes-section h2, .gallery-seasonal-section h2, .gallery-testimonial-section h2, .gallery-cta-section h2 { font-size: 2rem; }
  .gallery-masonry-grid, .gallery-hardscaping-grid, .gallery-roofing-grid, .gallery-fence-grid, .gallery-paul-grid, .gallery-seasonal-grid { grid-template-columns: 1fr; }
  .gallery-cta-buttons { flex-direction: column; align-items: center; }
  .gallery-cta-btn { width: 100%; max-width: 350px; }
  .gallery-contact-phone { font-size: 2rem; }
}

/* Page: Free Quote */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');*{margin:0;padding:0;box-sizing:border-box;}body{font-family:'Inter',sans-serif;line-height:1.6;color:#333;overflow-x:hidden;}.fq-page-header{background:#8B7355;padding:80px 20px;text-align:center;}.fq-page-header h1{font-family:'Playfair Display',serif;font-size:3rem;color:#fff;margin-bottom:15px;font-weight:700;}.fq-page-header p{font-size:1.25rem;color:#C9B591;margin-bottom:30px;max-width:800px;margin-left:auto;margin-right:auto;}.fq-separator{width:120px;height:4px;background:#A0785A;margin:0 auto;}.fq-intro-section{background:#F5F1E8;padding:80px 20px;}.fq-intro-container{max-width:1200px;margin:0 auto;text-align:center;}.fq-intro-container h2{font-family:'Playfair Display',serif;font-size:2.5rem;color:#8B7355;margin-bottom:25px;font-weight:700;}.fq-intro-container>p{font-size:1.1rem;color:#4a4a4a;line-height:1.8;max-width:900px;margin:0 auto 50px;}.fq-highlight-box{background:#fff;border:3px solid #D4A574;padding:40px;border-radius:10px;max-width:800px;margin:0 auto;box-shadow:0 4px 15px rgba(0,0,0,0.1);text-align:left;}.fq-highlight-box h3{font-family:'Playfair Display',serif;font-size:1.8rem;color:#A0785A;margin-bottom:25px;text-align:center;}.fq-highlight-box ul{list-style:none;}.fq-highlight-box ul li{font-size:1.05rem;color:#4a4a4a;margin-bottom:15px;padding-left:30px;position:relative;}.fq-highlight-box ul li:before{content:'•';position:absolute;left:0;color:#D4A574;font-size:1.5rem;line-height:1;}.fq-white-space{height:40px;}.fq-contact-methods{background:#fff;padding:80px 20px;}.fq-contact-methods-container{max-width:1200px;margin:0 auto;}.fq-contact-methods h2{font-family:'Playfair Display',serif;font-size:2.5rem;color:#8B7355;margin-bottom:50px;text-align:center;font-weight:700;}.fq-methods-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-bottom:50px;}.fq-method-card{background:#F5F1E8;padding:40px 30px;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,0.1);text-align:center;transition:transform 0.3s ease,box-shadow 0.3s ease;}.fq-method-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,0.15);}.fq-method-icon{font-size:3.5rem;color:#A0785A;margin-bottom:20px;}.fq-method-card h3{font-family:'Playfair Display',serif;font-size:1.6rem;color:#A0785A;margin-bottom:20px;}.fq-method-card .fq-contact-detail{font-size:1.4rem;color:#8B7355;font-weight:600;margin-bottom:15px;word-break:break-word;}.fq-method-card p{font-size:1rem;color:#4a4a4a;line-height:1.7;margin-bottom:25px;}.fq-method-card .fq-arrow{font-size:2.5rem;color:#D4A574;margin:15px 0;}.fq-method-card .fq-fast-response{font-size:0.95rem;color:#A0785A;font-weight:600;font-style:italic;}.fq-method-btn{display:inline-block;padding:14px 35px;border-radius:50px;font-size:1.05rem;font-weight:600;text-decoration:none;color:#fff;transition:all 0.3s ease;cursor:pointer;border:none;}.fq-method-btn.btn-primary{background:#D4A574;}.fq-method-btn.btn-primary:hover{background:#C9B591;transform:scale(1.05);}.fq-method-btn.btn-secondary{background:#A0785A;}.fq-method-btn.btn-secondary:hover{background:#8B7355;transform:scale(1.05);}.fq-method-btn.btn-tertiary{background:#8B7355;}.fq-method-btn.btn-tertiary:hover{background:#A0785A;transform:scale(1.05);}.fq-line-separator{width:100%;height:4px;background:#C9B591;margin:60px 0;}.fq-form-section{background:#F5F1E8;padding:80px 20px;}.fq-form-container{max-width:900px;margin:0 auto;}.fq-form-section h2{font-family:'Playfair Display',serif;font-size:2.5rem;color:#8B7355;margin-bottom:15px;text-align:center;font-weight:700;}.fq-form-section .fq-form-subtitle{font-size:1.2rem;color:#A0785A;text-align:center;margin-bottom:40px;}.fq-form-wrapper{background:#fff;border:2px solid #C9B591;border-radius:10px;padding:50px;box-shadow:0 6px 20px rgba(0,0,0,0.1);}.fq-form-group{margin-bottom:30px;}.fq-form-group label{display:block;font-size:1.05rem;color:#8B7355;font-weight:600;margin-bottom:8px;}.fq-form-group input[type=text],.fq-form-group input[type=email],.fq-form-group input[type=tel],.fq-form-group textarea,.fq-form-group select{width:100%;padding:12px 15px;border:1px solid #C9B591;border-radius:5px;font-size:1rem;font-family:'Inter',sans-serif;transition:border-color 0.3s ease;}.fq-form-group input[type=text]:focus,.fq-form-group input[type=email]:focus,.fq-form-group input[type=tel]:focus,.fq-form-group textarea:focus,.fq-form-group select:focus{outline:none;border-color:#A0785A;}.fq-form-group textarea{resize:vertical;min-height:120px;}.fq-helper-text{font-size:0.9rem;color:#A0785A;margin-top:5px;font-style:italic;}.fq-checkbox-group,.fq-radio-group{display:flex;flex-direction:column;gap:12px;}.fq-checkbox-item,.fq-radio-item{display:flex;align-items:center;gap:10px;}.fq-checkbox-item input[type=checkbox],.fq-radio-item input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:#A0785A;}.fq-checkbox-item label,.fq-radio-item label{font-size:1rem;color:#4a4a4a;font-weight:400;cursor:pointer;}.fq-privacy-note{font-size:0.9rem;color:#A0785A;margin-top:30px;line-height:1.6;padding:15px;background:#F5F1E8;border-radius:5px;}.fq-submit-btn{width:100%;padding:18px;background:#D4A574;color:#fff;font-size:1.2rem;font-weight:700;border:none;border-radius:50px;cursor:pointer;transition:all 0.3s ease;margin-top:25px;}.fq-submit-btn:hover{background:#C9B591;transform:scale(1.02);}.fq-required-note{text-align:right;font-size:0.9rem;color:#A0785A;margin-top:15px;font-style:italic;}.fq-what-happens{background:#fff;padding:80px 20px;}.fq-what-happens-container{max-width:1200px;margin:0 auto;}.fq-what-happens h2{font-family:'Playfair Display',serif;font-size:2.5rem;color:#8B7355;margin-bottom:50px;text-align:center;font-weight:700;}.fq-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-bottom:50px;}.fq-timeline-step{text-align:center;padding:30px 20px;}.fq-timeline-icon{width:80px;height:80px;background:#A0785A;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin:0 auto 20px;}.fq-timeline-step h3{font-family:'Playfair Display',serif;font-size:1.4rem;color:#A0785A;margin-bottom:15px;}.fq-timeline-step p{font-size:1rem;color:#4a4a4a;line-height:1.7;}.fq-callout-box{background:#F5F1E8;border-left:5px solid #D4A574;padding:25px 30px;border-radius:5px;max-width:900px;margin:0 auto;}.fq-callout-box p{font-size:1.05rem;color:#8B7355;line-height:1.8;}.fq-pricing-section{background:#F5F1E8;padding:80px 20px;}.fq-pricing-container{max-width:1200px;margin:0 auto;}.fq-pricing-section h2{font-family:'Playfair Display',serif;font-size:2.5rem;color:#8B7355;margin-bottom:50px;text-align:center;font-weight:700;}.fq-pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:40px;}.fq-pricing-column h3{font-family:'Playfair Display',serif;font-size:1.8rem;color:#A0785A;margin-bottom:25px;}.fq-pricing-column p{font-size:1.05rem;color:#4a4a4a;line-height:1.8;margin-bottom:25px;}.fq-comparison-box{background:#fff;border:3px solid #D4A574;padding:30px;border-radius:10px;margin-top:25px;}.fq-comparison-box h4{font-family:'Playfair Display',serif;font-size:1.4rem;color:#8B7355;margin-bottom:20px;}.fq-comparison-box p{font-size:1rem;color:#4a4a4a;margin-bottom:10px;}.fq-comparison-box .fq-highlight{font-weight:700;color:#A0785A;font-size:1.1rem;margin-top:15px;}.fq-checklist{list-style:none;}.fq-checklist li{font-size:1.05rem;color:#4a4a4a;margin-bottom:15px;padding-left:35px;position:relative;}.fq-checklist li:before{content:'✓';position:absolute;left:0;color:#A0785A;font-size:1.4rem;font-weight:700;}.fq-note-box{background:#fff;padding:25px;border-radius:8px;margin-top:25px;}.fq-note-box p{font-size:1.05rem;color:#8B7355;line-height:1.7;}.fq-faq-section{background:#fff;padding:80px 20px;}.fq-faq-container{max-width:1000px;margin:0 auto;}.fq-faq-section h2{font-family:'Playfair Display',serif;font-size:2.5rem;color:#8B7355;margin-bottom:50px;text-align:center;font-weight:700;}.fq-faq-item{background:#F5F1E8;border-left:4px solid #C9B591;padding:25px 30px;margin-bottom:20px;border-radius:5px;cursor:pointer;transition:all 0.3s ease;}.fq-faq-item:hover{background:#f0ebe0;border-left-color:#A0785A;}.fq-faq-question{font-size:1.2rem;color:#A0785A;font-weight:600;margin-bottom:15px;display:flex;justify-content:space-between;align-items:center;}.fq-faq-answer{font-size:1.05rem;color:#4a4a4a;line-height:1.8;display:none;}.fq-faq-item.active .fq-faq-answer{display:block;}.fq-faq-toggle{font-size:1.5rem;color:#A0785A;transition:transform 0.3s ease;}.fq-faq-item.active .fq-faq-toggle{transform:rotate(45deg);}.fq-trust-section{background:#A0785A;padding:80px 20px;text-align:center;color:#fff;}.fq-trust-container{max-width:1000px;margin:0 auto;}.fq-trust-section h2{font-family:'Playfair Display',serif;font-size:2.5rem;color:#fff;margin-bottom:15px;font-weight:700;}.fq-trust-section .fq-trust-subtitle{font-size:1.3rem;color:#C9B591;margin-bottom:25px;}.fq-trust-section>p{font-size:1.1rem;color:#F5F1E8;line-height:1.8;max-width:900px;margin:0 auto 50px;}.fq-testimonials-mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;margin-top:40px;}.fq-testimonial-card{background:#fff;padding:25px;border-radius:10px;box-shadow:0 4px 15px rgba(0,0,0,0.2);}.fq-testimonial-card p{font-size:1rem;color:#4a4a4a;font-style:italic;margin-bottom:10px;}.fq-testimonial-card span{font-size:0.9rem;color:#8B7355;font-weight:600;}.fq-final-cta{background:#F5F1E8;padding:80px 20px;}.fq-final-cta-container{max-width:1200px;margin:0 auto;text-align:center;}.fq-final-cta h2{font-family:'Playfair Display',serif;font-size:2.8rem;color:#8B7355;margin-bottom:50px;font-weight:700;}.fq-cta-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-bottom:40px;}.fq-cta-card{background:#fff;padding:40px 30px;border-radius:10px;box-shadow:0 4px 15px rgba(0,0,0,0.1);transition:transform 0.3s ease;}.fq-cta-card:hover{transform:translateY(-5px);}.fq-cta-card .fq-method-icon{font-size:3rem;color:#A0785A;margin-bottom:20px;}.fq-cta-card h3{font-family:'Playfair Display',serif;font-size:1.5rem;color:#A0785A;margin-bottom:15px;}.fq-cta-card .fq-contact-detail{font-size:1.2rem;color:#8B7355;font-weight:600;margin-bottom:15px;word-break:break-word;}.fq-cta-card p{font-size:0.95rem;color:#4a4a4a;margin-bottom:20px;}.fq-final-message{font-size:1.2rem;color:#A0785A;font-weight:600;font-style:italic;}.fq-contact-summary{background:#fff;padding:60px 20px;}.fq-contact-summary-container{max-width:800px;margin:0 auto;background:#fff;border:3px solid #C9B591;border-radius:10px;padding:40px;box-shadow:0 4px 15px rgba(0,0,0,0.1);}.fq-contact-summary h2{font-family:'Playfair Display',serif;font-size:2rem;color:#8B7355;margin-bottom:30px;text-align:center;font-weight:700;}.fq-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px;}.fq-info-item{text-align:center;padding:15px;}.fq-info-item strong{display:block;font-size:0.95rem;color:#A0785A;margin-bottom:8px;text-transform:uppercase;letter-spacing:0.5px;}.fq-info-item span,.fq-info-item a{font-size:1.05rem;color:#8B7355;font-weight:600;text-decoration:none;}.fq-info-item a:hover{color:#A0785A;text-decoration:underline;}.fq-social-proof{text-align:center;font-size:1.05rem;color:#A0785A;font-style:italic;font-weight:600;padding-top:20px;border-top:2px solid #F5F1E8;}.fq-footer{background:#8B7355;padding:40px 20px;color:#F5F1E8;}.fq-footer-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:30px;}.fq-footer-contact{flex:1;min-width:250px;}.fq-footer-contact h3{font-family:'Playfair Display',serif;font-size:1.5rem;color:#fff;margin-bottom:15px;}.fq-footer-contact p{font-size:1rem;color:#C9B591;margin-bottom:8px;}.fq-footer-contact a{color:#C9B591;text-decoration:none;}.fq-footer-contact a:hover{color:#fff;text-decoration:underline;}.fq-footer-copyright{flex:1;min-width:250px;text-align:right;font-size:0.95rem;color:#C9B591;}@media (max-width:768px){.fq-page-header h1{font-size:2rem;}.fq-intro-container h2,.fq-contact-methods h2,.fq-form-section h2,.fq-what-happens h2,.fq-pricing-section h2,.fq-faq-section h2,.fq-trust-section h2,.fq-final-cta h2{font-size:1.8rem;}.fq-methods-grid,.fq-pricing-grid,.fq-cta-options{grid-template-columns:1fr;}.fq-timeline{grid-template-columns:1fr;}.fq-footer-container{flex-direction:column;text-align:center;}.fq-footer-copyright{text-align:center;}.fq-form-wrapper{padding:30px 20px;}.fq-info-grid{grid-template-columns:1fr;}}

/* Page: page for photo editing */
* { margin: 0px; padding: 0px; box-sizing: border-box; }
body { font-family: Inter, sans-serif; line-height: 1.6; color: rgb(26, 26, 26); overflow-x: hidden; }
.photo-edit-page-wrapper { width: 100%; min-height: 100vh; background: linear-gradient(135deg, rgb(245, 247, 250) 0%, rgb(195, 207, 226) 100%); }
.photo-edit-header-banner { width: 100%; height: 70vh; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; margin-bottom: 4rem; }
.photo-edit-header-banner img { width: 100%; height: 100%; object-fit: cover; object-position: center center; transition: transform 0.5s; }
.photo-edit-header-banner:hover img { transform: scale(1.05); }
.photo-edit-banner-overlay { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: linear-gradient(rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.5) 100%); display: flex; align-items: center; justify-content: center; z-index: 2; }
.photo-edit-banner-title { font-family: "Playfair Display", serif; font-size: 4rem; font-weight: 700; color: rgb(255, 255, 255); text-align: center; text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 8px; letter-spacing: 2px; animation: 1s ease 0s 1 normal none running fadeInUp; }
.photo-edit-gallery-container { max-width: 1400px; margin: 0px auto; padding: 0px 2rem 4rem; }
.photo-edit-gallery-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 3rem; }
.photo-edit-gallery-card { background: rgb(255, 255, 255); border-radius: 20px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 40px; transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); position: relative; }
.photo-edit-gallery-card:hover { transform: translateY(-15px); box-shadow: rgba(0, 0, 0, 0.2) 0px 20px 60px; }
.photo-edit-card-image-wrapper { width: 100%; height: 500px; position: relative; overflow: hidden; }
.photo-edit-card-image-wrapper img { width: 100%; height: 100%; object-fit: cover; object-position: center center; transition: transform 0.6s; }
.photo-edit-gallery-card:hover .photo-edit-card-image-wrapper img { transform: scale(1.1) rotate(2deg); }
.photo-edit-card-content { padding: 2rem; background: rgb(255, 255, 255); }
.photo-edit-card-title { font-family: "Playfair Display", serif; font-size: 2rem; font-weight: 700; color: rgb(26, 26, 26); margin-bottom: 1rem; letter-spacing: 1px; }
.photo-edit-card-description { font-size: 1.1rem; color: rgb(74, 74, 74); line-height: 1.8; margin-bottom: 1.5rem; }
.photo-edit-card-button { display: inline-block; padding: 1rem 2.5rem; background: linear-gradient(135deg, rgb(102, 126, 234) 0%, rgb(118, 75, 162) 100%); color: rgb(255, 255, 255); text-decoration: none; border-radius: 50px; font-weight: 600; font-size: 1rem; transition: 0.3s; border: none; cursor: pointer; box-shadow: rgba(102, 126, 234, 0.4) 0px 4px 15px; }
.photo-edit-card-button:hover { background: linear-gradient(135deg, rgb(118, 75, 162) 0%, rgb(102, 126, 234) 100%); transform: translateY(-2px); box-shadow: rgba(102, 126, 234, 0.6) 0px 6px 25px; }
.photo-edit-card-badge { position: absolute; top: 20px; right: 20px; background: linear-gradient(135deg, rgb(240, 147, 251) 0%, rgb(245, 87, 108) 100%); color: rgb(255, 255, 255); padding: 0.5rem 1.5rem; border-radius: 30px; font-size: 0.9rem; font-weight: 600; z-index: 3; box-shadow: rgba(245, 87, 108, 0.4) 0px 4px 15px; }
@keyframes fadeInUp { 
  0% { opacity: 0; transform: translateY(30px); }
  100% { opacity: 1; transform: translateY(0px); }
}
@media (max-width: 1024px) {
  .photo-edit-banner-title { font-size: 3rem; }
  .photo-edit-gallery-grid { gap: 2rem; }
  .photo-edit-card-image-wrapper { height: 400px; }
}
@media (max-width: 768px) {
  .photo-edit-header-banner { height: 50vh; margin-bottom: 2rem; }
  .photo-edit-banner-title { font-size: 2.5rem; padding: 0px 1rem; }
  .photo-edit-gallery-container { padding: 0px 1.5rem 3rem; }
  .photo-edit-gallery-grid { grid-template-columns: 1fr; gap: 2rem; }
  .photo-edit-card-image-wrapper { height: 350px; }
  .photo-edit-card-content { padding: 1.5rem; }
  .photo-edit-card-title { font-size: 1.75rem; }
  .photo-edit-card-description { font-size: 1rem; }
}
@media (max-width: 480px) {
  .photo-edit-header-banner { height: 40vh; }
  .photo-edit-banner-title { font-size: 2rem; letter-spacing: 1px; }
  .photo-edit-gallery-container { padding: 0px 1rem 2rem; }
  .photo-edit-card-image-wrapper { height: 280px; }
  .photo-edit-card-content { padding: 1.25rem; }
  .photo-edit-card-title { font-size: 1.5rem; }
  .photo-edit-card-description { font-size: 0.95rem; }
  .photo-edit-card-button { padding: 0.85rem 2rem; font-size: 0.95rem; }
  .photo-edit-card-badge { top: 15px; right: 15px; padding: 0.4rem 1.2rem; font-size: 0.85rem; }
}
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }
.editor-tool, [data-editor-tool] { outline: none !important; cursor: default !important; }

