:root { --ink:#00685f; --navy:#004c47; --cream:#f3f1e9; --paper:#fcfbf7; --sage:#73a49a; --mint:#d4e8df; --orange:#945238; --lime:#dceca5; --line:rgba(0,104,95,.18); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; overflow-x:hidden; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
button, input, textarea { font:inherit; }
.skip { position:fixed; top:8px; left:8px; z-index:100; padding:10px 16px; background:white; transform:translateY(-150%); }
.skip:focus { transform:none; }
.top-note { min-height:34px; padding:8px 5vw; display:flex; justify-content:center; gap:10px; align-items:center; background:var(--navy); color:white; font-size:10px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.top-note span { color:var(--lime); }.top-note a { margin-left:8px; color:var(--lime); border-bottom:1px solid currentColor; }
.site-header { height:88px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); background:rgba(251,253,254,.88); backdrop-filter:blur(18px); position:sticky; top:0; z-index:20; }
.brand { display:flex; align-items:center; gap:12px; }
.brand-mark { width:48px; height:48px; display:block; object-fit:cover; border-radius:50%; border:2px solid white; box-shadow:0 0 0 1px var(--line); }
.brand strong { display:block; font:700 18px Georgia,serif; }
.brand small { display:block; margin-top:3px; color:#315a55; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
nav { display:flex; align-items:center; gap:32px; font-size:13px; font-weight:700; }
nav a:not(.nav-call) { position:relative; }
nav a:not(.nav-call)::after { content:""; position:absolute; left:0; bottom:-5px; width:100%; height:1px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .25s; }
nav a:hover::after, nav a:focus-visible::after { transform:scaleX(1); }
.nav-call { padding:13px 20px; border:1px solid var(--ink); border-radius:99px; transition:.2s; display:flex; gap:20px; }
.nav-call:hover { background:var(--ink); color:white; }
.menu-button { display:none; background:none; border:1px solid var(--ink); border-radius:99px; padding:9px 14px; }
.hero { min-height:700px; display:grid; grid-template-columns:1.08fr .92fr; overflow:hidden; }
.hero-copy { padding:90px 6vw 80px; position:relative; background:radial-gradient(circle at 15% 15%,rgba(212,232,223,.45),transparent 36%); }
.hero-index { position:absolute; top:35px; right:5vw; color:var(--sage); font:italic 12px Georgia,serif; }
.eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 30px; font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow span { width:28px; height:1px; background:currentColor; }
h1,h2 { margin:0; font-family:Georgia,"Times New Roman",serif; font-weight:400; line-height:.95; letter-spacing:-.045em; }
h1 { max-width:720px; font-size:clamp(64px,7vw,116px); }
h1 em { color:var(--orange); font-weight:400; }
.hero-seo-title { max-width:620px; margin:0 0 16px; color:#376a64; font:800 12px/1.35 Arial,Helvetica,sans-serif; letter-spacing:.09em; text-transform:uppercase; }
.hero-slogan { max-width:720px; margin:0; font:400 clamp(64px,7vw,116px)/.95 Georgia,"Times New Roman",serif; letter-spacing:-.045em; }
.hero-slogan em { color:var(--orange); font-weight:400; }
.lede { max-width:570px; margin:35px 0; font:21px/1.55 Georgia,serif; color:#376a64; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.button { min-height:50px; display:inline-flex; align-items:center; justify-content:center; gap:32px; padding:0 24px; border-radius:99px; border:1px solid var(--ink); font-weight:800; font-size:13px; cursor:pointer; transition:transform .2s,background .2s,color .2s; }
.button:hover { transform:translateY(-2px); }
.primary { background:var(--ink); color:white; border-color:var(--ink); }
.primary:hover { background:var(--navy); }
.ghost:hover { background:var(--ink); color:white; }
.micro { margin-top:20px; font-size:11px; opacity:.6; }
.hero-visual { position:relative; min-height:650px; background:var(--mint); display:grid; place-items:center; overflow:hidden; isolation:isolate; }
.hero-photo picture { display:contents; }.hero-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:64% center; z-index:-2; transform:scale(1.01); transition:transform 1.2s ease; }.hero-photo:hover img { transform:scale(1.045); }
.photo-shade { position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(0,45,41,.03) 45%,rgba(0,45,41,.78) 100%); }
.person-caption { position:absolute; left:6%; bottom:19%; max-width:300px; padding:13px 16px; background:rgba(252,251,247,.91); color:var(--navy); border-left:3px solid var(--orange); box-shadow:0 14px 34px rgba(0,61,57,.18); backdrop-filter:blur(8px); }.person-caption strong,.person-caption span { display:block; }.person-caption strong { font:18px/1.1 Georgia,serif; }.person-caption span { margin-top:5px; font-size:9px; line-height:1.4; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.photo-caption { position:absolute; left:6%; right:6%; bottom:6%; display:grid; grid-template-columns:1fr auto; gap:5px 25px; align-items:end; color:white; }.photo-caption span { grid-column:1/-1; font-size:9px; font-weight:800; letter-spacing:.17em; text-transform:uppercase; color:var(--lime); }.photo-caption strong { font:28px Georgia,serif; }.photo-caption a { padding-bottom:3px; border-bottom:1px solid rgba(255,255,255,.7); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.hero-visual::before { content:""; position:absolute; inset:0; background:linear-gradient(115deg,transparent 47%,rgba(255,255,255,.22) 47% 52%,transparent 52%); }
.giant-word { position:absolute; left:-.08em; bottom:-.18em; z-index:-1; color:rgba(255,255,255,.28); font:900 250px/1 Arial,sans-serif; letter-spacing:-.1em; }
.halo { position:absolute; border:1px solid rgba(25,45,101,.2); border-radius:50%; animation:slowspin 22s linear infinite; }
.halo::after { content:""; position:absolute; width:12px; height:12px; border-radius:50%; background:var(--lime); left:13%; top:12%; box-shadow:0 0 0 8px rgba(217,239,99,.18); }
.halo-one { width:520px; height:520px; }
.halo-two { width:720px; height:720px; }
.portrait-card { position:relative; width:min(380px,68%); height:470px; padding:25px; background:var(--navy); color:white; border-radius:190px 190px 14px 14px; display:flex; flex-direction:column; justify-content:space-between; box-shadow:0 45px 90px rgba(25,45,101,.3); transform:rotate(-1deg); animation:float 6s ease-in-out infinite; }
.portrait-label { font-size:10px; letter-spacing:.16em; text-transform:uppercase; text-align:center; }
.pet-silhouette { align-self:center; width:210px; height:230px; border-radius:110px 110px 24px 24px; background:var(--mint); display:grid; place-items:center; overflow:hidden; transform:rotate(-4deg); border:6px solid rgba(255,255,255,.2); }
.pet-silhouette img { width:100%; height:100%; object-fit:cover; transform:rotate(4deg) scale(1.12); }
.portrait-card p { font:italic 32px/1.05 Georgia,serif; margin:0 0 10px; text-align:center; }
.open-card { position:absolute; right:6%; bottom:11%; background:var(--cream); padding:18px 22px; box-shadow:0 14px 35px rgba(22,41,34,.12); transform:rotate(3deg); }
.open-card span,.open-card small { display:block; font-size:9px; text-transform:uppercase; letter-spacing:.14em; }
.open-card strong { display:block; margin:5px 0; font:20px Georgia,serif; }
.care-stamp { position:absolute; top:7%; right:6%; width:128px; height:128px; border-radius:50%; background:rgba(252,251,247,.93); color:var(--navy); display:grid; place-items:center; text-align:center; transform:rotate(5deg); box-shadow:0 18px 40px rgba(0,76,71,.2); backdrop-filter:blur(7px); }
.care-stamp b { position:absolute; top:13px; font-size:15px; color:var(--orange); }.care-stamp span { font:italic 14px/1.14 Georgia,serif; }
.orbit-dot { position:absolute; border-radius:50%; background:var(--orange); }.dot-one { width:22px;height:22px;left:9%;top:16%; }.dot-two { width:10px;height:10px;right:14%;bottom:9%;background:var(--lime); }
.trust-strip { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.trust-strip>div { display:flex; gap:18px; padding:30px 5vw; border-right:1px solid var(--line); }
.trust-strip>div:last-child { border:0; }
.trust-strip span { color:var(--orange); font:italic 17px Georgia,serif; }
.trust-strip p { margin:0; font-size:11px; line-height:1.5; }
.trust-strip strong { display:block; font:18px Georgia,serif; margin-bottom:4px; }
.marquee { overflow:hidden; background:var(--lime); color:var(--navy); border-bottom:1px solid rgba(0,76,71,.25); transform:rotate(-1deg) scale(1.02); }
.marquee div { width:max-content; display:flex; align-items:center; gap:32px; padding:15px 0; animation:marquee 22s linear infinite; }
.marquee span { font-size:12px; font-weight:900; letter-spacing:.18em; }.marquee i { font-style:normal; }
.section { padding:120px 6vw; }
.section-head { display:grid; grid-template-columns:.55fr 1.25fr .7fr; align-items:end; gap:50px; margin-bottom:70px; }
.section-head .eyebrow { align-self:start; }
.section-head h2,.about h2,.contact h2 { font-size:clamp(48px,5vw,78px); }
.section-head>p:last-child { margin:0; font-size:14px; line-height:1.7; color:#53645e; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.service-card { min-height:340px; padding:34px; border:1px solid var(--line); border-radius:8px; display:flex; flex-direction:column; position:relative; overflow:hidden; background:white; transition:background .35s,transform .35s,color .35s,box-shadow .35s; }
.service-card::after { content:""; position:absolute; width:170px; height:170px; border-radius:50%; background:var(--mint); right:-100px; top:-100px; transition:transform .4s; }
.service-card:hover { background:var(--navy); color:white; transform:translateY(-8px) rotate(-.4deg); box-shadow:0 26px 65px rgba(0,76,71,.2); }
.service-card:hover::after { transform:scale(1.4); }.service-card:hover p { color:#cbd6e9; }.service-card:hover .card-symbol { background:var(--lime); color:var(--navy); transform:rotate(90deg); }
.service-card>span { color:var(--orange); font:italic 15px Georgia,serif; }
.card-symbol { position:absolute; right:28px; top:28px; width:36px; height:36px; border:1px solid currentColor; border-radius:50%; display:grid; place-items:center; font:24px Georgia,serif; transition:.35s; z-index:1; }
.service-card h3 { margin:45px 0 16px; font:27px/1.1 Georgia,serif; }
.service-card p { margin:0; font-size:13px; line-height:1.65; color:#53645e; }
.service-card a { margin-top:auto; display:flex; justify-content:space-between; padding-top:18px; border-top:1px solid var(--line); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.about { padding-top:0; display:grid; grid-template-columns:.85fr 1.15fr; gap:9vw; align-items:center; }
.about-art { aspect-ratio:4/5; background:var(--sage) url('/bialostoczek-wet-banner.png') center/cover no-repeat; border-radius:50% 50% 10px 10px; display:flex; flex-direction:column; align-items:center; justify-content:center; color:var(--ink); position:relative; overflow:hidden; }
.about-art::after { content:""; position:absolute; inset:0; width:auto!important; height:auto!important; border:0!important; border-radius:inherit!important; background:linear-gradient(180deg,rgba(48,75,136,.05),rgba(37,56,109,.62)); }
.about-art::before { content:""; position:absolute; width:70%; height:70%; border:1px solid rgba(255,255,255,.45); border-radius:50%; }
.cross { z-index:1; font:100px/1 Georgia,serif; color:var(--cream); }
.about-art p { z-index:1; margin:10px; text-align:center; font:italic 30px/1.1 Georgia,serif; }
.about-photo { aspect-ratio:2/3; margin:0; border-radius:12px; background:#e8ddc8; display:block; }
.about-photo::before,.about-photo::after { display:none; }
.about-photo picture { display:block; width:100%; height:100%; }.about-photo img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
.about-photo figcaption { position:absolute; left:26px; right:26px; bottom:26px; padding:18px 22px; display:flex; align-items:baseline; justify-content:space-between; gap:16px; border:1px solid rgba(255,255,255,.52); border-radius:8px; background:rgba(0,61,57,.82); color:white; backdrop-filter:blur(10px); }
.about-photo figcaption strong { font:italic 28px/1 Georgia,serif; }
.about-photo figcaption span { color:var(--mint); font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.about-copy>p:not(.eyebrow) { max-width:650px; margin:34px 0; font-size:16px; line-height:1.75; color:#53645e; }
.patient-list { display:flex; flex-wrap:wrap; gap:8px; }
.patient-list span { padding:10px 15px; border:1px solid var(--line); border-radius:99px; font-size:11px; font-weight:700; }
.about aside { margin-top:38px; padding:25px; border-left:3px solid var(--orange); background:var(--cream); }
.about aside strong { font:19px Georgia,serif; }.about aside p { margin:8px 0 0; font-size:12px; line-height:1.6; }
.grooming { scroll-margin-top:110px; margin:0 3vw 120px; display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; background:#213f3b; color:white; border-radius:14px; overflow:hidden; box-shadow:0 28px 70px rgba(0,76,71,.14); }
.grooming-showcase { min-height:800px; padding:54px; position:relative; display:flex; flex-direction:column; justify-content:flex-end; background:radial-gradient(circle at 24% 20%,rgba(220,236,165,.28),transparent 24%),linear-gradient(145deg,#6c9e93,#315f59); overflow:hidden; }
.grooming-showcase::after { content:"+"; position:absolute; left:-40px; top:95px; color:rgba(255,255,255,.11); font:520px/.7 Georgia,serif; }
.grooming-index { position:absolute; top:50px; left:54px; color:var(--lime); font:italic 13px Georgia,serif; letter-spacing:.1em; }
.grooming-orbit { position:absolute; right:10%; top:13%; width:190px; height:190px; border:1px solid rgba(255,255,255,.42); border-radius:50%; display:grid; place-items:center; animation:slowspin 18s linear infinite; }
.grooming-orbit::before,.grooming-orbit::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.24); border-radius:50%; }.grooming-orbit::before { width:130px;height:130px; }.grooming-orbit::after { width:70px;height:70px; }
.grooming-orbit span { color:var(--lime); font-size:24px; }
.grooming-showcase>p { margin:0 0 22px; color:var(--lime); font-size:11px; font-weight:900; line-height:1.5; letter-spacing:.14em; text-transform:uppercase; position:relative; z-index:1; }
.grooming-showcase>strong { margin-left:-.06em; font:900 clamp(62px,7.4vw,118px)/.78 Arial,sans-serif; letter-spacing:-.09em; writing-mode:vertical-rl; transform:rotate(180deg); opacity:.92; position:relative; z-index:1; }
.grooming-showcase.grooming-photo { min-height:0; padding:0; display:flex; align-items:center; background:#f0e4d7; }
.grooming-showcase.grooming-photo::after { display:none; }
.grooming-photo picture { display:block; width:100%; }.grooming-photo img { width:100%; height:auto; display:block; }
.grooming-copy { padding:58px 5vw; background:var(--cream); color:var(--navy); }
.grooming-copy h2 { font-size:clamp(46px,4.5vw,68px); }.grooming-copy h2 em { color:var(--orange); font-weight:400; }
.grooming-lede { margin:32px 0 45px; max-width:690px; color:#53645e; font:21px/1.6 Georgia,serif; }
.groomer-profile { padding:34px; background:white; border:1px solid var(--line); }
.groomer-heading { display:flex; align-items:center; gap:20px; margin-bottom:25px; }.groomer-heading>span { flex:0 0 66px; width:66px; height:66px; border-radius:50%; background:var(--lime); display:grid; place-items:center; font:italic 20px Georgia,serif; }.groomer-heading small { color:var(--orange); font-size:9px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }.groomer-heading h3 { margin:6px 0 0; font:31px/1.05 Georgia,serif; }
.groomer-profile>p { margin:18px 0 0; color:#53645e; font-size:13px; line-height:1.75; }
.grooming-contact { margin-top:18px; padding:28px 32px; display:grid; grid-template-columns:1fr .85fr; gap:35px; align-items:center; background:var(--lime); }
.grooming-contact small { display:block; margin-bottom:7px; font-size:9px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.grooming-contact a { display:flex; align-items:center; justify-content:space-between; font:clamp(27px,3vw,44px)/1 Georgia,serif; }.grooming-contact a span { font-family:Arial,sans-serif; font-size:18px; }
.grooming-contact p { margin:0; padding-left:30px; border-left:1px solid rgba(0,76,71,.25); font-size:11px; line-height:1.6; }
.marketing { scroll-margin-top:110px; margin:0 3vw 120px; display:grid; grid-template-columns:.9fr 1.1fr; align-items:stretch; border-radius:14px; overflow:hidden; background:var(--navy); color:white; box-shadow:0 28px 70px rgba(0,76,71,.14); }
.marketing-photo { background:#f1e7dc; }
.marketing-photo picture { display:block; width:100%; }.marketing-photo img { width:100%; height:auto; display:block; }
.marketing-art { min-height:760px; padding:52px; position:relative; display:flex; flex-direction:column; justify-content:space-between; background:radial-gradient(circle at 78% 18%,rgba(217,239,99,.28),transparent 25%),linear-gradient(145deg,#00665f,#003f3b); overflow:hidden; }
.marketing-art::after { content:"✦"; position:absolute; right:-42px; bottom:-72px; color:rgba(255,255,255,.08); font:330px/1 Georgia,serif; }
.marketing-art>span { color:var(--lime); font-size:10px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.marketing-art>strong { align-self:center; color:white; font:italic clamp(110px,14vw,220px)/1 Georgia,serif; letter-spacing:-.12em; }
.marketing-art>p { margin:0; color:var(--mint); font:italic 25px/1.25 Georgia,serif; }
.marketing-copy { padding:62px 5vw; background:#edf3e4; color:var(--navy); }
.marketing-copy h2 { margin-bottom:42px; font-size:clamp(48px,5vw,78px); }.marketing-copy h2 em { color:var(--orange); font-weight:400; }
.marketing-heading { display:flex; align-items:center; gap:22px; margin-bottom:28px; padding-bottom:28px; border-bottom:1px solid rgba(0,76,71,.18); }
.marketing-heading>span { flex:0 0 70px; width:70px; height:70px; border-radius:50%; display:grid; place-items:center; background:var(--lime); font:italic 21px Georgia,serif; }
.marketing-heading small { color:var(--orange); font-size:9px; font-weight:900; letter-spacing:.11em; line-height:1.5; text-transform:uppercase; }
.marketing-heading h3 { margin:7px 0 0; font:clamp(28px,3vw,42px)/1.05 Georgia,serif; }
.marketing-copy>p { margin:18px 0 0; color:#53645e; font-size:14px; line-height:1.78; }
.marketing-copy blockquote { margin:30px 0 0; padding:26px 30px; border-left:3px solid var(--orange); background:white; font:italic 19px/1.55 Georgia,serif; }
.team { padding-top:20px; }
.team-heading { display:grid; grid-template-columns:1.3fr .7fr; gap:8vw; align-items:end; margin-bottom:60px; }
.team-heading h2 { font-size:clamp(52px,6vw,92px); }
.team-heading h2 em { color:var(--orange); font-weight:400; }
.team-heading>p { max-width:500px; margin:0 0 8px; color:#53645e; font-size:15px; line-height:1.75; }
.team-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:14px; }
.team-card { grid-column:span 2; min-height:350px; padding:28px; border:1px solid var(--line); border-radius:8px; background:white; position:relative; display:flex; flex-direction:column; overflow:hidden; transition:transform .3s,box-shadow .3s,background .3s,color .3s,border-color .3s; }
.team-card:hover { transform:translateY(-7px); box-shadow:0 24px 60px rgba(0,76,71,.14); }
.team-link { cursor:pointer; }
.team-link:hover,.team-link:focus-visible { border-color:var(--orange); }
.team-link:focus-visible { outline:3px solid var(--orange); outline-offset:4px; }
.team-card::after { content:"+"; position:absolute; right:-8px; bottom:-32px; color:var(--mint); font:180px/.8 Georgia,serif; z-index:0; }
.team-lead { background:var(--navy); color:white; }
.team-lead::after { color:rgba(220,236,165,.14); }
.team-number { align-self:flex-end; color:var(--orange); font:italic 15px Georgia,serif; }
.team-avatar { width:82px; height:82px; margin:14px 0 auto; border-radius:50%; background:var(--mint); color:var(--navy); display:grid; place-items:center; font:italic 24px Georgia,serif; position:relative; z-index:1; }
.team-lead .team-avatar { background:var(--lime); }
.team-badge { position:absolute; top:32px; left:125px; padding:7px 10px; border:1px solid rgba(220,236,165,.55); border-radius:99px; color:var(--lime); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.team-card h3 { width:100%; max-width:100%; margin:28px 0 8px; font:clamp(22px,1.65vw,27px)/1.08 Georgia,serif; overflow-wrap:anywhere; text-wrap:balance; position:relative; z-index:1; }
.team-card p { margin:0; color:var(--orange); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; position:relative; z-index:1; }
.team-lead p,.team-lead .team-number { color:var(--lime); }
.team-link-label { margin-top:18px; padding-top:14px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; color:var(--navy); font-size:10px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; position:relative; z-index:1; }
.team-link-label b { width:28px; height:28px; border-radius:50%; background:var(--mint); display:grid; place-items:center; transition:transform .25s; }
.team-link:hover .team-link-label b { transform:translateY(4px); }
.team-lead .team-link-label { color:white; border-color:rgba(255,255,255,.2); }
.team-lead .team-link-label b { background:var(--lime); color:var(--navy); }
.lead-profile { scroll-margin-top:110px; margin-top:70px; display:grid; grid-template-columns:.72fr 1.28fr; background:var(--navy); color:white; border-radius:12px; overflow:hidden; box-shadow:0 36px 90px rgba(0,76,71,.16); }
.lead-profile-intro { min-height:620px; padding:48px; position:relative; display:flex; flex-direction:column; justify-content:flex-end; background:radial-gradient(circle at 80% 12%,rgba(220,236,165,.22),transparent 28%),var(--navy); overflow:hidden; }
.lead-profile-intro::after { content:"+"; position:absolute; left:-25px; top:40px; color:rgba(212,232,223,.08); font:380px/.8 Georgia,serif; }
.profile-kicker { position:absolute; top:48px; left:48px; font-size:10px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--lime); }
.profile-monogram { position:absolute; top:72px; right:42px; width:92px; height:92px; border:1px solid rgba(220,236,165,.55); border-radius:50%; display:grid; place-items:center; color:var(--lime); font:italic 22px Georgia,serif; transform:rotate(7deg); z-index:1; }
.lead-profile-intro>p { margin:0 0 18px; color:var(--lime); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; position:relative; z-index:1; }
.lead-profile-intro h3 { margin:0; font:clamp(42px,4.5vw,72px)/.94 Georgia,serif; letter-spacing:-.04em; position:relative; z-index:1; }
.profile-role { max-width:440px; margin-top:28px; padding-top:22px; border-top:1px solid rgba(255,255,255,.2); color:#dbe7e2; font-size:11px; font-weight:700; line-height:1.55; letter-spacing:.07em; text-transform:uppercase; position:relative; z-index:1; }
.lead-profile-copy { padding:62px; background:var(--cream); color:var(--navy); }
.profile-lede { margin:0 0 42px; font:25px/1.5 Georgia,serif; }
.profile-detail { display:grid; grid-template-columns:120px 1fr; gap:28px; padding:28px 0; border-top:1px solid var(--line); }
.profile-detail>span { padding-top:3px; color:var(--orange); font-size:10px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.profile-detail p { margin:0; color:#53645e; font-size:14px; line-height:1.75; }
.lead-profile blockquote { margin:32px 0 0; padding:26px 30px; border-left:3px solid var(--orange); background:white; color:var(--navy); font:italic 20px/1.5 Georgia,serif; }
.specialist-profile { margin-top:22px; }
.specialist-profile .lead-profile-intro { background:radial-gradient(circle at 15% 18%,rgba(255,255,255,.16),transparent 25%),var(--sage); color:var(--navy); }
.specialist-profile .lead-profile-intro::after { color:rgba(255,255,255,.14); }
.specialist-profile .profile-kicker,.specialist-profile .lead-profile-intro>p { color:var(--navy); }
.specialist-profile .profile-monogram { border-color:rgba(0,76,71,.48); color:var(--navy); }
.specialist-profile .profile-role { border-color:rgba(0,76,71,.24); color:var(--navy); }
.specialist-profile .lead-profile-copy { background:var(--mint); }
.specialist-profile blockquote { background:var(--paper); }
.radiology-profile { margin-top:22px; }
.radiology-profile .lead-profile-intro { background:radial-gradient(circle at 82% 14%,rgba(255,255,255,.15),transparent 27%),var(--orange); color:white; }
.radiology-profile .lead-profile-intro::after { color:rgba(255,255,255,.12); }
.radiology-profile .profile-kicker,.radiology-profile .lead-profile-intro>p { color:white; }
.radiology-profile .profile-monogram { border-color:rgba(255,255,255,.58); color:white; }
.radiology-profile .profile-role { border-color:rgba(255,255,255,.28); color:white; }
.radiology-profile .lead-profile-copy { background:#f4e7df; }
.radiology-profile blockquote { background:var(--paper); }
.internal-profile { margin-top:22px; }
.internal-profile .lead-profile-intro { background:radial-gradient(circle at 80% 12%,rgba(220,236,165,.18),transparent 28%),#155e57; }
.internal-profile .lead-profile-copy { background:#edf3e4; }
.internal-profile blockquote { background:var(--paper); }
.care-profile { margin-top:22px; }
.care-profile .lead-profile-intro { background:radial-gradient(circle at 18% 16%,rgba(255,255,255,.18),transparent 26%),#4f8279; }
.care-profile .lead-profile-copy { background:#e7efec; }
.care-profile blockquote { background:var(--paper); }
.horse-profile { margin-top:22px; grid-template-columns:.9fr 1.1fr; align-items:stretch; }
.horse-profile .lead-profile-intro { background:radial-gradient(circle at 82% 13%,rgba(255,255,255,.15),transparent 26%),#8b6854; }
.horse-profile .lead-profile-copy { background:#f2e9df; }
.horse-profile blockquote { background:var(--paper); }
.profile-photo { overflow:hidden; background:#e8ddd0; display:flex; align-items:center; justify-content:center; }
.profile-photo picture { display:block; width:100%; }.profile-photo img { display:block; width:100%; height:auto; }
.photo-profile { grid-template-columns:.9fr 1.1fr; align-items:stretch; }
.lead-photo-profile .profile-photo { background:var(--cream); }
.lead-photo-profile .profile-kicker-inline { color:var(--orange); }
.radiology-profile.photo-profile .profile-kicker-inline { color:var(--orange); }
.internal-profile.photo-profile .profile-kicker-inline { color:#155e57; }
.care-profile.photo-profile .profile-kicker-inline { color:#4f8279; }
.profile-kicker-inline { margin:0 0 14px; color:#8b6854; font-size:11px; font-weight:800; letter-spacing:.1em; line-height:1.5; text-transform:uppercase; }
.lead-profile-copy .profile-name { margin:0 0 34px; color:var(--navy); font:clamp(42px,4vw,66px)/.96 Georgia,serif; letter-spacing:-.04em; }
.team-note { max-width:760px; margin:24px 0 0; color:#687771; font-size:10px; line-height:1.6; }
.care-path { margin:0 3vw 120px; padding:90px 6vw; background:var(--lime); color:var(--navy); border-radius:14px; display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; position:relative; overflow:hidden; }
.care-path::before { content:"03"; position:absolute; right:-.04em; bottom:-.28em; font:900 320px/1 Arial,sans-serif; color:rgba(255,255,255,.3); }
.care-path h2 { font-size:clamp(52px,6vw,88px); }.care-path h2 em { color:var(--orange); font-weight:400; }
.care-path ol { list-style:none; padding:0; margin:0; position:relative; z-index:1; }
.care-path li { display:grid; grid-template-columns:55px 1fr; gap:22px; padding:26px 0; border-top:1px solid rgba(25,45,101,.28); }
.care-path li:last-child { border-bottom:1px solid rgba(25,45,101,.28); }.care-path li>span { font:italic 16px Georgia,serif; }.care-path h3 { margin:0 0 8px; font:26px Georgia,serif; }.care-path li p { margin:0; max-width:470px; font-size:13px; line-height:1.6; }
.round-cta { position:absolute; left:42%; bottom:35px; width:130px; height:130px; border-radius:50%; background:var(--navy); color:white; display:flex; flex-direction:column; justify-content:center; align-items:center; font:italic 20px/1 Georgia,serif; transform:rotate(-8deg); transition:.3s; }.round-cta b { position:absolute; right:25px; top:24px; color:var(--lime); }.round-cta:hover { transform:rotate(0) scale(1.07); }
.contact { background:var(--navy); color:white; display:grid; grid-template-columns:1fr .82fr; gap:9vw; }
.eyebrow.light { color:var(--sage); }
.contact-lede { max-width:540px; margin:32px 0 38px; color:#bcc9c1; line-height:1.6; }
.big-phone { display:flex; align-items:center; justify-content:space-between; max-width:520px; padding:18px 0; border-bottom:1px solid #5b6964; font:clamp(30px,4vw,54px) Georgia,serif; }
.big-phone span { color:var(--mint); }.second-phone { display:inline-block; margin-top:14px; font:22px Georgia,serif; color:var(--mint); }
.online-booking { display:block; width:max-content; margin-top:22px; padding:12px 18px; border:1px solid var(--mint); border-radius:99px; color:var(--mint); font-size:12px; font-weight:800; transition:.2s; }
.online-booking:hover { background:var(--mint); color:var(--navy); }
dl { margin-top:55px; display:grid; grid-template-columns:1fr 1fr; gap:30px; }
dt { margin-bottom:10px; color:var(--sage); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.14em; }
dd { margin:0; font-size:13px; line-height:1.65; color:#e3e8e5; }
.map-link { display:inline-block; margin-top:32px; color:var(--sage); font-size:12px; font-weight:800; }
form { background:var(--cream); color:var(--ink); padding:45px; align-self:start; }
.form-kicker { margin:0 0 10px; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--orange); }
form h3 { margin:0 0 35px; font:36px Georgia,serif; }
label { display:block; margin-bottom:22px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
input,textarea { width:100%; margin-top:9px; border:0; border-bottom:1px solid #aeb4ae; border-radius:0; padding:11px 3px; background:transparent; color:var(--ink); outline:none; resize:vertical; text-transform:none; letter-spacing:normal; }
input:focus,textarea:focus { border-color:var(--orange); box-shadow:0 2px 0 var(--orange); }
form>p#form-note { font-size:10px; line-height:1.5; opacity:.6; text-transform:none; }
form .button { width:100%; margin-top:15px; }
.form-status { font-size:12px; color:#326b45; }
footer { padding:75px 5vw 28px; background:#003d39; color:white; font-size:11px; }
.footer-main { display:flex; align-items:center; justify-content:space-between; padding-bottom:60px; }.footer-main .brand-mark { width:58px;height:58px; }.footer-main .brand strong { font-size:22px; }
.footer-call { text-align:right; font-size:11px; text-transform:uppercase; letter-spacing:.12em; color:var(--mint); }.footer-call span { display:block; margin-top:8px; color:white; font:40px Georgia,serif; letter-spacing:-.03em; text-transform:none; }
.footer-bottom { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:30px; padding-top:25px; border-top:1px solid rgba(255,255,255,.18); }.footer-bottom>a { justify-self:end; }
.queen-credit { margin:0; padding:10px 18px; border:1px solid rgba(217,239,99,.5); border-radius:99px; color:#eaf5b8; letter-spacing:.05em; }.queen-credit span { color:var(--lime); }.queen-credit strong { color:white; font-family:Georgia,serif; font-style:italic; font-size:13px; }
.floating-booking { position:fixed; right:22px; bottom:22px; z-index:30; width:118px; height:118px; border-radius:50%; background:var(--orange); color:white; display:flex; flex-direction:column; align-items:center; justify-content:center; font:italic 17px Georgia,serif; box-shadow:0 18px 45px rgba(0,76,71,.3); transition:.3s; }.floating-booking b { position:absolute; right:23px; top:19px; font-family:Arial; }.floating-booking:hover { transform:scale(1.08) rotate(4deg); }
@keyframes float { 0%,100%{transform:translateY(0) rotate(-1deg)} 50%{transform:translateY(-12px) rotate(1deg)} }
@keyframes slowspin { to{transform:rotate(360deg)} }
@keyframes marquee { to{transform:translateX(-50%)} }
:focus-visible { outline:3px solid #f6b59c; outline-offset:4px; }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }
@media (max-width:900px) {
  .site-header { height:72px; }.menu-button { display:block; } nav { display:none; position:absolute; left:0; right:0; top:72px; padding:25px 5vw; background:var(--paper); border-bottom:1px solid var(--line); flex-direction:column; align-items:stretch; } nav.open { display:flex; }
  .hero { grid-template-columns:1fr; }.hero-copy { padding:80px 6vw 55px; }.hero-visual { min-height:580px; }.trust-strip { grid-template-columns:1fr; }.trust-strip>div { border-right:0; border-bottom:1px solid var(--line); }
  .section { padding:90px 6vw; }.section-head { grid-template-columns:1fr; gap:20px; }.service-grid { grid-template-columns:repeat(2,1fr); }.about { grid-template-columns:1fr; }.about-art { max-width:550px; width:100%; margin:auto; }.grooming,.marketing { grid-template-columns:1fr; }.grooming-showcase { min-height:500px; }.grooming-showcase>strong { writing-mode:horizontal-tb; transform:none; }.marketing-art { min-height:420px; }.team { padding-top:10px; }.team-heading { grid-template-columns:1fr; gap:26px; }.team-grid { grid-template-columns:repeat(2,1fr); }.team-card { grid-column:auto; }.lead-profile { grid-template-columns:1fr; }.lead-profile-intro { min-height:520px; }.contact { grid-template-columns:1fr; }.care-path { grid-template-columns:1fr; }.round-cta { left:auto;right:7%;top:55px;bottom:auto; }.footer-main { align-items:flex-start; }.footer-bottom { grid-template-columns:1fr 1fr; }.queen-credit { grid-column:1/-1;grid-row:1;justify-self:center; }
}
@media (max-width:580px) {
  .top-note { justify-content:flex-start;overflow:hidden;white-space:nowrap; }.top-note a { display:none; }.brand small { display:none; } h1 { font-size:57px; }.hero-slogan { font-size:57px; }.hero-seo-title { font-size:11px; }.lede { font-size:18px; }.hero-actions .button { width:100%; }.hero-visual { min-height:540px; }.hero-photo img { object-position:61% center; }.person-caption { left:4%;right:4%;bottom:22%;max-width:290px; }.person-caption strong { font-size:16px; }.photo-caption { bottom:5%; }.photo-caption strong { font-size:22px; }.photo-caption a { grid-column:1/-1;width:max-content;margin-top:8px; }.care-stamp { width:96px;height:96px;right:3%; }.care-stamp span { font-size:11px; }.service-grid { grid-template-columns:1fr; }.service-card { min-height:295px; }.section-head h2,.about h2,.contact h2 { font-size:47px; }.section { padding:75px 6vw; }.grooming,.marketing { margin:0 0 75px; border-radius:0; }.grooming-showcase { min-height:380px; padding:32px 24px; }.grooming-index { top:28px;left:24px; }.grooming-orbit { width:130px;height:130px;right:7%; }.grooming-orbit::before { width:90px;height:90px; }.grooming-orbit::after { width:50px;height:50px; }.grooming-showcase>strong { font-size:58px; }.grooming-copy { padding:55px 6vw; }.grooming-copy h2 { font-size:48px; }.groomer-profile { padding:24px 20px; }.groomer-heading { align-items:flex-start; }.groomer-heading h3 { font-size:25px; }.grooming-contact { grid-template-columns:1fr; padding:24px 20px; gap:22px; }.grooming-contact p { padding:20px 0 0; border-left:0;border-top:1px solid rgba(0,76,71,.25); }.marketing-art { min-height:330px; padding:34px 6vw; }.marketing-art>strong { font-size:105px; }.marketing-copy { padding:55px 6vw; }.marketing-copy h2 { font-size:47px; }.marketing-heading { align-items:flex-start; }.marketing-heading h3 { font-size:29px; }.marketing-copy blockquote { padding:22px; font-size:18px; }.team-heading h2 { font-size:50px; }.team-grid { grid-template-columns:1fr; }.team-card { grid-column:auto; min-height:270px; }.lead-profile { margin-top:45px; border-radius:8px; }.lead-profile-intro { min-height:490px; padding:32px 24px; }.profile-kicker { top:32px; left:24px; }.profile-monogram { top:62px; right:24px; width:76px; height:76px; }.lead-profile-intro h3 { font-size:47px; }.lead-profile-copy { padding:34px 24px; }.profile-lede { font-size:21px; }.profile-detail { grid-template-columns:1fr; gap:10px; }.lead-profile blockquote { padding:22px; font-size:18px; }.contact { gap:60px; } form { padding:28px 22px; } dl { grid-template-columns:1fr; }.care-path { margin:0 0 75px;padding:75px 6vw 170px;border-radius:0; }.round-cta { top:auto;bottom:25px;right:7%; }.care-path::before { font-size:210px; }.footer-main { flex-direction:column;gap:45px; }.footer-call { text-align:left; }.footer-call span { font-size:30px; }.footer-bottom { grid-template-columns:1fr; }.footer-bottom>a { justify-self:start; }.queen-credit { grid-column:auto;grid-row:auto;justify-self:start; }.floating-booking { width:86px;height:86px;right:14px;bottom:14px;font-size:14px; }.floating-booking b { right:16px;top:12px; }.big-phone { font-size:34px; }
}
/* Management update: public pages, consent, cookies and protected dashboard */
.image-editor{display:grid;grid-template-columns:180px 1fr;gap:1rem;align-items:center;padding:1rem;background:#e9f3f0;border-radius:14px;overflow:hidden}.image-editor img{width:160px;height:160px;object-fit:contain;transition:transform .2s}.image-editor label{grid-column:2}
.honeypot{position:absolute!important;left:-10000px!important}.consent{display:flex!important;gap:.65rem;align-items:flex-start}.consent input{width:auto!important;margin-top:.25rem}
.cookie-banner{position:fixed;z-index:999;left:1rem;right:1rem;bottom:1rem;background:#fff;color:#123d38;border:1px solid #b9d2cc;box-shadow:0 18px 55px #062c2640;border-radius:18px;padding:1rem 1.2rem;display:flex;justify-content:space-between;gap:1rem;align-items:center}.cookie-banner p{margin:.3rem 0 0}.cookie-banner button,.admin-shell button{border:1px solid #0b665a;background:#fff;color:#0b665a;border-radius:999px;padding:.7rem 1rem;font-weight:700;cursor:pointer}.cookie-banner button.primary,.admin-shell button{background:#0b665a;color:#fff}.cookie-banner div:last-child{display:flex;gap:.5rem;flex-shrink:0}
.sub-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 4vw;border-bottom:1px solid #dce8e4;gap:2rem}.sub-header nav,.languages{display:flex;gap:1rem;flex-wrap:wrap}.content-page{max-width:1200px;margin:auto;padding:7rem 5vw}.content-page>h1{font-size:clamp(2.8rem,7vw,6.5rem);max-width:950px;line-height:.95}.page-lead{font-size:1.25rem;max-width:720px;margin:2rem 0 4rem}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:3rem}.content-grid article,.contact-cards article,.blog-list article{padding:2rem;border:1px solid #cfe0dc;border-radius:18px;background:#f8fbfa}.content-grid span{color:#b56f4f}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.contact-cards a{display:block;font-size:1.2rem;margin:.5rem 0}.blog-list{display:grid;gap:1.2rem}.blog-list article{max-width:900px}.blog-list h2{font-size:2rem}.simple-footer{padding:2rem 5vw;background:#073f38;color:#fff}.locale-page{min-height:100vh;padding:4rem 8vw;background:#f4f0e7;color:#073f38;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:1.5rem}.locale-page img{width:120px;border-radius:20px}.locale-page h1{font-size:clamp(3rem,8vw,7rem);line-height:.92;max-width:1000px}.locale-page nav{display:flex;gap:1rem}.locale-page small{font-size:1rem}
.admin-shell{max-width:1400px;margin:auto;padding:3rem 4vw;color:#173e39}.admin-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #cfdfdb;padding-bottom:1.5rem}.admin-top h1{font-size:clamp(2.5rem,6vw,5rem);margin:.2rem 0}.admin-tabs{display:flex;gap:.7rem;position:sticky;top:0;background:#fff;padding:1rem 0;z-index:3}.admin-tabs a{padding:.6rem 1rem;border-radius:999px;background:#e9f3f0}.admin-shell section{padding:3rem 0;border-bottom:1px solid #cfdfdb}.admin-notice{min-height:1.5rem;color:#0b665a;font-weight:700}.crm-list{display:grid;gap:1rem}.crm-card{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1.5rem;border:1px solid #cfdfdb;border-radius:18px;background:#f9fbfa}.crm-card blockquote{margin:1rem 0;padding:1rem;border-left:3px solid #b56f4f}.crm-card form,.media-upload{display:grid;gap:.75rem}.crm-card label,.media-upload label{display:grid;gap:.35rem;font-weight:700}.crm-card input,.crm-card select,.crm-card textarea,.media-upload input{padding:.75rem;border:1px solid #adc7c1;border-radius:10px;font:inherit}.crm-card textarea{min-height:90px}.crm-card details{grid-column:1/-1;background:#eaf3f0;padding:1rem;border-radius:12px}.crm-card summary{cursor:pointer;font-weight:800}.policy-note{color:#7b3e28}.media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}.media-grid figure{margin:0}.media-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.media-grid small{display:block}.admin-signout{position:fixed;right:1rem;bottom:1rem;background:#fff;padding:.7rem 1rem;border-radius:99px;box-shadow:0 4px 20px #0002}
@media(max-width:850px){.cookie-banner{align-items:stretch;flex-direction:column}.cookie-banner div:last-child{flex-wrap:wrap}.sub-header{align-items:flex-start;flex-direction:column}.content-grid,.contact-cards{grid-template-columns:1fr}.crm-card{grid-template-columns:1fr}.media-grid{grid-template-columns:repeat(2,1fr)}}

/* Local service page */
.local-page{background:var(--paper);color:var(--ink)}.local-header{position:relative;z-index:5;background:rgba(255,253,248,.96)}.compact-button{padding:12px 20px}.breadcrumbs{max-width:1320px;margin:auto;padding:24px 5vw;display:flex;gap:10px;align-items:center;font-size:13px;color:#54706c}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.local-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.85fr);min-height:720px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.local-hero>div{padding:90px 5vw 80px;display:flex;flex-direction:column;justify-content:center}.local-hero h1{font-size:clamp(48px,5.7vw,88px);line-height:.95;letter-spacing:-.055em;max-width:820px;margin:28px 0}.local-lede{font-size:20px;line-height:1.65;max-width:690px;color:#385853}.local-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.local-hero-photo{position:relative;margin:0;overflow:hidden;background:#dfe9e4;min-height:620px}.local-hero-photo picture,.local-hero-photo img{display:block;width:100%;height:100%}.local-hero-photo img{object-fit:cover;object-position:61% center}.local-hero-photo figcaption{position:absolute;left:24px;right:24px;bottom:24px;padding:15px 18px;border-radius:8px;background:rgba(0,61,57,.87);color:#fff;font-weight:700;backdrop-filter:blur(8px)}.local-section{padding:100px 5vw;max-width:1440px;margin:auto}.local-heading{display:grid;grid-template-columns:minmax(260px,.7fr) 1.4fr;gap:30px;align-items:start;margin-bottom:48px}.local-heading .eyebrow{grid-column:1}.local-heading h2{grid-column:2;font-size:clamp(38px,5vw,68px);line-height:1;letter-spacing:-.04em;margin:0}.local-heading>p:last-child{grid-column:2;font-size:18px;line-height:1.7;max-width:700px}.reason-grid,.local-care-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.reason-grid article,.local-care-grid article,.local-team-grid article{border:1px solid var(--line);border-radius:12px;padding:32px;background:#fff}.reason-grid strong{font-size:22px}.reason-grid p,.local-care-grid p,.local-team-grid p{color:#496660;line-height:1.65}.local-care-grid{grid-template-columns:repeat(4,1fr)}.local-care-grid>article>span{color:var(--orange);font-size:12px;font-weight:800;letter-spacing:.12em}.local-care-grid h3{font-size:23px;line-height:1.2}.local-more{margin-top:28px}.local-more a{text-decoration:underline;text-underline-offset:5px;font-weight:800}.local-diagnostics{max-width:none;background:var(--green);color:#fff;display:grid;grid-template-columns:1fr auto;gap:50px;align-items:end;padding-left:max(5vw,calc((100vw - 1440px)/2 + 5vw));padding-right:max(5vw,calc((100vw - 1440px)/2 + 5vw))}.local-diagnostics h2{font-size:clamp(42px,5vw,72px);line-height:1;max-width:820px}.local-diagnostics p{max-width:780px;line-height:1.7;color:#e1efeb}.button.pale{background:#fff;color:var(--green);white-space:nowrap}.local-team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.local-team-grid article:first-child{grid-column:1/-1;background:#f1eee5}.local-team-grid h3{font-size:25px;margin-top:0}.local-animals{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:#eff4ef;border-radius:20px}.local-animals h2{font-size:clamp(42px,5vw,66px);line-height:1}.local-animals p{font-size:18px;line-height:1.7}.animal-tags{display:flex;gap:10px;flex-wrap:wrap}.animal-tags span{padding:14px 18px;border:1px solid #a9c5bd;border-radius:999px;background:#fff;font-weight:800}.local-prepare ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.local-prepare li{padding:30px;border-top:2px solid var(--green);background:#fff}.local-prepare li>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--green);color:#fff;font-weight:800}.local-prepare li p{line-height:1.65}.faq-list{max-width:980px;margin-left:auto}.faq-list details{border-top:1px solid var(--line);padding:24px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-size:21px;font-weight:800;line-height:1.4}.faq-list p{line-height:1.7;color:#496660;max-width:820px}.faq-list a{text-decoration:underline}.local-contact{margin:0 5vw 80px;padding:70px;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;background:var(--green);color:#fff;border-radius:20px}.local-contact h2{font-size:clamp(42px,5vw,72px);line-height:1;margin:24px 0}.local-contact p{color:#dcece8}.hours-note{max-width:650px;line-height:1.6}.local-contact-links{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:15px}.local-contact-links a{font-size:19px;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:5px}.local-contact-links a:first-child{font-size:34px;font-weight:800}.local-footer{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.local-footer a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.local-hero{grid-template-columns:1fr}.local-hero-photo{min-height:560px}.local-heading{grid-template-columns:1fr}.local-heading .eyebrow,.local-heading h2,.local-heading>p:last-child{grid-column:1}.reason-grid,.local-care-grid{grid-template-columns:repeat(2,1fr)}.local-diagnostics,.local-animals,.local-contact{grid-template-columns:1fr}.local-team-grid{grid-template-columns:1fr}.local-team-grid article:first-child{grid-column:auto}}
@media(max-width:600px){.local-header .compact-button{display:none}.breadcrumbs{padding-top:18px}.local-hero>div{padding:62px 6vw}.local-hero h1{font-size:46px}.local-hero-photo{min-height:440px}.local-section{padding:72px 6vw}.local-heading{margin-bottom:32px}.local-heading h2{font-size:42px}.reason-grid,.local-care-grid,.local-prepare ol{grid-template-columns:1fr}.local-animals{border-radius:0}.local-contact{margin:0;padding:65px 6vw;border-radius:0}.local-contact-links a:first-child{font-size:29px}.local-footer{flex-direction:column}}

/* Searchable service pages */
.service-page{background:var(--paper);color:var(--ink)}.service-header{background:#fffdf8}.service-hero{max-width:1440px;margin:auto;padding:80px 5vw 100px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr);gap:70px;align-items:end}.service-hero h1{font-size:clamp(52px,7vw,100px);line-height:.92;letter-spacing:-.055em;margin:28px 0;max-width:980px}.service-hero>div>p:last-of-type{font-size:20px;line-height:1.7;color:#3e5c57;max-width:780px}.service-hero aside{padding:34px;border-radius:14px;background:var(--green);color:#fff}.service-hero aside span{display:block;color:var(--mint);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.service-hero aside strong{display:block;font-size:27px;margin:14px 0}.service-hero aside p{color:#d9e9e5;line-height:1.6}.service-explanation{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-explanation article{padding:75px 5vw}.service-explanation article+article{border-left:1px solid var(--line)}.service-explanation article>span{color:var(--orange);font-size:12px;font-weight:800}.service-explanation h2{font-size:clamp(32px,4vw,52px);line-height:1.05}.service-explanation p{font-size:18px;line-height:1.7;color:#48645f}.service-facts{max-width:1440px;margin:auto;padding:35px 5vw 90px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.service-facts article{padding:30px;border-radius:12px;background:#eef4f1}.service-facts h2{font-size:22px}.service-facts p{line-height:1.65;color:#4b6661}.service-preparation{background:var(--green);color:#fff;padding:80px max(5vw,calc((100vw - 1300px)/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.service-preparation h2{font-size:clamp(42px,5vw,70px);line-height:1;margin:24px 0 0}.service-preparation>p{font-size:20px;line-height:1.75;color:#e0eeea}.service-team .local-team-grid article:first-child{grid-column:auto}.related-services{padding:80px 5vw;max-width:1440px;margin:auto;background:#0b554d;color:#fff;border-radius:20px}.related-services h2{font-size:clamp(42px,5vw,70px);margin:24px 0}.related-services>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.related-services>div a{padding:22px;border:1px solid rgba(255,255,255,.28);border-radius:10px;font-size:20px;font-weight:800;display:flex;justify-content:space-between}.all-services-link{display:inline-block;margin-top:28px;text-decoration:underline;text-underline-offset:5px}.service-contact{margin-top:80px}
@media(max-width:900px){.service-hero{grid-template-columns:1fr;padding-top:60px}.service-explanation,.service-preparation{grid-template-columns:1fr}.service-explanation article+article{border-left:0;border-top:1px solid var(--line)}.service-preparation{gap:25px}.related-services{border-radius:0}.service-contact{margin-top:0}}
@media(max-width:600px){.service-hero{padding:55px 6vw 70px}.service-hero h1{font-size:48px}.service-explanation{display:block}.service-explanation article{padding:60px 6vw}.service-facts{grid-template-columns:1fr;padding:25px 6vw 70px}.service-preparation{padding:65px 6vw}.related-services{padding:65px 6vw}.related-services>div{grid-template-columns:1fr}}

/* Educational guide */
.guide-index,.guide-article{background:var(--paper);color:var(--ink)}.guide-header{background:#fffdf8}.guide-index-hero{padding:90px 5vw 105px;max-width:1440px;margin:auto}.guide-index-hero h1,.article-hero h1{font-size:clamp(54px,8vw,112px);line-height:.9;letter-spacing:-.06em;margin:28px 0;max-width:1160px}.guide-index-hero>p:last-child{max-width:780px;font-size:20px;line-height:1.7;color:#45635d}.guide-list{padding:90px 5vw;display:grid;grid-template-columns:.65fr 1.35fr;gap:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.guide-list h2{font-size:clamp(40px,5vw,68px);line-height:1}.guide-list article{padding:42px;background:#eef4f1;border-radius:18px}.guide-meta,.article-byline{display:flex;gap:15px;flex-wrap:wrap;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#58736e}.guide-meta span+span,.article-byline span+span{border-left:1px solid var(--line);padding-left:15px}.guide-list h3{font:clamp(32px,4vw,52px)/1.05 Georgia,serif;margin:30px 0}.guide-list article>p:not(.guide-meta){font-size:17px;line-height:1.7;color:#4b6862}.guide-read{display:inline-block;margin-top:20px;font-weight:800;text-decoration:underline;text-underline-offset:5px}.guide-standards{margin:80px 5vw;padding:65px;background:var(--green);color:#fff;border-radius:20px;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.guide-standards h2{font-size:clamp(38px,5vw,64px);line-height:1;margin:0 0 25px}.guide-standards p{color:#dcece8;line-height:1.7}.guide-standards>div:last-child{display:flex;gap:12px;flex-wrap:wrap}.article-hero{max-width:1250px;margin:auto;padding:80px 5vw 70px}.article-lede{max-width:850px;font:24px/1.6 Georgia,serif;color:#3f5d57}.article-byline{margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}.article-layout{max-width:1250px;margin:auto;padding:20px 5vw 110px;display:grid;grid-template-columns:280px minmax(0,760px);gap:80px;align-items:start}.article-layout aside{position:sticky;top:30px;padding:28px;border-top:3px solid var(--orange);background:#f0eee6}.article-layout aside p{font-size:14px;line-height:1.7;color:#4d6863}.article-body h2{font-size:clamp(32px,4vw,50px);line-height:1.08;margin:65px 0 20px}.article-body h2:first-child{margin-top:0}.article-body h3{font-size:25px;margin:42px 0 12px}.article-body p,.article-body li{font-size:18px;line-height:1.8;color:#405d57}.article-body li{margin-bottom:14px}.article-body a{text-decoration:underline;text-underline-offset:4px;font-weight:800}.article-note{margin-top:55px;padding:30px;border-left:4px solid var(--orange);background:#f3ebe5}.article-note p{margin-bottom:0}.article-cta{margin:0 5vw 80px;padding:65px;background:var(--green);color:#fff;border-radius:20px;display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.article-cta h2{font-size:clamp(42px,5vw,70px);line-height:1;margin:0 0 20px}.article-cta p{color:#dcece8}.article-cta>div:last-child{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px}.article-cta>div:last-child>a:not(.button){border-bottom:1px solid rgba(255,255,255,.5)}.service-guide-link{max-width:1300px;margin:70px auto 0;padding:55px;border:1px solid var(--line);border-radius:16px;background:#f2eee4}.service-guide-link h2{font-size:clamp(36px,5vw,58px);line-height:1.05}.service-guide-link p{max-width:700px;line-height:1.7}.service-guide-link>a{font-weight:800;text-decoration:underline;text-underline-offset:5px}
@media(max-width:900px){.guide-list,.guide-standards,.article-layout,.article-cta{grid-template-columns:1fr}.article-layout{gap:35px}.article-layout aside{position:static}.service-guide-link{margin:60px 5vw 0}}
@media(max-width:600px){.guide-index-hero,.article-hero{padding:60px 6vw}.guide-index-hero h1,.article-hero h1{font-size:50px}.guide-list{padding:65px 6vw;gap:35px}.guide-list article{padding:28px 22px}.guide-standards,.article-cta{margin:0;padding:60px 6vw;border-radius:0}.article-layout{padding:20px 6vw 75px}.article-lede{font-size:20px}.article-body p,.article-body li{font-size:17px}.service-guide-link{padding:35px 25px}}

/* Readability pass: keep the editorial character without using fine-print sizes. */
body { line-height:1.6; }
.top-note { font-size:13px; line-height:1.45; }
.brand small { font-size:12px; line-height:1.4; }
nav { gap:18px; font-size:14px; }
.nav-call { padding-inline:16px; gap:12px; }
.hero-index { font-size:14px; }
.eyebrow { font-size:13px; line-height:1.5; }
.button { font-size:15px; }
.micro { font-size:14px; line-height:1.55; opacity:1; color:#315a55; }
.person-caption span { font-size:12px; line-height:1.5; letter-spacing:.035em; }
.photo-caption span { font-size:12px; line-height:1.4; }
.photo-caption a { font-size:14px; }
.portrait-label,.open-card span,.open-card small { font-size:12px; line-height:1.45; }
.trust-strip p { font-size:14px; }
.marquee span { font-size:14px; }
.service-card p,.groomer-profile>p,.care-path li p { font-size:16px; }
.service-card a { font-size:14px; }
.about-photo figcaption span,.patient-list span,.about aside p { font-size:14px; }
.grooming-showcase>p,.marketing-art>span { font-size:13px; }
.groomer-heading small,.grooming-contact small,.marketing-heading small { font-size:12px; line-height:1.45; }
.grooming-contact p { font-size:14px; }
.team-badge { font-size:12px; }
.team-card p { font-size:13px; line-height:1.45; }
.team-link-label { font-size:13px; }
.profile-kicker,.lead-profile-intro>p,.profile-role,.profile-kicker-inline { font-size:13px; }
.profile-detail>span { font-size:13px; }
.profile-detail p,.marketing-copy>p { font-size:16px; }
.team-note { font-size:14px; color:#435b56; }
.contact-lede { font-size:18px; color:#e3ece8; }
.online-booking,.map-link { font-size:15px; }
dt { font-size:13px; color:#b8d8d0; }
dd { font-size:16px; }
.form-kicker,label { font-size:13px; }
input,textarea { font-size:16px; line-height:1.5; }
form>p#form-note { font-size:13px; line-height:1.55; opacity:1; color:#315a55; }
.form-status { font-size:14px; }
footer,.footer-call { font-size:14px; }
footer .brand small { color:#d4e8df; }
.queen-credit strong { font-size:15px; }
.guide-meta,.article-byline { font-size:13px; line-height:1.5; }
.service-hero aside span { font-size:13px; }

@media (max-width:900px) {
  nav { gap:10px; font-size:16px; line-height:1.45; }
  nav a { padding:7px 0; }
}

@media (max-width:600px) {
  .top-note { min-height:42px; font-size:12px; white-space:normal; }
  .hero-index { font-size:13px; }
  .person-caption span { font-size:11px; }
  .service-card p,.groomer-profile>p,.profile-detail p,.marketing-copy>p,.care-path li p { font-size:16px; }
  .profile-detail { grid-template-columns:1fr; gap:10px; }
  .profile-detail>span { padding-top:0; }
  .team-note { font-size:14px; }
  .footer-bottom { font-size:14px; line-height:1.55; }
}
