/* Anaconda Veterinary Clinic — site styles (design plan: brand.md §6) */

/* ---- Fonts: latin subsets, optional display (no reflow) ---------- */
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:700 800;font-display:optional;src:url(https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y9K6as8bTXq_nANBjzKo3IeZx8z6up5BeSl9D4dj_x9PpZBMlGIInE.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:400;font-display:optional;src:url(https://fonts.gstatic.com/s/atkinsonhyperlegible/v12/9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45G04pIo.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:700;font-display:optional;src:url(https://fonts.gstatic.com/s/atkinsonhyperlegible/v12/9Bt73C1KxNDXMspQ1lPyU89-1h6ONRlW45G8Wbc9dCWP.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

body{font-size:clamp(1.05rem,1rem + .25vw,1.13rem)}
h1,h2{font-weight:800;letter-spacing:-.025em}
h3{font-weight:700}
:focus-visible{outline-color:var(--brand)}
strong{font-weight:700}

/* ---- Header -------------------------------------------------------- */
.site-header{background:#fff}
.brand{gap:.7em;font-size:var(--fs-md);line-height:1.1;color:var(--ink)}
.brand img{height:38px;width:auto}
.brand span{max-width:11ch}
.call-mini{display:none}
@media(max-width:860px){
  .call-mini{display:inline-flex;align-items:center;gap:.4em;min-height:44px;padding:0 .9em;border-radius:999px;background:var(--brand);color:#fff;font-weight:700;text-decoration:none;font-size:var(--fs-sm);margin-left:auto}
  .call-mini svg{width:16px;height:16px}
}
@media(max-width:380px){.brand span{display:none}}

/* ---- Hero ---------------------------------------------------------- */
.hero.dark{background:var(--deep);color:#fff;padding-block:clamp(2.5rem,7vw,5.5rem)}
.hero.dark :focus-visible{outline-color:var(--accent)}
.hero-grid{display:grid;gap:var(--s-7);align-items:end}
@media(min-width:960px){.hero-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}}
.hero h1{font-size:clamp(2.6rem,1.6rem + 4.6vw,5.4rem);line-height:.98;margin-bottom:var(--s-5);max-width:13ch}
.hero .lede{color:#e6dcef;max-width:52ch}
.hero .actions{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-6)}
.btn-gold{background:var(--accent);color:var(--accent-ink)}
.btn-gold:hover{filter:brightness(1.06)}
.hero .btn-outline{color:#fff;border-color:rgba(255,255,255,.55)}
.hero .btn-outline:hover{background:#fff;color:var(--deep);border-color:#fff}
.btn svg{width:18px;height:18px;flex:none}
.hours-card{border:1px solid rgba(255,255,255,.22);border-radius:var(--radius);padding:var(--s-5) var(--s-6)}
.hours-card h2{font-size:var(--fs-lg);color:#fff;margin-bottom:var(--s-3);letter-spacing:-.01em}
.hours-card dl{margin:0}
.hours-card dt{color:#cdbfdc;font-size:var(--fs-sm)}
.hours-card dd{margin:0 0 var(--s-3);font-weight:700}
.hours-card p{color:#cdbfdc;font-size:var(--fs-sm);margin-top:var(--s-4)}
.hours-card address{font-style:normal;margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid rgba(255,255,255,.18)}
.hours-card a{color:#fff}

/* ---- Services: grouped editorial lists ----------------------------- */
.svc-groups{display:grid;gap:var(--s-7) var(--s-6)}
@media(min-width:900px){.svc-groups{grid-template-columns:repeat(3,1fr)}}
.svc-group h3{font-size:var(--fs-lg);padding-bottom:var(--s-3);border-bottom:3px solid var(--brand);margin-bottom:0}
.svc-group ul{list-style:none;margin:0;padding:0}
.svc-group li{padding:var(--s-4) 0;border-bottom:1px solid var(--line)}
.svc-group li strong{display:block;font-size:var(--fs-md)}
.svc-group li span{display:block;color:var(--ink-2);font-size:var(--fs-sm);margin-top:.2em}

/* ---- Dr. Z ---------------------------------------------------------- */
.drz{display:grid;gap:var(--s-7)}
@media(min-width:900px){.drz{grid-template-columns:1.2fr 1fr;align-items:start}}
.pillars{list-style:none;margin:var(--s-4) 0 0;padding:0}
.pillars li{font-family:var(--font-display);font-weight:700;font-size:var(--fs-xl);line-height:1.15;padding:.45em 0;border-bottom:1px solid var(--line);color:var(--brand)}
.drz-facts{list-style:none;margin:var(--s-5) 0 0;padding:0;display:grid;gap:var(--s-3)}
.drz-facts li{padding-left:1.1em;position:relative}
.drz-facts li::before{content:"";position:absolute;left:0;top:.6em;width:.45em;height:.45em;border-radius:50%;background:var(--brand)}

/* ---- Team board (the memorable thing) ------------------------------ */
.board{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.board li{display:grid;gap:.15em var(--s-6);padding:var(--s-5) 0;border-bottom:1px solid #d6c8e3;align-items:baseline}
@media(min-width:820px){.board li{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}}
.board .who{font-weight:700;font-size:var(--fs-md)}
.board .who span{display:block;font-weight:400;color:var(--ink-2);font-size:var(--fs-sm)}
.board .nick{font-family:var(--font-display);font-weight:800;font-size:clamp(1.7rem,1.1rem + 2.6vw,3.3rem);line-height:1;letter-spacing:-.03em;color:var(--brand);text-wrap:balance}
.mojo{margin-top:var(--s-7);max-width:62ch;border-left:4px solid var(--brand);padding-left:var(--s-5)}
.mojo h3{font-size:var(--fs-lg);margin-bottom:var(--s-2)}

/* ---- Boarding ------------------------------------------------------- */
.split-text{display:grid;gap:var(--s-6)}
@media(min-width:900px){.split-text{grid-template-columns:1fr 1fr}}
.facts{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.facts li{padding:var(--s-4) 0;border-bottom:1px solid var(--line)}
.facts li strong{display:block}
.facts li span{color:var(--ink-2);font-size:var(--fs-sm)}

/* ---- Visit ---------------------------------------------------------- */
.visit{display:grid;gap:var(--s-7)}
@media(min-width:900px){.visit{grid-template-columns:1fr 1.2fr;align-items:start}}
.visit .big-phone{font-family:var(--font-display);font-weight:800;font-size:clamp(2rem,1.4rem + 2.4vw,3.2rem);letter-spacing:-.02em;text-decoration:none;display:inline-block;line-height:1.05;margin-bottom:var(--s-5)}
.visit address{font-style:normal;font-size:var(--fs-lg);margin-bottom:var(--s-5)}
.visit .hours{font-size:var(--fs-md);margin-bottom:var(--s-5)}
.map{aspect-ratio:4/3}

/* ---- Footer --------------------------------------------------------- */
.site-footer{background:var(--deep);color:#ddd2e8}
.site-footer .brand{font-size:var(--fs-lg)}
.site-footer .brand span{max-width:none}
.footer-bottom{color:#bfb2cf;border-top-color:rgba(255,255,255,.16)}
