@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap");html{scroll-behavior:smooth}*{box-sizing:border-box;padding:0;margin:0}body{font-family:Open Sans,sans-serif;font-optical-sizing:auto;background:#fff;color:#222}section .container>h2{position:relative;width:-moz-fit-content;width:fit-content;margin-left:auto;margin-right:auto;margin-bottom:30px}section .container>h2:after{content:"";position:absolute;width:30%;height:4px;background:#22c55e;left:50%;transform:translateX(-50%);bottom:-10px}.container{max-width:1200px;margin:auto;padding:0 20px}.hero{position:relative}.slide{height:80vh;background-size:cover;background-position:50%}.hero .slide img{width:100%;height:100%;object-fit:cover}.heroContent{color:#fff;text-align:left;max-width:700px;padding:40px;border-radius:10px;position:absolute;bottom:20vh;display:flex;flex-direction:column;align-items:flex-start}.heroContent h1{font-size:42px;margin-bottom:20px}.heroContent p{margin-bottom:25px}.phoneCTA{position:fixed;bottom:20px;right:20px;background:#16a34a;color:#fff;padding:16px 22px;border-radius:50px;z-index:999999;display:flex;align-items:center;gap:10px;transition:transform .2s ease-in-out}.phoneCTA:hover{transform:scale(1.1) translateX(-20px)}.services h2{text-align:center;margin-bottom:40px}.serviceGrid{margin-top:-100px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:25px;gap:25px;position:relative;z-index:999}.serviceCard{background:#fff;padding:25px;box-shadow:0 10px 25px rgba(0,0,0,.05);border-bottom:2px solid #22c55e;display:flex;flex-direction:column;align-items:center;gap:20px}.serviceCard h3{font-size:22px}.serviceCard p{flex-grow:1;color:#555}.serviceCard .icon{font-size:70px;color:#22c55e;align-self:center}.about{padding:80px 20px;text-align:center}.about .container{max-width:800px;margin:auto}.about h2{margin-bottom:30px}.gallery{padding:80px 20px}.gallery .masonry{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(33.333% - 16px),1fr));grid-gap:16px;gap:16px}.gallery .masonry img{width:100%;height:100%;border-radius:10px;object-fit:cover;aspect-ratio:4/3}.gallery .masonry img:nth-child(2n){grid-row:span 3}.faq{padding:80px 20px;background:#f9f9f9;margin:auto}.faq h2{text-align:center;margin-bottom:30px}.faq .faqGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:15px;gap:15px}.faq .faqItem{padding:10px}.faq .faqItem h4{font-size:18px;cursor:pointer;display:flex;align-items:center;gap:10px}.faq .faqItem p{margin-top:10px;margin-left:30px;color:#555}.contact{padding:80px 20px;background-color:#f9f9f9}.contactGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:30px;gap:30px}.contactGrid .contactInfo{font-size:18px;color:#555}.contactGrid .contactInfo p{margin-bottom:20px}.contactGrid a{color:#555}.contactGrid a:hover{text-decoration:underline}.contactGrid .socials{display:flex;gap:20px;margin-top:20px}.contactGrid .socials a{font-size:18px;padding:10px;background-color:#22c55e;color:#fff;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out}.contactGrid .socials a:hover{background-color:#16a34a;transform:scale(1.1) translateY(-5px)}.contact iframe{border:none;border-radius:10px;min-width:400px;height:50vh}footer{text-align:center;padding:40px;background:#111;color:#fff}a{text-decoration:none}.cta{background:#22c55e}.cta,.faqCta{padding:14px 28px;border-radius:30px;text-decoration:none;color:#fff;font-weight:600}.faqCta{background:#3b82f6}.ctas{display:flex;gap:20px}.cta,[class*=Cta]{transition:all .2s ease-in-out}.cta:hover,[class*=Cta]:hover{transform:scale(1.1)}.mobile{display:none}.desktop{display:block}@media (max-width:768px){.contactGrid{grid-template-columns:1fr}.heroContent h1{font-size:28px}.heroContent{text-align:center}.hero .slide{height:100vh}.mobile{display:block}.desktop{display:none}.ctas{flex-direction:column;width:100%}.ctas .cta,.ctas [class*=Cta]{width:100%;text-align:center}.faq .faqGrid{grid-template-columns:1fr}.gallery .masonry{grid-template-columns:repeat(auto-fill,minmax(calc(50% - 16px),1fr))}.contact .contactGrid iframe{min-width:100%;height:300px}}@media screen and (min-width:1900px){.container{max-width:80vw}}