:root{--ink:#173b4e;--blue:#17688c;--light:#eff6f7;--muted:#627580;--line:#dce7e9;--cream:#f8f7f2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;font:16px/1.65 Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.13}h1{font-size:clamp(44px,5.1vw,72px);letter-spacing:-3px;font-weight:600}h2{font-size:clamp(32px,3.3vw,46px);font-weight:500;letter-spacing:-1.5px}h3{font-size:22px;font-weight:600}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #cc8730;outline-offset:5px}[hidden]{display:none!important}.wrap{width:calc(100% - 80px);max-width:1240px;margin:auto}.topline{background:var(--ink);color:#fff;font-size:12px;letter-spacing:.3px}.topline .wrap{display:flex;justify-content:space-between;padding-block:8px}.navigation{display:flex;align-items:center;gap:32px;min-height:112px}.brand{display:flex;gap:13px;align-items:center;flex-shrink:0}.brand img{width:50px;height:61px;object-fit:contain}.brand span{font-size:27px;font-weight:600;letter-spacing:-1px}.brand small{display:block;font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted)}nav{display:flex;gap:22px;margin-left:auto;font-size:13px}.header-phone{font-size:15px;font-weight:700}nav a:hover,.text-link:hover{color:var(--blue);text-decoration:underline}.menu{display:none}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:55px;padding-block:32px 64px;align-items:center}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;color:var(--blue);margin-bottom:24px}.lead{font-size:18px;color:var(--muted);max-width:520px;margin-top:27px}.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;background:var(--blue);color:#fff;padding:16px 23px;border-radius:7px;font-size:14px;font-weight:600;min-height:52px}.button:hover{background:#12516c}.text-link{font-size:13px;font-weight:600}.hero-bottom{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted);margin-top:33px}.status-dot{width:7px;height:7px;border-radius:50%;background:#73a28e}.hero-art{background:var(--light);min-height:500px;border-radius:100px 10px 100px 10px;position:relative;overflow:hidden;padding:35px;display:flex;flex-direction:column;align-items:center;justify-content:space-between}.art-label{font-size:10px;letter-spacing:3px;color:#60808b}.logo-orbit{border-radius:50%;background:#fff;width:285px;height:285px;display:grid;place-items:center;box-shadow:0 20px 70px #17597712;z-index:1}.logo-orbit img{height:210px;width:175px;object-fit:contain}.art-caption{font:italic 30px/1.2 Georgia,serif;text-align:center;z-index:1}.facts{display:grid;grid-template-columns:1fr 1fr 1.3fr;border-block:1px solid var(--line);padding-block:30px;gap:40px}.facts strong{display:block;font-size:21px;font-weight:600;line-height:1.3}.facts span{color:var(--muted);font-size:13px}.section{padding-block:84px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.section-heading>.eyebrow{margin-bottom:14px}.section-heading>p{max-width:330px;color:var(--muted);font-size:15px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-grid article{background:var(--cream);padding:28px;border-radius:10px;min-height:218px}.number{display:block;font-size:12px;color:#8a9a9e;margin-bottom:25px}.service-grid h3{font-size:20px;margin-bottom:12px}.service-grid p,.doctor p{font-size:14px;color:var(--muted)}.note{font-size:13px;color:var(--muted);margin-top:20px}.team-section{background:var(--light)}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.doctor{background:white;border-radius:12px;padding:30px;display:flex;flex-direction:column}.doctor-top{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--muted);margin-bottom:28px}.monogram{width:58px;height:58px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font:22px Georgia,serif;color:var(--blue);flex-shrink:0}.doctor h3{font-size:27px;font-weight:500;margin-bottom:14px}.doctor details{font-size:13px;margin-top:20px}.doctor details p{padding-top:8px}.doctor summary{cursor:pointer;color:var(--blue)}.doctor>a:last-child{border-top:1px solid var(--line);margin-top:25px;padding-top:17px;font-size:14px;font-weight:600;color:var(--blue)}.doctor .profile-link{font-size:13px;color:var(--blue);margin-top:20px}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-copy>p{color:var(--muted);margin-bottom:20px}.booking{background:var(--ink);color:white;border-radius:16px;padding:46px;display:flex;gap:30px;justify-content:space-between;align-items:center}.booking .eyebrow{color:#a6cbd8}.booking h2{font-size:38px}.booking p:not(.eyebrow){color:#bfced4;font-size:14px;margin-top:20px}.booking-actions{display:flex;flex-direction:column;gap:14px;flex-shrink:0}.booking-actions>span{text-align:center;font-size:12px;color:#bfced4}.light{background:#fff;color:var(--ink)}.light:hover{background:#dbecef}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-card{border-top:1px solid var(--line);padding-top:25px}.label{font-size:11px;letter-spacing:1.7px;color:var(--muted);display:block;margin-bottom:15px}.contact-card h3,.contact-phone{font-size:27px;font-weight:500;line-height:1.3}.contact-card p{color:var(--muted);margin-top:8px}.contact-card .button{margin-top:25px}footer{border-top:1px solid var(--line);padding-block:25px;color:var(--muted);font-size:12px}footer .wrap{display:flex;justify-content:space-between;gap:20px}.mobile-call{display:none}.skip{position:absolute;top:-100px;background:white;padding:12px}.skip:focus{top:10px;z-index:10}@media(max-width:1100px){.header-phone{display:none}.hero{gap:30px}.hero-art{min-height:455px;padding:30px}.logo-orbit{width:230px;height:230px}.logo-orbit img{height:180px}.booking{align-items:start;flex-direction:column}.facts strong{font-size:18px}}@media(max-width:760px){.wrap{width:calc(100% - 36px)}.topline .wrap{font-size:10px;gap:12px}.navigation{min-height:88px;justify-content:space-between;position:relative}.brand span{font-size:23px}.brand img{width:40px;height:50px}.menu{display:block;border:1px solid var(--line);border-radius:5px;padding:8px 12px;background:white;color:var(--ink);font-size:13px}nav{display:none;position:absolute;top:88px;left:-18px;right:-18px;z-index:5;background:#fff;padding:24px;box-shadow:0 15px 25px #12345615}nav.open{display:flex;flex-direction:column}.hero{grid-template-columns:1fr;padding-block:20px 35px;gap:30px}h1{font-size:48px;letter-spacing:-2px}.lead{font-size:16px;margin-top:20px}.eyebrow{font-size:10px;letter-spacing:1.4px;margin-bottom:20px}.actions{margin-top:24px;gap:20px}.hero-art{min-height:350px;border-radius:60px 8px 60px 8px;padding:25px}.logo-orbit{width:185px;height:185px}.logo-orbit img{height:145px;width:120px}.art-caption{font-size:24px}.hero-bottom{font-size:11px;margin-top:25px}.facts{grid-template-columns:1fr;gap:18px;padding-block:25px}.facts>div,.facts>a{display:flex;flex-direction:column;gap:2px}.facts strong{font-size:21px}.section{padding-block:50px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:18px;max-width:none}.service-grid,.team-grid,.contact-grid,.about{grid-template-columns:1fr}.service-grid article{min-height:0;padding:24px}.number{margin-bottom:18px}.doctor{padding:25px}.doctor h3{font-size:25px}.doctor-top{margin-bottom:22px}.about{gap:25px}.booking{padding:28px 23px;border-radius:12px;gap:25px}.booking h2{font-size:30px}.booking-actions{width:100%}.booking-actions .button{font-size:12px;padding:14px 10px}.contact-card h3,.contact-phone{font-size:24px}.contact-grid{gap:35px}footer .wrap{flex-direction:column;gap:7px}footer{padding-bottom:90px}.mobile-call{display:block;position:fixed;bottom:12px;left:18px;right:18px;background:var(--blue);color:white;text-align:center;padding:14px;border-radius:8px;font-size:14px;z-index:6;box-shadow:0 3px 18px #173b4e33}body{padding-bottom:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Team: compact profiles inspired by the reference, in Vet Duet colours. */
.doctor-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 14px}.doctor-filters button{border:1px solid #c8dde2;border-radius:30px;padding:10px 17px;background:transparent;color:var(--ink);cursor:pointer;font-size:13px}.doctor-filters button[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:white}.doctor-filters button:hover{border-color:var(--blue)}.doctor-count{font-size:12px;color:var(--muted);margin-bottom:35px}.team-section .team-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.team-section .doctor{padding:0;background:transparent;border-radius:0;text-align:center;align-items:center}.team-section .doctor-top{display:flex;flex-direction:column;gap:18px;margin-bottom:12px;width:100%;min-height:238px}.team-section .monogram{width:176px;height:176px;border:0;background:#d6e7ed;font:52px Georgia,serif;letter-spacing:1px;color:#527c8c}.team-section .doctor:nth-child(2) .monogram{background:#e3e6d8;color:#727d54}.team-section .doctor:nth-child(3) .monogram{background:#f0e3dc;color:#987463}.team-section .doctor:nth-child(4) .monogram{background:#dbe7df;color:#5c7f69}.team-section .doctor-top>span:last-child{font-size:11px;line-height:1.6;color:var(--muted);max-width:215px}.team-section .doctor h3{font-size:22px;font-weight:500;line-height:1.23;color:var(--blue);margin-bottom:12px}.team-section .doctor>p{font-size:13px;line-height:1.65}.team-section .doctor>.note{margin-top:12px;color:var(--ink);font-weight:600}.team-section .doctor details{margin-top:17px;font-size:13px;width:100%}.team-section .doctor details p{font-size:12px;line-height:1.65}.team-section .doctor>a:last-child{margin-top:22px;border:1px solid #a8c7d2;border-radius:30px;padding:10px 18px;font-size:12px;color:var(--blue);width:100%;max-width:230px}.team-section .doctor>a:last-child:hover{background:#dcecf1}.team-section .doctor .profile-link{font-size:12px;margin-top:17px}@media(max-width:1050px){.team-section .team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 30px}.team-section .doctor-top{min-height:0}.team-section .doctor>p{max-width:290px}}@media(max-width:560px){.doctor-filters{gap:8px}.doctor-filters button{padding:9px 12px;font-size:12px}.team-section .team-grid{grid-template-columns:1fr;gap:40px}.team-section .doctor{padding-bottom:30px;border-bottom:1px solid #d3e3e6}.team-section .monogram{width:152px;height:152px;font-size:46px}.team-section .doctor h3{font-size:24px}.team-section .doctor>p{font-size:14px}.team-section .doctor-top>span:last-child{max-width:none}.team-section .doctor details{max-width:320px}.doctor-count{margin-bottom:26px}}

.team-section .doctor-portrait{width:176px;height:176px;flex-shrink:0;border-radius:50%;object-fit:cover;object-position:100% center}@media(max-width:560px){.team-section .doctor-portrait{width:152px;height:152px}}

.tail-team{margin-top:65px;padding-top:48px;border-top:1px solid #cbdfe3}.tail-heading{text-align:center;max-width:620px;margin:0 auto 35px}.tail-heading .eyebrow{margin-bottom:14px}.tail-heading>p:last-child{color:var(--muted);font-size:15px;margin-top:17px}.tail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;max-width:900px;margin:auto}.tail-card{background:#ffffffa6;border:1px solid #dce7e9;border-radius:18px;padding:32px;text-align:center}.tail-circle{display:grid;place-items:center;width:152px;height:152px;margin:0 auto 20px;border-radius:50%;font:50px Georgia,serif}.monica{background:#e6e0ee;color:#7b6889}.pafnuty{background:#f1e6d3;color:#96743f}.tail-kind{display:block;font-size:12px;color:var(--muted);margin-bottom:13px}.tail-card h3{font-size:28px;color:var(--blue);font-weight:500}.tail-role{font-weight:600;margin-top:9px;color:var(--ink)}.tail-card>p:not(.tail-role){font-size:14px;color:var(--muted);margin-top:17px;line-height:1.7}.tail-card>.tail-joke{font-style:italic}@media(max-width:760px){.tail-team{margin-top:40px;padding-top:35px}.tail-grid{grid-template-columns:1fr;gap:20px}.tail-card{padding:25px}.tail-heading>p:last-child{font-size:14px}.tail-circle{width:136px;height:136px}}

.assistant-team{margin-top:55px;padding-top:40px;border-top:1px solid #cbdfe3}.assistant-team>.eyebrow{margin-bottom:14px}.assistant-card{display:flex;align-items:center;gap:30px;margin-top:28px;max-width:740px}.assistant-circle{width:152px;height:152px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:#dce5ed;color:#59778d;font:46px Georgia,serif}.assistant-card h3{font-size:25px;color:var(--blue);font-weight:500}.assistant-card p{font-size:14px;color:var(--muted);margin-top:10px}.assistant-card .assistant-role{font-weight:600;color:var(--ink)}@media(max-width:560px){.assistant-card{flex-direction:column;text-align:center;gap:22px}.assistant-card h3{font-size:23px}.assistant-team{margin-top:35px;padding-top:30px}.assistant-circle{width:136px;height:136px}}
.care-team .assistant-circle{background:#e8e2ef;color:#80698d}
.care-portrait{width:152px;height:152px;flex-shrink:0;border-radius:50%;object-fit:cover;object-position:center}@media(max-width:560px){.care-portrait{width:136px;height:136px}}
.tail-portrait{object-fit:cover;object-position:center}
/* The hero illustration is a keyboard- and touch-accessible link to the team. */
.hero-art{color:inherit;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.hero-art .logo-orbit{transition:transform .45s ease,box-shadow .45s ease}
.hero-art:focus-visible{outline:3px solid var(--blue,#164f70);outline-offset:5px}
.hero-art:focus-visible .logo-orbit{transform:scale(1.045);box-shadow:0 24px 75px #17597724}
@media(hover:hover) and (pointer:fine){
 .hero-art:hover .logo-orbit{transform:scale(1.045);box-shadow:0 24px 75px #17597724}
}
.hero-art:active .logo-orbit{transform:scale(.98)}

@media(prefers-reduced-motion:reduce){
 .hero-art .logo-orbit{transition:none}
 .hero-art:hover .logo-orbit,.hero-art:focus-visible .logo-orbit,.hero-art:active .logo-orbit{transform:none}
}
/* Reveal each handwritten line in reading order, then gently fade and repeat. */
.hero-art .art-caption{font-family:"Segoe Print","Bradley Hand","Segoe Script",cursive;font-size:27px;font-style:normal;font-weight:400;line-height:1.5;letter-spacing:-.7px}
.handwriting-line{display:block;width:max-content;max-width:100%;margin-inline:auto;animation:handwriting-first 9s linear infinite;will-change:clip-path,opacity}
.handwriting-line+.handwriting-line{animation-name:handwriting-second}
@keyframes handwriting-first{
 0%,5%{clip-path:inset(0 100% 0 0);opacity:0}
 6%{clip-path:inset(0 100% 0 0);opacity:1}
 34%,76%{clip-path:inset(0 0 0 0);opacity:1}
 89%,100%{clip-path:inset(0 0 0 0);opacity:0}
}
@keyframes handwriting-second{
 0%,35%{clip-path:inset(0 100% 0 0);opacity:0}
 36%{clip-path:inset(0 100% 0 0);opacity:1}
 59%,76%{clip-path:inset(0 0 0 0);opacity:1}
 89%,100%{clip-path:inset(0 0 0 0);opacity:0}
}
@media(max-width:760px){.hero-art .art-caption{font-size:23px}}
@media(prefers-reduced-motion:reduce){.handwriting-line{animation:none;clip-path:none;opacity:1;will-change:auto}}
footer .site-credit{margin:20px auto 0;padding:16px 18px 0;border-top:1px solid #c5dbe1;text-align:center;font-size:13px;line-height:1.5;color:inherit}
.admin-portrait{object-fit:cover;object-position:center 30%}
.hero-promotion-link{display:inline-block;margin-top:20px;color:var(--blue);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.promotion{display:grid;grid-template-columns:1fr 1.1fr;gap:28px 40px;align-items:center;padding:36px;margin-bottom:42px;background:#fff5e7;border:1px solid #edd5b4;border-radius:20px}
.promotion-badge{display:inline-block;background:#8b4a20;color:#fff;border-radius:30px;padding:5px 13px;font-size:11px;letter-spacing:1.5px;font-weight:700;margin-bottom:16px}
.promotion h2{font-size:clamp(26px,2.8vw,36px);letter-spacing:-.8px}
.promotion-intro p{font-size:15px;color:var(--muted);margin-top:14px;max-width:430px}
.promotion-prices{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.promotion-price{padding:24px 18px;background:#fff;border-radius:14px}
.promotion-price h3{font-size:17px;line-height:1.35;margin-bottom:16px}
.promotion-price strong{display:block;color:var(--blue);font-size:38px;line-height:1.15;white-space:nowrap;letter-spacing:-1px}
.promotion-price strong span{font-size:26px}
.promotion-action{grid-column:1/-1;display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.promotion-phone{font-size:16px;font-weight:600;white-space:nowrap}
@media(max-width:760px){.promotion{grid-template-columns:1fr;padding:24px;gap:24px;margin-bottom:30px}.promotion-price{padding:20px 14px}.promotion-price strong{font-size:32px}.promotion-action{gap:14px}}
@media(max-width:420px){.promotion-prices{grid-template-columns:1fr;gap:12px}.promotion-price{display:flex;align-items:center;justify-content:space-between;gap:14px}.promotion-price h3{margin:0;max-width:135px}.promotion-price strong{font-size:30px}.promotion-action .button{width:100%}.promotion-action{justify-content:center}}
