:root{--ink:#183e35;--cream:#fff8ec;--muted:#596b60;--line:#dfe2d5;--orange:#f3ad78;--sage:#e5ead9;--white:#fffef9;--serif:Georgia,'Times New Roman',serif;--sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a:hover{color:#396d52}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #bc622f;outline-offset:4px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle}.site-header{border-bottom:1px solid var(--line);background:var(--cream)}.header-inner{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:14px;font-weight:600;line-height:1.15;letter-spacing:.4px}.brand-bottom{display:block;font:700 33px/1 var(--sans);letter-spacing:-1.5px}.brand-dot{color:var(--orange)}.brand-icon{display:flex;align-items:center;justify-content:center;border:1px solid var(--ink);width:48px;height:48px;border-radius:50%}.brand-icon .icon{width:36px;height:36px}.header-inner nav{display:flex;gap:30px;align-items:center}.header-inner nav>a{text-decoration:none;font-size:14px;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--ink);background:var(--ink);color:var(--cream);padding:15px 24px;border-radius:7px;text-decoration:none;font-weight:600;font-size:15px;line-height:1.4;min-height:50px}.button:hover{background:#2c5841;color:white}.button.outline{background:transparent;color:var(--ink)}.button.outline:hover{background:var(--sage)}.button.small{padding:11px 18px;min-height:44px}.button.full{width:100%;margin:8px 0}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.17fr 1fr;gap:40px;align-items:center;padding-top:68px;padding-bottom:65px}.eyebrow{display:flex;align-items:center;gap:9px;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:1.7px;margin:0 0 21px}.status-dot{background:#638968;width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 4px #63896815}h1,h2,h3{margin-top:0}h1{font:400 clamp(43px,5.3vw,72px)/1.06 var(--serif);letter-spacing:-2.8px;margin-bottom:25px}h1 em{font-weight:400;color:#4e6d52}h2{font:400 clamp(30px,3vw,42px)/1.12 var(--serif);letter-spacing:-1.1px;margin-bottom:22px}h3{font-size:20px;line-height:1.25;letter-spacing:-.5px}p{margin:0 0 19px}.hero-description{max-width:490px;font-size:17px;line-height:1.8;color:#56655b;margin-bottom:32px}.hero-art{position:relative}.hero-art>img{display:block;width:100%;height:auto}.art-note{position:absolute;bottom:9%;right:3%;background:var(--white);padding:15px 20px;border:1px solid var(--line);transform:rotate(-6deg);font:italic 19px/1.25 var(--serif);box-shadow:4px 5px 0 #173e3208}.art-sticker{position:absolute;right:7%;top:1%;width:90px;height:90px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--orange);border-radius:50%;transform:rotate(10deg);font-size:9px;letter-spacing:1.2px;font-weight:700;line-height:1.4}.art-sticker .icon{width:25px;height:25px;margin-bottom:4px}.search-form{background:var(--white);border:1px solid var(--line);padding:8px;display:flex;gap:0;border-radius:9px;align-items:stretch}.search-form label{flex:1;min-width:0;padding:5px 14px;border-right:1px solid var(--line);display:block}.search-form label>span{font-size:10px;letter-spacing:1px;text-transform:uppercase;display:block;font-weight:700;margin-bottom:4px}.search-form select,.search-form input{border:0;border-radius:0;background:transparent;color:var(--ink);width:100%;padding:0;font-size:13px;min-height:29px}.search-form .button{margin-left:8px;white-space:nowrap;padding:12px 16px;font-size:13px}.search-note{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px;margin:12px 0 0}.search-note .icon{width:14px;height:14px;margin-left:12px}.search-note .icon:first-child{margin-left:0}.benefit-bar{border-block:1px solid var(--line);background:#f0f1e7}.benefit-bar .wrap{display:flex;justify-content:space-between;padding-block:21px;gap:20px;font-size:13px}.benefit-bar span{display:flex;align-items:center;gap:12px}.section{padding-top:65px;padding-bottom:30px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:25px}.section-heading .eyebrow{margin-bottom:13px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px;color:var(--muted);line-height:1.6;margin:0}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:5px}.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.city-tile{display:flex;flex-direction:column;gap:23px;padding:26px 20px;border:1px solid var(--line);border-radius:9px;text-decoration:none;background:var(--white)}.city-tile>span:first-child{font:25px var(--serif);display:flex;align-items:center;gap:12px}.city-count{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}.city-tile:hover{border-color:#5c775f;transform:translateY(-2px)}.listing-section{padding-bottom:60px}.groomer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.groomer-card{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:25px 24px 0;display:flex;flex-direction:column;min-width:0}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px;gap:12px}.groomer-monogram{width:51px;height:51px;border-radius:15px;display:flex;align-items:center;justify-content:center;font:28px var(--serif);border:1px solid #173e3210}.sage{background:var(--sage)}.peach{background:#f5dfce}.lavender{background:#e7e4ed}.sand{background:#ede6cd}.tiny-label{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--muted)}.tiny-label .icon{width:17px;height:17px}.groomer-card h3{font-size:21px;margin-bottom:12px}.groomer-card h3 a{text-decoration:none}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}.tags>span,.tags>a{background:#f2f3ea;font-size:10px;font-weight:600;padding:4px 10px;border-radius:5px;text-decoration:none}.groomer-card>p{font-size:13px;line-height:1.75;color:#637065;flex:1}.card-area{display:flex;gap:7px;align-items:start;font-size:11px;color:#576b5e;padding:6px 0 22px}.card-area .icon{width:14px;height:14px;margin-top:2px}.card-bottom{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:8px}.card-bottom>span{font-size:9px;color:var(--muted);max-width:130px}.card-bottom>a{font-size:11px;font-weight:600;text-decoration:none;white-space:nowrap}.card-bottom .icon{width:15px;height:15px}.editorial-note{font-size:11px;color:var(--muted);margin:18px 0 0;max-width:850px}.how-section{background:var(--ink);color:var(--cream);padding:62px 0}.how-section .eyebrow{color:#c6d6bf}.how-section h2{font-size:45px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:35px}.steps article>span{display:block;color:#f0b181;font:italic 36px var(--serif);margin-bottom:18px}.steps h3{font-size:20px;font-weight:500}.steps p{color:#c8d2c6;font-size:13px;max-width:280px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.guide-card{padding:30px;border-radius:9px;display:block;text-decoration:none;border:1px solid #173e3210;min-height:210px}.guide-card>span{font-size:9px;letter-spacing:1.6px;font-weight:700}.guide-card h3{font:30px/1.15 var(--serif);margin:20px 0}.guide-card .icon{float:right}.owner-callout{background:#edeede;border-radius:12px;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:35px 45px;margin-top:40px;margin-bottom:75px}.owner-callout h2{margin-bottom:10px}.owner-callout .eyebrow{margin-bottom:10px}.owner-callout p:last-child{font-size:13px;margin:0}.site-footer{background:var(--ink);color:#f0f1e8;padding:46px 0 20px}.footer-top{display:flex;gap:70px;justify-content:space-between;align-items:start;padding-bottom:40px}.brand.light .brand-icon{border-color:#c0cfbe}.footer-top>p{font-size:14px;line-height:1.7;color:#c1d0bf}.footer-top>div{display:grid;gap:7px;font-size:12px}.site-footer a{text-decoration:none}.site-footer a:hover{color:white}.footer-bottom{border-top:1px solid #ffffff20;display:flex;justify-content:space-between;padding-top:20px;font-size:10px;color:#bdcbbc;gap:20px}.footer-bottom>div{display:flex;gap:20px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--muted);margin-bottom:37px}.breadcrumbs a{text-decoration:none}.directory-intro{padding-top:30px;padding-bottom:28px}.directory-intro h1{max-width:900px;font-size:57px}.lead{font-size:18px;color:#58695b;max-width:760px;line-height:1.8}.compact{margin-top:28px;max-width:1050px}.compact .query-field{flex:1.6}.results-meta{display:flex;justify-content:space-between;gap:20px;font-size:12px;margin-bottom:25px;border-bottom:1px solid var(--line);padding-bottom:17px}.results-section{padding-bottom:30px}.local-information{display:grid;grid-template-columns:1.5fr 1fr;gap:65px;padding-bottom:70px}.local-information details{border-bottom:1px solid var(--line);padding:20px 0}.local-information summary{font-size:15px;cursor:pointer;font-weight:600}.local-information details p{font-size:14px;margin:17px 0 0}.help-panel{background:var(--sage);padding:33px;border-radius:10px}.help-panel p{font-size:14px}.help-panel h3{font:27px var(--serif)}hr{border:0;border-top:1px solid var(--line);margin:30px 0}.notice{background:#edf1e4;padding:16px 20px;border-left:3px solid #6d885e;border-radius:3px;font-size:14px;margin-top:20px}.notice.error{background:#f8e4dc;border-color:#ab4d37}.empty-state{text-align:center;padding:55px;border:1px dashed var(--line);border-radius:10px}.empty-state>.icon{width:40px;height:40px;margin-bottom:20px}.empty-state p{color:var(--muted)}.profile-layout{display:grid;grid-template-columns:1.8fr 1fr;gap:80px;padding-bottom:60px}.profile-layout h1{font-size:57px}.profile-layout article>h2{font-size:32px;margin-top:40px}.service-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-list li{display:flex;gap:10px;align-items:center;font-size:15px}.muted{color:var(--muted);font-size:13px}.area-tags a{font-size:13px;padding:8px 12px}.area-tags .icon{width:15px;height:15px}.source-box{background:#eef0e7;padding:25px;border-radius:8px;margin-top:35px}.source-box h3{font-size:16px}.source-box p,.source-box a{font-size:12px}.source-box a{display:block;margin:7px 0}.contact-panel{align-self:start;position:sticky;top:30px;background:var(--white);border:1px solid var(--line);border-radius:10px;padding:32px}.contact-panel h2{font-size:38px}.contact-panel p{font-size:14px}.contact-panel .muted{font-size:11px;margin-top:15px}.contact-panel h3{font-size:19px}.prose{width:min(750px,calc(100% - 80px));margin:auto;padding:45px 0 70px}.prose h1{font-size:56px}.prose h2{font-size:31px;margin-top:36px}.prose p,.prose li{color:#526658}.prose li{margin-bottom:10px}.form-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;padding-bottom:65px}.form-layout h1{font-size:56px}.form-box{background:var(--white);padding:30px;border:1px solid var(--line);border-radius:10px}.form-box label,.edit-form label{display:block;font-size:13px;font-weight:600;margin-bottom:20px}.form-box input,.form-box select,.form-box textarea,.edit-form input,.edit-form select,.edit-form textarea{width:100%;display:block;padding:12px 13px;border:1px solid #cdd4c9;background:var(--white);border-radius:5px;margin-top:7px;font-size:14px;color:var(--ink)}textarea{resize:vertical;min-height:125px}.form-box label>small,.edit-form label>small{font-size:11px;font-weight:400;display:block;color:var(--muted);margin-top:5px}.check-label{display:flex!important;align-items:start;gap:10px;font-weight:400!important}.check-label input{width:18px!important;height:18px;margin:3px 0!important}.trap{position:absolute;left:-10000px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{margin:0}.admin-nav{display:flex;gap:20px;flex-wrap:wrap;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);margin-bottom:25px;font-size:13px}.admin-nav form{margin-left:auto}.admin-nav button{background:none;border:0;text-decoration:underline;color:var(--ink)}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:25px}.admin-header h1{font-size:47px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0}.stat{background:var(--white);padding:22px;border:1px solid var(--line);border-radius:8px}.stat strong{font:40px var(--serif);display:block}.stat span{font-size:12px;color:var(--muted)}.table-scroll{overflow:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:1px;background:var(--sage)}.admin-table th,.admin-table td{padding:15px;border-bottom:1px solid var(--line);vertical-align:top}.admin-table td>small{display:block;color:var(--muted);font-size:11px}.admin-table .tags{margin:0}.admin-content{padding-bottom:60px}.admin-content h2{margin-top:35px}.edit-form{max-width:900px;background:var(--white);border:1px solid var(--line);border-radius:10px;padding:30px;margin-bottom:50px}.edit-form fieldset{border:1px solid var(--line);margin:20px 0;padding:20px}.edit-form legend{font-size:13px;font-weight:600}.edit-form .check-label{margin-bottom:9px}.request-detail{white-space:pre-wrap;word-break:break-word;font-size:14px;background:#f0f1e7;padding:22px}.pill{display:inline-block;padding:3px 10px;border-radius:4px;background:var(--sage);font-size:10px}.skip{position:absolute;top:-60px;left:20px;z-index:10;background:var(--ink);color:white;padding:10px}.skip:focus{top:10px}
@media(min-width:1450px){.hero{padding-block:78px}.hero h1{font-size:76px}}@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.hero{gap:10px}.header-inner nav{gap:18px}.hero h1{font-size:56px}.search-form{flex-wrap:wrap}.hero .search-form .button{width:100%;margin:8px 0 0}.art-note{font-size:15px}.card-bottom{flex-direction:column;align-items:start}.form-layout{gap:40px}.profile-layout{gap:35px}.groomer-card{padding-inline:20px}.city-grid{gap:10px}.city-tile{padding:22px 15px}.city-tile>span:first-child{font-size:23px}.compact .query-field{flex:1}}@media(max-width:760px){.wrap,.prose{width:calc(100% - 36px)}.header-inner{min-height:85px;flex-wrap:wrap;gap:15px;padding:17px 0}.brand{font-size:12px}.brand-bottom{font-size:28px}.brand-icon{width:40px;height:40px}.brand-icon .icon{width:29px;height:29px}.menu-toggle{display:block;background:transparent;border:1px solid var(--line);border-radius:5px;color:var(--ink);padding:8px 12px;font-size:13px}.header-inner nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}.header-inner nav.open{display:flex}.header-inner nav>a{padding:12px}.hero{grid-template-columns:1fr;padding-top:38px;padding-bottom:30px}.hero h1{font-size:53px;letter-spacing:-2px}.hero-description{font-size:16px;max-width:100%}.hero-art{max-width:420px;margin:10px auto 0;width:100%}.hero .search-form .button{width:auto;margin:0 0 0 8px}.search-form label{padding-inline:10px}.hero .search-form{flex-wrap:nowrap}.search-form .button{font-size:12px;padding:10px}.hero .search-form label{flex:1}.hero .search-form label:first-child{flex:1.4}.search-form select{font-size:12px}.search-form .button .icon{display:none}.benefit-bar .wrap{flex-wrap:wrap;justify-content:start;gap:15px;font-size:11px;padding-block:17px}.benefit-bar span:last-child{display:none}.section{padding-top:40px}.section-heading{align-items:start;gap:15px}.section-heading>p{display:none}h2{font-size:34px}.section-heading>.text-link{font-size:11px;align-self:end;max-width:130px}.city-grid{grid-template-columns:repeat(2,1fr)}.city-tile{gap:18px;padding:20px}.groomer-grid,.guide-grid{grid-template-columns:1fr}.groomer-card{padding:24px 24px 0}.card-bottom{flex-direction:row;align-items:center}.card-bottom>span{max-width:none}.steps{grid-template-columns:1fr;gap:20px}.steps p{max-width:none}.steps article>span{margin-bottom:10px}.how-section{padding:40px 0}.how-section h2{font-size:38px}.guide-card{min-height:160px}.owner-callout{padding:30px;display:block;margin-top:25px;margin-bottom:40px}.owner-callout .button{margin-top:22px}.footer-top{flex-direction:column;gap:25px;padding-bottom:25px}.footer-top>p{margin:0}.footer-bottom{flex-direction:column;gap:15px}.directory-intro h1,.profile-layout h1,.prose h1,.form-layout h1{font-size:44px;letter-spacing:-1.6px}.lead{font-size:16px}.compact{gap:10px}.compact label{flex-basis:calc(50% - 10px);border:0}.compact .query-field{flex-basis:100%}.compact .button{margin:0;width:100%}.results-meta{font-size:11px;gap:10px}.local-information,.profile-layout,.form-layout{grid-template-columns:1fr;gap:30px}.profile-layout{padding-bottom:15px}.contact-panel{position:static}.prose{padding-top:28px}.form-box{padding:24px}.form-grid{grid-template-columns:1fr}.stat-grid{gap:10px}.stat{padding:14px}.stat strong{font-size:30px}.stat span{font-size:10px}.admin-header{align-items:start;flex-direction:column;gap:10px}.admin-header h1{font-size:38px}.edit-form{padding:20px}.service-list{grid-template-columns:1fr}.breadcrumbs{margin-bottom:25px}.profile-layout .source-box{margin-top:25px}}
@media(prefers-reduced-motion:no-preference){.city-tile,.button{transition:background .15s,transform .15s,border-color .15s}}
@media(max-width:480px){.hero .search-form{flex-wrap:wrap}.hero .search-form label,.hero .search-form label:first-child{flex:1 1 calc(50% - 8px)}.hero .search-form label:nth-child(2){border-right:0}.hero .search-form .button{width:100%;margin:8px 0 0;font-size:14px}.hero .search-form select{font-size:13px}.empty-state{padding:35px 20px}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.glance{margin:10px 0 30px;max-width:820px}.glance h2{font:600 13px var(--sans);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:12px}.glance ul{margin:0;padding-left:20px;font-size:15px}.glance li{margin:6px 0}.glance a{display:inline;font-size:inherit;margin:0}
.compare-table{font-size:14px;background:var(--white)}.compare-table tbody th{text-transform:none;letter-spacing:0;font-size:14px;background:transparent;min-width:190px}.compare-table tbody th small{display:block;color:var(--muted);font-size:11px;font-weight:400}.compare-table td{min-width:110px}
.section>details{border-bottom:1px solid var(--line);padding:18px 0;max-width:820px}.section>details summary{font-weight:600;cursor:pointer}.section>details p{margin:14px 0 0}
.sibling-list{columns:2;padding-left:20px;font-size:15px}.sibling-list li{margin:4px 0}
.badge-preview{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:20px 0}.share-preview{display:block;width:100%;max-width:720px;height:auto;margin:16px 0;border:1px solid var(--line);border-radius:12px}.share-kit h2{margin-top:36px}.code-box{width:100%;min-height:110px;font:13px/1.5 ui-monospace,Menlo,monospace;padding:14px;border:1px solid var(--line);border-radius:7px;background:var(--white)}
@media(max-width:760px){.sibling-list{columns:1}.compare-table tbody th{min-width:150px}}
.compare-table td:last-child{white-space:nowrap}
.table-scroll+h2{margin-top:55px}
@media(max-width:760px){.city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.city-tile{min-width:0}.city-tile>span:first-child{min-width:0;overflow-wrap:break-word;hyphens:auto;gap:8px}.city-tile>span:first-child .icon{flex-shrink:0}}
.brand-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-logo img{display:block;width:320px;height:auto}.brand-name{display:none}.header-inner{min-height:132px}
.footer-logo{display:inline-block;background:var(--cream);border-radius:14px;padding:14px 18px}.footer-logo img{display:block;width:320px;max-width:100%;height:auto}
@media(max-width:760px){.header-inner{min-height:85px}.brand-logo img{width:48px;height:48px}.brand-name{display:block;font:700 26px/1 var(--sans);letter-spacing:-1px;color:var(--ink)}.footer-logo{padding:10px 8px}}
.groomer-map{height:480px;border-radius:12px;border:1px solid var(--line);background:var(--sage);margin:0 0 26px;overflow:hidden;z-index:0}.map-loading{padding:20px;color:var(--muted);font-size:14px}
.town-marker span{display:block;width:18px;height:18px;border-radius:50%;background:var(--orange);border:3px solid var(--ink);box-shadow:0 1px 4px #183e3550}.town-marker:focus span,.town-marker:hover span{background:var(--ink);color:var(--cream)}
.map-popup{display:flex;flex-direction:column;gap:3px;font:14px/1.4 var(--sans);color:var(--ink)}.map-popup strong{font-size:15px}.map-popup span{color:var(--muted)}.map-popup a{color:var(--ink);font-weight:600}
.city-cta{display:flex;align-items:center;gap:8px;margin:24px 0 0;font-size:15px}.city-cta a{font-weight:600}
@media(max-width:760px){.groomer-map{height:320px}}
.signup-box{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;background:var(--sage);border-radius:12px;padding:40px;margin-top:60px;margin-bottom:30px}.signup-box h2{margin-bottom:12px}.signup-box p{font-size:15px;margin:0}
.signup-form{display:flex;flex-direction:column;gap:10px}.signup-form label span{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.signup-form input[type=email]{width:100%;padding:14px;border:1px solid var(--line);border-radius:7px;background:var(--white)}.signup-form small{color:var(--muted);font-size:13px}
progress{width:100%;max-width:260px;height:10px;accent-color:var(--ink)}
@media(max-width:760px){.signup-box{grid-template-columns:1fr;padding:26px;gap:18px}}
.town-cluster span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--ink);color:var(--cream);border:3px solid var(--orange);font:700 14px/1 var(--sans);box-shadow:0 2px 6px #183e3550}
.signup-form select{width:100%;padding:13px;border:1px solid var(--line);border-radius:7px;background:var(--white);font-size:15px}
.town-search{position:relative}.town-search input{width:100%}.town-list{position:absolute;z-index:1000;top:calc(100% + 8px);left:0;width:max(100%,300px);max-width:calc(100vw - 32px);max-height:320px;overflow-y:auto;background:var(--white);border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 30px #183e3524;padding:6px;text-transform:none;letter-spacing:0;font-weight:400}
.town-group{position:sticky;top:-6px;background:var(--white);padding:9px 10px 5px;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.town-option{padding:9px 10px;border-radius:6px;font-size:15px;line-height:1.3;cursor:pointer;color:var(--ink)}.town-option:hover,.town-option.active{background:var(--sage)}.town-option[aria-selected=true]{font-weight:700}.town-option mark{background:none;color:inherit;font-weight:700;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}
.town-none{margin:0;padding:10px;font-size:14px;color:var(--muted)}.town-none a{color:var(--ink);font-weight:600}
.signup-form .town-search input{padding:14px;border:1px solid var(--line);border-radius:7px;background:var(--white);font-size:16px;color:var(--ink)}
.signup-form .town-search::after,.search-form .town-search::after{content:"";position:absolute;right:16px;top:50%;width:7px;height:7px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-70%) rotate(45deg);pointer-events:none}.search-form .town-search::after{right:2px;width:6px;height:6px}.signup-form .town-search input{padding-right:40px}.search-form .town-search input{padding-right:18px}
.search-form .town-search input::placeholder{color:var(--ink);opacity:.75}
.metro-table th[scope=row] a{font-weight:700;text-decoration:none}.metro-table th[scope=row] small{display:block;color:var(--muted);font-weight:400;font-size:12px}.metro-table td,.metro-table th[scope=row]{font-size:15px;white-space:nowrap}.metro-table tbody tr:hover{background:#f6f5ea}
.benefit-bar .icon{flex:none}
.card-near{display:flex;align-items:center;gap:7px;margin:0 0 10px;font-size:13px;font-weight:700;color:#396d52}.card-near .icon{width:15px;height:15px;flex:none}
.zip-form{max-width:640px;margin-top:22px}.zip-form label:first-child{flex:.7}
.ask-callout{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:var(--sage);border-radius:9px;padding:13px 16px;margin:0 0 22px;font-size:14px}.ask-callout .icon{width:17px;height:17px}.ask-callout a{font-weight:700;margin-left:auto;display:inline-flex;align-items:center;gap:6px}
.ask-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px;align-items:start}.ask-form,.ask-output{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:26px}.ask-form h2,.ask-output h2{font-size:22px;margin:0 0 16px}.ask-output h2+ul{margin-top:0}.ask-output h2:not(:first-child){margin-top:30px}
.ask-form label{display:block;font-size:13px;font-weight:700;margin-bottom:14px}.ask-form input,.ask-form select,.ask-form textarea{display:block;width:100%;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:7px;background:#fff;font-weight:400;font-size:16px;color:var(--ink)}
.ask-output textarea{width:100%;padding:14px;border:1px solid var(--line);border-radius:7px;font-size:16px;line-height:1.5;background:#fff;color:var(--ink);margin-bottom:12px}.ask-copied{font-size:14px;color:#396d52;font-weight:700;margin-left:8px}
.ask-list{list-style:none;padding:0;margin:0}.ask-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.ask-list strong{font-size:15px}.ask-list small{display:block;color:var(--muted);font-size:12px}
.ask-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ask-actions a{font-size:13px;font-weight:700;text-decoration:none;border:1px solid var(--ink);border-radius:6px;padding:6px 11px;white-space:nowrap}.ask-actions a.ask-sms{background:var(--ink);color:var(--cream)}
@media(max-width:860px){.ask-layout{grid-template-columns:1fr;gap:22px}.ask-list li{flex-direction:column;align-items:flex-start}.ask-actions{justify-content:flex-start}}
.owner-facts{border:1px solid var(--line);border-radius:9px;padding:16px 18px 4px;margin:0 0 18px}.owner-facts legend{font-weight:700;padding:0 6px}.owner-facts .muted{margin-top:0;font-size:13px}.form-grid.three{grid-template-columns:1fr 1fr 1fr}
@media(max-width:760px){.form-grid.three{grid-template-columns:1fr}}
.groomer-card .tags .fact-tag{background:#fff4e8;border-color:#f3d2b5}
.know-list{list-style:none;padding:0;margin:0 0 8px}.know-list li{display:flex;gap:9px;align-items:flex-start;padding:5px 0}.know-list .icon{width:17px;height:17px;flex:none;margin-top:4px;color:#396d52}
.size-table{margin:14px 0 6px}.zip-list{margin:14px 0 4px}.zip-list p{font-size:14px;color:var(--muted)}
.need-chips{flex-basis:100%;display:flex;flex-wrap:wrap;gap:8px;border:0;padding:10px 6px 2px;margin:0}.need-chips legend{float:left;font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:700;margin:7px 8px 0 4px;padding:0}
.search-form .need-chips label{flex:none;padding:0;border:0;min-width:0}.need-chips input{position:absolute;opacity:0;width:1px;height:1px}.need-chips span{display:inline-block;border:1px solid var(--line);border-radius:99px;padding:5px 12px;font-size:13px;cursor:pointer;background:var(--white)}
.need-chips input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--cream)}.need-chips input:focus-visible+span{outline:2px solid var(--orange);outline-offset:2px}
.search-form.compact{flex-wrap:wrap}
.search-form .need-chips label>span{display:inline-block;text-transform:none;letter-spacing:0;font-weight:500;font-size:13px;margin:0}
.size-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px}.size-toggle>span{font-size:13px;font-weight:700;margin-right:4px}.size-toggle button{border:1px solid var(--line);background:var(--white);border-radius:99px;padding:6px 13px;font-size:13px;color:var(--ink);display:inline-flex;gap:6px;align-items:baseline}.size-toggle button small{color:var(--muted);font-size:11px}.size-toggle button[aria-pressed=true]{background:var(--ink);color:var(--cream);border-color:var(--ink)}.size-toggle button[aria-pressed=true] small{color:#c6d6bf}
.size-table td small{color:var(--muted);font-size:12px}
.topic-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;font-size:14px}.topic-links strong{margin-right:4px}.topic-links a{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--white);border-radius:99px;padding:5px 12px;text-decoration:none;font-weight:600}.topic-links a span{font-size:12px;color:var(--muted);font-weight:700}.topic-links a:hover{border-color:var(--ink)}
.reply-check{position:fixed;right:16px;bottom:16px;z-index:1200;width:min(360px,calc(100vw - 32px));background:var(--white);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 40px #183e3530;padding:18px 18px 12px}.reply-check h2{font-size:20px;margin:0 0 6px}.reply-check p{font-size:13px;margin:0 0 10px;color:var(--muted)}
.reply-check ul{list-style:none;margin:0 0 6px;padding:0;max-height:240px;overflow:auto}.reply-check li{display:flex;align-items:center;gap:6px;padding:7px 0;border-top:1px solid var(--line);font-size:14px}.reply-check li span{flex:1;font-weight:600}
.reply-check li button{border:1px solid var(--ink);background:var(--white);color:var(--ink);border-radius:6px;padding:4px 12px;font-size:13px;font-weight:700}.reply-check li button:first-of-type{background:var(--ink);color:var(--cream)}
.reply-later{background:none;border:0;color:var(--muted);font-size:13px;text-decoration:underline;padding:4px 0}.reply-close{position:absolute;top:8px;right:10px;background:none;border:0;font-size:22px;line-height:1;color:var(--muted)}
.groomer-card .tags .reply-tag{background:#e7f1e4;border-color:#bcd6b5}
.related-list{list-style:none;padding:0;margin:0 0 14px;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.related-list li{padding:10px 0;border-bottom:1px solid var(--line)}.related-list a{text-decoration:none}.related-list strong{font-size:15px}.related-list small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
@media(max-width:760px){.related-list{grid-template-columns:1fr}}
.guide-group{margin-top:54px}
.radius-form{display:flex;gap:8px;align-items:center}.radius-form select{padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:var(--white);font-size:15px;color:var(--ink)}
.nearby-towns{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px}.nearby-towns strong{margin-right:4px}.nearby-towns a{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);background:var(--white);border-radius:99px;padding:4px 11px;text-decoration:none;font-weight:600}.nearby-towns a span{color:var(--muted);font-size:12px}
.report-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:30px 0}.report-stats div{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:20px}.report-stats strong{display:block;font:700 34px/1.1 var(--serif)}.report-stats span{display:block;margin-top:6px;color:var(--muted);font-size:14px}.report h3{margin:24px 0 4px}@media(max-width:700px){.report-stats{grid-template-columns:1fr 1fr}}
.town-glance{display:flex;flex-wrap:wrap;gap:8px 10px;list-style:none;padding:0;margin:4px 0 22px}.town-glance li{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:14px;color:var(--muted)}.town-glance strong{color:var(--ink)}
.owner h2{margin-top:44px}.owner .stat-grid{grid-template-columns:repeat(4,1fr)}.owner-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 16px}.owner-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin:18px 0}.owner-photos figure{margin:0}.owner-photos img,.groomer-photos img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:8px;border:1px solid var(--line)}.owner-photos figcaption{font-size:13px;color:var(--muted)}.owner-photos button{background:none;border:0;padding:0;font-size:13px}.plan-buttons{display:flex;flex-wrap:wrap;gap:12px}.groomer-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:22px 0}@media(max-width:700px){.owner .stat-grid{grid-template-columns:1fr 1fr}.owner-checks{grid-template-columns:1fr 1fr}}
.brand-towns{margin:10px 0;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:4px 16px}.brand-towns summary{font-weight:600;padding:10px 0;cursor:pointer}.brand-towns .admin-table{margin-bottom:12px}.brand-page h3{margin-top:26px}
@media(pointer:coarse){.leaflet-touch .leaflet-bar a{width:44px;height:44px;line-height:44px;font-size:24px}}
.report-graphics{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin:18px 0 10px}.report-graphics a{display:block;font-size:14px;font-weight:600;text-decoration:none}.report-graphics img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:8px;margin-bottom:6px}
.tips{padding-left:20px}.tips li{margin:6px 0}.type-tiles{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:24px 0}.type-tiles a{display:block;background:var(--white);border:1px solid var(--line);border-radius:10px;padding:20px;text-decoration:none}.type-tiles strong{display:block;font:600 22px/1.2 var(--serif)}.type-tiles span{color:var(--muted);font-size:14px}
.breed-links{display:flex;flex-wrap:wrap;gap:8px}.breed-links a{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:14px;text-decoration:none}
.answer-box{background:var(--sage);border-radius:10px;padding:18px 22px;margin:18px 0 8px;line-height:1.55}
.price-graphic{margin:28px 0}.price-graphic img{width:100%;height:auto;border:1px solid var(--line);border-radius:10px}.price-graphic figcaption{font-size:14px;color:var(--muted);margin-top:6px}
.fresh-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px 40px}.fresh h3{font-size:16px;margin:0 0 10px}.welcome-note{display:flex;align-items:center;gap:8px;background:var(--sage);border-radius:10px;padding:12px 16px;margin:6px 0 18px;font-size:15px}.welcome-note a{font-weight:600}
.claimed-badge{display:inline-flex;align-items:center;gap:6px;background:var(--orange);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.2px;text-transform:none;padding:5px 12px 5px 6px;border-radius:999px;transform:rotate(-3deg);box-shadow:2px 3px 0 #173e3222;white-space:nowrap}.claimed-badge .icon{width:18px;height:18px;padding:2px;background:var(--white);border-radius:50%;stroke-width:2.2}.claimed-badge.big{font-size:15px;padding:8px 18px 8px 9px;margin:0 0 20px;box-shadow:3px 4px 0 #173e3222}.claimed-badge.big .icon{width:26px;height:26px;padding:3px}@media (prefers-reduced-motion:no-preference){.claimed-badge{transition:transform .2s}.claimed-badge:hover{transform:rotate(2deg) scale(1.06)}}.groomer-card.is-claimed{border:2px solid var(--orange);box-shadow:4px 5px 0 #f3ad7840}
@media(max-width:760px){.section-heading:has(.radius-form){flex-direction:column;align-items:stretch}.radius-form select{flex:1;min-width:0}}
.fresh-counts{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-wrap:wrap;gap:10px}.fresh-counts li{display:inline-flex;align-items:center;gap:7px;background:var(--white);border:1px solid var(--line);border-radius:999px;padding:7px 15px;font-size:13px}.fresh-counts strong{font:20px/1 var(--serif)}.fresh-counts li.hot{background:var(--orange);border-color:var(--orange);transform:rotate(-1.5deg);box-shadow:2px 3px 0 #173e3222}.fresh-counts .icon{width:20px;height:20px;padding:2px;background:var(--white);border-radius:50%}
.calc-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start;margin:10px 0 40px}.calc-form{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:26px;display:grid;gap:16px}.calc-form label{display:grid;gap:6px;font-size:13px;font-weight:600}.calc-form select{padding:11px 12px;border:1px solid #cdd4c9;border-radius:6px;background:var(--white);font-size:15px;color:var(--ink)}.calc-form fieldset{border:0;padding:0;margin:0}.calc-form legend{font-size:13px;font-weight:600;margin-bottom:6px}.calc-sizes{display:grid;grid-template-columns:1fr 1fr;gap:8px}.calc-pick{display:flex!important;align-items:center;gap:8px;border:1px solid var(--line);border-radius:7px;padding:10px 12px;font-weight:500!important;cursor:pointer}.calc-pick:has(input:checked){border-color:var(--ink);background:var(--sage)}.calc-result{background:var(--ink);color:var(--cream);border-radius:12px;padding:30px}.calc-result .eyebrow{color:#c6d6bf}.calc-big{font:clamp(54px,7vw,84px)/1 var(--serif);margin:6px 0 16px;letter-spacing:-2px}.calc-tip strong{color:var(--orange)}.calc-result .muted{color:#c1d0bf}.calc-result .text-link{border-color:var(--cream)}@media(max-width:760px){.calc-layout{grid-template-columns:1fr}.calc-sizes{grid-template-columns:1fr}}
.heading-links{display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:end}
.breed-year{background:var(--sage);border-radius:10px;padding:18px 22px;margin:8px 0 26px;max-width:720px}.breed-year .eyebrow{margin-bottom:6px}.breed-year p{margin:0 0 8px}.breed-year strong{font:28px var(--serif)}
.is-busy{cursor:progress;pointer-events:none;opacity:.9}.spinner{display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:fm-spin .7s linear infinite}@keyframes fm-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.5s}}
.calc-band{display:grid;grid-template-columns:1fr minmax(280px,420px);gap:40px;align-items:center}.calc-band h2{margin:6px 0 12px}@media (max-width:760px){.calc-band{grid-template-columns:1fr;gap:20px}}
@media (max-width:420px){.city-tile>span:first-child{font-size:20px}}
