.footer[data-astro-cid-sz7xmlte]{background-color:var(--color-dark);color:var(--color-cream);padding:4rem 2rem 2rem;margin-top:4rem}.footer-content[data-astro-cid-sz7xmlte]{max-width:1200px;margin:0 auto}.footer-grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;margin-bottom:3rem}.footer-section[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:1rem}.footer-heading[data-astro-cid-sz7xmlte]{font-family:Anton,sans-serif;font-size:1.2rem;color:var(--color-cream);margin-bottom:.5rem;letter-spacing:1px}.footer-text[data-astro-cid-sz7xmlte]{color:var(--color-sage);line-height:1.6;font-size:.95rem}.footer-tagline[data-astro-cid-sz7xmlte]{color:var(--color-stone);font-style:italic;font-weight:600;margin-top:.5rem}.footer-links[data-astro-cid-sz7xmlte]{list-style:none;padding:0;display:flex;flex-direction:column;gap:.75rem}.footer-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--color-sage);text-decoration:none;transition:color .3s ease;font-size:.95rem}.footer-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-cream)}.footer-links[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte]{color:var(--color-sage);font-size:.95rem}.footer-bottom[data-astro-cid-sz7xmlte]{border-top:1px solid var(--color-stone);padding-top:2rem;text-align:center}.footer-bottom[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{color:var(--color-stone);font-size:.9rem}@media(max-width:768px){.footer[data-astro-cid-sz7xmlte]{padding:3rem 1.5rem 1.5rem}.footer-grid[data-astro-cid-sz7xmlte]{gap:2rem}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:Quicksand,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;color:#2f2f2f;background-color:#f2efe9;overflow-x:hidden}:root{--color-cream: #F2EFE9;--color-warm-white: #FAFAF8;--color-sage: #D1D0CB;--color-stone: #A2A092;--color-charcoal: #8A887E;--color-dark: #2F2F2F;--color-primary: #F2EFE9;--color-light: #D1D0CB;--color-accent: #A2A092;--color-text: #2F2F2F;--color-text-light: #6B6B6B;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem}.header{position:fixed;top:0;left:0;width:100%;background-color:transparent;backdrop-filter:blur(10px);z-index:1000;padding:1.5rem 0;transition:all .4s ease}.header.scrolled{background-color:#f2efe9fa;padding:1rem 0;box-shadow:0 2px 20px #00000014}.nav{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.nav-logo{flex-shrink:0}.nav-logo a{display:block;text-decoration:none;position:relative;transition:transform .3s ease}.nav-logo a:hover{transform:translateY(-2px)}.logo{height:50px;width:auto;display:block;transition:opacity .3s ease}.logo-dark{opacity:1}.logo-light{opacity:0;position:absolute;top:0;left:0}.header.scrolled .logo-dark{opacity:1}.header.scrolled .logo-light{opacity:0}.nav-links{display:flex;list-style:none;gap:2rem;flex-wrap:wrap}.nav-links li{white-space:nowrap}.nav-links a{font-size:.9rem;color:var(--color-text);text-decoration:none;font-weight:600;position:relative;transition:color .3s ease;padding:.5rem 0;text-transform:uppercase;letter-spacing:1px}.nav-links a:hover{color:var(--color-dark)}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--color-dark);transition:width .3s ease}.nav-links a:hover:after{width:100%}.animate-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}.animate-on-scroll:nth-child(1){transition-delay:0s}.animate-on-scroll:nth-child(2){transition-delay:.15s}.animate-on-scroll:nth-child(3){transition-delay:.3s}.animate-on-scroll:nth-child(4){transition-delay:.45s}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:8rem 2rem 4rem;background:linear-gradient(135deg,var(--color-cream) 0%,var(--color-warm-white) 50%,var(--color-sage) 100%);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,rgba(162,160,146,.08) 0%,transparent 70%);top:-400px;right:-200px;pointer-events:none;z-index:1}.hero:after{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(209,208,203,.12) 0%,transparent 70%);bottom:-300px;left:-150px;pointer-events:none;z-index:1}.hero-content{text-align:center;max-width:850px;position:relative;z-index:2;animation:fadeInUp 1s ease-out}.hero-title{font-family:League Spartan,sans-serif;font-size:clamp(3rem,10vw,7rem);font-weight:1000;color:var(--color-dark);margin-bottom:2rem;letter-spacing:3px;line-height:1;text-shadow:0 4px 8px rgba(0,0,0,.08);text-transform:lowercase}.hero-title:after{content:"";display:block;width:100px;height:4px;background:var(--color-stone);margin:2rem auto 0;border-radius:2px}.hero-subtitle{font-size:clamp(1.1rem,2.5vw,1.6rem);color:var(--color-text-light);margin-bottom:3rem;line-height:1.8;font-weight:400;padding:0 1rem;max-width:700px;margin-left:auto;margin-right:auto}.cta-button{display:inline-flex;align-items:center;justify-content:center;padding:1.4rem 3.5rem;margin-top:1rem;background-color:var(--color-dark);color:#fff;text-decoration:none;font-size:1.1rem;font-weight:700;border-radius:50px;transition:all .4s cubic-bezier(.165,.84,.44,1);box-shadow:0 8px 24px #2f2f2f26;position:relative;overflow:hidden;border:2px solid var(--color-dark);cursor:pointer;text-transform:uppercase;letter-spacing:1px;line-height:1.2}.cta-button:hover{background-color:transparent;color:var(--color-dark);transform:translateY(-2px);box-shadow:0 12px 32px #2f2f2f33}.cta-button-secondary{display:inline-flex;align-items:center;justify-content:center;padding:1.4rem 3.5rem;background-color:transparent;color:var(--color-dark);text-decoration:none;font-size:1.1rem;font-weight:700;border-radius:50px;transition:all .4s cubic-bezier(.165,.84,.44,1);border:2px solid var(--color-dark);cursor:pointer;text-transform:uppercase;letter-spacing:1px;line-height:1.2}.cta-button-secondary:hover{background-color:var(--color-dark);color:#fff;transform:translateY(-2px)}.cta-button-outline{display:inline-flex;align-items:center;justify-content:center;padding:1.4rem 3.5rem;background-color:transparent;color:#fff;text-decoration:none;font-size:1.1rem;font-weight:700;border-radius:50px;transition:all .4s cubic-bezier(.165,.84,.44,1);border:2px solid white;cursor:pointer;text-transform:uppercase;letter-spacing:1px;line-height:1.2}.cta-button-outline:hover{background-color:#fff;color:var(--color-dark);transform:translateY(-2px);box-shadow:0 8px 24px #ffffff4d}.section-header{text-align:center;margin-bottom:4rem}.section-title{font-family:League Spartan,sans-serif;font-size:clamp(2rem,5vw,3.5rem);color:var(--color-dark);margin-bottom:1rem;letter-spacing:1px}.section-subtitle{font-size:clamp(1rem,2vw,1.25rem);color:var(--color-text-light);max-width:600px;margin:0 auto;line-height:1.6}.approach-section{padding:6rem 2rem;background-color:var(--color-warm-white)}.approach-container{max-width:1200px;margin:0 auto}.approach-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem}.approach-card{background:#fff;padding:2.5rem 2rem;border-radius:16px;border:1px solid var(--color-sage);transition:all .4s cubic-bezier(.165,.84,.44,1);position:relative;overflow:hidden}.approach-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #0000001f;border-color:var(--color-stone)}.approach-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:0;background:linear-gradient(180deg,var(--color-stone) 0%,var(--color-charcoal) 100%);transition:height .4s cubic-bezier(.165,.84,.44,1)}.approach-card:hover:before{height:100%}.card-number{font-family:League Spartan,sans-serif;font-size:3rem;color:var(--color-sage);line-height:1;margin-bottom:1.5rem;opacity:.5;transition:opacity .3s ease,color .3s ease}.approach-card:hover .card-number{opacity:1;color:var(--color-stone)}.card-title{font-family:League Spartan,sans-serif;font-size:1.75rem;color:var(--color-dark);margin-bottom:1rem;letter-spacing:.5px}.card-description{font-size:1rem;color:var(--color-text-light);line-height:1.7}.portfolio-section{padding:6rem 2rem;background-color:var(--color-cream)}.portfolio-container{max-width:1200px;margin:0 auto}.carousel-wrapper{position:relative;margin-bottom:4rem;overflow:hidden;width:100%;max-width:100%}.carousel-track{display:flex;transition:transform .6s cubic-bezier(.165,.84,.44,1)}.carousel-slide{min-width:100%;flex-shrink:0;padding:0 1rem}.portfolio-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #00000014;max-width:900px;margin:0 auto}.portfolio-image{position:relative;width:100%;height:350px;overflow:hidden}.portfolio-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.portfolio-placeholder.wellness{background:linear-gradient(135deg,var(--color-sage) 0%,var(--color-stone) 100%)}.portfolio-placeholder.coffee{background:linear-gradient(135deg,var(--color-stone) 0%,var(--color-charcoal) 100%)}.portfolio-placeholder.construction{background:linear-gradient(135deg,var(--color-charcoal) 0%,var(--color-dark) 100%)}.placeholder-content{text-align:center;color:#fff;z-index:2;padding:2rem}.placeholder-content h3{font-family:League Spartan,sans-serif;font-size:2.5rem;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.2);letter-spacing:1px}.placeholder-content p{font-size:1.1rem;font-weight:500;opacity:.9}.portfolio-info{padding:2.5rem}.portfolio-title{font-family:League Spartan,sans-serif;font-size:1.75rem;color:var(--color-dark);margin-bottom:.5rem;letter-spacing:.5px}.portfolio-category{font-size:.9rem;color:var(--color-stone);text-transform:uppercase;letter-spacing:1px;font-weight:600;margin-bottom:1rem}.portfolio-description{font-size:1.05rem;color:var(--color-text-light);line-height:1.7;margin-bottom:1.5rem}.portfolio-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{display:inline-block;padding:.4rem .9rem;background-color:var(--color-sage);color:var(--color-dark);border-radius:50px;font-size:.8rem;font-weight:600;letter-spacing:.5px}.carousel-btn{position:absolute;top:40%;transform:translateY(-50%);background:#fff;border:1px solid var(--color-sage);border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;z-index:10;color:var(--color-dark)}.carousel-btn:hover{background:var(--color-dark);color:#fff;border-color:var(--color-dark)}.carousel-btn-prev{left:1rem}.carousel-btn-next{right:1rem}.carousel-indicators{display:flex;justify-content:center;gap:.5rem;margin-top:2rem}.indicator{width:8px;height:8px;border-radius:50%;background:var(--color-sage);border:none;cursor:pointer;transition:all .3s ease;padding:0}.indicator.active{background:var(--color-dark);width:24px;border-radius:4px}.portfolio-cta{text-align:center}.final-cta-section{padding:6rem 2rem;background:linear-gradient(135deg,var(--color-dark) 0%,var(--color-charcoal) 100%);color:#fff;text-align:center}.final-cta-container{max-width:800px;margin:0 auto}.final-cta-title{font-family:League Spartan,sans-serif;font-size:clamp(2rem,5vw,3.5rem);margin-bottom:1.5rem;letter-spacing:1px;color:#fff}.final-cta-subtitle{font-size:clamp(1rem,2vw,1.3rem);margin-bottom:3rem;color:var(--color-sage);line-height:1.7;max-width:650px;margin-left:auto;margin-right:auto}.final-cta-buttons{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.included-section{padding:6rem 2rem;background-color:var(--color-cream)}.included-container{max-width:1200px;margin:0 auto}.included-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem}.included-card{background:#fff;border:1px solid var(--color-sage);border-radius:16px;padding:2.5rem 2rem;transition:transform .3s ease,box-shadow .3s ease}.included-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000014}.included-icon{display:block;margin-bottom:1.5rem;color:var(--color-stone)}.included-icon svg{display:block}.included-title{font-family:League Spartan,sans-serif;font-size:1.4rem;color:var(--color-dark);margin-bottom:.75rem;letter-spacing:.5px}.included-description{font-size:.95rem;color:var(--color-text-light);line-height:1.7}.process-section{padding:6rem 2rem;background-color:var(--color-warm-white)}.process-container{max-width:800px;margin:0 auto}.process-steps{display:flex;flex-direction:column}.process-step{display:grid;grid-template-columns:80px 1fr;gap:2rem;padding:2.5rem 0;border-bottom:1px solid var(--color-sage);align-items:start}.process-step:last-child{border-bottom:none}.step-number{font-family:League Spartan,sans-serif;font-size:2.5rem;font-weight:700;color:var(--color-sage);line-height:1;opacity:.6}.step-title{font-family:League Spartan,sans-serif;font-size:1.5rem;color:var(--color-dark);margin-bottom:.75rem;letter-spacing:.5px}.step-description{font-size:1rem;color:var(--color-text-light);line-height:1.7}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.portfolio-image{height:250px}.carousel-btn{width:40px;height:40px}.carousel-btn-prev{left:.5rem}.carousel-btn-next{right:.5rem}.placeholder-content h3{font-size:2rem}.portfolio-info{padding:2rem 1.5rem}.process-step{grid-template-columns:60px 1fr;gap:1.5rem}.step-number{font-size:2rem}.final-cta-buttons{flex-direction:column;align-items:center}}.services-preview-section{padding:6rem 2rem;background-color:var(--color-warm-white)}.services-preview-container{max-width:1200px;margin:0 auto}.services-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:3rem}.service-preview-card{background:#fff;border:1px solid var(--color-sage);border-radius:16px;padding:2.5rem 2rem;position:relative;transition:all .3s ease}.service-preview-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px #00000014;border-color:var(--color-stone)}.service-preview-featured{background:var(--color-dark);border-color:var(--color-dark);color:#fff}.service-preview-featured:hover{border-color:var(--color-charcoal)}.service-preview-badge{position:absolute;top:-14px;left:50%;transform:translate(-50%);background:var(--color-stone);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:.4rem 1.2rem;border-radius:50px;white-space:nowrap}.service-preview-number{font-family:League Spartan,sans-serif;font-size:2.5rem;font-weight:700;color:var(--color-sage);opacity:.4;line-height:1;margin-bottom:1rem}.service-preview-featured .service-preview-number{color:#fff;opacity:.2}.service-preview-name{font-family:League Spartan,sans-serif;font-size:1.75rem;font-weight:700;color:var(--color-dark);margin-bottom:.4rem}.service-preview-featured .service-preview-name{color:#fff}.service-preview-tagline{font-size:.95rem;font-style:italic;color:var(--color-stone);margin-bottom:1rem}.service-preview-featured .service-preview-tagline{color:#ffffffa6}.service-preview-description{font-size:.95rem;color:var(--color-text-light);line-height:1.7;margin-bottom:1.5rem}.service-preview-featured .service-preview-description{color:#ffffffbf}.service-preview-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.service-preview-list li{font-size:.9rem;color:var(--color-text-light);padding-left:1.4rem;position:relative;line-height:1.5}.service-preview-list li:before{content:"✓";position:absolute;left:0;color:var(--color-stone);font-weight:700}.service-preview-featured .service-preview-list li{color:#ffffffbf}.service-preview-featured .service-preview-list li:before{color:var(--color-sage)}.services-preview-cta{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.services-preview-anchor{font-size:1rem;color:var(--color-text-light)}.services-preview-anchor strong{color:var(--color-dark)}@media(max-width:768px){.services-preview-grid{grid-template-columns:1fr}}.about-section{padding:6rem 2rem;background-color:var(--color-cream)}.about-container{max-width:1200px;margin:0 auto}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}.about-eyebrow{font-size:.8rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--color-stone);margin-bottom:1rem}.about-title{font-family:League Spartan,sans-serif;font-size:clamp(1.8rem,3vw,2.75rem);font-weight:700;color:var(--color-dark);line-height:1.15;margin-bottom:1.75rem}.about-body{font-size:1.05rem;color:var(--color-text-light);line-height:1.8;margin-bottom:1.25rem}.about-cta{display:inline-block;margin-top:1rem;font-size:1rem;font-weight:700;color:var(--color-dark);text-decoration:none;border-bottom:2px solid var(--color-stone);padding-bottom:2px;transition:color .3s ease,border-color .3s ease}.about-cta:hover{color:var(--color-stone);border-color:var(--color-charcoal)}.about-values{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.about-value{display:flex;flex-direction:column;gap:.75rem}.about-value-icon{color:var(--color-stone)}.about-value-title{font-family:League Spartan,sans-serif;font-size:1.1rem;font-weight:700;color:var(--color-dark)}.about-value-desc{font-size:.9rem;color:var(--color-text-light);line-height:1.65}@media(max-width:768px){.about-grid{grid-template-columns:1fr;gap:3rem}.about-values{grid-template-columns:1fr 1fr;gap:1.5rem}}
