/* Veryn — site styles. Fonts declared here (display=optional, all three files preloaded in <head>). */
@font-face{font-family:"Zilla Slab";font-style:normal;font-weight:300;font-display:optional;src:url(https://fonts.gstatic.com/s/zillaslab/v12/dFa5ZfeM_74wlPZtksIFYpEY6HOpWw.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:"Zilla Slab";font-style:normal;font-weight:500;font-display:optional;src:url(https://fonts.gstatic.com/s/zillaslab/v12/dFa5ZfeM_74wlPZtksIFYskZ6HOpWw.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:"DM Sans";font-style:normal;font-weight:400 600;font-display:optional;src:url(https://fonts.gstatic.com/s/dmsans/v17/rP2Hp2ywxg089UriCZOIHQ.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}

:root{--ink:#22281B;--ink-2:#4A5143;--ink-3:#5E6358;--line:#E3E5DA;--bg-alt:var(--paper)}
body{color:var(--ink)}
h1,h2{font-weight:300;letter-spacing:-.01em;color:var(--pine)}
h3,h4{font-weight:500;color:var(--pine);letter-spacing:0}
h3{font-size:var(--fs-lg)}
.btn{font-weight:600;border-radius:999px}
.btn-primary{box-shadow:none}
.btn-outline{border-width:1.5px}
:focus-visible{outline-color:var(--accent)}

/* Header */
.site-header{background:color-mix(in srgb,#fff 92%,transparent)}
.brand img{height:30px;width:auto}
.nav a{color:var(--ink-2)}
.nav a.btn{font-size:var(--fs-sm);padding:.7em 1.1em}

/* Hero: the brain map is the page's one memorable thing */
.v-hero{background:var(--paper);padding-block:clamp(2rem,6vw,5rem) 0;overflow:hidden}
.v-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-5);align-items:center}
.v-hero h1{font-size:clamp(2.3rem,1.5rem + 3.6vw,4.4rem);line-height:1.04;max-width:15ch;margin-bottom:var(--s-5)}
.v-hero .lede{color:var(--ink-2);max-width:46ch}
.v-hero .actions{margin-top:var(--s-5)}
.v-hero-note{margin-top:var(--s-4);font-size:var(--fs-sm);color:var(--ink-3);max-width:none}
.v-hero .actions .btn-outline{padding-block:1em}
.v-map{position:relative;justify-self:center;width:min(72vw,400px);margin:3.5rem 0 -14%}
.v-map img{width:100%;height:auto;mix-blend-mode:multiply}
.v-star{position:absolute;left:50%;top:-11%;width:11%;height:auto;translate:-50% 0;animation:v-star 1.1s var(--ease) .25s both}
@keyframes v-star{from{transform:scale(.2) rotate(-45deg)}to{transform:none}}
@media(min-width:900px){
  .v-hero{padding-block:clamp(4rem,7vw,6.5rem) 0}
  .v-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--s-7)}
  .v-hero-copy{padding-bottom:clamp(4rem,8vw,7rem)}
  .v-map{width:100%;max-width:560px;justify-self:end;margin:2.5rem -6vw -18% 0}
}
@media(max-width:899px){.v-hero .actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.v-star{animation:none}}

/* How it works: a real sequence, numbered */
.v-how{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
.v-steps{list-style:none;margin:0;padding:0;counter-reset:s;display:grid;gap:var(--s-5)}
.v-steps li{counter-increment:s;display:grid;grid-template-columns:2.6rem minmax(0,1fr);column-gap:var(--s-4);border-top:1px solid var(--line);padding-top:var(--s-4)}
.v-steps li::before{content:counter(s);grid-row:span 2;font-family:var(--font-display);font-weight:300;font-size:2.2rem;line-height:1;color:var(--meadow)}
.v-steps h3{margin-bottom:var(--s-2)}
.v-steps p{color:var(--ink-2);margin:0}
.v-how-photo{margin:0}
.v-how-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius)}
.v-how-photo figcaption{margin-top:var(--s-2);font-size:var(--fs-sm);color:var(--ink-3)}
@media(min-width:900px){.v-how{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}.v-how-photo{position:sticky;top:calc(var(--header-h) + 2rem)}}

/* Conditions */
.v-soft{background:var(--paper)}
.v-cond{display:grid;gap:var(--s-6);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.v-cond{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s-8)}}
.v-rows li>span:last-child{color:var(--brand);font-weight:600}
.v-rows h3{font-size:var(--fs-lg)}
.v-also{margin-top:var(--s-5);color:var(--ink-2);font-size:var(--fs-sm)}

/* Dr. B */
.v-drb{display:grid;gap:var(--s-6);grid-template-columns:minmax(0,1fr);align-items:center}
.v-drb-photo{margin:0;max-width:420px}
.v-drb-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;border-radius:var(--radius)}
@media(min-width:900px){.v-drb{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s-8)}}
.v-quote{margin:var(--s-6) 0 0;padding-left:var(--s-5);border-left:3px solid var(--meadow)}
.v-quote .pullquote{color:var(--pine);font-weight:300;max-width:34ch}
.v-quote .pullquote+p{margin-top:var(--s-3)}

/* Veterans band */
.v-pine{background:var(--pine);color:#E9ECE1}
.v-pine h2{color:#fff}
.v-pine a:not(.btn){color:var(--spring)}
.v-vet{display:grid;gap:var(--s-6);grid-template-columns:minmax(0,1fr);align-items:center}
@media(min-width:900px){.v-vet{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--s-8)}}
.v-vet-photo{margin:0}
.v-vet-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius)}
.btn-light{background:#fff;color:var(--pine)}
.btn-light:hover{background:var(--spring)}

/* Cost */
.v-cost{display:grid;gap:var(--s-6);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.v-cost{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s-8)}}

/* Family story */
.v-family{max-width:820px}
.v-family-h{font-size:var(--fs-xl)}
.v-family-lead{color:var(--ink-2)}
.v-family .pullquote{font-size:clamp(1.5rem,1.1rem + 1.6vw,2.3rem)}

/* Visit */
.v-visit{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.v-visit{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}}
.v-facts{display:grid;grid-template-columns:minmax(0,1fr);gap:.2em var(--s-5);margin:var(--s-5) 0}
.v-facts dt{font-weight:600;color:var(--pine);margin-top:var(--s-3)}
.v-facts dd{margin:0;color:var(--ink-2)}
@media(min-width:560px){.v-facts{grid-template-columns:auto minmax(0,1fr)}.v-facts dt{margin-top:0}}
.v-visit .map{aspect-ratio:16/10}
.v-visit-form{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.25rem,3vw,2rem)}
.v-visit-form h3{font-size:var(--fs-xl);font-weight:300}
.v-pref{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-5)}
.v-pref legend{font-size:var(--fs-sm);font-weight:600;margin-bottom:var(--s-2);padding:0}
.form .v-pref label{display:flex;align-items:center;gap:.45em;font-weight:500;min-height:44px}
.form .v-pref input{width:auto;accent-color:var(--brand)}

/* Footer */
.site-footer{background:var(--pine);color:#D6DBCC}
.site-footer .brand img{height:28px;width:auto}
.site-footer h4{color:#fff;font-family:var(--font-body);font-weight:600}
.v-foot-line{margin-top:var(--s-3)}
.footer-bottom{color:#AEB5A3}
