.banner[data-v-50ae1e06]{justify-content:center;align-items:center;gap:1rem;padding:.6rem 1.25rem;font-size:.95rem;display:flex}.banner.info[data-v-50ae1e06]{color:#1e3a8a;background:#dbeafe}.banner.warning[data-v-50ae1e06]{color:#92400e;background:#fef3c7}.banner.success[data-v-50ae1e06]{color:#166534;background:#dcfce7}a[data-v-50ae1e06]{color:inherit;font-weight:600;text-decoration:underline}button[data-v-50ae1e06]{cursor:pointer;color:inherit;background:0 0;border:0;font-size:1.25rem;line-height:1}.demo-banner[data-astro-cid-5m5kdkxc]{color:#fff;text-align:center;letter-spacing:normal;text-transform:none;background:#1f2328;margin:0;padding:.45rem 1rem;font:500 .85rem/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.demo-banner[data-astro-cid-5m5kdkxc] a[data-astro-cid-5m5kdkxc]{color:inherit;font-weight:700;text-decoration:underline}*{box-sizing:border-box}html{font-family:var(--font-body);color:var(--ink);background:var(--bg)}body{margin:0;line-height:1.6}a{color:var(--link)}img{max-width:100%}main{max-width:var(--max-width);margin:0 auto;padding:2rem 1.25rem 4rem}h1,h2,h3{font-family:var(--font-heading);font-weight:var(--heading-weight);line-height:1.2}h1{font-size:var(--h1-size);margin:0 0 .5rem}h2{margin-top:2rem}:focus-visible{outline:3px solid var(--link);outline-offset:2px}.skip-link{background:var(--bg);z-index:10;padding:.5rem 1rem;position:absolute;top:.5rem;left:-999px}.skip-link:focus{left:.5rem}.lead{color:var(--muted);margin-bottom:2rem;font-size:1.2rem}.muted{color:var(--muted);font-size:.9rem}.site-header{border-bottom:1px solid var(--border);background:var(--header-bg);flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;padding:1rem 1.25rem;display:flex}.brand{font-family:var(--font-heading);font-weight:var(--brand-weight);color:var(--brand-text,var(--brand-dark));margin-right:auto;font-size:1.35rem;text-decoration:none}.brand img{width:auto;max-height:3rem;display:block}.site-header nav{font-family:var(--font-ui);flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}.site-header nav a{color:var(--ink);text-decoration:none}.site-header nav a[aria-current=page]{color:var(--link);box-shadow:inset 0 -2px}.site-header .languages{gap:.75rem;font-size:.85rem}.site-header .languages a[aria-current=true]{color:var(--link);font-weight:600}.nav-toggle{display:none}.nav-toggle summary{cursor:pointer;font-family:var(--font-ui);border:1px solid var(--border);border-radius:var(--radius);padding:.35rem .75rem;list-style:none}.nav-toggle summary::-webkit-details-marker{display:none}@media (width<=720px){.nav-toggle{display:block}.main-nav{flex-direction:column;order:3;width:100%;padding:.5rem 0;gap:.75rem!important;display:none!important}.nav-toggle[open]~.main-nav{display:flex!important}}.header-cta{padding:.5rem 1rem}.header-call{font-family:var(--font-ui);text-decoration:none;display:none}@media (width<=720px){.site-header .header-cta{display:none}.header-call{display:inline-block}}.site-footer{border-top:1px solid var(--border);background:var(--footer-bg);padding:2rem 1.25rem 1.5rem;font-size:.95rem}.footer-grid{max-width:var(--max-width);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:start;gap:1.5rem 2rem;margin:0 auto;display:grid}.footer-contact,.footer-nav{flex-direction:column;gap:.2rem;display:flex}.footer-nav{font-family:var(--font-ui)}.footer-hours{border-collapse:collapse;margin-top:.25rem;font-size:.9rem}.footer-hours td{vertical-align:top;padding:.1rem 1rem .1rem 0}.footer-hours td:first-child{text-transform:capitalize}.footer-hours .range{white-space:nowrap;display:block}.social-links,.footer-legal{max-width:var(--max-width);flex-wrap:wrap;justify-content:center;gap:.25rem 1rem;margin:1.5rem auto 0;display:flex}.footer-legal{margin-top:1rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card>h2:first-child{margin-top:0}.grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));align-items:start;gap:1.25rem;display:grid}.button{background:var(--brand);color:var(--on-brand);border-radius:var(--button-radius);font-family:var(--font-ui);padding:.75rem 1.25rem;font-weight:600;text-decoration:none;display:inline-block}.button:hover{background:var(--brand-dark)}.prose img{border-radius:var(--radius);max-width:100%;height:auto}.photo{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);width:100%}.hero{align-items:center;gap:2rem;display:grid}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;display:flex}@media (width>=800px){.hero:has(.hero-image){grid-template-columns:1fr 1fr}}.home-cards{margin-top:2.5rem}.block{align-items:center;gap:1.5rem;margin-top:3rem;display:grid}.block h2{margin-top:0}@media (width>=720px){.block:has(img){grid-template-columns:1fr 1fr}}table.hours{border-collapse:collapse;width:100%}table.hours td{border-bottom:1px solid var(--border);vertical-align:top;padding:.4rem 0}table.hours td:first-child{text-transform:capitalize;width:40%}table.hours .range{white-space:nowrap;display:block}.team-photo{object-fit:cover;border-radius:50%;width:96px;height:96px;margin-bottom:.75rem;display:block}.narrow{max-width:46rem}.urgent{border-left:4px solid var(--brand);background:var(--bg);border-radius:0 var(--radius) var(--radius) 0;margin-top:1rem;padding:.75rem 1rem}.urgent p{margin:.25rem 0 0}.contact-card-phone{font-family:var(--font-heading);font-size:1.6rem;font-weight:var(--heading-weight);margin:.5rem 0 .25rem}.contact-card-phone a{text-decoration:none}.map{margin:1.5rem 0 0}.map iframe{border:1px solid var(--border);border-radius:var(--radius);width:100%;height:20rem;display:block}.map figcaption{margin-top:.35rem;font-size:.9rem}.faq details{border-bottom:1px solid var(--border);padding:.9rem 0}.faq summary{cursor:pointer;font-weight:600;font-family:var(--font-heading);font-size:1.1rem}.faq details .prose{margin-top:.5rem}.faq details .prose p{margin:.5rem 0 0}.gallery{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1rem;display:grid}.gallery figure{margin:0}.gallery figcaption{color:var(--muted);margin-top:.35rem;font-size:.9rem}.services{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.25rem;display:grid}.services .card h2,.services .card h3,.services .card p{margin:0 0 .5rem}.services .photo{margin-bottom:.75rem}.service-list{margin:0 0 1rem;padding:0;list-style:none}.service-list li{border-bottom:1px solid var(--border);padding:.3rem 0}table.hours td:first-child,.footer-hours td:first-child{padding-left:.5rem}tr[aria-current=date] td{background:color-mix(in srgb, var(--brand) 10%, transparent);font-weight:700}tr.closure-day td:first-child{box-shadow:inset 3px 0 #f4a3a3}tr.closure-day .range{color:var(--muted)}.closed-tag{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.closed-tag[hidden]{display:none}.footer-closures{color:#991b1b;max-width:18rem;margin:.5rem 0 0;padding:0;font-size:.85rem;list-style:none}.footer-closures li{border-left:3px solid #f4a3a3;padding-left:.5rem}.footer-closures[hidden]{display:none}.open-status{font-family:var(--font-ui);margin:-.25rem 0 .75rem;font-size:.95rem}.open-status:before{content:"";vertical-align:.05em;background:#dc2626;border-radius:50%;width:.6rem;height:.6rem;margin-right:.45rem;display:inline-block}.open-status.open:before{background:#16a34a}.open-status[hidden]{display:none}.site-footer .open-status{margin:.15rem 0 .35rem;font-size:.875rem}:root{--brand:#2563eb;--brand-dark:#1e40af;--on-brand:#fff;--link:#2563eb;--ink:#1f2937;--muted:#6b7280;--bg:#fff;--surface:#f8fafc;--border:#e5e7eb;--header-bg:var(--bg);--footer-bg:var(--bg);--radius:.75rem;--button-radius:.5rem;--max-width:64rem;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-heading:var(--font-body);--font-ui:var(--font-body);--heading-weight:600;--brand-weight:700;--h1-size:2.25rem}.prose h2{font-size:1.35rem}table.hours td:first-child{font-weight:600}@font-face{font-family:Fraunces;src:url(/fonts/fraunces-600-normal.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/fonts/fraunces-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/fonts/fraunces-600-italic.woff2)format("woff2");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/nunito-400-normal.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/nunito-700-normal.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/nunito-800-normal.woff2)format("woff2");font-weight:800;font-display:swap}:root{--ink:#1d2b24;--muted:#4f6158;--bg:#fff8ea;--surface:#fff;--border:#1d2b24;--ochre:#f2b43c;--ochre-soft:#fdecc8;--alarm:#d9482b;--header-bg:var(--brand);--footer-bg:var(--brand-dark);--radius:1.25rem;--button-radius:.9rem;--max-width:68rem;--font-heading:"Fraunces", Georgia, serif;--font-ui:"Nunito", ui-rounded, system-ui, sans-serif;--heading-weight:700;--brand-weight:700;--h1-size:clamp(2.4rem, 5.5vw, 3.9rem);--sticker:5px 5px 0 var(--ink)}html{font-family:"Nunito", var(--font-body);font-size:17px}body{background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='%232f6b4f' fill-opacity='.05' transform='rotate(-20 60 60)'%3E%3Cellipse cx='48' cy='44' rx='5' ry='7'/%3E%3Cellipse cx='57' cy='37' rx='5' ry='7'/%3E%3Cellipse cx='67' cy='37' rx='5' ry='7'/%3E%3Cellipse cx='76' cy='44' rx='5' ry='7'/%3E%3Cpath d='M50 60c0-10 24-10 24 0s-24 10-24 0z'/%3E%3C/g%3E%3C/svg%3E")}h1,h2,h3{letter-spacing:-.01em}h1{line-height:1.05}.site-header{box-shadow:0 4px 0 var(--ink);z-index:1;border-bottom:0;padding:1rem 1.5rem;position:relative}.brand,.site-header nav a,.header-call{color:#fff!important}.site-header{gap:.75rem 1rem}.brand{align-items:center;gap:.6rem;font-size:1.35rem;display:flex}.brand:before{content:"";background:url(/favicon.svg) 50%/contain no-repeat;flex:none;width:2rem;height:2.3rem}.site-header nav{gap:.25rem;font-weight:700}.site-header nav a{border-radius:999px;padding:.3rem .65rem}.site-header nav a:hover{background:#ffffff26}.site-header nav a[aria-current=page]{box-shadow:none;background:var(--ochre);color:var(--ink)!important}.nav-toggle summary{color:#fff;border-color:#fff9}.header-cta{background:var(--ochre);color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.header-cta:hover{background:#ffc85a}@media (width<=1400px){.site-header .header-cta{display:none}}.button{border:2px solid var(--ink);box-shadow:var(--sticker);font-weight:800;transition:transform .1s,box-shadow .1s}.button:hover{box-shadow:3px 3px 0 var(--ink);transform:translate(2px,2px)}.hero-actions>a:not(.button){color:var(--alarm);text-underline-offset:4px;font-weight:800;text-decoration-thickness:2px}.hero{padding:2rem 0 .5rem}.hero h1{text-decoration:underline wavy var(--ochre);text-underline-offset:14px;text-decoration-skip-ink:none;text-decoration-thickness:4px}.hero .lead{color:var(--muted);font-size:1.2rem}.hero-image{aspect-ratio:1;border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink);border-radius:58% 42% 55% 45%/45% 55%}.card{border:2px solid var(--ink);box-shadow:var(--sticker);padding:1.5rem}.card h2{font-size:1.55rem}.home-cards{gap:1.75rem;margin-top:3rem}.service-list li{border-bottom:2px dotted color-mix(in srgb, var(--ink) 25%, transparent);font-weight:700}.service-list li:before{content:"🐾";filter:grayscale()opacity(.55);margin-right:.5rem;font-size:.8em}.services .card:nth-child(3n+2){background:var(--ochre-soft)}.services .card:nth-child(3n+3){background:color-mix(in srgb, var(--brand) 10%, #fff)}.urgent{border:2px solid var(--alarm);border-radius:var(--radius);box-shadow:4px 4px 0 var(--alarm);background:#fff1ec;margin-top:1.25rem;padding:1.4rem 1rem .9rem;font-weight:700;position:relative}.urgent:before{content:"SPOED";background:var(--alarm);color:#fff;letter-spacing:.1em;border-radius:999px;padding:.1rem .6rem;font-size:.75rem;font-weight:800;position:absolute;top:-.8rem;left:1rem}.urgent a{color:var(--alarm);white-space:nowrap;font-weight:800}tr[aria-current=date] td{background:var(--ochre-soft)}.site-footer tr[aria-current=date] td{background:#ffffff1f}html body .card .closures{background:var(--ochre-soft);color:var(--ink);border:2px solid var(--ink);border-radius:var(--radius)}tr[aria-current=date] td:first-child{box-shadow:inset 4px 0 0 var(--ochre)}table.hours td{border-bottom:2px dotted color-mix(in srgb, var(--ink) 20%, transparent)}.block{background:var(--surface);border:2px solid var(--ink);border-radius:calc(var(--radius) * 1.5);box-shadow:var(--sticker);padding:2rem}.block:nth-of-type(2n){background:var(--ochre-soft)}.block img{border:2px solid var(--ink);border-radius:var(--radius)}.team .card{text-align:center}.team .card:nth-child(odd){transform:rotate(-1deg)}.team .card:nth-child(2n){transform:rotate(1deg)}.team-photo{border:3px solid var(--ink);width:120px;height:120px;box-shadow:0 0 0 5px var(--ochre);margin:0 auto 1rem}.faq details{border:2px solid var(--ink);border-radius:var(--radius);background:var(--surface);box-shadow:3px 3px 0 var(--ink);margin-bottom:.9rem;padding:.9rem 1.2rem}.faq summary::marker{color:var(--brand)}html body .banner.banner{border-bottom:2px solid var(--ink);font-weight:700}html body .banner.banner.success{background:var(--ochre);color:var(--ink)}.site-footer{color:#eaf3ee;border-top:0;margin-top:5rem;padding-top:3rem;position:relative}.site-footer:before{content:"";background:var(--footer-bg);height:40px;position:absolute;top:-39px;left:0;right:0;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 40' preserveAspectRatio='none'%3E%3Cpath d='M0 40V20C20 0 40 0 60 20s40 20 60 0v20z'/%3E%3C/svg%3E") 0 0/120px 40px repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 40' preserveAspectRatio='none'%3E%3Cpath d='M0 40V20C20 0 40 0 60 20s40 20 60 0v20z'/%3E%3C/svg%3E") 0 0/120px 40px repeat-x}.site-footer a{color:#fff}.footer-grid>div>strong{font-family:var(--font-heading);color:var(--ochre);font-size:1.35rem}.site-footer .muted{color:#b9d0c3}.footer-closures{color:#ffd2c7}@media (width<=720px){.brand{font-size:1.15rem}.main-nav a{text-align:center}.hero-image{max-width:22rem;margin:0 auto}.team .card:nth-child(n){transform:none}}
