/* RG Chiropractic and Rehabilitation — v2 pitch mock-up. A practitioner's letterhead, set large: ink, paper, one green. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:108px}
body,h1,h2,h3,p,ul,ol,dl,dd,figure,blockquote,address{margin:0}
ul,ol{padding:0}
img,svg{display:block;max-width:100%;height:auto}
button,input,textarea{font:inherit;color:inherit}
table{border-collapse:collapse}

:root{
  --ink:#141a10;--ink-2:#1f2816;--ink-3:#2a3520;--foot-pb:40px;--gutter:clamp(16px,4vw,32px);--paper:#f4f1e8;--sand:#e8e2d2;--text:#1d2117;--muted:#5a5e52;
  --leaf:#8fa623;--leaf-deep:#7f931c;--olive:#5c6b12;--olive-dark:#4a5610;--rule:#d9d3c2;
  --on-ink:#c9c6ba;--line-ink:rgba(244,241,232,.14);
  --serif:"Brygada 1918","Brygada Fallback",Georgia,serif;--sans:"Fira Sans","Fira Fallback",system-ui,sans-serif;
  --measure:62ch;--radius:6px;--pad:clamp(4.5rem,3rem + 5vw,7rem);
}
@font-face{font-family:"Brygada 1918";src:url(assets/fonts/brygada1918-latin.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Brygada 1918";src:url(assets/fonts/brygada1918-italic-latin.woff2) format("woff2");font-weight:400 700;font-style:italic;font-display:swap}
@font-face{font-family:"Fira Sans";src:url(assets/fonts/firasans-400-latin.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Fira Sans";src:url(assets/fonts/firasans-500-latin.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Fira Sans";src:url(assets/fonts/firasans-600-latin.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Fira Fallback";src:local("Arial");size-adjust:104%;ascent-override:93%;descent-override:26%;line-gap-override:0%}
@font-face{font-family:"Brygada Fallback";src:local("Georgia");size-adjust:100%;ascent-override:88%;descent-override:24%;line-gap-override:0%}

/* type */
body{background:var(--paper);color:var(--text);font-family:var(--sans);font-size:1.0625rem;line-height:1.65}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;text-wrap:balance;overflow-wrap:break-word}
/* type scale (2026-11-08 pass): H1 38→60px, H2 28→40px, H3 21px, quotes 20→24px on a 36ch measure */
h1{font-size:clamp(2.375rem,1.75rem + 2.4vw,3.75rem);line-height:1.06;letter-spacing:-.01em;max-width:16ch}
.nw{white-space:nowrap}
h1 em,h2 em{font-style:italic}
h2{font-size:clamp(1.75rem,1.45rem + 1.2vw,2.5rem);line-height:1.15;max-width:24ch}
h3{font-size:1.3125rem;line-height:1.25}
p,li,dd{max-width:var(--measure);text-wrap:pretty}
p+p{margin-top:1em}
strong{font-weight:600}
a{color:var(--olive);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--olive-dark)}
:focus-visible{outline:3px solid var(--olive);outline-offset:2px}
.dark :focus-visible{outline-color:var(--leaf)}
.vh{position:absolute!important;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:var(--paper);color:var(--ink);padding:12px 16px;font-weight:600;border-radius:4px}
.skip:focus{top:12px}
.wrap{width:100%;max-width:1264px;margin-inline:auto;padding-inline:var(--gutter)}
.eyebrow{display:block;font-family:var(--sans);font-size:.8125rem;font-weight:500;line-height:1.4;color:var(--olive);margin-bottom:1rem}
.lede{font-size:1.125rem;color:var(--muted);max-width:58ch;margin-top:1rem}
.note{color:var(--muted)}
.more{font-weight:500;text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.more:hover{text-decoration:underline}
.prose p{max-width:var(--measure)}

/* grounds */
.dark{background:var(--ink);color:var(--paper)}
.dark a{color:var(--leaf)}
.dark a:hover{color:var(--paper)}
.dark .eyebrow{color:var(--leaf)}
.dark .lede,.dark .note{color:var(--on-ink)}
.sand{background:var(--sand)}
.sand .eyebrow,.sand a{color:var(--olive-dark)}
.blk{padding-block:var(--pad)}
.blk--sm{padding-block:clamp(3.5rem,2.5rem + 3vw,6rem)}
.blk--xs{padding-block:4rem}
.blk--0{padding-top:0}
.head{margin-bottom:clamp(2.5rem,2rem + 2vw,3.5rem)}
.head--c{text-align:center}
.head--c h2,.head--c .lede{margin-inline:auto}

/* button: the one filled call per page */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 1.5rem;border-radius:4px;background:var(--leaf);color:var(--ink);font-weight:600;font-size:1.0625rem;text-decoration:none;border:0}
.btn:hover,.dark .btn,.dark .btn:hover{color:var(--ink)}
.btn:hover{background:#9db52c}
.sand .btn,.btn--olive{background:var(--olive);color:#fff}
.sand .btn:hover,.btn--olive:hover{background:var(--olive-dark);color:#fff}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.75rem;margin-top:2rem}
.actions .more{font-weight:500}

/* header */
.top{position:sticky;top:0;z-index:45;background:var(--ink);color:var(--paper);border-bottom:1px solid var(--line-ink)}
.top__row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:84px}
.logo{display:block;flex:0 1 auto;min-width:0}
.logo img{width:200px}
.mainnav{display:flex;align-items:center;gap:clamp(.875rem,1.4vw,1.5rem)}
.mainnav a{display:inline-flex;align-items:center;min-height:44px;color:var(--paper);text-decoration:none;font-weight:500;font-size:.9375rem;padding-block:8px;border-bottom:2px solid transparent;white-space:nowrap}
.mainnav a:hover{color:var(--leaf)}
.mainnav a[aria-current]{border-bottom-color:var(--leaf)}
.mainnav .mainnav__tel{margin-left:.5rem;color:var(--paper)}
.menu-toggle,.mainnav__foot{display:none}
@media (min-width:1100px){.top .logo img{width:300px}}
@media (min-width:900px) and (max-width:1099.98px){.top .logo img{width:240px}.mainnav{gap:.875rem}.mainnav a{font-size:.875rem}}
@media (max-width:899.98px){
  .js .mainnav{display:none}
  .js .menu-toggle{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;min-height:44px;min-width:44px;padding:8px 12px;background:none;border:1px solid rgba(244,241,232,.35);border-radius:4px;color:var(--paper);font-weight:500;cursor:pointer}
  .menu-toggle__glyph,.menu-toggle__glyph::before,.menu-toggle__glyph::after{display:block;width:18px;height:2px;background:currentColor;position:relative}
  .menu-toggle__glyph::before,.menu-toggle__glyph::after{content:"";position:absolute;left:0}
  .menu-toggle__glyph::before{top:-6px}.menu-toggle__glyph::after{top:6px}
  .no-js .top__row{flex-wrap:wrap;padding-block:12px}
  .no-js .mainnav{flex-wrap:wrap;width:100%;gap:0 1rem}
  .no-js .mainnav a{padding-block:12px}
  .mainnav .mainnav__tel{display:none}
  .js [data-open] .mainnav{display:flex;position:fixed;inset:0;z-index:50;background:var(--ink);flex-direction:column;align-items:stretch;gap:0;overflow:auto;padding:96px var(--gutter) 32px}
  .js [data-open] .mainnav > a{font-family:var(--serif);font-size:1.5rem;font-weight:400;padding-block:12px;border-bottom:1px solid var(--line-ink)}
  .js [data-open] .mainnav a[aria-current]{color:var(--leaf)}
  .js [data-open] .mainnav__foot{display:block;margin-top:auto;padding-top:2rem;color:var(--on-ink)}
  .js [data-open] .mainnav__foot a{display:inline-flex;align-items:center;min-height:44px;font-size:1.25rem;color:var(--paper);border:0}
  .js [data-open] .menu-toggle{position:fixed;top:20px;right:var(--gutter);z-index:60}
  .js [data-open] .menu-toggle__glyph{background:transparent}
  .js [data-open] .menu-toggle__glyph::before{top:0;transform:rotate(45deg)}
  .js [data-open] .menu-toggle__glyph::after{top:0;transform:rotate(-45deg)}
}
@media (forced-colors:active){.menu-toggle__glyph,.menu-toggle__glyph::before,.menu-toggle__glyph::after{background:ButtonText;forced-color-adjust:none}}

/* heroes */
.hero{position:relative;overflow:hidden;padding-block:clamp(4rem,2.5rem + 5vw,6rem)}
.hero .lede{font-size:1.1875rem}
.hero.dark .lede{color:var(--on-ink)}
.crumbs{display:flex;flex-wrap:wrap;gap:.25rem .5rem;font-size:.875rem;color:var(--muted);margin-bottom:2rem;list-style:none}
.crumbs li{display:flex;align-items:center}
.foot__legal p+p,.linkrow+p,.contact p+p{margin-top:0}
.crumbs li+li::before{content:"/";margin-right:.5rem;color:var(--rule)}
.crumbs a{color:var(--muted);display:inline-flex;min-height:44px;min-width:44px;align-items:center}
.dark .crumbs,.dark .crumbs a{color:var(--on-ink)}
.hero__meta{margin-top:1.75rem;font-size:.9375rem;color:var(--on-ink);line-height:1.6}
/* photo heroes: copy left, his own photo right (stacks under the copy on phones) */
.hero--split .wrap{display:grid;gap:2.5rem;align-items:center}
.hero__photo{margin:0}
.hero__photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 50%;border-radius:var(--radius);background:var(--ink-2)}
.hero__photo--wide img{aspect-ratio:3/2;object-position:50% 40%}
@media (min-width:900px){
  .hero--split .wrap{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(3rem,2rem + 3vw,5rem)}
  .hero__photo--wide img{aspect-ratio:4/3}
}
.hero--service,.hero--plain{background:var(--paper);border-bottom:1px solid var(--rule)}
.hero--area{background:var(--sand)}
.hero--area .eyebrow{color:var(--olive-dark)}
.hero--area .lede{color:var(--text)}
.hero--split h1,.hero--ink h1{max-width:15ch}

/* credential ticks */
.ticks{list-style:none;display:grid;gap:.55rem;margin-top:1.75rem}
.ticks li{display:flex;gap:.65rem;align-items:flex-start;font-weight:500;font-size:1rem;line-height:1.45}
.ticks svg{flex:0 0 16px;width:16px;height:16px;margin-top:.2rem;color:var(--leaf-deep)}
.dark .ticks svg{color:var(--leaf)}
.dark .ticks{row-gap:.8rem}
.ticks.ticks--air{gap:.9rem;margin-top:2rem}
.band-link{margin-top:1.75rem}
.band-about .note{max-width:52ch}
.band-about .split{row-gap:4rem}
h3+.ticks{margin-top:1rem}
.ticks+h3{margin-top:3rem}

/* service cards */
/* two lead cards (the clinic's name: chiropractic + rehabilitation), then four lighter entries on a hairline */
.cards{list-style:none;display:grid;gap:24px 32px}
@media (min-width:700px){.cards{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.cards{grid-template-columns:repeat(4,1fr)}.card--lead{grid-column:span 2}}
.card{border-top:1px solid var(--rule);padding:1.5rem 0 0;display:flex;flex-direction:column;gap:.6rem;max-width:none}
.card--lead{background:var(--sand);border:0;border-radius:var(--radius);padding:min(2rem + 1vw,44px);gap:.9rem}
@media (max-width:699.98px){.card--lead + .card:not(.card--lead){margin-top:1.5rem}}
@media (min-width:700px){.card--lead{margin-bottom:1.5rem}}
.card--lead h3{font-size:clamp(1.5rem,1.3rem + .6vw,1.875rem)}
.card p{font-size:1rem;color:var(--text);flex:1}
.card.card--lead p{font-size:1.125rem;max-width:44ch}
.card{position:relative}
.card h3 a{color:var(--text);text-decoration:underline;text-decoration-color:var(--leaf-deep);text-decoration-thickness:1px;text-underline-offset:5px}
.card h3 a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.card:hover h3 a{color:var(--olive-dark);text-decoration-thickness:2px}

/* splits */
.split,.svc,.contact{grid-template-columns:minmax(0,1fr)}
.split{display:grid;gap:3rem}
@media (min-width:900px){
  .split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:4.5rem}
  .split--even{grid-template-columns:1fr 1fr}
}
/* his statement of approach: set as a pull line with a leaf rule, not a poster */
.quote{font-family:var(--serif);font-size:clamp(1.25rem,1.1rem + .5vw,1.5rem);line-height:1.45;max-width:36ch;border-left:2px solid var(--leaf-deep);padding-left:1.25rem}
.dark .quote{border-left-color:var(--leaf)}
h2 + .quote{margin-top:1.75rem}
.sline + .note{margin-top:2rem}
.by{margin-top:1rem;padding-left:calc(1.25rem + 2px);font-size:.9375rem;color:var(--muted)}
.dark .by{color:var(--on-ink)}
.pq{font-family:var(--serif);font-size:clamp(1.25rem,1.1rem + .5vw,1.4375rem);line-height:1.45;border-block:1px solid var(--rule);padding-block:1.5rem;margin-block:2rem;max-width:40ch}
.sand .pq{border-color:#cfc8b4}

/* photos: Rinaldo's own, supplied 2026-11-08; an empty slot stays hidden */
.photo{margin:0 0 2rem}
.photo:not(:has(img)){display:none}
.photo img{display:block;width:100%;height:auto;object-fit:cover;border-radius:var(--radius);background:var(--sand)}
.photo--portrait img{aspect-ratio:3/4}
.photo--wide img{aspect-ratio:3/2}
.photo--tall{max-width:34rem}
.photo--tall img{aspect-ratio:4/5}
.split .photo{margin-bottom:0}
@media (max-width:899.98px){.photo--portrait img{aspect-ratio:4/3;object-position:50% 25%}}
.svc__body > .photo{margin-bottom:3rem}
.photo-pair{display:grid;gap:1rem;margin-top:2.5rem;text-align:left}
.photo-pair .photo{margin:0}
@media (min-width:700px){.photo-pair{grid-template-columns:1fr 1fr}}


/* address + hours (the typographic plate with coordinates was retired 2026-11-08 for his sign photo and the map) */
.mapframe{display:block;width:100%;height:auto;aspect-ratio:3/2;max-height:480px;margin-top:clamp(1.5rem,1rem + 2vw,2.5rem);border:0;border-radius:var(--radius);background:var(--sand)}
.split > .mapframe,.split > div > .mapframe{margin-top:0}
.findus{align-items:center}
.addr{font-style:normal;font-size:1.125rem;line-height:1.55;margin-top:1.5rem}
.hrs{width:100%;max-width:26rem;margin-top:1.75rem}
.hrs caption{text-align:left;font-weight:600;padding-bottom:.5rem}
.hrs th,.hrs td{text-align:left;padding:.6rem 0;border-bottom:1px solid var(--rule);font-weight:400}
.hrs td{text-align:right}
.hrs + p{margin-top:1.25rem}
.dark .hrs th,.dark .hrs td{border-color:var(--line-ink)}
.sand .hrs th,.sand .hrs td{border-color:#cfc8b4}
.linkrow{display:flex;flex-wrap:wrap;gap:0 1.75rem;margin-top:1.25rem}


/* area band + lists */
.suburbs{text-align:center;margin-inline:auto;max-width:60ch;font-size:1.125rem;line-height:1.75}
.suburbs .here{color:var(--leaf);font-weight:500}
.svc3{list-style:none;display:grid;gap:2rem}
@media (min-width:760px){.svc3{grid-template-columns:repeat(3,1fr)}}
.svc3 li{border-top:1px solid var(--rule);padding-top:1rem}
.svc3 h3{font-size:1.25rem}
.svc3 h3 a{color:var(--text);text-decoration:none}
.svc3 h3 a:hover{text-decoration:underline}
.svc3 p{margin-top:.4rem;font-size:1rem}
.townlist{list-style:none;columns:2;column-gap:2rem;margin-top:2rem;font-size:1.0625rem}
@media (min-width:700px){.townlist{columns:4}}
.townlist li{padding-block:.35rem;break-inside:avoid}
.townlist a{display:inline-flex;min-height:44px;align-items:center;padding-block:0}

/* service pages: at-a-glance card + body */
.svc{display:grid;gap:3rem;align-items:start}
@media (min-width:900px){
  .svc{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:4.5rem}
  .svc--rev{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}
  .svc--rev .glance{order:2}
  .glance{position:sticky;top:108px}
}
.glance{background:var(--sand);border-radius:var(--radius);padding:28px}
.glance__t{font-family:var(--serif);font-size:1.375rem}
.glance p{font-size:1rem}
.glance .btn{margin-top:1.5rem;width:100%}
.svc__body > section+section{margin-top:clamp(3.5rem,2.5rem + 3vw,5rem);padding-top:clamp(3rem,2rem + 3vw,4rem);border-top:1px solid var(--rule)}
.svc__body h2{margin-bottom:1.25rem}
.stages{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}
.stages li{display:flex;align-items:center;gap:.5rem;font-weight:500;font-size:1rem}
.stages span{background:var(--sand);border-radius:4px;padding:.5rem .9rem}
.stages li+li::before{content:"→";content:"→" / "";color:var(--olive)}
.stages + p{margin-top:1.5rem}
.glance .ticks{margin:1rem 0 0}
.glance .ticks li{font-size:.9375rem}
.pair{display:grid;gap:1.5rem;margin-top:1.5rem}
@media (min-width:700px){.pair{grid-template-columns:1fr 1fr}}
.pair dt{font-family:var(--serif);font-size:1.25rem}
.pair dd{margin-top:.35rem}

/* the session line (v1 signature; service pages + first visit only) */
.sline{list-style:none;position:relative;margin-top:1.5rem;padding-left:2.25rem;display:grid;gap:var(--sg);--sg:1.5rem;--dot:var(--paper)}
.sline > li{position:relative;max-width:var(--measure)}
.sline > li:not(:last-child)::after{content:"";position:absolute;left:calc(5px - 2.25rem);top:calc(.5rem + 6px);height:calc(100% + var(--sg));width:2px;background:var(--olive)}
/* one dot, shared by the session line and the home visit steps */
.sline > li::before{content:"";position:absolute;z-index:1;width:12px;height:12px;border-radius:50%;background:var(--dot,var(--paper));border:2px solid var(--olive)}
.sline > li::before{left:-2.25rem;top:.5rem}
.sline strong{display:block;font-family:var(--serif);font-size:1.25rem;font-weight:400;line-height:1.35}
.sline span{display:block;margin-top:.25rem}
.sline--lg{--sg:2rem}
.sline--lg strong{font-size:clamp(1.25rem,1.15rem + .4vw,1.5rem)}
@supports (animation-timeline: view()){
  .sline > li::before{animation:light linear both;animation-timeline:view();animation-range:entry 40% entry 60%}
}
@keyframes light{from{background:var(--dot)}to{background:var(--leaf)}}
@supports not (animation-timeline: view()){.sline > li::before{background:var(--leaf)}}
@media (prefers-reduced-motion:reduce){.sline > li::before{animation:none;background:var(--leaf)}}

/* articles */
.toc{list-style:none;border-top:1px solid var(--rule)}
.toc li{max-width:none;border-bottom:1px solid var(--rule)}
.toc a{display:grid;gap:.5rem;padding-block:2rem;text-decoration:none;color:var(--text)}
.toc a:hover h2{text-decoration:underline}
.toc time{font-size:.9375rem;color:var(--muted)}
.toc h2{font-size:clamp(1.5rem,1.3rem + .8vw,2rem);max-width:none}
.toc p{color:var(--text);margin-top:.35rem}
@media (min-width:760px){.toc a{grid-template-columns:12rem minmax(0,1fr)}}
.prose{max-width:68ch;margin-inline:auto}
.prose p{max-width:68ch;font-size:1.125rem;line-height:1.7}
.prose > p:first-of-type::first-letter{font-family:var(--serif);float:left;font-size:4.4rem;line-height:.85;padding:.35rem .6rem 0 0;color:var(--olive)}
.prose .related{margin-top:2.5rem;font-size:1rem}
.prose .btn{margin-top:1.5rem}
.hero--plain .wrap > *,.hero--plain h1{max-width:68ch}
.hero--plain.hero--art .wrap{max-width:calc(68ch + 64px)}
.hero--art h1{max-width:20ch}

/* contact */
.contact{display:grid;gap:3rem}
@media (min-width:900px){.contact{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:4.5rem;align-items:end}}
.contact p{color:var(--on-ink)}
.form{display:grid;gap:1.1rem;max-width:34rem}
.form label{display:block;font-weight:500;margin-bottom:.35rem}
.form input,.form textarea{width:100%;padding:.8rem .9rem;border:1px solid #b9b3a1;border-radius:4px;background:#fff;min-height:48px}
.form-submit{justify-self:start;min-height:48px;padding:0 1.5rem;border:1px solid var(--olive);border-radius:4px;background:transparent;color:var(--olive);font-weight:600;cursor:pointer}
.form [role="status"]{min-height:1.5em;color:var(--muted)}
.note + .form{margin-top:1.5rem}

/* 404 */
.lost{min-height:70vh;display:flex;align-items:center;padding-block:4rem}
.lost img{width:56px;height:auto;margin-bottom:2rem}
.lost ul{list-style:none;display:flex;flex-wrap:wrap;gap:0 1.75rem;margin-top:2rem}
.lost a{display:inline-flex;min-height:44px;align-items:center}

/* footer */
.foot{background:var(--ink-2);color:var(--paper);padding:72px 0 var(--foot-pb)}
.foot a{color:var(--paper);text-decoration-color:rgba(244,241,232,.4)}
.foot a:hover{color:var(--leaf)}
.foot__grid{display:grid;gap:2.5rem}
@media (min-width:340px) and (max-width:699.98px){.foot__grid{grid-template-columns:1fr 1fr;column-gap:1.5rem}.foot__grid > div:first-child,.foot__grid > div:last-child{grid-column:1/-1}}
@media (min-width:700px){.foot__grid{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.foot__grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem}}
.foot .logo img{width:240px}
.foot__addr{display:flex;gap:1rem;align-items:center;margin-top:1.75rem;font-style:normal;color:var(--on-ink);line-height:1.55}
.foot__addr img{width:34px;height:56px;flex:0 0 auto}
.foot__h{font-weight:600;margin-bottom:.75rem;color:var(--paper)}
.foot ul{list-style:none}
.foot li a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding-block:.35rem;line-height:1.35;text-decoration:none}
.foot li a:hover{text-decoration:underline}
.foot__legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid var(--line-ink);font-size:.875rem;color:var(--on-ink)}
.foot__legal:first-child{margin-top:0;padding-top:0;border-top:0}
.foot:has(> .wrap > .foot__legal:first-child){padding-block:2rem}

/* mobile call bar: appears once the hero button has scrolled away */
.callbar{display:none}
@media (max-width:899.98px){
  .callbar ~ .foot{padding-bottom:calc(var(--foot-pb) + 56px)}
  .callbar{display:flex;align-items:center;justify-content:center;position:fixed;left:0;right:0;bottom:0;z-index:40;min-height:56px;background:var(--leaf);color:var(--ink);font-weight:600;text-decoration:none;transform:translateY(110%)}
  .callbar:hover{color:var(--ink)}
  @supports (animation-timeline: scroll()){
    .callbar{animation:callbar linear both;animation-timeline:scroll(root);animation-range:0 520px}
  }
  @supports not (animation-timeline: scroll()){.js .callbar{transform:none}}
}
@keyframes callbar{0%,70%{transform:translateY(110%)}100%{transform:none}}
