:root{--color-bg:#fbf6ec;--color-bg-alt:#f3e8d2;--color-surface:#fff;--color-ink:#2a2117;--color-ink-soft:#52483c;--color-moss:#3f5536;--color-moss-dark:#2a3a23;--color-terracotta:#b65429;--color-terracotta-dark:#8f4220;--color-gold:#b8842e;--color-cream:#fbf6ec;--color-border:#e3d6ba;--font-heading:Georgia, "Iowan Old Style", "Palatino Linotype", ui-serif, serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--radius-s:8px;--radius-m:16px;--radius-l:28px;--shadow-s:0 2px 8px #2a211714;--shadow-m:0 12px 32px #2a21171f;--header-height:76px;--transition-fast:.18s ease;--transition-med:.32s ease;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-ink);background:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}img,svg{max-width:100%;display:block}h1,h2,h3{font-family:var(--font-heading);color:var(--color-moss-dark);margin:0 0 .5em;line-height:1.15}p{margin:0 0 1em}a{color:var(--color-terracotta-dark)}ul{margin:0;padding:0;list-style:none}button{font:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--color-moss-dark);color:var(--color-cream);border-radius:var(--radius-s);z-index:1000;transition:top var(--transition-fast);padding:.75rem 1.25rem;position:absolute;top:-48px;left:1rem}.skip-link:focus{top:1rem}:focus-visible{outline:3px solid var(--color-gold);outline-offset:2px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--color-terracotta-dark);margin:0 0 .6em;font-size:.78rem;font-weight:700}.section-inner{max-width:1120px;margin:0 auto;padding:0 1.5rem}.cta{min-height:44px;transition:transform var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);cursor:pointer;border:2px solid #0000;border-radius:999px;align-items:center;gap:.5rem;padding:.75rem 1.4rem;font-weight:600;text-decoration:none;display:inline-flex}.cta-primary{background:var(--color-terracotta);color:var(--color-cream)}.cta-primary:hover{background:var(--color-terracotta-dark);box-shadow:var(--shadow-s);transform:translateY(-2px)}.cta-secondary{color:var(--color-moss-dark);border-color:var(--color-moss-dark);background:0 0}.cta-secondary:hover{background:var(--color-moss-dark);color:var(--color-cream)}.cta-nav{display:none}.site-header{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);background:#fbf6eceb;position:sticky;top:0}.header-inner{max-width:1120px;min-height:var(--header-height);justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:0 1.5rem;display:flex}.brand{color:var(--color-moss-dark);align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.brand-name{font-family:var(--font-heading);font-size:1.15rem;font-weight:700}.nav-toggle{border:1px solid var(--color-border);border-radius:var(--radius-s);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;position:relative}.nav-toggle-bars{width:20px;height:14px;display:inline-block;position:relative}.nav-toggle-bars span{background:var(--color-moss-dark);width:100%;height:2px;transition:transform var(--transition-fast), opacity var(--transition-fast);border-radius:2px;position:absolute;left:0}.nav-toggle-bars span:first-child{top:0}.nav-toggle-bars span:nth-child(2){top:6px}.nav-toggle-bars span:nth-child(3){top:12px}.nav-toggle[aria-expanded=true] .nav-toggle-bars span:first-child{transform:translateY(6px)rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-bars span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] .nav-toggle-bars span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.primary-nav{inset:var(--header-height) 0 0 0;background:var(--color-bg);transition:transform var(--transition-med);padding:1.5rem;position:fixed;overflow-y:auto;transform:translate(100%)}.primary-nav.is-open{transform:translate(0)}.primary-nav ul{flex-direction:column;gap:.25rem;margin-bottom:1.5rem;display:flex}.primary-nav a{min-height:44px;color:var(--color-ink);border-bottom:1px solid var(--color-border);align-items:center;padding:.5rem 0;font-weight:600;text-decoration:none;display:flex}body.nav-open{overflow:hidden}.hero{background:linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-alt) 100%);padding:4.5rem 1.5rem 5rem;position:relative;overflow:hidden}.hero-decor{pointer-events:none;position:absolute;inset:0}.hero-hills{width:100%;height:60%;position:absolute;inset:auto 0 0}.hero-paws{width:100%;height:100%;position:absolute;inset:0}.js .hero-paws g{animation:18s ease-in-out infinite drift}@keyframes drift{0%,to{transform:translate(0)}50%{transform:translate(6px,-8px)}}.hero-content{text-align:center;max-width:760px;margin:0 auto;position:relative}.hero h1{margin-bottom:.4em;font-size:clamp(2.2rem,5vw,3.4rem)}.tagline{color:var(--color-ink-soft);max-width:46ch;margin:0 auto 2em;font-size:clamp(1.05rem,2.4vw,1.3rem)}.hero-ctas{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.trust-strip{background:var(--color-moss-dark);color:var(--color-cream)}.trust-strip ul{flex-wrap:wrap;justify-content:center;gap:1rem 2rem;max-width:1120px;margin:0 auto;padding:1.25rem 1.5rem;display:flex}.trust-strip li{align-items:center;gap:.5rem;font-size:.95rem;display:inline-flex}.trust-strip svg{color:var(--color-gold);flex-shrink:0}.trust-strip a{color:var(--color-cream);text-underline-offset:2px;text-decoration:underline}.js [data-reveal]{opacity:0;transition:opacity var(--transition-med), transform var(--transition-med);transform:translateY(24px)}.js [data-reveal].is-visible{opacity:1;transform:translateY(0)}section{padding:4rem 0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-m);transition:transform var(--transition-fast), box-shadow var(--transition-fast);padding:1.75rem}.card:hover{box-shadow:var(--shadow-m);transform:translateY(-4px)}.card-icon{color:var(--color-terracotta);margin-bottom:.75rem}.card-featured{background:var(--color-bg-alt);border-color:var(--color-gold)}.card-link{margin-top:.5rem;font-weight:600;display:inline-block}.approach{background:var(--color-surface)}.approach-inner{grid-template-columns:1.4fr 1fr;align-items:center;gap:2.5rem;display:grid}.approach-decor{justify-self:center;width:min(220px,100%)}.six-week-package{background:linear-gradient(180deg, var(--color-bg-alt), var(--color-bg))}.package-intro{max-width:60ch;font-size:1.1rem}.package-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.25rem;margin:2rem 0;display:grid}.package-grid li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-m);text-align:center;padding:1.5rem 1rem}.package-count{font-family:var(--font-heading);color:var(--color-terracotta);font-size:2.2rem;font-weight:700;display:block}.package-source{color:var(--color-ink-soft);font-size:.9rem}.social-proof{background:var(--color-surface)}.fb-quote{background:var(--color-bg-alt);border-left:6px solid var(--color-terracotta);border-radius:var(--radius-m);margin:2rem 0 0;padding:2rem}.fb-quote p{font-family:var(--font-heading);color:var(--color-moss-dark);margin-bottom:.4em;font-size:1.6rem}.fb-quote cite{color:var(--color-ink-soft);font-style:normal}.social-cta{background:var(--color-moss);color:var(--color-cream);text-align:center}.social-cta h2{color:var(--color-cream)}.social-links{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1.5rem;display:flex}.social-link{min-height:44px;color:var(--color-cream);transition:background-color var(--transition-fast);background:#fbf6ec1f;border:1px solid #fbf6ec66;border-radius:999px;align-items:center;gap:.5rem;padding:.6rem 1.2rem;text-decoration:none;display:inline-flex}.social-link:hover{background:#fbf6ec3d}.contact-inner{grid-template-columns:1fr 1.2fr;gap:2.5rem;display:grid}.contact-line{min-height:44px;color:var(--color-ink);align-items:center;gap:.6rem;font-weight:600;text-decoration:none;display:flex}.contact-line svg{color:var(--color-terracotta)}address{flex-direction:column;gap:.5rem;margin-top:1rem;font-style:normal;display:flex}.contact-form-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-m);padding:1.75rem}.form-demo-note{background:var(--color-bg-alt);border:1px dashed var(--color-gold);border-radius:var(--radius-s);margin-bottom:1.25rem;padding:.85rem 1rem;font-size:.92rem}.form-row{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.form-row label{font-size:.92rem;font-weight:600}.form-row input,.form-row select,.form-row textarea{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius-s);background:var(--color-bg);min-height:44px;padding:.6rem .75rem}.form-row textarea{resize:vertical;min-height:100px}.form-status{color:var(--color-moss-dark);min-height:1.4em;margin-top:1rem;font-weight:600}.site-footer{background:var(--color-moss-dark);color:var(--color-bg-alt);padding:3rem 0 2rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:2rem;display:flex}.footer-brand .brand-name{color:var(--color-cream);font-size:1.1rem}.footer-links{flex-wrap:wrap;gap:.75rem 1.5rem;display:flex}.footer-links a{color:var(--color-bg-alt);text-underline-offset:2px;text-decoration:underline}.footer-fine-print{color:#fbf6ecb3;border-top:1px solid #fbf6ec33;width:100%;margin-top:1.5rem;padding-top:1.5rem;font-size:.82rem}@media (width>=840px){.nav-toggle{display:none}.primary-nav{background:0 0;align-items:center;gap:1.5rem;padding:0;display:flex;position:static;inset:auto;overflow:visible;transform:none}.primary-nav ul{flex-direction:row;gap:1.5rem;margin-bottom:0}.primary-nav a{border-bottom:none;min-height:auto;padding:.25rem 0}.cta-nav{display:inline-flex}}@media (width<=839px){.approach-inner{grid-template-columns:1fr}.approach-decor{order:-1;width:160px}.contact-inner{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.js [data-reveal]{opacity:1;transform:none}}
