:root{--color-primary: #4a7c59;--color-primary-light: #6b9e7a;--color-primary-lighter: #a8d5b6;--color-primary-dark: #345a40;--color-primary-bg: #f0f7f2;--color-accent: #c8956c;--color-accent-light: #f5e6d8;--color-bg: #fafcfa;--color-bg-alt: #f4f9f5;--color-text: #2c3e2d;--color-text-light: #5a6b5c;--color-text-muted: #8a9a8c;--color-border: #d4e5d8;--color-white: #ffffff;--color-star: #f4b740;--font-heading: "Playfair Display", Georgia, "Times New Roman", serif;--font-body: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--section-py: clamp(4rem, 8vw, 7rem);--container-max: 1140px;--container-px: clamp(1.25rem, 4vw, 2rem);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(44, 62, 45, .06);--shadow-md: 0 4px 20px rgba(44, 62, 45, .08);--shadow-lg: 0 8px 40px rgba(44, 62, 45, .1);--shadow-card: 0 2px 12px rgba(44, 62, 45, .07);--ease: cubic-bezier(.4, 0, .2, 1);--duration: .3s}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:1rem;line-height:1.7;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--color-primary);text-decoration:none;transition:color var(--duration) var(--ease)}a:hover{color:var(--color-primary-dark)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:1.25;color:var(--color-text)}.container{max-width:var(--container-max);margin:0 auto;padding-left:var(--container-px);padding-right:var(--container-px)}.section{padding:var(--section-py) 0}.section-alt{background:var(--color-bg-alt)}.section-title{font-size:clamp(1.75rem,4vw,2.5rem);text-align:center;margin-bottom:.5rem;color:var(--color-primary-dark)}.section-subtitle{text-align:center;color:var(--color-text-light);max-width:600px;margin:0 auto 3rem;font-size:1.1rem}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fafcfad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:background var(--duration) var(--ease),border-color var(--duration) var(--ease),box-shadow var(--duration) var(--ease)}.site-header.scrolled{background:#fafcfaf2;border-bottom-color:var(--color-border);box-shadow:var(--shadow-sm)}.nav-container{display:flex;align-items:center;justify-content:space-between;height:72px}.brand{display:flex;align-items:center;text-decoration:none;gap:.65rem}.brand-logo{width:48px;height:48px;object-fit:contain;flex-shrink:0}.brand-text{display:flex;flex-direction:column}.brand-name{font-family:var(--font-heading);font-size:1.3rem;font-weight:700;color:var(--color-primary-dark);line-height:1.2}.brand-tagline{font-size:.75rem;color:var(--color-text-muted);letter-spacing:.02em;line-height:1.2}.main-nav ul{display:flex;align-items:center;gap:.25rem;list-style:none}.main-nav a{display:block;padding:.5rem .9rem;font-size:.925rem;font-weight:600;color:var(--color-text);border-radius:var(--radius-full);transition:background var(--duration) var(--ease),color var(--duration) var(--ease)}.main-nav a:hover,.main-nav a.active{background:var(--color-primary-bg);color:var(--color-primary)}.nav-cta{background:var(--color-primary)!important;color:var(--color-white)!important}.nav-cta:hover{background:var(--color-primary-dark)!important}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;width:44px;height:44px;position:relative}.hamburger,.hamburger:before,.hamburger:after{display:block;width:24px;height:2.5px;background:var(--color-text);border-radius:2px;transition:transform var(--duration) var(--ease),opacity var(--duration) var(--ease);position:absolute;left:10px}.hamburger{top:50%;transform:translateY(-50%)}.hamburger:before{content:"";top:-8px}.hamburger:after{content:"";top:8px}.nav-toggle[aria-expanded=true] .hamburger{background:transparent}.nav-toggle[aria-expanded=true] .hamburger:before{top:0;transform:rotate(45deg)}.nav-toggle[aria-expanded=true] .hamburger:after{top:0;transform:rotate(-45deg)}.hero{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;background:linear-gradient(135deg,#e8f5e9,#c8e6c9,#a5d6a7 60%,#81c784);overflow:hidden;padding-top:72px}.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(255,255,255,.4) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(74,124,89,.15) 0%,transparent 50%);pointer-events:none}.hero-content{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3rem;padding:3rem 0}.hero-headline{font-size:clamp(2.25rem,5vw,3.5rem);color:var(--color-primary-dark);margin-bottom:1rem;line-height:1.15}.hero-sub{font-size:clamp(1.05rem,2vw,1.25rem);color:var(--color-text-light);margin-bottom:2rem;max-width:480px}.hero-portrait{display:flex;justify-content:center}.hero-portrait img{width:100%;max-width:420px;height:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);object-fit:cover}.hero-wave{position:absolute;bottom:-1px;left:0;right:0;line-height:0}.hero-wave svg{width:100%;height:auto}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.75rem;font-family:var(--font-body);font-size:1rem;font-weight:700;border:2px solid transparent;border-radius:var(--radius-full);cursor:pointer;transition:all var(--duration) var(--ease);text-decoration:none;line-height:1.2}.btn-primary{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:var(--color-white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:var(--color-white);transform:translateY(-2px)}.btn-outline-light{background:transparent;color:var(--color-white);border-color:#fff9}.btn-outline-light:hover{background:#ffffff26;border-color:var(--color-white);color:var(--color-white);transform:translateY(-2px)}.btn-white{background:var(--color-white);color:var(--color-primary-dark);border-color:var(--color-white)}.btn-white:hover{background:var(--color-primary-bg);border-color:var(--color-primary-bg);color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 4px 20px #00000026}.btn-large{padding:1rem 2.25rem;font-size:1.1rem}.card-grid{display:grid;gap:1.5rem}.card-grid.two-col{grid-template-columns:repeat(2,1fr)}.card-grid.three-col{grid-template-columns:repeat(3,1fr)}.card{background:var(--color-white);border-radius:var(--radius-md);padding:2rem;box-shadow:var(--shadow-card);transition:transform var(--duration) var(--ease),box-shadow var(--duration) var(--ease)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.challenge-card{text-align:center;border-top:3px solid var(--color-primary-lighter)}.card-icon{color:var(--color-primary);margin-bottom:1rem}.challenge-card h3{font-size:1.25rem;margin-bottom:.75rem;color:var(--color-primary-dark)}.challenge-card p{color:var(--color-text-light);font-size:.95rem;margin-bottom:1rem}.card-highlight{display:block;font-size:.875rem;font-weight:700;color:var(--color-primary);padding-top:.75rem;border-top:1px solid var(--color-border)}.service-card{padding:2.5rem}.service-icon{color:var(--color-primary);margin-bottom:1rem}.service-card h3{font-size:1.5rem;color:var(--color-primary-dark);margin-bottom:.25rem}.service-card h4{font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--color-text-light);margin-bottom:1rem}.service-card>p{color:var(--color-text-light);margin-bottom:1.25rem}.service-features{list-style:none;margin-bottom:1.75rem}.service-features li{position:relative;padding-left:1.5rem;margin-bottom:.5rem;font-size:.95rem;color:var(--color-text-light)}.service-features li:before{content:"";position:absolute;left:0;top:.55rem;width:8px;height:8px;background:var(--color-primary-lighter);border-radius:50%}.quali-card{border-left:3px solid var(--color-primary-lighter)}.quali-card h4{font-size:1.1rem;color:var(--color-primary-dark);margin-bottom:.25rem}.quali-org{display:inline-block;font-size:.8rem;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.quali-card p{font-size:.9rem;color:var(--color-text-light)}.method-block{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3rem;padding:3rem;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-bottom:2rem}.method-block-reverse{grid-template-columns:auto 1fr}.method-block-reverse .method-visual{order:-1}.method-label{display:inline-block;font-size:.75rem;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}.method-content h3{font-size:1.75rem;color:var(--color-primary-dark);margin-bottom:.25rem}.method-content h4{font-family:var(--font-body);font-size:1.05rem;font-weight:600;color:var(--color-text-light);margin-bottom:1rem}.method-content p{color:var(--color-text-light);margin-bottom:.75rem}.method-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.tag{display:inline-block;padding:.3rem .85rem;font-size:.8rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-bg);border-radius:var(--radius-full)}.method-icon-large{color:var(--color-primary-lighter);opacity:.7}.reviews-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.reviews-summary{display:flex;align-items:center;gap:.75rem}.reviews-stars{display:flex;gap:2px;color:var(--color-star)}.reviews-rating{font-size:1.1rem;font-weight:700;color:var(--color-text)}.reviews-google-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--color-text-light);padding:.5rem 1rem;background:var(--color-white);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration) var(--ease)}.reviews-google-link:hover{box-shadow:var(--shadow-md);color:var(--color-text)}.reviews-carousel{overflow:hidden;position:relative}.reviews-track{display:flex;gap:1.5rem;transition:transform .5s var(--ease)}.review-card{flex:0 0 calc(33.333% - 1rem);background:var(--color-white);border-radius:var(--radius-md);padding:1.75rem;box-shadow:var(--shadow-card);min-width:0}.review-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.review-avatar{width:44px;height:44px;border-radius:50%;background:var(--color-primary-bg);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}.review-meta{min-width:0}.review-name{font-weight:700;font-size:.95rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-date{font-size:.8rem;color:var(--color-text-muted)}.review-stars{display:flex;gap:1px;color:var(--color-star);margin-bottom:.75rem}.review-stars svg{width:16px;height:16px}.review-text{font-size:.925rem;color:var(--color-text-light);line-height:1.6;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.reviews-nav{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem}.reviews-dot{width:10px;height:10px;border-radius:50%;background:var(--color-border);border:none;cursor:pointer;transition:background var(--duration) var(--ease),transform var(--duration) var(--ease);padding:0}.reviews-dot.active{background:var(--color-primary);transform:scale(1.3)}.about-layout{display:grid;grid-template-columns:auto 1fr;gap:3rem;align-items:start}.about-image img{width:340px;height:420px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.about-text h3{font-size:1.75rem;color:var(--color-primary-dark);margin-bottom:.25rem}.about-since{font-size:.9rem;color:var(--color-primary);font-weight:600;margin-bottom:1.25rem}.about-text p{color:var(--color-text-light);margin-bottom:1rem}.about-text blockquote{position:relative;padding:1.25rem 1.5rem;margin:1.5rem 0;background:var(--color-primary-bg);border-left:4px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-family:var(--font-heading);font-style:italic;font-size:1.05rem;color:var(--color-primary-dark);line-height:1.6}.about-methods{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.praxis-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.praxis-description{font-size:1.05rem;color:var(--color-text-light);margin-bottom:1rem}.praxis-details{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.praxis-detail{display:flex;align-items:flex-start;gap:.75rem}.praxis-detail svg{color:var(--color-primary);flex-shrink:0;margin-top:2px}.praxis-detail strong{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.1rem}.praxis-detail span,.praxis-detail a{font-size:.95rem;color:var(--color-text)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:.75rem}.gallery-item{border-radius:var(--radius-md);overflow:hidden;background:var(--color-primary-bg);aspect-ratio:4/3}.gallery-item:first-child{grid-row:1 / 3;aspect-ratio:auto}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.gallery-item:hover img{transform:scale(1.05)}.section-cta{background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 50%,var(--color-primary-light) 100%);color:var(--color-white);text-align:center}.cta-content h2{font-size:clamp(1.75rem,4vw,2.5rem);color:var(--color-white);margin-bottom:1rem}.cta-content p{max-width:640px;margin:0 auto 2rem;font-size:1.1rem;opacity:.9;line-height:1.7}.cta-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}.cta-social{display:flex;justify-content:center;gap:1rem}.cta-social a{color:#ffffffb3;transition:color var(--duration) var(--ease),transform var(--duration) var(--ease)}.cta-social a:hover{color:var(--color-white);transform:scale(1.15)}.site-footer{background:var(--color-primary-dark);color:#ffffffb3;padding:2.5rem 0}.footer-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.footer-brand .brand-name{color:var(--color-white);font-size:1.1rem}.footer-brand .brand-tagline{color:#ffffff80}.footer-address{font-size:.85rem;margin-top:.25rem}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:#fff9;font-size:.9rem;transition:color var(--duration) var(--ease)}.footer-links a:hover{color:var(--color-white)}.footer-copy{font-size:.8rem;color:#fff6}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.fade-in.delay-1{transition-delay:.15s}.fade-in.delay-2{transition-delay:.3s}.fade-in.visible{opacity:1;transform:translateY(0)}@media(max-width:1024px){.card-grid.three-col{grid-template-columns:repeat(2,1fr)}.method-block,.method-block-reverse{grid-template-columns:1fr;gap:2rem}.method-block-reverse .method-visual{order:0}.method-visual{display:flex;justify-content:center}.review-card{flex:0 0 calc(50% - .75rem)}}@media(max-width:768px){.nav-toggle{display:block}.main-nav{position:fixed;top:72px;left:0;right:0;background:#fafcfafa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);padding:1rem;transform:translateY(-120%);opacity:0;transition:transform var(--duration) var(--ease),opacity var(--duration) var(--ease);box-shadow:var(--shadow-md)}.main-nav.open{transform:translateY(0);opacity:1}.main-nav ul{flex-direction:column;gap:.25rem}.main-nav a{padding:.75rem 1rem;font-size:1rem}.hero-content{grid-template-columns:1fr;text-align:center;padding:2rem 0}.hero-sub{margin-left:auto;margin-right:auto}.hero-portrait{order:-1}.hero-portrait img{max-width:280px;border-radius:50%;aspect-ratio:1;object-fit:cover}.card-grid.two-col,.card-grid.three-col{grid-template-columns:1fr}.about-layout{grid-template-columns:1fr;text-align:center}.about-image img{width:220px;height:220px;border-radius:50%;margin:0 auto}.about-text blockquote{text-align:left}.about-methods{justify-content:center}.praxis-layout{grid-template-columns:1fr}.review-card{flex:0 0 calc(100% + -0rem)}.footer-content{flex-direction:column;text-align:center}.cta-actions{flex-direction:column;align-items:center}}@media(max-width:480px){.gallery-grid{grid-template-columns:1fr}.gallery-item:first-child{grid-row:auto;aspect-ratio:4/3}}
