*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;cursor:url(../images/cursor-bone.png) 4 4,auto}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}button{cursor:url(../images/cursor-bone-pointer.png) 4 4,pointer}a,button,[role=button],.wp-block-button__link,input[type=submit],summary{cursor:url(../images/cursor-bone-pointer.png) 4 4,pointer}:focus-visible{outline:3px solid #CE93D8;outline-offset:2px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;background:#2e7d32;color:#fff;padding:.5rem 1rem;z-index:500}.skip-link:focus{position:fixed;top:.5rem;left:.5rem;width:auto;height:auto;clip:auto;white-space:normal;border-radius:8px}.wp-block-button:not(.is-style-outline) .wp-block-button__link{background-color:#8250b4!important;color:#fff!important}.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,.wp-block-button:not(.is-style-outline) .wp-block-button__link:focus{background-color:#6a1b9a!important;color:#fff!important}.wp-block-button.is-style-outline .wp-block-button__link{background-color:transparent!important;color:#2e7d32!important;border-color:#2e7d32!important}.wp-block-button.is-style-outline .wp-block-button__link:hover,.wp-block-button.is-style-outline .wp-block-button__link:focus{background-color:#2e7d32!important;color:#fff!important}@keyframes revealUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes revealLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes revealRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes revealScale{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}[data-reveal]{opacity:0}[data-reveal].is-revealed{animation:revealUp .7s cubic-bezier(.4,0,.2,1) both}[data-reveal][data-reveal=left].is-revealed{animation-name:revealLeft}[data-reveal][data-reveal=right].is-revealed{animation-name:revealRight}[data-reveal][data-reveal=scale].is-revealed{animation-name:revealScale}[data-reveal][data-reveal-delay="1"].is-revealed{animation-delay:.1s}[data-reveal][data-reveal-delay="2"].is-revealed{animation-delay:.2s}[data-reveal][data-reveal-delay="3"].is-revealed{animation-delay:.3s}[data-reveal][data-reveal-delay="4"].is-revealed{animation-delay:.4s}[data-reveal][data-reveal-delay="5"].is-revealed{animation-delay:.5s}[data-reveal][data-reveal-delay="6"].is-revealed{animation-delay:.6s}[data-reveal][data-reveal-delay="7"].is-revealed{animation-delay:.7s}[data-reveal][data-reveal-delay="8"].is-revealed{animation-delay:.8s}[data-reveal][data-reveal-delay="9"].is-revealed{animation-delay:.9s}[data-reveal][data-reveal-delay="10"].is-revealed{animation-delay:1s}[data-reveal][data-reveal-delay="11"].is-revealed{animation-delay:1.1s}[data-reveal][data-reveal-delay="12"].is-revealed{animation-delay:1.2s}@media (prefers-reduced-motion: reduce){[data-reveal]{opacity:1;animation:none!important}}::selection{background:#ce93d8;color:#2e7d32}.header-top-bar{display:none}.site-header{background:#fff;box-shadow:0 1px 3px #21212114,0 1px 2px #2121210f;position:sticky;top:0;z-index:200;transition:box-shadow .25s ease-in-out}.site-header.is-scrolled{box-shadow:0 4px 6px #21212112,0 2px 4px #2121210f}.header-main{width:100%;max-width:1200px;margin-inline:auto;padding-inline:1rem}@media (min-width: 1024px){.header-main{padding-inline:2rem}}.header-main{display:flex;justify-content:space-between;align-items:center;padding-block:1rem;gap:.5rem}@media (min-width: 768px){.header-main{gap:1.5rem}}@media (min-width: 1024px){.header-main{padding-block:.5rem}}.site-logo{flex-shrink:0}.site-logo a{display:block;line-height:0}.site-logo .wp-block-site-logo{flex-shrink:0}.site-logo .wp-block-site-title{display:none!important}@media (min-width: 768px){.site-logo .wp-block-site-title{display:block!important;font-size:1.45rem!important;line-height:1.3}}@media (min-width: 1024px){.site-logo .wp-block-site-title{font-size:1.75rem!important}}.site-logo .wp-block-site-title a{line-height:1.3}.site-logo img{height:50px;width:auto}@media (min-width: 1024px){.site-logo img{height:60px}}.primary-nav .wp-block-navigation-item a{display:block;padding:.5rem 1rem;color:#212121;text-decoration:none;font-weight:500;font-size:1rem;border-radius:8px;transition:color .15s ease-in-out,background .15s ease-in-out}.primary-nav .wp-block-navigation-item a:hover,.primary-nav .wp-block-navigation-item a[aria-current=page]{color:#46aa46;background:#46aa460f}.primary-nav .wp-block-navigation-item a[aria-current=page]{font-weight:600}.primary-nav .wp-block-navigation__responsive-container.is-menu-open{padding:2rem 1.5rem}.primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:1.5rem}.primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item a{padding:1rem 0;font-size:1.25rem;border-bottom:1px solid #E0E0E0;border-radius:0;background:none}.primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{padding-left:1.5rem}.primary-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container a{font-size:1rem;font-weight:400}.primary-nav .wp-block-navigation__responsive-container-open{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:8px}.primary-nav .wp-block-navigation__responsive-container-open:focus-visible{outline:3px solid #CE93D8;outline-offset:2px}.primary-nav .wp-block-navigation__responsive-container-close{top:1rem;right:1rem;width:36px;height:36px}.primary-nav .wp-block-navigation__responsive-container-close:focus-visible{outline:3px solid #CE93D8;outline-offset:2px}.primary-nav .has-submenu,.primary-nav .wp-block-navigation-submenu{position:relative}.primary-nav .has-submenu>a,.primary-nav .wp-block-navigation-submenu>a{display:inline-flex;align-items:center;gap:.25rem}.primary-nav .has-submenu>a:after,.primary-nav .wp-block-navigation-submenu>a:after{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;transition:transform .15s ease-in-out}.primary-nav .has-submenu:hover>a:after,.primary-nav .has-submenu:focus-within>a:after,.primary-nav .wp-block-navigation-submenu:hover>a:after,.primary-nav .wp-block-navigation-submenu:focus-within>a:after{transform:rotate(180deg)}.primary-nav .has-submenu .submenu,.primary-nav .wp-block-navigation-submenu .submenu{position:absolute;top:100%;left:0;min-width:240px;background:#fff;border-radius:12px;box-shadow:0 10px 25px #21212114,0 4px 10px #2121210d;padding:.5rem;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s ease-in-out,visibility .25s ease-in-out,transform .25s ease-in-out;list-style:none;z-index:100}.primary-nav .has-submenu .submenu a,.primary-nav .wp-block-navigation-submenu .submenu a{padding:.5rem 1rem;border-radius:8px;font-size:.875rem}.primary-nav .has-submenu .submenu a:hover,.primary-nav .wp-block-navigation-submenu .submenu a:hover{background:#46aa460f;color:#46aa46}.primary-nav .has-submenu:hover .submenu,.primary-nav .has-submenu:focus-within .submenu,.primary-nav .wp-block-navigation-submenu:hover .submenu,.primary-nav .wp-block-navigation-submenu:focus-within .submenu{opacity:1;visibility:visible;transform:translateY(0)}.header-cta{display:none}@media (min-width: 1024px){.header-cta{display:inline-flex}}.header-cta .wp-block-button__link,.header-cta a{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:"Source Sans 3",Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:600;font-size:1rem;line-height:1;letter-spacing:.025em;text-decoration:none;border:2px solid transparent;border-radius:8px;padding:.875rem 2rem;cursor:pointer;transition:all .25s ease-in-out}.header-cta .wp-block-button__link:focus-visible,.header-cta a:focus-visible{outline:3px solid #CE93D8;outline-offset:2px}.header-cta .wp-block-button__link,.header-cta a{background:#8250b4;color:#fff;border-color:#8250b4}.header-cta .wp-block-button__link:hover,.header-cta .wp-block-button__link:focus,.header-cta a:hover,.header-cta a:focus{background:#6a1b9a;border-color:#6a1b9a;color:#fff}.header-cta .wp-block-button__link,.header-cta a{font-size:.875rem;padding:.625rem 1.5rem}.site-footer{background:#e8f5e9;color:#212121}.footer-main a{color:#2e7d32;text-decoration:none;transition:color .15s ease-in-out,padding-left .15s ease-in-out}.footer-main a:hover{color:#8250b4;padding-left:4px}.footer-main .wp-block-columns{width:100%}.footer-col h3,.footer-col .footer-col__title{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.25rem;font-weight:600;color:#2e7d32;margin-bottom:1rem;position:relative}.footer-col h3:after,.footer-col .footer-col__title:after{content:"";display:block;width:40px;height:2px;background:#8250b4;margin-top:.5rem;border-radius:9999px}.footer-col p{color:#616161;font-size:1rem;line-height:1.8;margin:0 0 .5rem}.footer-col a{color:#2e7d32;text-decoration:none;transition:color .15s ease-in-out}.footer-col a:hover{color:#8250b4}.footer-about .footer-logo{margin-bottom:1rem}.footer-about .footer-logo img{height:48px;width:auto;filter:brightness(0) invert(1)}.footer-links ul{list-style:none;margin:0;padding:0}.footer-links li+li{margin-top:.5rem}.footer-links a{display:inline-flex;align-items:center;gap:.5rem;font-size:1rem}.footer-links a svg{width:14px;height:14px;flex-shrink:0;color:#8250b4}.footer-contact-info .contact-item{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:1rem}.footer-contact-info .contact-item svg{width:18px;height:18px;flex-shrink:0;color:#8250b4;margin-top:3px}.footer-hours .hours-table{width:100%}.footer-hours .hours-table tr+tr td{padding-top:.5rem}.footer-hours .hours-table td{font-size:1rem;color:#616161}.footer-hours .hours-table td:first-child{font-weight:500;padding-right:1rem;color:#212121}.footer-social{display:flex;gap:.5rem;margin-top:1rem}.footer-social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#8250b4;border-radius:9999px;color:#fff;transition:background .15s ease-in-out,color .15s ease-in-out}.footer-social a:hover{background:#2e7d32;color:#fff}.footer-social a svg{width:18px;height:18px}.footer-bottom{border-top:1px solid rgba(46,125,50,.15);padding-block:1rem}.footer-bottom .footer-bottom__inner{width:100%;max-width:1200px;margin-inline:auto;padding-inline:1rem}@media (min-width: 1024px){.footer-bottom .footer-bottom__inner{padding-inline:2rem}}.footer-bottom .footer-bottom__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.875rem;color:#616161}.footer-bottom a{color:#616161;text-decoration:none}.footer-bottom a:hover{color:#8250b4}@keyframes heroRevealUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero{position:relative;overflow:hidden;background-color:#f5f0eb!important}.hero>*,.page-hero>*{opacity:0;transform:translateY(24px);animation:heroRevealUp .6s ease-out forwards}.hero>*:nth-child(1),.page-hero>*:nth-child(1){animation-delay:.12s}.hero>*:nth-child(2),.page-hero>*:nth-child(2){animation-delay:.24s}.hero>*:nth-child(3),.page-hero>*:nth-child(3){animation-delay:.36s}.hero>*:nth-child(4),.page-hero>*:nth-child(4){animation-delay:.48s}.hero>*:nth-child(5),.page-hero>*:nth-child(5){animation-delay:.6s}.hero>*:nth-child(6),.page-hero>*:nth-child(6){animation-delay:.72s}@media (prefers-reduced-motion: reduce){.hero>*,.page-hero>*{opacity:1;transform:none;animation:none}}.hero__background{position:absolute;top:0;right:0;bottom:0;left:0}.hero__background img{width:100%;height:100%;object-fit:cover}.hero__background:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#e8f5e9eb,#e8f5e9cc 60%,#e8f5e9a6)}.hero__content{position:relative;z-index:2;width:100%;max-width:1200px;margin-inline:auto;padding-inline:1rem}@media (min-width: 1024px){.hero__content{padding-inline:2rem}}.hero__content{max-width:900px;margin-inline:auto;color:#212121;text-align:center}.hero__tagline{display:inline-block;font-family:"Source Sans 3",Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#8250b4;margin-bottom:1rem}.hero__title{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:700;font-size:clamp(2rem,5vw,3.5rem);line-height:1.2;color:#2e7d32;margin:0 0 1rem}.hero__description{font-size:1.25rem;line-height:1.8;color:#212121;margin-bottom:2rem;max-width:560px}.hero__actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.hero__actions .btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:"Source Sans 3",Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:600;font-size:1rem;line-height:1;letter-spacing:.025em;text-decoration:none;border:2px solid transparent;border-radius:8px;padding:.875rem 2rem;cursor:pointer;transition:all .25s ease-in-out}.hero__actions .btn-primary:focus-visible{outline:3px solid #CE93D8;outline-offset:2px}.hero__actions .btn-primary{background:#8250b4;color:#fff;border-color:#8250b4}.hero__actions .btn-primary:hover,.hero__actions .btn-primary:focus{background:#6a1b9a;border-color:#6a1b9a;color:#fff}.hero__actions .btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:"Source Sans 3",Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:600;font-size:1rem;line-height:1;letter-spacing:.025em;text-decoration:none;border:2px solid transparent;border-radius:8px;padding:.875rem 2rem;cursor:pointer;transition:all .25s ease-in-out}.hero__actions .btn-outline:focus-visible{outline:3px solid #CE93D8;outline-offset:2px}.hero__actions .btn-outline{background:transparent;color:#fff;border-color:#fff}.hero__actions .btn-outline:hover,.hero__actions .btn-outline:focus{background:#fff;color:#2e7d32}.page-hero{position:relative;background:#e8f5e9;padding-block:3rem;text-align:center;overflow:hidden}@media (min-width: 1024px){.page-hero{padding-block:4rem}}.page-hero:before{content:"";position:absolute;top:-50%;right:-20%;width:500px;height:500px;background:radial-gradient(circle,rgba(70,170,70,.04) 0%,transparent 70%);border-radius:50%}.page-hero:after{content:"";position:absolute;bottom:-30%;left:-10%;width:300px;height:300px;background:radial-gradient(circle,rgba(130,80,180,.05) 0%,transparent 70%);border-radius:50%}.page-hero__content{position:relative;z-index:1;width:100%;max-width:1200px;margin-inline:auto;padding-inline:1rem}@media (min-width: 1024px){.page-hero__content{padding-inline:2rem}}.page-hero__breadcrumb{font-size:.875rem;color:#616161;margin-bottom:1rem}.page-hero__breadcrumb a{color:#46aa46;text-decoration:none}.page-hero__breadcrumb a:hover{text-decoration:underline}.page-hero__breadcrumb .separator{margin-inline:.5rem;color:#e0e0e0}.page-hero__title{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;color:#2e7d32;margin:0 0 .5rem}.page-hero__title:after{content:"";display:block;width:60px;height:3px;background:#8250b4;border-radius:9999px;margin-top:1rem}.page-hero__title:after{margin-inline:auto}.page-hero__description{font-size:1.25rem;color:#616161;max-width:600px;margin-inline:auto;line-height:1.6}.service-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #21212112,0 2px 4px #2121210f;overflow:hidden;transition:box-shadow .25s ease-in-out,transform .25s ease-in-out}.service-card:hover{box-shadow:0 10px 25px #21212114,0 4px 10px #2121210d;transform:translateY(-2px)}.service-card{display:flex;flex-direction:column;text-align:center}.service-card .service-card__icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:2rem auto 1rem;background:#e8f5e9;border-radius:9999px;color:#46aa46;transition:background .25s ease-in-out,color .25s ease-in-out}.service-card .service-card__icon svg{width:32px;height:32px}.service-card .service-card__content{padding:0 1.5rem 2rem;flex:1;display:flex;flex-direction:column}.service-card .service-card__title{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.25rem;font-weight:600;color:#2e7d32;margin:0 0 .5rem}.service-card .service-card__title a{color:inherit;text-decoration:none}.service-card .service-card__title a:hover{color:#8250b4}.service-card .service-card__excerpt{font-size:1rem;color:#616161;line-height:1.6;margin-bottom:1rem;flex:1}.service-card .service-card__link{display:inline-flex;align-items:center;gap:.25rem;font-weight:600;font-size:.875rem;color:#8250b4;text-decoration:none;letter-spacing:.025em;text-transform:uppercase;transition:color .15s ease-in-out,gap .15s ease-in-out}.service-card .service-card__link svg{width:16px;height:16px;transition:transform .15s ease-in-out}.service-card .service-card__link:hover{color:#6a1b9a}.service-card .service-card__link:hover svg{transform:translate(4px)}.service-card:hover .service-card__icon{background:#46aa46;color:#fff}.team-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #21212112,0 2px 4px #2121210f;overflow:hidden;transition:box-shadow .25s ease-in-out,transform .25s ease-in-out}.team-card:hover{box-shadow:0 10px 25px #21212114,0 4px 10px #2121210d;transform:translateY(-2px)}.team-card{text-align:center}.team-card .team-card__image{aspect-ratio:3/4;overflow:hidden;background:#e8f5e9}.team-card .team-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease-in-out}.team-card:hover .team-card__image img{transform:scale(1.05)}.team-card .team-card__content{padding:1rem 1.5rem 1.5rem}.team-card .team-card__name{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.25rem;font-weight:600;color:#2e7d32;margin:0 0 .25rem}.team-card .team-card__role{font-size:.875rem;color:#8250b4;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.5rem}.team-card .team-card__bio{font-size:.875rem;color:#616161;line-height:1.6}.testimonial-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #21212114,0 1px 2px #2121210f;position:relative;border-left:4px solid #8250B4}.testimonial-card .testimonial-card__quote-icon{color:#ce93d8;margin-bottom:.5rem}.testimonial-card .testimonial-card__quote-icon svg{width:32px;height:32px}.testimonial-card .testimonial-card__text{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.25rem;font-style:italic;line-height:1.8;color:#212121;margin-bottom:1rem}.testimonial-card .testimonial-card__author{display:flex;align-items:center;gap:.5rem}.testimonial-card .testimonial-card__avatar{width:48px;height:48px;border-radius:9999px;overflow:hidden;background:#e8f5e9;flex-shrink:0}.testimonial-card .testimonial-card__avatar img{width:100%;height:100%;object-fit:cover}.testimonial-card .testimonial-card__name{font-weight:600;color:#2e7d32;font-size:1rem}.testimonial-card .testimonial-card__pet{font-size:.875rem;color:#616161}.resource-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #21212112,0 2px 4px #2121210f;overflow:hidden;transition:box-shadow .25s ease-in-out,transform .25s ease-in-out}.resource-card:hover{box-shadow:0 10px 25px #21212114,0 4px 10px #2121210d;transform:translateY(-2px)}.resource-card{padding:1.5rem;display:flex;align-items:flex-start;gap:1rem}.resource-card .resource-card__icon{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#e8f5e9;border-radius:8px;color:#46aa46}.resource-card .resource-card__icon svg{width:24px;height:24px}.resource-card .resource-card__title{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.25rem;font-weight:600;color:#2e7d32;margin:0 0 .25rem}.resource-card .resource-card__title a{color:inherit;text-decoration:none}.resource-card .resource-card__title a:hover{color:#8250b4}.resource-card .resource-card__description{font-size:.875rem;color:#616161;line-height:1.6;margin:0}.section{padding-block:3rem}@media (min-width: 1024px){.section{padding-block:6rem}}.section--cream{background:#e8f5e9}.section--primary{background:#2e7d32;color:#fff}.section--accent{background:#8250b4;color:#fff}.section__inner{width:100%;max-width:1200px;margin-inline:auto;padding-inline:1rem}@media (min-width: 1024px){.section__inner{padding-inline:2rem}}.section__header{text-align:center;max-width:680px;margin-inline:auto;margin-bottom:3rem}.section__tagline{font-size:.875rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#8250b4;margin-bottom:.5rem}.section__title{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:600;color:#2e7d32;margin:0 0 .5rem}.section__title:after{content:"";display:block;width:60px;height:3px;background:#8250b4;border-radius:9999px;margin-top:1rem}.section__title:after{margin-inline:auto}.section--primary .section__title,.section--accent .section__title{color:#fff}.section__description{font-size:1.25rem;color:#616161;line-height:1.6;margin:1rem 0 0}.section--primary .section__description{color:#ffffffd9}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem}.testimonials-section .testimonials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.cta-strip{padding-block:3rem;text-align:center;position:relative;overflow:hidden}.about-preview{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center}@media (min-width: 1024px){.about-preview{grid-template-columns:1fr 1fr}}.about-preview .about-preview__image{border-radius:16px;overflow:hidden;box-shadow:0 10px 25px #21212114,0 4px 10px #2121210d}.about-preview .about-preview__image img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}.about-preview .about-preview__content .section__tagline,.about-preview .about-preview__content .section__title{text-align:left}.about-preview .about-preview__content .section__title:after{margin-inline:0}.about-preview .about-preview__text{font-size:1rem;color:#212121;line-height:1.8;margin-bottom:1rem}.about-preview .about-preview__features{list-style:none;padding:0;margin:0 0 1.5rem}.about-preview .about-preview__features li{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;font-weight:500;color:#212121}.about-preview .about-preview__features li svg{width:20px;height:20px;color:#46aa46;flex-shrink:0}.faq-section .faq-list{max-width:800px;margin-inline:auto}.faq-item{border:1px solid #E0E0E0;border-radius:12px;margin-bottom:.5rem;overflow:hidden;background:#fff;transition:box-shadow .25s ease-in-out}.faq-item:hover{box-shadow:0 1px 3px #21212114,0 1px 2px #2121210f}.faq-item.is-open{box-shadow:0 4px 6px #21212112,0 2px 4px #2121210f;border-color:#46aa4633}.faq-item__question{display:flex;justify-content:space-between;align-items:center;width:100%;padding:1rem 1.5rem;background:none;border:none;cursor:pointer;text-align:left;font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.25rem;font-weight:600;color:#2e7d32;transition:color .15s ease-in-out}.faq-item__question:focus-visible{outline:3px solid #CE93D8;outline-offset:2px}.faq-item__question:hover{color:#8250b4}.faq-item__question .faq-icon{width:24px;height:24px;flex-shrink:0;color:#8250b4;transition:transform .25s ease-in-out}.is-open .faq-item__question .faq-icon{transform:rotate(45deg)}.faq-item__answer{max-height:0;overflow:hidden;transition:max-height .4s ease-in-out;padding-inline:1.5rem}.is-open .faq-item__answer{max-height:400px}.faq-item__answer p{padding-bottom:1.5rem;color:#616161;line-height:1.8}.map-embed{border-radius:16px;overflow:hidden;box-shadow:0 10px 25px #21212114,0 4px 10px #2121210d;aspect-ratio:16/9}@media (min-width: 1024px){.map-embed{aspect-ratio:21/9}}.map-embed iframe{width:100%;height:100%;border:0}.contact-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem}.contact-info-card{text-align:center;padding:2rem;background:#e8f5e9;border-radius:12px;transition:box-shadow .25s ease-in-out}.contact-info-card:hover{box-shadow:0 4px 6px #21212112,0 2px 4px #2121210f}.contact-info-card .contact-info-card__icon{width:56px;height:56px;margin:0 auto .5rem;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:9999px;color:#46aa46;box-shadow:0 1px 3px #21212114,0 1px 2px #2121210f}.contact-info-card .contact-info-card__icon svg{width:24px;height:24px}.contact-info-card .contact-info-card__title{font-family:Syne,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:600;color:#2e7d32;margin-bottom:.25rem}.contact-info-card .contact-info-card__text{font-size:1rem;color:#616161}.contact-info-card .contact-info-card__text a{color:#46aa46;text-decoration:none}.contact-info-card .contact-info-card__text a:hover{color:#8250b4;text-decoration:underline}[data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}[data-reveal].is-revealed{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){[data-reveal]{opacity:1;transform:none;transition:none}}.back-to-top{position:fixed;bottom:1rem;right:1rem;z-index:250;width:48px;height:48px;border-radius:50%;border:none;background:#46aa46;color:#fff;font-size:1.25rem;line-height:1;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s ease-in-out,visibility .25s ease-in-out,transform .25s ease-in-out,background-color .25s ease-in-out;box-shadow:0 4px 6px #21212112,0 2px 4px #2121210f}.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover,.back-to-top:focus-visible{background:#2e7d32;transform:translateY(-2px);box-shadow:0 10px 25px #21212114,0 4px 10px #2121210d}.back-to-top:focus-visible{outline:3px solid #8250B4;outline-offset:2px}@media (prefers-reduced-motion: reduce){.back-to-top{transition:none;transform:none}.back-to-top.is-visible{transform:none}}.contact-info-card{text-align:center;transition:transform .25s ease-in-out,box-shadow .25s ease-in-out}.contact-info-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px #21212114,0 4px 10px #2121210d}.contact-info-card a{color:#46aa46;text-decoration:none;font-weight:600}.contact-info-card a:hover{color:#8250b4;text-decoration:underline}.map-embed{position:relative;width:100%;height:0;padding-bottom:75%;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #21212114,0 1px 2px #2121210f}.map-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}.no-scroll{overflow:hidden}.contact-form-wrapper{max-width:680px}.contact-form .form-group{margin-bottom:1rem}.contact-form .form-group--hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.contact-form .form-row{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 640px){.contact-form .form-row--two{grid-template-columns:1fr 1fr}}.contact-form .form-label,.contact-form label{display:block;font-weight:600;font-size:.875rem;color:#212121;margin-bottom:.25rem;letter-spacing:.01em}.contact-form .required{color:#8250b4}.contact-form .form-input,.contact-form .form-textarea,.contact-form .form-select,.contact-form input[type=text],.contact-form input[type=email],.contact-form input[type=tel],.contact-form input[type=url],.contact-form textarea,.contact-form select{width:100%;padding:.75rem 1rem;border:2px solid #E0E0E0;border-radius:8px;font-family:"Source Sans 3",Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;color:#212121;background:#fff;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none;-webkit-appearance:none}.contact-form .form-input::placeholder,.contact-form .form-textarea::placeholder,.contact-form .form-select::placeholder,.contact-form input[type=text]::placeholder,.contact-form input[type=email]::placeholder,.contact-form input[type=tel]::placeholder,.contact-form input[type=url]::placeholder,.contact-form textarea::placeholder,.contact-form select::placeholder{color:#616161b3}.contact-form .form-input:focus,.contact-form .form-textarea:focus,.contact-form .form-select:focus,.contact-form input[type=text]:focus,.contact-form input[type=email]:focus,.contact-form input[type=tel]:focus,.contact-form input[type=url]:focus,.contact-form textarea:focus,.contact-form select:focus{outline:none;border-color:#46aa46;box-shadow:0 0 0 3px #46aa4626}.contact-form .form-input.has-error,.contact-form .form-textarea.has-error,.contact-form .form-select.has-error,.contact-form input[type=text].has-error,.contact-form input[type=email].has-error,.contact-form input[type=tel].has-error,.contact-form input[type=url].has-error,.contact-form textarea.has-error,.contact-form select.has-error{border-color:#d64545;box-shadow:0 0 0 3px #d6454526}.contact-form .form-textarea,.contact-form textarea{min-height:150px;resize:vertical}.contact-form .form-select,.contact-form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%236B6B6B' viewBox='0 0 16 16'%3E%3Cpath d='M8 10.5L2.5 5h11L8 10.5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.contact-form .form-error,.contact-form .field-error{display:block;font-size:.875rem;color:#d64545;margin-top:.25rem;font-weight:500;min-height:0}.contact-form .form-error:empty,.contact-form .field-error:empty{display:none}.contact-form .recaptcha-notice{font-size:.875rem;color:#616161;margin-top:1rem;line-height:1.6}.contact-form .recaptcha-notice a{color:#46aa46;text-decoration:underline}.contact-form .form-submit{margin-top:1.5rem}.contact-form .form-button,.contact-form .btn-submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:"Source Sans 3",Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:600;font-size:1rem;line-height:1;letter-spacing:.025em;text-decoration:none;border:2px solid transparent;border-radius:8px;padding:.875rem 2rem;cursor:pointer;transition:all .25s ease-in-out}.contact-form .form-button:focus-visible,.contact-form .btn-submit:focus-visible{outline:3px solid #CE93D8;outline-offset:2px}.contact-form .form-button,.contact-form .btn-submit{background:#8250b4;color:#fff;border-color:#8250b4}.contact-form .form-button:hover,.contact-form .form-button:focus,.contact-form .btn-submit:hover,.contact-form .btn-submit:focus{background:#6a1b9a;border-color:#6a1b9a;color:#fff}.contact-form .form-button,.contact-form .btn-submit{min-width:200px;position:relative}@media (max-width: 639px){.contact-form .form-button,.contact-form .btn-submit{width:100%}}.contact-form .form-button:disabled,.contact-form .btn-submit:disabled{opacity:.6;cursor:not-allowed}.contact-form .form-button .form-button__spinner,.contact-form .form-button .spinner,.contact-form .btn-submit .form-button__spinner,.contact-form .btn-submit .spinner{display:none;width:18px;height:18px;animation:spin .6s linear infinite}.contact-form .form-button .form-button__spinner svg,.contact-form .form-button .spinner svg,.contact-form .btn-submit .form-button__spinner svg,.contact-form .btn-submit .spinner svg{width:100%;height:100%}.contact-form .form-button.is-loading .form-button__text,.contact-form .form-button.is-loading .btn-text,.contact-form .btn-submit.is-loading .form-button__text,.contact-form .btn-submit.is-loading .btn-text{opacity:0}.contact-form .form-button.is-loading .form-button__spinner,.contact-form .form-button.is-loading .spinner,.contact-form .btn-submit.is-loading .form-button__spinner,.contact-form .btn-submit.is-loading .spinner{display:block;position:absolute}.form-message{padding:1rem;border-radius:8px;font-size:1rem;font-weight:500;margin-top:1rem}.form-message:empty{display:none}.form-message--success{background:#46aa4614;color:#2e7d32;border:1px solid rgba(70,170,70,.2)}.form-message--error{background:#d6454514;color:#b91c1c;border:1px solid rgba(214,69,69,.2)}@keyframes spin{to{transform:rotate(360deg)}}
