:root{
  /* Existing ironwoodanimal.com palette: teal #49c0b6, charcoal #2d2d2d, black #020202, grey #bcbcbc, white */
  --spruce:#2d2d2d; --spruce-2:#2d2d2d; --teal:#49c0b6; --teal-d:#2d2d2d; --teal-l:#f6f6f6;
  --cream:#ffffff; --sand:#f6f6f6; --ink:#2d2d2d; --muted:#7d7d7d; --berry:#49c0b6; --line:#e6e6e6;
  --r:3px; --shadow:0 2px 14px rgba(0,0,0,.08);
  --head:'Montserrat',system-ui,sans-serif; --body:'Montserrat',system-ui,sans-serif; --btn:'Montserrat',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);font-weight:300;color:var(--ink);background:var(--cream);line-height:1.7;font-size:16px}
img{max-width:100%;display:block}
a{color:#2d2d2d;text-decoration-color:var(--teal)}
h1,h2,h3,h4{font-family:var(--head);font-weight:600;color:var(--spruce);line-height:1.2;letter-spacing:-1px}
h1{font-size:clamp(2.4rem,5.4vw,4rem)} h2{font-size:clamp(1.8rem,3.4vw,2.6rem)} h3{font-size:1.4rem} h4{font-size:1.1rem}
p{margin-bottom:1rem}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.narrow{max-width:820px}
.eyebrow{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:400;color:#bcbcbc;margin-bottom:.8rem;display:block}
.btn{display:inline-block;background:var(--teal);color:#fff;font-weight:700;text-decoration:none;padding:12px 16px;border-radius:3px;border:0;cursor:pointer;font:700 13px/12px var(--btn);letter-spacing:.04em;text-transform:uppercase;transition:.2s}
.btn:hover{background:#fff;color:#2d2d2d;box-shadow:inset 0 0 0 1px #2d2d2d}
.btn.ghost{background:transparent;box-shadow:inset 0 0 0 1px #fff;color:#fff}
.btn.ghost:hover{background:#fff;color:#2d2d2d}
.btn.dark{background:var(--teal);color:#fff}.btn.dark:hover{background:#fff;color:#2d2d2d;box-shadow:inset 0 0 0 1px #2d2d2d}


/* header */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 24px;max-width:1280px;margin:0 auto}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--spruce)}
.logo-ph{width:46px;height:46px;border-radius:3px;background:#2d2d2d;display:grid;place-items:center;flex:none}
.brand-t{font-family:var(--head);font-weight:600;font-size:1.02rem;line-height:1.1}
.brand-t small{display:block;font:300 .64rem var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:3px}
.award{display:flex;align-items:center;gap:6px;border:1px dashed var(--teal);color:#2d2d2d;border-radius:3px;font-size:.6rem;padding:3px 9px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;line-height:1.2;margin-left:6px}
nav ul{list-style:none;display:flex;gap:2px;align-items:center}
nav a,nav button.nl{font:400 .8rem var(--body);color:var(--ink);text-decoration:none;padding:.55rem .75rem;border-radius:3px;background:none;border:0;cursor:pointer;display:block;white-space:nowrap}
nav a:hover,nav button.nl:hover,nav a.on{background:none;color:var(--teal)}
nav a.cta{background:var(--teal);color:#fff;font-weight:600;margin-left:6px}nav a.cta:hover,nav a.cta.on{background:#2d2d2d;color:#fff}
.dd{position:relative}
.dd .menu{position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--line);border-radius:3px;box-shadow:var(--shadow);padding:8px;min-width:230px;display:none;flex-direction:column}
.dd:hover .menu,.dd:focus-within .menu{display:flex}
.dd .menu a{border-radius:3px}
.burger{display:none;background:none;border:0;cursor:pointer;padding:8px}
.burger span{display:block;width:24px;height:2px;background:var(--spruce);margin:5px 0;transition:.2s}

/* pages */
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
section{padding:84px 0}
.pagehead{background:#fff;border-bottom:1px solid var(--line);padding:72px 0 40px;text-align:center}
.pagehead p{color:var(--muted);max-width:640px;margin:1rem auto 0}

/* hero */
.hero{background:#020202;color:#fff;padding:0;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-top:80px;padding-bottom:80px;max-width:1240px}
.hero h1{color:#fff;margin-bottom:1.2rem}
.hero .eyebrow{color:var(--teal)}
.hero p.lead{font-size:1.05rem;color:rgba(255,255,255,.7);max-width:520px;margin-bottom:2rem}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap}
.hero .ph{position:relative}
.hero .ph img{border-radius:3px;aspect-ratio:4/4.2;object-fit:cover;object-position:60% 30%;box-shadow:none}
.hero .tag{position:absolute;left:-22px;bottom:34px;background:#fff;color:#2d2d2d;border-radius:3px;padding:14px 20px;box-shadow:var(--shadow);font-family:var(--head);font-weight:600;font-size:1.05rem;line-height:1.2}
.hero .tag small{display:block;font:300 .7rem var(--body);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:3px}


/* services strip */
.strip{background:var(--teal);padding:0}
.strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:1240px}
.strip .it{padding:34px 28px;text-align:center;color:#fff;border-right:1px solid rgba(255,255,255,.25)}
.strip .it:last-child{border:0}
.strip svg{margin:0 auto 10px}
.strip h4{margin-bottom:.4rem;color:#fff;font-size:18px;letter-spacing:0}.strip p{font-size:.86rem;margin:0;font-weight:400}

/* approach */
.approach .intro{max-width:760px;margin:0 auto 52px;text-align:center}
.approach .intro p{color:var(--muted)}
.values{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.val{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:.25s}
.val:hover{box-shadow:0 6px 22px rgba(0,0,0,.14)}
.val .im{aspect-ratio:4/4.6;position:relative;overflow:hidden}
.val .im img{width:100%;height:100%;object-fit:cover}
.val .num{position:absolute;top:14px;left:14px;background:var(--teal);color:#fff;width:36px;height:36px;border-radius:3px;display:grid;place-items:center;font:600 .85rem var(--head)}
.val .tx{padding:20px 22px 24px}
.val h3{font-size:1.2rem}
.val.s2 .im{aspect-ratio:4/4.6}
.promise{font-family:var(--head);font-size:1.1rem;color:var(--spruce);text-align:center;margin-bottom:28px}

/* photo placeholder */
.ph-box{background:repeating-linear-gradient(135deg,#f6f6f6,#f6f6f6 12px,#efefef 12px,#efefef 24px);border:2px dashed #bcbcbc;border-radius:var(--r);display:grid;place-items:center;text-align:center;padding:24px;color:#7d7d7d;font-size:.82rem;min-height:280px;width:100%;height:100%}
.ph-box b{display:block;font-family:var(--head);font-size:1rem;color:#2d2d2d;margin-bottom:6px;letter-spacing:0}

/* locations */
.loc{background:#f6f6f6}
.locs{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:40px}
.lc{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}
.lc img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center 30%}
.lc .in{padding:28px 30px 32px}
.lc h3{margin-bottom:.8rem}
.lc address{font-style:normal;margin-bottom:1rem}
.lc .row{font-size:.92rem}
.lc .row b{font-weight:500;color:var(--spruce);display:inline-block;min-width:48px}
.hours{margin-top:18px;border-top:1px solid var(--line);padding-top:16px;font-size:.88rem}
.hours div{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px dotted var(--line)}
.hours div span:first-child{font-weight:500;color:var(--spruce)}
.hours .closed span:last-child{color:var(--muted)}
.note{font-size:.84rem;color:var(--muted);margin-top:30px;text-align:center}
.note a{font-weight:600}

/* split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.split.rev .tx{order:2}
.split img{border-radius:var(--r);box-shadow:var(--shadow);width:100%}
.split .tx p{color:#2d2d2d}
.arch{border-radius:3px!important}

/* testimonials */
.quotes{background:#2d2d2d;color:#fff}
.quotes h2{color:#fff;text-align:center;margin-bottom:44px}
.qgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.q{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:var(--r);padding:30px 28px;display:flex;flex-direction:column}
.q .mark{font:600 3rem/0.6 'Poppins',sans-serif;color:var(--teal);margin-bottom:12px}
.q p{font-size:.93rem;color:#e8e8e8;flex:1}
.q cite{font:500 .85rem var(--body);font-style:normal;color:var(--teal);letter-spacing:.04em}
.q.long p{font-size:.88rem}
.qphoto{margin:36px auto 0;max-width:420px}
.qphoto img{border-radius:var(--r);aspect-ratio:4/4;object-fit:cover;object-position:center 70%}

/* team */
.vet{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start;background:#fff;border-radius:3px;padding:36px;box-shadow:var(--shadow);margin-bottom:30px}
.vet img{border-radius:var(--r);width:100%}
.vet .role{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:.5rem;display:block}
.vet h3{font-size:1.9rem;margin-bottom:1rem}

/* services */
.subnav{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;padding:18px 24px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:71px;z-index:40}
.subnav button{font:400 .82rem var(--body);background:#fff;border:1px solid var(--line);border-radius:3px;padding:.55rem 1.1rem;cursor:pointer;color:var(--ink);transition:.2s}
.subnav button:hover{border-color:var(--teal)}
.subnav button.on{background:var(--teal);color:#fff;border-color:var(--teal)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.card{background:#fff;border-radius:var(--r);padding:28px;box-shadow:var(--shadow);border-top:4px solid var(--teal)}
.card h4{margin-bottom:.8rem}
.card ul{list-style:none}
.card li{padding:.32rem 0 .32rem 26px;position:relative;font-size:.92rem;border-bottom:1px dotted var(--line)}
.card li:last-child{border:0}
.card li::before{content:"";position:absolute;left:0;top:.82rem;width:10px;height:10px;border-radius:50%;background:var(--teal)}
.offer{background:#2d2d2d;color:#fff;border-radius:3px;padding:36px 40px;display:flex;gap:30px;align-items:center;margin:34px 0}
.offer .big{font:600 3.6rem/1 var(--head);color:var(--teal);flex:none}
.offer p{margin:0;color:#e8e8e8}
.checks{list-style:none;columns:2;column-gap:36px;margin:1.4rem 0}
.checks li{padding:.5rem 0 .5rem 32px;position:relative;break-inside:avoid;font-size:.95rem}
.checks li::before{content:"";position:absolute;left:0;top:.7rem;width:20px;height:20px;border-radius:50%;background:var(--teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}
.duo img{border-radius:var(--r);width:100%;aspect-ratio:1;object-fit:cover;box-shadow:var(--shadow)}
.fin{background:#f6f6f6;border-radius:3px;padding:48px;text-align:center}

/* angel fund */
.angel-hero{background:#fff}
.tri{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.tri .card{border-top-color:var(--berry)}
.heart{color:#bcbcbc}

/* community */
.mosaic{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;margin-top:40px;align-items:start}
.mosaic figure{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}
.mosaic img{width:100%;object-fit:cover}
.mosaic figcaption{padding:16px 22px;font-size:.9rem}

/* careers */
.roles{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:30px 0}
.role{background:#fff;border-radius:3px;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow);font-weight:400}
.role span{color:var(--teal);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;font-weight:500}

/* social */
.social{min-height:62vh;display:grid;place-items:center;text-align:center;background:#020202;color:#fff;padding:80px 24px}
.social h1{color:#fff;font-size:clamp(3rem,10vw,8rem);line-height:.98;margin-bottom:1.2rem}
.social h1 em{font-style:normal;color:var(--teal)}
.social p.big{font-size:clamp(1.1rem,2.4vw,1.7rem);color:rgba(255,255,255,.75);max-width:760px;margin:0 auto 2.4rem}
.soc-links{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.soc-links a{display:flex;align-items:center;gap:12px;background:#fff;color:#2d2d2d;text-decoration:none;border-radius:3px;padding:1rem 2rem;font-weight:500;font-size:1.05rem;transition:.2s}
.soc-links a:hover{background:var(--teal);color:#fff}.soc-links a:hover small{color:#fff}
.soc-links small{display:block;font-weight:300;font-size:.7rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;line-height:1.2}

/* forms */
.formcard{background:#fff;border-radius:3px;padding:38px;box-shadow:var(--shadow);margin-bottom:30px}
.formcard h3{margin-bottom:.4rem}
.formcard .sub-t{color:var(--muted);font-size:.9rem;margin-bottom:1.4rem}
form .g2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font:500 .8rem var(--body);color:var(--spruce);margin-bottom:6px;letter-spacing:.03em}
label i{color:var(--teal);font-style:normal}
input,textarea,select{width:100%;font:300 .95rem var(--body);padding:.8rem 1rem;border:1.5px solid var(--line);border-radius:3px;background:#fff;color:var(--ink);margin-bottom:16px;transition:.2s}
input:focus,textarea:focus,select:focus{outline:0;border-color:var(--teal);background:#fff}
textarea{min-height:110px;resize:vertical}
.fnote{font-size:.82rem;color:var(--muted);margin:-6px 0 18px}
.ok{display:none;background:#f6f6f6;border-left:4px solid var(--teal);padding:14px 18px;border-radius:3px;margin-top:16px;font-size:.9rem}
.er{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}
.er .card{border-top-color:var(--berry)}
.er h4{margin-bottom:.4rem}
.er a.tel{font:600 1.15rem var(--head);color:#2d2d2d;text-decoration:none;letter-spacing:0}

/* footer */
footer{background:#2d2d2d;color:#bcbcbc;padding:64px 0 28px;font-size:.88rem}
footer .cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;margin-bottom:40px}
footer h4{color:#fff;margin-bottom:.8rem;font-size:1.05rem}
footer a{color:var(--teal);text-decoration:none}
footer p{margin-bottom:.4rem}
footer .cp{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;font-size:.78rem;text-align:center}

@media(max-width:1100px){
  .values{grid-template-columns:repeat(2,1fr)}
  .award{display:none}
}
@media(max-width:960px){
  .burger{display:block}
  nav{position:absolute;top:100%;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);display:none;padding:12px 24px 20px;max-height:80vh;overflow:auto}
  nav.open{display:block}
  nav ul{flex-direction:column;align-items:stretch}
  .dd .menu{position:static;display:flex;box-shadow:none;border:0;padding:0 0 0 14px;background:none}
  nav a.cta{margin:8px 0 0;text-align:center}
  .hero .wrap,.split,.vet,.locs,.mosaic,.er,footer .cols{grid-template-columns:1fr}
  .hero .wrap{padding-top:50px;padding-bottom:60px;gap:40px}
  .hero .tag{left:12px}
  .split.rev .tx{order:0}
  .strip .wrap{grid-template-columns:1fr 1fr}
  .qgrid,.cards,.tri{grid-template-columns:1fr}
  .roles{grid-template-columns:1fr}
  .subnav{position:static}
  section{padding:60px 0}
  .checks{columns:1}
  .offer{flex-direction:column;text-align:center}
  form .g2{grid-template-columns:1fr}
}
@media(max-width:560px){
  .values{grid-template-columns:1fr}
  .strip .wrap{grid-template-columns:1fr}
  .strip .it{border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}
  .brand-t small{display:none}
}

/* ===== Live-site match (header, home, footer) ===== */
body{font-weight:400}
header{position:sticky;background:#fff;border-bottom:0;backdrop-filter:none}
.bar{max-width:1280px;padding:18px 40px}
nav a,nav button.nl{font:400 15px var(--body);color:#979797;padding:.4rem .55rem}
nav a:hover,nav a.on{background:none;color:#49c0b6}
.lhero{position:relative;min-height:668px;background:#2c3336;display:flex;align-items:center;overflow:hidden}
.lhero-in{position:relative;max-width:1280px;width:100%;margin:0 auto;padding:0 40px 0 150px;color:#fff}
.lh-eye{font-size:21px;font-weight:500;margin-bottom:22px}
.lhero h1{color:#fff;font-size:58px;font-weight:700;line-height:.9;letter-spacing:-1px;margin-bottom:28px}
.lh-lead{font-size:15px;max-width:530px;color:rgba(255,255,255,.85);margin-bottom:44px;line-height:1.3}
.lhero .btn{font:700 13px/1 var(--btn);padding:8px 10px}
.labout{padding:130px 0 120px;text-align:center;background:#fff}
.l-eye{font-size:11px;font-weight:700;color:#bcbcbc;margin-bottom:18px}
.l-h{font-size:21px;font-weight:700;color:#2d2d2d;letter-spacing:-.5px;margin-bottom:26px}
.l-p{max-width:460px;margin:0 auto;font-size:14.5px;line-height:1.6;color:#424242}
.l-sub{margin:70px 0 26px;font-size:11px;font-weight:700;color:#bcbcbc}
.lvals{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1080px;margin:0 auto}
.lvals img{width:100%;aspect-ratio:1;object-fit:cover}
.lvals h4{font-size:15px;font-weight:600;color:#2d2d2d;letter-spacing:0;margin-top:14px}
.lband{background:#49c0b6;color:#fff;padding:70px 20px 66px}
.lband-in{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}
.lband img{height:62px;margin:0 auto 22px}
.lband h3{color:#fff;font-size:21px;font-weight:500;letter-spacing:0;margin-bottom:24px}
.lband p{font-size:13px;font-weight:500;line-height:1.55;max-width:250px;margin:0 auto}
/* scrolling reviews inside the teal band */
.lband:has(.lrevs){padding:70px 0 74px}
.lrevs{margin:0}
.lrevs-head{display:flex;align-items:baseline;justify-content:center;gap:18px;flex-wrap:wrap;text-align:center;margin:0 20px 40px}
.lrevs-head p{max-width:none;margin:0;font-size:26px;font-weight:500;color:#fff}
.lrevs-head span{font-size:13px;font-weight:600;letter-spacing:.06em;color:#fff;opacity:.9}
.lrevs-vp{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.lrevs-track{display:flex;width:max-content;align-items:flex-start;animation:lrevs 80s linear infinite}
.lrevs-vp:hover .lrevs-track{animation-play-state:paused}
@keyframes lrevs{to{transform:translateX(-50%)}}
.lrv{flex:0 0 400px;margin:0;padding:0 34px;border-right:1px solid rgba(255,255,255,.3);display:flex;flex-direction:column;text-align:left;color:#fff}
.lrv-st{color:#fff;letter-spacing:3px;font-size:14px}
.lrv blockquote{margin:12px 0 18px;font-size:15px;font-weight:500;line-height:1.7;color:#fff}
.lrv figcaption{display:flex;align-items:center;gap:11px;font-weight:700;font-size:14px;color:#fff}
.lrv-av{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px}
@media(max-width:560px){.lrv{flex-basis:300px;padding:0 24px}.lband:has(.lrevs){padding:54px 0 58px}}
.lrv blockquote{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:10px}
.lrv-more{align-self:flex-start;color:#fff;font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:1px;margin-bottom:20px}
.lrv-more:hover{border-bottom-color:#fff}
@media(prefers-reduced-motion:reduce){.lrevs-track{animation:none}.lrevs-vp{overflow-x:auto}.lrv[aria-hidden]{display:none}}

.lfoot{background:#222222;color:#bcbcbc;padding:66px 20px 0;font-size:11.5px;line-height:1.55}
.lf-cols{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:50px}
.lfoot h5{font:700 12px var(--body);color:#fff;text-transform:uppercase;margin-bottom:22px}
.lfoot p{margin-bottom:16px}
.lfoot a{color:#bcbcbc;text-decoration:none}.lfoot a:hover{color:#49c0b6}
.lfoot .ul{border-bottom:2px solid #bcbcbc;padding-bottom:6px;display:inline-block;margin-bottom:28px}
.lf-bot{background:#1e1e1e;margin:60px -20px 0;padding:22px 60px;font-size:11px}
.lf-bot b{color:#bcbcbc}
@media(max-width:960px){
  .lhero{min-height:520px;background-size:cover;background-position:70% center}
  .lhero::before{width:100%;opacity:.45;-webkit-mask-image:none;mask-image:none}
  .lhero-in{padding:0 24px}.lhero h1{font-size:42px}
  .lvals,.lband-in{grid-template-columns:1fr 1fr}
  .lf-cols{grid-template-columns:1fr 1fr;gap:30px}
}
@media(max-width:560px){.lvals,.lband-in,.lf-cols{grid-template-columns:1fr}.brand img{height:30px!important}.brand img+img{height:42px!important;margin-left:6px!important}.bar{padding:14px 16px}}

.lf-ig{max-width:1100px;margin:6px auto 0;font-size:12px;color:#bcbcbc}
.lf-ig a{color:#49c0b6!important}
.lloc{background:#fff;padding:90px 20px 80px}
.lloc-in{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:50px}
.lloc-c img{width:100%;aspect-ratio:16/10;object-fit:cover;margin-bottom:26px}
.lloc-c h3{font-size:21px;font-weight:700;color:#2d2d2d;letter-spacing:-.5px;margin-bottom:14px}
.lloc-c p{font-size:14px;color:#424242;line-height:1.6;margin-bottom:14px}
.lloc-c a{color:#2d2d2d}
.lloc-c h5{font:700 12px var(--body);text-transform:uppercase;color:#2d2d2d;margin:24px 0 10px;border-bottom:2px solid #49c0b6;display:inline-block;padding-bottom:4px}
.lhrs{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;font-size:13.5px;color:#424242}
.lhrs span:nth-child(odd){font-weight:600;color:#2d2d2d}
.lloc-ig{max-width:1100px;margin:44px auto 0;text-align:center;font-size:13px;color:#7d7d7d}
.lloc-ig a{color:#49c0b6;font-weight:600}
.lf2{grid-template-columns:1fr 1fr!important;max-width:760px!important}
@media(max-width:960px){.lloc-in{grid-template-columns:1fr}}

.lblurb{font-style:italic;color:#7d7d7d!important}
.lsoc a{color:#49c0b6!important;font-weight:600;text-decoration:none}
.lfoot{padding:44px 20px 0;text-align:center}
.lf-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 12px;font-size:12px;text-transform:uppercase;font-weight:700;letter-spacing:.04em}
.lf-legal a{color:#fff!important}.lf-legal a:hover{color:#49c0b6!important}
.lf-legal span{color:#555}
.lf-disc{max-width:720px;margin:20px auto 0;font-size:11.5px;color:#9a9a9a}
.lf-disc a{color:#49c0b6!important}
.lf-bot{margin-top:40px;text-align:center}
.legal h3{font-size:18px;font-weight:700;letter-spacing:-.3px;margin:28px 0 8px}
.legal p{font-size:14.5px}
.legal .upd{margin-top:36px;color:#7d7d7d;font-size:13px}
.consent{font-size:12px;color:#7d7d7d;margin:-4px 0 14px}
.consent a{color:#49c0b6}

/* polish: inner page banners + CTA */
.pagehead{position:relative;background:#2c3336!important;padding:110px 0 100px!important;text-align:left;overflow:hidden;border:0}
.pagehead::before{content:"";position:absolute;top:0;bottom:0;right:0;width:55%;background:var(--bg,none) center/cover no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 45%);mask-image:linear-gradient(90deg,transparent 0,#000 45%)}
.pagehead .wrap,.pagehead .wrap.narrow{position:relative;max-width:1180px;padding:0 40px}
.pagehead .wrap>*{max-width:560px}
.pagehead h1{color:#fff!important;font-size:46px;font-weight:700;letter-spacing:-1px;line-height:1.05}
.pagehead .eyebrow{color:#49c0b6!important;font-weight:600}
.pagehead p{color:rgba(255,255,255,.82)!important;margin:1.1rem 0 0!important;font-size:15px!important;font-family:var(--body)!important}
.lcta{background:#49c0b6;padding:40px 20px}
.lcta-in{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.lcta h3{color:#fff;font-size:24px;font-weight:700;letter-spacing:-.5px;margin-bottom:4px}
.lcta p{color:#fff;margin:0;font-size:14px;font-weight:500}
.lcta p a{color:#fff;text-decoration:none;font-weight:700}
.lcta .btn{background:#fff;color:#2d2d2d}
.lcta .btn:hover{background:#2d2d2d;color:#fff;box-shadow:none}
.lfoot{padding-top:40px}
@media(max-width:960px){
  .pagehead{padding:70px 0 60px!important}
  .pagehead::before{width:100%;opacity:.3;-webkit-mask-image:none;mask-image:none}
  .pagehead .wrap,.pagehead .wrap.narrow{padding:0 24px}
  .pagehead h1{font-size:34px}
}
/* ===== v3: original hero + redesigned sections ===== */
.logo-c,.logo-w{height:46px;width:auto}.awd{height:58px;width:auto;margin-left:12px}
.logo-w{display:none}
body.home header{position:absolute;top:0;left:0;right:0;background:transparent}
body.home .logo-c{display:none}body.home .logo-w{display:block}
body.home nav a{color:#fff}
body.home nav a:hover{color:#49c0b6}
body.home .burger span{background:#fff}
.bar{max-width:1600px;padding:16px clamp(24px,10vw,210px)}
.lhero{position:relative;min-height:clamp(560px,46.8vw,900px);background:#0b0f11;display:flex;align-items:center}
.lhero::before{content:none}
.lhero-in{position:relative;z-index:1;max-width:none;padding:60px 24px 0 clamp(24px,9.4vw,180px)}
.lh-eye{font-size:clamp(17px,1.25vw,23px);font-weight:500;margin-bottom:22px;color:#fff}
.lhero h1{font-size:clamp(40px,3.4vw,64px);line-height:.92;margin-bottom:30px}
.lh-lead{font-size:clamp(14px,.85vw,16px);max-width:640px;color:rgba(255,255,255,.85);margin-bottom:52px;line-height:1.35}
.lhero .btn{font:700 13px/1 var(--btn);padding:10px 13px}
.l-eye{font-size:12px;font-weight:700;color:#bcbcbc;margin-bottom:16px;letter-spacing:0}
.rule{display:block;width:44px;height:3px;background:#49c0b6;margin:22px auto 26px;border-radius:2px}
.ap{padding:120px 24px 130px;background:#fff}
.ap-in,.cls-in{max-width:1180px;margin:0 auto}
.ap-head{text-align:center;max-width:720px;margin:0 auto}
.ap-head h2{font-size:clamp(26px,2.4vw,34px);font-weight:700;letter-spacing:-.5px;color:#2d2d2d}
.ap-head p:not(.l-eye){font-size:16px;line-height:1.75;color:#555;margin:0}
.ap-sub{text-align:center;font-size:19px;font-weight:600;color:#2d2d2d;letter-spacing:0;margin:80px 0 34px}
.ap-g{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.ap-g figure{margin:0}
.ap-img{overflow:hidden;border-radius:3px;aspect-ratio:4/5;background:#f6f6f6}
.ap-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.ap-g figure:hover img{transform:scale(1.04)}
.ap-g figcaption{margin-top:20px;padding-top:16px;border-top:3px solid #49c0b6;font-size:17px;font-weight:600;color:#2d2d2d;line-height:1.35}
.cls{background:#f6f6f6;padding:120px 24px}
.cls-g{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:64px}
.cl{background:#fff;border-radius:3px;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.04),0 10px 30px rgba(0,0,0,.05);display:flex;flex-direction:column}
.cl-img{position:relative;aspect-ratio:16/9;overflow:hidden}
.cl-img img{width:100%;height:100%;object-fit:cover}
.cl-st{position:absolute;left:18px;bottom:18px;background:#fff;color:#2d2d2d;font-size:13px;font-weight:600;padding:7px 12px 7px 26px;border-radius:3px}
.cl-st:empty{display:none}
.cl-st::before{content:"";position:absolute;left:11px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:#bcbcbc}
.cl-st.open::before{background:#49c0b6;box-shadow:0 0 0 3px rgba(73,192,182,.3)}
.cl-b{padding:34px 36px 30px;display:flex;flex-direction:column;flex:1}
.cl-b h3{font-size:24px;font-weight:700;color:#2d2d2d;letter-spacing:-.5px;margin-bottom:10px}
.cl-blurb{font-size:15px;color:#666;line-height:1.6;margin-bottom:26px;min-height:48px}
.cl-info{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;padding:22px 0;border-top:1px solid #e6e6e6;border-bottom:1px solid #e6e6e6}
.cl-info li{display:flex;gap:12px;font-size:14.5px;color:#2d2d2d;line-height:1.5}
.cl-info svg,.cl-hrs h4 svg{width:20px;height:20px;flex:none;fill:none;stroke:#49c0b6;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:1px}
.cl-info a{color:#2d2d2d;text-decoration:none;border-bottom:1px solid #49c0b6}
.cl-info a:hover{color:#49c0b6}
.cl-hrs{padding:24px 0 8px;flex:1}
.cl-hrs h4{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:#2d2d2d;letter-spacing:0;margin-bottom:12px}
.cl-hrs table{width:100%;border-collapse:collapse;font-size:14.5px}
.cl-hrs th,.cl-hrs td{padding:8px 10px;text-align:left;font-weight:400;color:#555;border-bottom:1px solid #f0f0f0}
.cl-hrs th{color:#2d2d2d;font-weight:600;width:42%}
.cl-hrs td{text-align:right}
.cl-hrs td small{color:#999;font-size:12.5px}
.cl-hrs tr.today th,.cl-hrs tr.today td{background:rgba(73,192,182,.10);color:#2d2d2d;font-weight:700}
.cl-hrs tr.today th{box-shadow:inset 3px 0 0 #49c0b6}
.cl-foot{display:flex;align-items:center;gap:20px;padding-top:22px;margin-top:10px;border-top:1px solid #e6e6e6}
.cl-foot a{font-size:14px;font-weight:600;color:#2d2d2d;text-decoration:none}
.cl-foot a:hover{color:#49c0b6}
.cl-foot .btn{margin-left:auto;color:#fff;font:700 12px/1 var(--btn);padding:11px 14px}
.cl-foot .btn:hover{color:#2d2d2d}
.cls-note{text-align:center;font-size:14px;color:#777;margin:40px auto 0;max-width:720px}
.cls-note a{color:#2d2d2d;font-weight:600;border-bottom:1px solid #49c0b6;text-decoration:none}
@media(max-width:960px){
  body.home nav.open{background:#fff}
  body.home nav.open a{color:#2d2d2d}
  .bar{padding:14px 20px}
  .lhero{min-height:600px;background-position:62% center}
  .lhero::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.35)}
  .lhero-in{padding:90px 24px 40px}
  .ap,.cls{padding:80px 20px}
  .ap-g{grid-template-columns:1fr 1fr;gap:20px}
  .cls-g{grid-template-columns:1fr}
}
@media(max-width:560px){
  .logo-c,.logo-w{height:30px}.awd{height:42px;margin-left:8px}
  .cl-info{grid-template-columns:1fr}
  .cl-b{padding:26px 22px}
  .cl-foot{flex-wrap:wrap}
  .ap-g figcaption{font-size:15px}
}

.lf-soc{display:flex;justify-content:center;gap:40px;margin-top:26px;flex-wrap:wrap}
.lf-soc>div{display:flex;align-items:center;gap:10px}
.lf-soc span{font-size:12px;font-weight:700;color:#bcbcbc;margin-right:4px}
.lf-soc a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;transition:background .2s}
.lf-soc a:hover{background:#49c0b6}
.lf-soc svg{width:18px;height:18px;fill:#fff}

/* ===== v4b: larger header logo, big award on banners ===== */
.logo-c,.logo-w{height:58px}
.hero-award{position:absolute;z-index:5;left:50%;bottom:0;transform:translate(-50%,50%);width:clamp(120px,9vw,160px);height:auto;border-radius:50%;background:#fff;padding:6px;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.ph-award{position:absolute;z-index:2;right:clamp(24px,8vw,160px);top:50%;transform:translateY(-50%);width:clamp(100px,9vw,150px);height:auto;filter:drop-shadow(0 8px 20px rgba(0,0,0,.45))}
@media(max-width:960px){
  .logo-c,.logo-w{height:44px}
  .hero-award{width:120px}
}
@media(max-width:600px){.hero-award{width:104px;padding:5px}}
@media(max-width:560px){.logo-c,.logo-w{height:36px}.hero-award{width:92px}}

/* no sticky white header: menu sits over every banner and scrolls away */
body.home header{position:absolute!important;background:transparent!important;box-shadow:none!important}
.pagehead{padding-top:150px!important}
.social{padding-top:150px}
.subnav{position:static!important}
@media(max-width:960px){.pagehead{padding-top:120px!important}}

.pagehead::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(32,37,39,.95) 0,rgba(32,37,39,.7) 22%,rgba(32,37,39,0) 55%);pointer-events:none}
.pagehead .wrap{z-index:1}


.hero-awards{display:flex;gap:14px;margin-bottom:26px}
.hero-awards img{width:clamp(84px,6.6vw,118px);height:auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.5))}
.lhero .btn.hero-cta{display:inline-flex;align-items:center;gap:14px;font:700 16px/1 var(--btn);letter-spacing:.06em;padding:20px 30px;border-radius:3px;box-shadow:0 10px 26px rgba(73,192,182,.35);transition:background .2s,color .2s,box-shadow .2s}
.hero-cta svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.lhero .btn.hero-cta:hover{background:#fff;color:#2d2d2d;box-shadow:0 10px 26px rgba(0,0,0,.3)}
.hero-cta:hover svg{transform:translateX(5px)}
.lh-lead{margin-bottom:40px!important}
@media(max-width:600px){.hero-awards img{width:78px}.lhero .btn.hero-cta{font-size:14px;padding:17px 24px}}

.lf-about{max-width:560px;margin:0 auto 28px;text-align:center}
.lf-about h5{font:700 15px var(--body);color:#fff;text-transform:none;letter-spacing:0;margin-bottom:10px}
.lf-about p{font-size:14px;line-height:1.6;color:#bcbcbc;margin:0}
.mbr{display:none}
@media(max-width:600px){.mbr{display:inline}}
/* dog eyes */
@media(max-width:960px){.lhero{background-position:52% center!important}}
@media(max-width:600px){.lhero{background-position:70% center!important}.lhero::after{background:rgba(0,0,0,.22)!important}}
/* cute promise cards */
@media(min-width:1000px){.ap-head{max-width:1000px}.ap-head h2{white-space:nowrap}.ap-head p:not(.l-eye){max-width:720px;margin:0 auto}}
.ap-g{gap:34px;padding:10px 6px 0}
.ap-g figure{background:#fff;border-radius:22px;padding:12px 12px 26px;box-shadow:0 2px 4px rgba(0,0,0,.04),0 14px 34px rgba(45,45,45,.10);transition:transform .35s cubic-bezier(.2,.8,.3,1.2),box-shadow .35s;position:relative}
.ap-g figure:nth-child(odd){transform:rotate(-2deg)}
.ap-g figure:nth-child(even){transform:rotate(2deg) translateY(14px)}
.ap-g figure:hover{transform:rotate(0) translateY(-8px);box-shadow:0 4px 8px rgba(0,0,0,.05),0 22px 44px rgba(45,45,45,.16)}
.ap-img{border-radius:16px;aspect-ratio:1/1}
.ap-g figure:hover img{transform:scale(1.06)}
.ap-g figcaption{border-top:0;margin-top:0;padding:34px 8px 0;text-align:center;font-size:16.5px;position:relative}
.ap-g figcaption::before{content:"";position:absolute;left:50%;top:-24px;width:48px;height:48px;margin-left:-24px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%2349c0b6'/%3E%3Cg fill='%23fff'%3E%3Cg transform='translate(9 9.5) scale(.47)'%3E%3Cellipse cx='14' cy='27' rx='5.5' ry='7' transform='rotate(-18 14 27)'/%3E%3Cellipse cx='25' cy='14' rx='5.5' ry='7.5' transform='rotate(-6 25 14)'/%3E%3Cellipse cx='39' cy='14' rx='5.5' ry='7.5' transform='rotate(6 39 14)'/%3E%3Cellipse cx='50' cy='27' rx='5.5' ry='7' transform='rotate(18 50 27)'/%3E%3Cpath d='M32 30c-8 0-16 9.5-16 16.5 0 5 4 7.5 8 7.5 3.2 0 5-1.8 8-1.8s4.8 1.8 8 1.8c4 0 8-2.5 8-7.5C48 39.5 40 30 32 30z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;border-radius:50%;box-shadow:0 0 0 5px #fff}
@media(max-width:960px){.ap-g{gap:26px}.ap-g figure:nth-child(even){transform:rotate(2deg)}}
@media(max-width:560px){.ap-g figure{padding:8px 8px 18px;border-radius:18px}.ap-g figcaption{font-size:14px;padding-top:28px}.ap-g figcaption::before{width:40px;height:40px;margin-left:-20px;top:-20px}}
/* caring cards v2 */
.ap{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0,#fff 46%,#f4fbfa 46%,#f4fbfa 100%)}
.ap::before,.ap::after{content:"";position:absolute;width:260px;height:260px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cg fill='%2349c0b6' fill-opacity='.09'%3E%3Cg transform='translate(9 9.5) scale(.47)'%3E%3Cellipse cx='14' cy='27' rx='5.5' ry='7' transform='rotate(-18 14 27)'/%3E%3Cellipse cx='25' cy='14' rx='5.5' ry='7.5' transform='rotate(-6 25 14)'/%3E%3Cellipse cx='39' cy='14' rx='5.5' ry='7.5' transform='rotate(6 39 14)'/%3E%3Cellipse cx='50' cy='27' rx='5.5' ry='7' transform='rotate(18 50 27)'/%3E%3Cpath d='M32 30c-8 0-16 9.5-16 16.5 0 5 4 7.5 8 7.5 3.2 0 5-1.8 8-1.8s4.8 1.8 8 1.8c4 0 8-2.5 8-7.5C48 39.5 40 30 32 30z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none}
.ap::before{left:-60px;top:60px;transform:rotate(-25deg)}
.ap::after{right:-50px;bottom:40px;transform:rotate(20deg)}
.ap-in{position:relative;z-index:1}
.ap-head .rule{width:140px;height:2px;background:linear-gradient(90deg,transparent,#49c0b6 30%,#49c0b6 38%,transparent 38%,transparent 62%,#49c0b6 62%,#49c0b6 70%,transparent);position:relative;margin:24px auto 28px}
.ap-head .rule::after{content:"";position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px 0 0 -15px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='%2349c0b6'%3E%3Cellipse cx='14' cy='27' rx='5.5' ry='7' transform='rotate(-18 14 27)'/%3E%3Cellipse cx='25' cy='14' rx='5.5' ry='7.5' transform='rotate(-6 25 14)'/%3E%3Cellipse cx='39' cy='14' rx='5.5' ry='7.5' transform='rotate(6 39 14)'/%3E%3Cellipse cx='50' cy='27' rx='5.5' ry='7' transform='rotate(18 50 27)'/%3E%3Cpath d='M32 30c-8 0-16 9.5-16 16.5 0 5 4 7.5 8 7.5 3.2 0 5-1.8 8-1.8s4.8 1.8 8 1.8c4 0 8-2.5 8-7.5C48 39.5 40 30 32 30z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.ap-sub{margin-top:70px}
.ap-sub::after{content:"";display:block;width:40px;height:3px;border-radius:2px;background:#49c0b6;margin:14px auto 0}
.ap-g figure,.ap-g figure:nth-child(odd),.ap-g figure:nth-child(even){transform:none}
.ap-g{align-items:stretch}
.ap-g figure{display:flex;flex-direction:column;border:1px solid #eef3f2}
.ap-g figure:hover{transform:translateY(-10px)}
.ap-g figcaption{flex:1;display:flex;align-items:flex-start;justify-content:center}
.ap-img{position:relative}
.ap-img::after{content:"";position:absolute;inset:0;border-radius:16px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04);background:linear-gradient(180deg,rgba(73,192,182,0) 60%,rgba(73,192,182,.12))}
.ap-g figure:nth-child(1) figcaption::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%2349c0b6'/%3E%3Cg fill='%23fff'%3E%3Cg transform='translate(9 9.5) scale(.47)'%3E%3Cellipse cx='14' cy='27' rx='5.5' ry='7' transform='rotate(-18 14 27)'/%3E%3Cellipse cx='25' cy='14' rx='5.5' ry='7.5' transform='rotate(-6 25 14)'/%3E%3Cellipse cx='39' cy='14' rx='5.5' ry='7.5' transform='rotate(6 39 14)'/%3E%3Cellipse cx='50' cy='27' rx='5.5' ry='7' transform='rotate(18 50 27)'/%3E%3Cpath d='M32 30c-8 0-16 9.5-16 16.5 0 5 4 7.5 8 7.5 3.2 0 5-1.8 8-1.8s4.8 1.8 8 1.8c4 0 8-2.5 8-7.5C48 39.5 40 30 32 30z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.ap-g figure:nth-child(2) figcaption::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%2349c0b6'/%3E%3Cg fill='%23fff'%3E%3Cpath d='M24 35s-10-6.2-10-12.8a5.4 5.4 0 0110-2.9 5.4 5.4 0 0110 2.9C34 28.8 24 35 24 35z'/%3E%3C/g%3E%3C/svg%3E")}
.ap-g figure:nth-child(3) figcaption::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%2349c0b6'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='17.5' cy='18.5' r='3.8'/%3E%3Ccircle cx='30.5' cy='18.5' r='3.8'/%3E%3Cpath d='M10 33.5c0-4.4 3.4-7.6 7.5-7.6s7.5 3.2 7.5 7.6zM23 33.5c0-4.4 3.4-7.6 7.5-7.6s7.5 3.2 7.5 7.6z'/%3E%3C/g%3E%3C/svg%3E")}
.ap-g figure:nth-child(4) figcaption::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='24' fill='%2349c0b6'/%3E%3Cg fill='%23fff'%3E%3Cpath d='M24 11.5l3.7 8.3 9 .8-6.8 6 2 8.8L24 30.8l-7.9 4.6 2-8.8-6.8-6 9-.8z'/%3E%3C/g%3E%3C/svg%3E")}
.ap-g figure:hover figcaption::before{animation:bob .6s ease}
@keyframes bob{0%,100%{transform:translateY(0)}40%{transform:translateY(-6px)}}
@media(prefers-reduced-motion:reduce){.ap-g figure:hover figcaption::before{animation:none}.ap-g figure:hover{transform:none}}
@media(max-width:960px){.ap-g figure:nth-child(even){transform:none}.ap::before,.ap::after{width:160px;height:160px}}
/* white bg + scattered animal icons */
.ap{background:#fff!important}
.ap::before,.ap::after{display:none!important}
.ap-deco{position:absolute;inset:0;pointer-events:none;z-index:0}
.ap-deco svg{position:absolute;fill:#49c0b6;opacity:.13}
.ap-deco svg:nth-child(3n){opacity:.09}
@media(max-width:960px){.ap-deco .hm{display:none}.ap-deco svg{opacity:.10}}
/* big paw + bone deco */
.ap-deco svg{opacity:.09!important}
.cls{position:relative;overflow:hidden}
.cls-in{position:relative;z-index:1}
@media(max-width:960px){.ap-deco svg{transform-origin:center;scale:.6}.ap-deco .hm{display:none}}
/* locations white */
.cls{background:#fff!important}
.cl{border:1px solid #eef3f2}
/* logo align */
.bar{max-width:none!important;padding-left:clamp(24px,9.4vw,180px)!important;padding-right:clamp(24px,9.4vw,180px)!important}
.logo-c,.logo-w{height:clamp(48px,3.2vw,60px)!important}
@media(max-width:960px){.bar{padding-left:24px!important;padding-right:20px!important}.logo-c,.logo-w{height:44px!important}}
@media(max-width:560px){.logo-c,.logo-w{height:36px!important}}
/* tablet centered header */
@media(min-width:961px) and (max-width:1199px){
  .bar{flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:14px!important;padding:22px 24px 0!important}
  .brand{justify-content:center}
  .burger{display:none!important}
  header nav,header nav#nav{position:static!important;display:block!important;background:transparent!important;border:0!important;padding:0!important;max-height:none!important;overflow:visible!important;width:100%}
  header nav ul{flex-direction:row!important;flex-wrap:wrap;justify-content:center!important;align-items:center!important;gap:2px 4px}
  header nav a{font-size:clamp(12.5px,1.75vw,15px)!important;padding:6px clamp(5px,.9vw,10px)!important;white-space:nowrap}
  header nav ul{flex-wrap:nowrap!important}
  .lhero-in{padding-top:150px!important}
  .pagehead{padding-top:190px!important}
  .social{padding-top:190px}
}
/* hero text wrap <1200 */
@media(max-width:1199px){.lh-lead{max-width:440px!important}}
@media(max-width:960px){.lh-lead{max-width:420px!important}}
@media(max-width:600px){.lh-lead{max-width:270px!important}}
/* hero bottom space */
.lhero-in{padding-bottom:90px!important}
@media(max-width:960px){.lhero-in{padding-bottom:70px!important}}
/* grouped menu */
header nav ul{gap:6px}
nav .car{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-left:4px;vertical-align:1px;transition:transform .2s}
.dd:hover .car,.dd:focus-within .car{transform:rotate(180deg)}
.dd .menu{left:50%;transform:translateX(-50%);min-width:190px;padding:8px;border:0;border-radius:6px;box-shadow:0 14px 34px rgba(0,0,0,.18);top:calc(100% + 6px)}
.dd .menu::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
.dd .menu a,body.home .dd .menu a{color:#2d2d2d!important;font-size:14.5px;padding:10px 14px;border-radius:4px;display:block}
.dd .menu a:hover,.dd .menu a.on{background:#eef8f7;color:#2d2d2d!important}
nav a.nav-cta,body.home nav a.nav-cta{background:#49c0b6;color:#fff!important;border-radius:3px;padding:9px 18px!important;margin-left:8px;font-weight:600}
nav a.nav-cta:hover{background:#fff;color:#2d2d2d!important}
@media(max-width:960px){
  .dd .menu{position:static;transform:none;display:flex;box-shadow:none;border:0;background:none;padding:0 0 6px 14px;min-width:0}
  .dd .menu::before{display:none}
  .dd .menu a,body.home .dd .menu a{font-size:14px;color:#555!important;padding:6px 10px}
  nav .car{display:none}
  nav a.nav-cta{margin:10px 0 0;text-align:center;display:block}
}
@media(min-width:961px) and (max-width:1199px){header nav ul{flex-wrap:nowrap!important}}
/* events */
.evs{display:flex;flex-direction:column;gap:16px}
.ev{display:flex;gap:22px;align-items:flex-start;background:#fff;border:1px solid #eef3f2;border-radius:10px;padding:20px 22px;box-shadow:0 8px 22px rgba(0,0,0,.05)}
.ev-date{flex:none;width:70px;height:70px;border-radius:10px;background:#49c0b6;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}
.ev-date span{font-size:12px;font-weight:700;letter-spacing:.08em}.ev-date b{font-size:26px;margin-top:4px}
.ev-b h3{font-size:19px;margin:0 0 4px;color:#2d2d2d}.ev-meta{font-size:14px;color:#49c0b6;font-weight:600;margin:0 0 6px}.ev-b p:last-child{margin:0}
/* ===== inner page template (tp) ===== */
.tp-wrap{max-width:1180px;margin:0 auto;padding:0 24px;position:relative;z-index:1}
.tp-hero{position:relative;min-height:clamp(520px,40vw,680px);display:flex;align-items:center;background:#0b0f11;overflow:hidden}
.tp-hero::before{content:"";position:absolute;inset:0 0 0 30%;background:var(--bg) var(--pos,center)/cover no-repeat}
.tp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b0f11 0,#0b0f11 36%,rgba(11,15,17,.55) 52%,rgba(11,15,17,.05) 75%),linear-gradient(180deg,rgba(11,15,17,.75) 0,rgba(11,15,17,0) 28%)}
.tp-hero-in{position:relative;z-index:1;width:100%;padding:130px clamp(24px,9.4vw,180px) 80px;color:#fff}
.tp-crumb{font-size:13px;color:rgba(255,255,255,.65);margin-bottom:18px}.tp-crumb a{color:#49c0b6;text-decoration:none}.tp-crumb span{margin:0 8px;opacity:.5}
.tp-hero h1{color:#fff;font-size:clamp(36px,3.6vw,58px);font-weight:700;line-height:1.02;letter-spacing:-1.5px;max-width:620px;margin-bottom:22px}
.tp-intro{max-width:470px;font-size:16px;line-height:1.6;color:rgba(255,255,255,.85);margin-bottom:34px}
.tp-hero .btn.hero-cta,.tp-cta .btn.hero-cta{display:inline-flex;align-items:center;gap:14px;font:700 15px/1 var(--btn);letter-spacing:.06em;padding:19px 28px;border-radius:3px;background:#49c0b6;color:#fff;text-decoration:none;box-shadow:0 10px 26px rgba(73,192,182,.35)}
.tp-hero .btn.hero-cta:hover{background:#fff;color:#2d2d2d}
.tp-sec{position:relative;overflow:hidden;background:#fff;padding:110px 0}
.tp-deco{position:absolute;inset:0;pointer-events:none}.tp-deco svg{position:absolute;fill:#49c0b6;opacity:.09}
.tp-rule{display:block;width:140px;height:2px;margin:22px 0 26px;position:relative;background:linear-gradient(90deg,#49c0b6 0,#49c0b6 38%,transparent 38%,transparent 62%,#49c0b6 62%,#49c0b6 100%)}
.ap-head .tp-rule{margin:22px auto 26px}
.tp-rule::after{content:"";position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px 0 0 -15px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='%2349c0b6'%3E%3Cellipse cx='14' cy='27' rx='5.5' ry='7' transform='rotate(-18 14 27)'/%3E%3Cellipse cx='25' cy='14' rx='5.5' ry='7.5' transform='rotate(-6 25 14)'/%3E%3Cellipse cx='39' cy='14' rx='5.5' ry='7.5' transform='rotate(6 39 14)'/%3E%3Cellipse cx='50' cy='27' rx='5.5' ry='7' transform='rotate(18 50 27)'/%3E%3Cpath d='M32 30c-8 0-16 9.5-16 16.5 0 5 4 7.5 8 7.5 3.2 0 5-1.8 8-1.8s4.8 1.8 8 1.8c4 0 8-2.5 8-7.5C48 39.5 40 30 32 30z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.tp-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}
.tp-portrait{margin:0;position:sticky;top:40px;background:#fff;border-radius:22px;padding:12px;box-shadow:0 14px 40px rgba(45,45,45,.12);border:1px solid #eef3f2}
.tp-portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:16px;display:block}
.tp-portrait figcaption{position:absolute;left:-18px;bottom:40px;background:#49c0b6;color:#fff;border-radius:12px;padding:14px 18px;font-size:12.5px;line-height:1.35;box-shadow:0 12px 26px rgba(73,192,182,.4)}
.tp-portrait figcaption b{display:block;font-size:16px;margin-bottom:2px}
.tp-text h2{font-size:clamp(26px,2.4vw,34px);font-weight:700;color:#2d2d2d;letter-spacing:-.5px;line-height:1.15}
.tp-text p:not(.l-eye){font-size:16px;line-height:1.8;color:#4a4a4a;margin-bottom:18px}
.tp-stats{background:#49c0b6;padding:56px 0}
.tp-stats-g{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center;color:#fff}
.tp-stats-g b{display:block;font-size:clamp(30px,3vw,44px);font-weight:700;letter-spacing:-1px;line-height:1.1}
.tp-stats-g span{font-size:14px;opacity:.92}
.tp-stats-g div+div{border-left:1px solid rgba(255,255,255,.3)}
.tp-alt{padding:100px 0 90px}
.tp-two{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.tp-card{background:#fff;border:1px solid #eef3f2;border-radius:22px;padding:40px 36px 34px;box-shadow:0 14px 34px rgba(45,45,45,.08);position:relative}
.tp-ic{width:56px;height:56px;border-radius:50%;background:#49c0b6;display:grid;place-items:center;margin-bottom:20px;box-shadow:0 0 0 6px #eef8f7}
.tp-ic svg{width:30px;height:30px;fill:#fff}
.tp-card h3{font-size:21px;font-weight:700;color:#2d2d2d;letter-spacing:-.3px;margin-bottom:12px}
.tp-card p{font-size:15.5px;line-height:1.75;color:#4a4a4a}
.tp-chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 18px}
.tp-chips span{background:#eef8f7;color:#2d2d2d;border-radius:999px;padding:7px 15px;font-size:14px;font-weight:600}
.tp-small{font-size:14px!important;color:#777!important;margin:0}
.tp-close{text-align:center;max-width:760px;font-size:17px;line-height:1.75;color:#2d2d2d;margin:56px auto 0}
.tp-revs{columns:3;column-gap:26px;margin-top:40px}
.tp-rev{break-inside:avoid;margin:0 0 26px;background:#fff;border:1px solid #eef3f2;border-radius:20px;padding:28px 28px 24px;box-shadow:0 12px 30px rgba(45,45,45,.08);position:relative}
.tp-rev::before{content:"“";position:absolute;right:22px;top:6px;font:700 70px/1 Georgia,serif;color:#49c0b6;opacity:.18}
.tp-stars{color:#49c0b6;letter-spacing:3px;font-size:15px}
.tp-rev blockquote{margin:12px 0 18px;font-size:15.5px;line-height:1.7;color:#2d2d2d}
.tp-rev figcaption{display:flex;align-items:center;gap:12px;font-weight:700;font-size:14.5px;color:#2d2d2d}
.tp-av{width:38px;height:38px;border-radius:50%;background:#eef8f7;color:#49c0b6;display:grid;place-items:center;font-weight:700}
.tp-cta{background:#2d2d2d;padding:70px 0}
.tp-cta-in{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.tp-cta h2{color:#fff;font-size:clamp(26px,2.4vw,34px);font-weight:700;letter-spacing:-.5px;margin-bottom:8px}
.tp-cta p{color:#bcbcbc;margin:0;max-width:520px}
.tp-cta-b{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.tp-ghost{color:#fff;font-weight:600;text-decoration:none;border-bottom:2px solid #49c0b6;padding-bottom:3px}
.tp-cta .btn.hero-cta:hover{background:#fff;color:#2d2d2d}
@media(max-width:960px){
  .tp-hero::before{inset:0}.tp-hero::after{background:linear-gradient(180deg,rgba(11,15,17,.8) 0,rgba(11,15,17,.55) 40%,rgba(11,15,17,.85) 100%)}
  .tp-hero-in{padding:120px 24px 64px}
  .tp-story,.tp-two{grid-template-columns:1fr;gap:40px}.tp-portrait{position:relative;top:0;max-width:440px}
  .tp-stats-g{grid-template-columns:1fr 1fr;row-gap:30px}.tp-stats-g div:nth-child(3){border-left:0}
  .tp-revs{columns:2}.tp-sec{padding:80px 0}
}
@media(max-width:600px){.tp-revs{columns:1}.tp-card{padding:30px 24px}.tp-portrait figcaption{left:12px}}
/* wider pages + deco everywhere */
.wrap{max-width:1300px!important}
.narrow,.wrap.narrow{max-width:1300px!important}
.wrap,.wrap.narrow{margin-left:auto!important;margin-right:auto!important}
.wrap.narrow>p{max-width:880px}
.pagehead .wrap,.pagehead .wrap.narrow{max-width:1300px!important}
.tp-wrap{max-width:1300px}
.iw-main section,.social{position:relative;overflow:hidden}
.iw-main section>*:not(.tp-deco),.social>*:not(.tp-deco){position:relative;z-index:1}
.tp-deco-w svg{fill:#fff!important;opacity:.14!important}
@media(max-width:960px){.tp-deco svg{scale:.6}}
@media(max-width:600px){.tp-deco svg:last-child{display:none}}
/* cta align */
.lcta{padding:44px 0}
.lcta-in{max-width:1300px;padding:0 24px}
.lcta h3{margin:0}
/* centered black page banners (photo slot) */
.pagehead,.tp-hero{background:#000!important;text-align:center!important}
.pagehead::before,.pagehead::after,.tp-hero::before,.tp-hero::after{display:none!important}
.pagehead{padding:190px 0 110px!important}
.pagehead .wrap,.pagehead .wrap.narrow{max-width:900px!important;margin:0 auto!important;padding:0 24px!important}
.pagehead .wrap>*{max-width:none!important;margin-left:auto!important;margin-right:auto!important}
.pagehead h1{text-align:center}
.pagehead p{max-width:640px!important;margin-left:auto!important;margin-right:auto!important}
.tp-hero{min-height:0!important;padding:0!important}
.tp-hero-in{max-width:900px;margin:0 auto;padding:190px 24px 110px!important;text-align:center}
.tp-hero h1,.tp-intro{margin-left:auto!important;margin-right:auto!important}
.tp-hero h1{max-width:none!important}
.tp-intro{max-width:600px!important}
@media(max-width:960px){.pagehead{padding:140px 0 80px!important}.tp-hero-in{padding:140px 24px 80px!important}}
/* vet cards (homepage card pattern) */
.vt-sec{padding:100px 0 110px!important;background:#fff}
.vt-g{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:50px;align-items:stretch}
.vt-card{position:relative;background:#fff;border:1px solid #eef3f2;border-radius:22px;padding:14px 14px 34px;box-shadow:0 2px 4px rgba(0,0,0,.04),0 14px 34px rgba(45,45,45,.10);transition:transform .35s,box-shadow .35s}
.vt-card:hover{transform:translateY(-6px);box-shadow:0 4px 8px rgba(0,0,0,.05),0 22px 44px rgba(45,45,45,.14)}
.vt-img{border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:#f6f6f6}
.vt-img img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}
.vt-img .ph-box{height:100%;min-height:0;border-radius:16px;border:0}
.vt-badge{width:56px;height:56px;border-radius:50%;background:#49c0b6;display:grid;place-items:center;margin:-28px auto 0;position:relative;z-index:1;box-shadow:0 0 0 6px #fff}
.vt-badge svg{width:28px;height:28px;fill:#fff}
.vt-b{padding:14px 22px 0;text-align:center}
.vt-role{display:inline-block;background:#eef8f7;color:#2a9c92;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 14px;margin-bottom:10px}
.vt-b h3{font-size:24px;font-weight:700;color:#2d2d2d;letter-spacing:-.4px;margin-bottom:14px}
.vt-b p{text-align:left;font-size:15.5px;line-height:1.8;color:#4a4a4a;margin:0}
@media(max-width:900px){.vt-g{grid-template-columns:1fr;max-width:620px;margin-left:auto;margin-right:auto}}
/* vet bio + engaging cta */
.vt-b p+p{margin-top:14px}
.lcta{position:relative;overflow:hidden;padding:54px 0!important;background:linear-gradient(110deg,#49c0b6 0,#3fb3a9 100%)}
.cta-paw{position:absolute;right:12%;top:50%;width:260px;height:260px;transform:translateY(-50%) rotate(18deg);fill:#fff;opacity:.12;pointer-events:none}
.lcta-in{position:relative;z-index:1}
.cta-l{display:flex;align-items:center;gap:20px}
.cta-ic{flex:none;width:62px;height:62px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center;box-shadow:0 0 0 6px rgba(255,255,255,.08)}
.cta-ic svg{width:30px;height:30px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lcta h3{font-size:clamp(22px,2vw,28px)!important;margin:0 0 4px!important}
.lcta p{color:rgba(255,255,255,.9)!important;font-size:15px!important;margin:0!important;font-weight:500}
.lcta .btn.cta-btn{display:inline-flex;align-items:center;gap:12px;background:#fff;color:#2d2d2d;font:700 14px/1 var(--btn);letter-spacing:.06em;padding:18px 26px;border-radius:3px;box-shadow:0 12px 26px rgba(0,0,0,.12);transition:background .2s,color .2s,transform .2s}
.cta-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.lcta .btn.cta-btn:hover{background:#2d2d2d;color:#fff;transform:translateY(-2px)}
.cta-btn:hover svg{transform:translateX(5px)}
@media(max-width:700px){.cta-l{align-items:flex-start}.cta-ic{width:50px;height:50px}.lcta-in{gap:22px}.cta-paw{right:-60px}}
/* unified card + image style (matches home/about) */
.iw-inner .card,.iw-inner .formcard,.iw-inner .role,.iw-inner .mosaic figure,.iw-inner .ev,.iw-inner .soc-links a{background:#fff!important;border:1px solid #eef3f2!important;border-top:1px solid #eef3f2!important;border-radius:22px!important;box-shadow:0 2px 4px rgba(0,0,0,.04),0 14px 34px rgba(45,45,45,.10)!important;transition:transform .35s,box-shadow .35s}
.iw-inner .card:hover,.iw-inner .mosaic figure:hover,.iw-inner .ev:hover,.iw-inner .role:hover{transform:translateY(-6px);box-shadow:0 4px 8px rgba(0,0,0,.05),0 22px 44px rgba(45,45,45,.14)!important}
.iw-inner .card{padding:26px 26px 28px!important}
.iw-inner .tri .card,.iw-inner .mosaic figure{padding:14px 14px 22px!important;overflow:hidden}
.iw-inner .tri .card img,.iw-inner .tri .card .ph-box,.iw-inner .mosaic img{border-radius:16px!important}
.iw-inner .mosaic figcaption{padding:16px 10px 0!important;text-align:center}
.iw-inner .tri .card h4{text-align:center;margin-top:6px}
.iw-inner .split img,.iw-inner .duo img,.iw-inner .split .ph-box,.iw-inner .arch{border-radius:22px!important;box-shadow:0 14px 34px rgba(45,45,45,.12);border:10px solid #fff;outline:1px solid #eef3f2}
.iw-inner .ph-box{border-radius:16px}
.iw-inner .card h4,.iw-inner .formcard h3{color:#2d2d2d;font-weight:700}
.iw-inner .formcard{padding:38px 36px!important}
.iw-inner .offer,.iw-inner .fin{border-radius:22px!important}
.iw-inner .role{padding:20px 24px!important}
/* teal round badge on top of text cards */
.iw-inner .cards .card,.iw-inner .er .card{position:relative;padding-top:46px!important;margin-top:28px}
.iw-inner .cards .card::before,.iw-inner .er .card::before{content:"";position:absolute;left:26px;top:-24px;width:48px;height:48px;border-radius:50%;background:#49c0b6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cg fill='%23fff'%3E%3Cg transform='translate(9 9.5) scale(.47)'%3E%3Cellipse cx='14' cy='27' rx='5.5' ry='7' transform='rotate(-18 14 27)'/%3E%3Cellipse cx='25' cy='14' rx='5.5' ry='7.5' transform='rotate(-6 25 14)'/%3E%3Cellipse cx='39' cy='14' rx='5.5' ry='7.5' transform='rotate(6 39 14)'/%3E%3Cellipse cx='50' cy='27' rx='5.5' ry='7' transform='rotate(18 50 27)'/%3E%3Cpath d='M32 30c-8 0-16 9.5-16 16.5 0 5 4 7.5 8 7.5 3.2 0 5-1.8 8-1.8s4.8 1.8 8 1.8c4 0 8-2.5 8-7.5C48 39.5 40 30 32 30z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") center/100% no-repeat;box-shadow:0 0 0 6px #fff}
.iw-inner .er .card::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23fff' d='M21 13h6v8h8v6h-8v8h-6v-8h-8v-6h8z'/%3E%3C/svg%3E")}
/* job posts */
.roles{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:34px 0 10px}
a.role.jr,.role.jr{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:24px 26px!important;text-decoration:none;color:#2d2d2d}
.jr-t{font-size:18px;font-weight:700}
.jr-go{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#49c0b6}
.jr-go svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
a.role.jr:hover .jr-go svg{transform:translateX(4px)}
.jr-off .jr-go{color:#9a9a9a;font-weight:500}
.jb{padding:80px 0 110px!important}
.jb-g{display:grid;grid-template-columns:1fr 360px;gap:60px;align-items:start}
.jb-back a{color:#49c0b6;font-weight:600;text-decoration:none;font-size:14.5px}
.jb-intro p{font-size:16.5px;line-height:1.8;color:#3d3d3d}
.jb-intro p:first-child{font-size:19px;color:#2d2d2d;font-weight:500}
.jb-h{font-size:clamp(24px,2.2vw,30px);font-weight:700;color:#2d2d2d;margin:40px 0 22px}
.jb-sec{background:#fff;border:1px solid #eef3f2;border-radius:22px;padding:26px 30px;margin-bottom:18px;box-shadow:0 2px 4px rgba(0,0,0,.04),0 14px 34px rgba(45,45,45,.08)}
.jb-sec h3{font-size:18px;font-weight:700;color:#2d2d2d;margin-bottom:12px;display:flex;align-items:center;gap:10px}
.jb-sec h3::before{content:"";width:10px;height:10px;border-radius:50%;background:#49c0b6;box-shadow:0 0 0 4px #eef8f7}
.jb-list{list-style:none;margin:0;padding:0;columns:2;column-gap:34px}
.jb-list li{break-inside:avoid;position:relative;padding:6px 0 6px 26px;font-size:15px;line-height:1.6;color:#4a4a4a}
.jb-list li::before{content:"";position:absolute;left:0;top:11px;width:15px;height:15px;border-radius:50%;background:#49c0b6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.jb-note{margin-top:30px;padding-left:20px;border-left:3px solid #49c0b6}
.jb-note h3{font-size:18px;font-weight:700;color:#2d2d2d;margin-bottom:8px}
.jb-note p{font-size:15.5px;line-height:1.8;color:#4a4a4a;margin:0}
.jb-side{position:sticky;top:30px}
.jb-card{background:#fff;border:1px solid #eef3f2;border-radius:22px;padding:30px 28px 28px;margin-top:40px;text-align:center;box-shadow:0 2px 4px rgba(0,0,0,.04),0 14px 34px rgba(45,45,45,.10)}
.jb-card h3{font-size:20px;font-weight:700;color:#2d2d2d;margin-bottom:16px}
.jb-meta{list-style:none;padding:0;margin:0 0 22px;text-align:left}
.jb-meta li{padding:10px 0;border-top:1px solid #eef3f2;font-size:14.5px;color:#4a4a4a}
.jb-meta b{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#49c0b6;margin-bottom:2px}
.jb-card .btn.hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:100%;background:#49c0b6;color:#fff;font:700 14px/1 var(--btn);letter-spacing:.06em;padding:17px 20px;border-radius:3px;text-decoration:none;box-shadow:0 10px 24px rgba(73,192,182,.3)}
.jb-card .btn.hero-cta:hover{background:#2d2d2d}
.jb-card .hero-cta svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.jb-small{font-size:13px;color:#888;margin:14px 0 0}
@media(max-width:960px){.jb-g{grid-template-columns:1fr}.jb-side{position:static;order:-1}.jb-card{margin-top:30px}}
@media(max-width:700px){.roles{grid-template-columns:1fr}.jb-list{columns:1}.jb-sec{padding:22px 20px}}
/* jr fix */
.role.jr span.jr-t{font-size:18px;font-weight:700;color:#2d2d2d;text-transform:none;letter-spacing:-.2px}
.role.jr span.jr-go{font-size:14px;text-transform:none;letter-spacing:0;font-weight:600}
.role.jr.jr-off span.jr-go{color:#9a9a9a;font-weight:500}
/* paw divider gap */
.ap-head .rule,.tp-rule{width:160px!important;background:linear-gradient(90deg,transparent,#49c0b6 30%,#49c0b6 37%,transparent 37%,transparent 63%,#49c0b6 63%,#49c0b6 70%,transparent)!important}
/* no bg icons */
.ap::before,.ap::after{display:none!important}
.ap-deco,.tp-deco,.tp-deco-w{display:none!important}
/* icon proportions */
.vt-badge svg,.tp-ic svg{width:30px!important;height:30px!important;flex:none}
.ap-g figcaption::before{background-size:100% 100%!important}

/* services title photo banner */
.pagehead.svc-hero{background:#2c3336 var(--hero) center/cover no-repeat!important}
.pagehead.svc-hero::after{display:block!important;content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55) 0,rgba(0,0,0,.25) 35%,rgba(0,0,0,.35) 100%),radial-gradient(ellipse at center,rgba(0,0,0,.25),transparent 70%);pointer-events:none}
.pagehead.svc-hero .wrap{position:relative;z-index:1}
.pagehead.svc-hero h1{text-shadow:0 2px 18px rgba(0,0,0,.35)}
@media(max-width:700px){.pagehead.svc-hero{background-position:4% center!important}.pagehead.svc-hero::after{background:rgba(0,0,0,.5)}}

/* ===== WHITE TITLE VERSION ===== */
body.light-head header{background:#fff!important;box-shadow:none!important;border:0!important}
body.light-head .logo-w{display:none!important}
body.light-head .logo-c{display:block!important}
body.light-head header nav>ul>li>a:not(.nav-cta){color:#2d2d2d!important}
body.light-head header nav>ul>li>a:not(.nav-cta):hover,body.light-head header nav>ul>li>a.on:not(.nav-cta){color:#49c0b6!important}
body.light-head .burger span{background:#2d2d2d!important}
body.light-head nav a.nav-cta:hover{background:#2d2d2d!important;color:#fff!important}
.pagehead,.pagehead.svc-hero,.tp-hero,.social{background:#fff!important;border:0!important}
.pagehead::after,.pagehead.svc-hero::after{display:none!important}
.pagehead h1,.tp-hero h1,.social h1{color:#2d2d2d!important;text-shadow:none!important}
.pagehead .eyebrow,.tp-crumb a,.social h1 em{color:#49c0b6!important}
.pagehead p,.tp-intro,.social p.big{color:#6b6b6b!important}
.tp-crumb{color:#9a9a9a!important}
.tp-hero .btn.hero-cta:hover{background:#2d2d2d!important;color:#fff!important}
.soc-links a{border:1px solid #e3e3e3;box-shadow:0 6px 18px rgba(0,0,0,.06)}
.pagehead h1::after,.tp-hero h1::after{content:"";display:block;width:56px;height:3px;background:#49c0b6;margin:22px auto 0;border-radius:2px}
.subnav{border:0!important;box-shadow:none!important}

/* social hover: blue */
.soc-links a:hover,.iw-inner .soc-links a:hover{background:#49c0b6!important;border-color:#49c0b6!important;color:#fff!important}
.soc-links a:hover small,.soc-links a:hover small *{color:rgba(255,255,255,.85)!important}
/* patient gallery */
.pg{columns:4 220px;column-gap:18px;margin-top:10px}
.pg figure{break-inside:avoid;margin:0 0 18px;border-radius:14px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.04),0 14px 34px rgba(45,45,45,.10);background:#f6f6f6}
.pg img{display:block;width:100%;height:auto;transition:transform .5s ease}
.pg figure:hover img{transform:scale(1.04)}
.pg-sec .ap-head{margin-bottom:34px}

/* homepage patient gallery */
.pg-sec{padding:90px 24px;background:#fff}
.pg-in{max-width:1240px;margin:0 auto}
.pg-sec .ap-head{margin-bottom:40px}
.pg{columns:auto;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-flow:dense;gap:18px;margin:0}
.pg figure{margin:0;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#f6f6f6;box-shadow:0 2px 4px rgba(0,0,0,.04),0 12px 28px rgba(45,45,45,.10)}
.pg figure{position:relative}.pg figure.wide{grid-column:span 2;aspect-ratio:auto}.pg figure.wide img{position:absolute;inset:0}
.pg img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:800px){.pg{grid-template-columns:repeat(2,1fr);gap:12px}.pg-sec{padding:60px 16px}}
/* centred intros */
.pg-angel-fund .wrap.narrow>p,.pg-events .wrap.narrow>p,.pg-careers .wrap.narrow>p{margin-left:auto;margin-right:auto;text-align:center;max-width:880px}
.pg-careers .roles{max-width:880px;margin-left:auto;margin-right:auto}
/* community: smaller, 3 across */
.mosaic.cm3{grid-template-columns:repeat(3,1fr);max-width:1080px;margin-left:auto;margin-right:auto}
.mosaic.cm3 img{aspect-ratio:4/5;height:auto}
@media(max-width:800px){.mosaic.cm3{grid-template-columns:1fr;max-width:440px}}
/* new client voucher */
.offer,.iw-inner .offer{position:relative;background:#fff;color:#2d2d2d;border:2px dashed #49c0b6;border-radius:20px!important;padding:34px 56px;gap:40px;box-shadow:0 14px 34px rgba(45,45,45,.08);max-width:980px;margin:44px auto}
.offer::before,.offer::after{content:"";position:absolute;top:50%;width:34px;height:34px;margin-top:-17px;border-radius:50%;background:#fff;border:2px dashed #49c0b6}
.offer::before{left:-19px;clip-path:inset(0 0 0 50%)}
.offer::after{right:-19px;clip-path:inset(0 50% 0 0)}
.offer .big{font:700 3.8rem/1 var(--head);color:#49c0b6;text-align:center;padding-right:40px;border-right:2px dashed rgba(73,192,182,.45)}
.offer .big small{display:block;font-size:.9rem;letter-spacing:.3em;text-transform:uppercase;font-weight:600;margin-top:6px;color:#2d2d2d}
.offer p{color:#555!important;line-height:1.7}
.offer .v-eye{display:block;font:600 .78rem/1 var(--head);letter-spacing:.16em;text-transform:uppercase;color:#49c0b6;margin-bottom:10px}
@media(max-width:700px){.offer,.iw-inner .offer{padding:30px 26px}.offer .big{border-right:0;padding:0 0 18px;border-bottom:2px dashed rgba(73,192,182,.45)}}

.pg{grid-template-columns:repeat(5,1fr)}
@media(max-width:800px){.pg{grid-template-columns:repeat(2,1fr)}}
.fin,.iw-inner .fin{background:none!important;padding:20px 0 10px}
.offer.in-tx,.iw-inner .offer.in-tx{margin:30px 0 0;max-width:none;padding:26px 30px 26px 36px;gap:26px}
.offer.in-tx .big{font-size:3rem;padding-right:26px}
.offer.in-tx p{font-size:.95rem}
#sub-new-clients .split{align-items:start}
.vt-mono{position:relative;display:grid;place-items:center;align-content:center;gap:14px;background:linear-gradient(135deg,#eef9f7 0%,#d6f0ec 100%);overflow:hidden}
.vt-mono .vt-paw{position:absolute;right:-30px;bottom:-34px;width:220px;height:220px;fill:#49c0b6;opacity:.12;transform:rotate(-18deg)}
.vt-mono .vt-ini{width:120px;height:120px;border-radius:50%;background:#fff;color:#49c0b6;display:grid;place-items:center;font:600 2.6rem/1 var(--head);letter-spacing:.04em;box-shadow:0 10px 26px rgba(73,192,182,.25);position:relative}
.vt-mono .vt-mn{font:600 1.05rem/1.3 var(--head);color:#2d2d2d;text-align:center;position:relative}
.vt-mono .vt-mn small{display:block;font-weight:400;font-size:.8rem;color:#6b6b6b;letter-spacing:.12em;text-transform:uppercase;margin-top:4px}

/* job postings: cleaner sections */
.jb-sec h3::before{content:none!important;display:none!important}
.jb-sec h3{color:#49c0b6!important;font-size:17px;letter-spacing:.01em;padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid #eef3f2;display:block}
.jb-sec,.jb-sec:hover,.jb-card,.jb-card:hover{transform:none!important;transition:none!important}
.jb-sec,.jb-sec:hover{box-shadow:0 1px 2px rgba(0,0,0,.03),0 8px 22px rgba(45,45,45,.06)!important}

.cl-hrs th,.cl-hrs td,.cl-hrs tr{border:0!important;border-bottom:0!important}

.jb-sec,.jb-sec:hover{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0 0 34px!important}

/* contact: plain form + office sidebar */
.contactgrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.8fr);gap:70px;align-items:start}
@media(max-width:960px){.contactgrid{grid-template-columns:1fr;gap:40px}}
.formcard.ct-form,.iw-inner .formcard.ct-form{background:none!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}
.formcard.ct-form:hover{transform:none!important}
.ct-side{border-left:1px solid #e6e6e6;padding-left:40px}
@media(max-width:960px){.ct-side{border-left:0;padding-left:0;border-top:1px solid #e6e6e6;padding-top:30px}}
.ct-side .l-eye{margin-bottom:18px}
.ct-off{padding:0 0 26px;margin-bottom:26px;border-bottom:1px solid #eef3f2}
.ct-off:last-child{border-bottom:0;margin-bottom:0}
.ct-off h4{font-size:17px;color:#2d2d2d;margin-bottom:10px}
.ct-off p{font-size:.95rem;line-height:1.8;color:#555}
.ct-off a{color:#49c0b6;text-decoration:none}
.ct-off a:hover{text-decoration:underline}
.opt{font-weight:400;color:#999;font-size:.85em}
.file-up{display:flex!important;align-items:center;gap:14px;border:1.5px dashed #b9e3de;border-radius:10px;padding:16px 18px;cursor:pointer;background:#f7fcfb;margin:6px 0 4px;transition:border-color .2s,background .2s}
.file-up:hover{border-color:#49c0b6;background:#eef9f7}
.file-up input{position:absolute;opacity:0;width:1px;height:1px}
.fu-ic{width:40px;height:40px;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none;box-shadow:0 2px 6px rgba(73,192,182,.2)}
.fu-ic svg{width:20px;height:20px;fill:none;stroke:#49c0b6;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fu-t b{display:block;font-size:14px;font-weight:600;color:#2d2d2d}
.fu-t small{font-size:12.5px;color:#888}

.file-up{margin-bottom:18px!important}


/* testimonials with pet photos */
.tp-rev.has-pet{padding-top:14px}
.tp-pet{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;margin:0 0 18px}
.tp-rev.has-pet::before{top:auto;bottom:10px}
.tp-av{overflow:hidden;padding:0}
.tp-av img,.lrv-av img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.lrv-av{overflow:hidden;border:2px solid rgba(255,255,255,.6)}
.pg{grid-template-columns:repeat(4,1fr)!important}
@media(max-width:800px){.pg{grid-template-columns:repeat(2,1fr)!important}}
.pg-angel-fund .card a{color:#49c0b6;font-weight:500}

.lf-soc svg.ig-ln{fill:none!important;stroke:currentColor!important}.lf-soc svg.ig-ln circle:last-child{fill:currentColor!important;stroke:none!important}

.lf-soc svg.ig-ln{stroke:#fff!important;stroke-width:2.2!important}.lf-soc svg.ig-ln circle:last-child{fill:#fff!important}

/* intro text: left-aligned inside the centred column */
.pg-angel-fund .wrap.narrow>p,.pg-careers .wrap.narrow>p,.pg-community .wrap>.narrow,.pg-community .wrap>.narrow p{text-align:left!important}

/* wide intros */
.pg-angel-fund .wrap.narrow>p,.pg-careers .cr-main p{max-width:none!important}
/* community 50/50 */
.cm-split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;max-width:1300px;margin:0 auto}
.cm-tx p{text-align:left!important}
.cm-split .mosaic.cm3{grid-template-columns:1fr 1fr;margin:0;max-width:none;gap:18px}
.cm-split .mosaic.cm3 figure:first-child{grid-column:1/-1}
.cm-split .mosaic.cm3 figure:first-child img{aspect-ratio:16/10}
.cm-split .mosaic.cm3 img{aspect-ratio:4/5}
.cm-split .mosaic figcaption{padding:12px 16px}
@media(max-width:900px){.cm-split{grid-template-columns:1fr;gap:34px}}
/* careers with sidebar */
.cr-split{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:60px;align-items:start}
.cr-main p{text-align:left!important}
.cr-side{border-left:1px solid #e6e6e6;padding-left:40px}
.cr-side .roles{grid-template-columns:1fr!important;gap:12px;margin:14px 0 12px!important;max-width:none}
.cr-side .role{padding:16px 20px!important}
@media(max-width:900px){.cr-split{grid-template-columns:1fr;gap:30px}.cr-side{border-left:0;padding-left:0;border-top:1px solid #e6e6e6;padding-top:26px}}

/* award badges */
.aw-badges{display:flex;gap:18px;align-items:center}
.aw-badges img{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(0,0,0,.18))}
.cm-split{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)!important;margin-bottom:50px!important}
.cm-side{border-left:1px solid #e6e6e6;padding-left:40px}
.cm-side .aw-badges{margin:14px 0 14px}
.cm-aw{font-size:.9rem;color:#6b6b6b;margin:0}
.pg-community .mosaic.cm3{grid-template-columns:repeat(3,1fr)!important;max-width:1300px;margin:0 auto}
.pg-community .mosaic.cm3 img{aspect-ratio:4/5}
.tp-awards{display:flex;align-items:center;gap:26px;margin-top:30px;padding-top:26px;border-top:1px solid #eef3f2}
.tp-awards .aw-badges img{width:104px;height:104px}
.tp-awards p{margin:0;font-size:.95rem;color:#555;line-height:1.6}
.tp-awards p b{display:block;color:#2d2d2d;font-size:1.05rem;margin-bottom:2px}
@media(max-width:900px){.cm-split{grid-template-columns:1fr!important}.cm-side{border-left:0;padding-left:0;border-top:1px solid #e6e6e6;padding-top:24px}.pg-community .mosaic.cm3{grid-template-columns:1fr!important;max-width:440px}.tp-awards{flex-direction:column;align-items:flex-start}}

.tp-awards .aw-badges{flex:none}.tp-awards .aw-badges img{flex:none}

/* mobile: centre icons and badges */
@media(max-width:700px){
  .cards .card::before,.iw-inner .er .card::before{left:50%!important;margin-left:-24px}
  .tp-card .tp-ic{margin-left:auto!important;margin-right:auto!important}
  .aw-badges{justify-content:center;width:100%}
  .tp-awards{align-items:stretch!important}
  .vt-badge{margin-left:auto;margin-right:auto}
}

.pagehead p,.pagehead .wrap>p{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
@media(max-width:900px){
  .tp-portrait{margin-left:auto;margin-right:auto;margin-bottom:30px}
  .tp-portrait figcaption{left:50%!important;right:auto!important;bottom:-22px!important;transform:translateX(-50%);text-align:center;white-space:nowrap}
}
@media(max-width:700px){
  .tp-awards{text-align:center}
  .tp-awards p{text-align:center}
  .cm-side{text-align:center}
}

.pg-angel-fund .pagehead .wrap.narrow>p,.pg-careers .pagehead .wrap.narrow>p,.pg-community .pagehead .wrap.narrow>p{text-align:center!important}

/* nicer line breaks on headings */
h1,h2,h3,h4,.l-eye,.eyebrow,.ap-sub,figcaption,.pagehead p,.tp-intro{text-wrap:balance}
p{text-wrap:pretty}
br.mb{display:none}
@media(max-width:700px){br.mb{display:inline}}

@media(max-width:700px){
  .dk{display:none}
  .cl-hrs td small{display:block;line-height:1.3}
  .lcta p{text-wrap:wrap}
  .cl-hrs td small{white-space:nowrap;font-size:11.5px}
}

.pg{grid-template-columns:repeat(5,1fr)!important}
@media(max-width:800px){.pg{grid-template-columns:repeat(2,1fr)!important}}
.cls-soc{margin-top:18px;display:flex;justify-content:center}
.cls-soc>div{display:flex;gap:12px}
.cls-soc a{width:42px;height:42px;border-radius:50%;background:#49c0b6;color:#fff;display:grid;place-items:center;transition:background .2s}
.cls-soc a:hover{background:#2d2d2d}
.cls-soc svg{width:18px;height:18px;fill:#fff}
.cls-soc svg.ig-ln{fill:none!important;stroke:#fff!important}
.cr-img{display:block;width:100%;border-radius:20px;margin-top:30px;aspect-ratio:4/3;object-fit:cover;box-shadow:0 14px 34px rgba(45,45,45,.12)}
.tm-sec{padding:20px 0 90px}
.tm-g{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:40px}
.tm-g figure{margin:0;aspect-ratio:3/4;border-radius:16px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.04),0 12px 28px rgba(45,45,45,.10)}
.tm-g img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:900px){.tm-g{grid-template-columns:repeat(2,1fr)}}

.tm-g{grid-template-columns:repeat(3,1fr)!important;gap:22px}.tm-g figure{aspect-ratio:4/3!important}
@media(max-width:700px){.tm-g{grid-template-columns:1fr!important}}

/* hover motion on photo galleries */
.tm-g figure,.pg figure{transition:transform .35s ease,box-shadow .35s ease}
.tm-g img,.pg img{transition:transform .5s ease}
.tm-g figure:hover,.pg figure:hover{transform:translateY(-6px);box-shadow:0 4px 8px rgba(0,0,0,.05),0 22px 44px rgba(45,45,45,.16)}
.tm-g figure:hover img,.pg figure:hover img{transform:scale(1.05)}

/* booking band paw decoration */
.lcta .cta-paw{position:absolute;right:-50px;top:50%;width:300px;height:300px;transform:translateY(-50%) rotate(18deg);fill:#fff;opacity:.10;pointer-events:none;z-index:0}
.cta-trail{position:absolute;left:34%;top:0;bottom:0;width:340px;pointer-events:none;z-index:0}
.cta-trail svg{position:absolute;width:30px;height:30px;fill:#fff;opacity:.16}
.cta-trail svg:nth-child(1){left:0;top:68%;transform:rotate(70deg)}
.cta-trail svg:nth-child(2){left:62px;top:42%;transform:rotate(70deg)}
.cta-trail svg:nth-child(3){left:128px;top:62%;transform:rotate(70deg)}
.cta-trail svg:nth-child(4){left:192px;top:34%;transform:rotate(70deg)}
.cta-trail svg:nth-child(5){left:258px;top:54%;transform:rotate(70deg)}
@media(max-width:700px){.cta-trail{left:auto;right:-40px;width:260px;opacity:.8}.lcta .cta-paw{width:200px;height:200px;right:-60px}}

.cta-deco{position:absolute;inset:0;pointer-events:none;z-index:0}
.cta-deco svg{position:absolute;fill:#fff;opacity:.17}
@media(max-width:900px){.cta-deco svg:nth-child(n+4){display:none}.cta-deco svg:nth-child(1){left:auto!important;right:8%}.cta-deco svg:nth-child(2){left:auto!important;right:22%;top:70%!important}.cta-deco svg:nth-child(3){left:auto!important;right:4%;top:80%!important}}

@media(min-width:901px) and (max-width:1500px){.cta-deco svg:nth-child(-n+3){display:none}}

.cta-deco svg{opacity:.2!important;display:block!important}
@media(max-width:1500px){.cta-deco{display:none}}

.ft-soc{display:flex;justify-content:center;padding:34px 0 26px}
.ft-soc>div{display:flex;gap:12px}
body.home .ft-soc{display:none}

.lfoot{padding-top:0!important}.ft-soc{padding:28px 0!important;margin:0!important}

.lf-bot{margin-top:0!important}

/* happy visits strip under testimonials */
.tp-happy{margin-top:34px;text-align:center}
.tp-happy .l-eye{margin-bottom:18px}
.tp-happy-g{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tp-happy-g figure{margin:0;aspect-ratio:4/5;border-radius:16px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.04),0 12px 28px rgba(45,45,45,.10);transition:transform .35s ease,box-shadow .35s ease}
.tp-happy-g img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.tp-happy-g figure:hover{transform:translateY(-6px);box-shadow:0 4px 8px rgba(0,0,0,.05),0 22px 44px rgba(45,45,45,.16)}
.tp-happy-g figure:hover img{transform:scale(1.05)}
@media(max-width:800px){.tp-happy-g{grid-template-columns:repeat(2,1fr);gap:12px}}

/* favourite faces: flexible gallery, any number of photos, last row centred */
.pg{display:flex!important;flex-wrap:wrap;justify-content:center;gap:18px;columns:auto}
.pg figure,.pg figure.wide{flex:0 0 calc((100% - 54px)/4);aspect-ratio:1!important;grid-column:auto;margin:0}
.pg figure img,.pg figure.wide img{position:static;width:100%;height:100%;object-fit:cover}
@media(max-width:1000px){.pg figure,.pg figure.wide{flex-basis:calc((100% - 36px)/3)}}
@media(max-width:800px){.pg{gap:12px}.pg figure,.pg figure.wide{flex-basis:calc((100% - 12px)/2)}}

/* team grid: flexible, last row centred */
.tm-g{display:flex!important;flex-wrap:wrap;justify-content:center;gap:18px}
.tm-g figure{flex:0 0 calc((100% - 54px)/4);aspect-ratio:1!important}
@media(max-width:1000px){.tm-g figure{flex-basis:calc((100% - 36px)/3)}}
@media(max-width:800px){.tm-g{gap:12px}.tm-g figure{flex-basis:calc((100% - 12px)/2)}}

.cls-tag{font-size:1.15rem!important;font-weight:600!important;color:#2d2d2d!important;margin-bottom:.6rem!important;line-height:1.5!important}

.lh-eye2{font-weight:inherit}
.lhero .lh-eye{font-size:clamp(14px,1vw,17px)!important;line-height:1.55;font-weight:500;opacity:.92;margin-bottom:18px}

/* reusable highlight: wrap any words in <span class="hl">...</span> */
.hl,.hl-40{color:#2a9d93;font-weight:700;font-size:1.3em;line-height:1;white-space:nowrap}
.hl-color{color:#2a9d93;font-weight:600}

.hl-hero{color:#49c0b6;font-weight:700;font-size:1.15em;white-space:nowrap}
.sub{display:none}.sub.on{display:block;animation:fade .4s ease}
