/* Smartmed footer: a clear invitation, useful links and a compact brand signature. */
.site-footer[data-footer]{
  --fp-muted:var(--on-dark-2);
  position:relative;isolation:isolate;overflow:hidden;overflow:clip;
  margin:0;
  padding:0;border:0;border-radius:0;
  background:var(--night);
  color:var(--on-dark);
}
.site-footer[data-footer]::before{content:none}
.site-footer[data-footer]>.fp-wrap{
  position:relative;container-type:inline-size;max-width:1440px;
  margin:0 auto;padding:clamp(40px,4vw,64px) clamp(24px,4.5vw,72px) clamp(24px,2.4vw,36px);
  background:none;border:0;border-radius:0;box-shadow:none;
}
.fp-masthead{display:flex;align-items:center;justify-content:space-between;gap:24px}
.fp-masthead p{font-size:var(--fs-label);font-weight:500;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;color:var(--fp-muted)}
.fp-masthead a{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:var(--fs-small);white-space:nowrap}
.site-footer[data-footer] a{text-decoration:none;text-underline-offset:5px}
.site-footer[data-footer] a:hover{text-decoration:underline}
.site-footer[data-footer] a:focus-visible{outline-color:var(--teal-pale);outline-offset:5px}
.fp-invitation{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:clamp(28px,2.3vw,40px)}
.fp-invitation h2{font:500 clamp(2rem,3.8vw,3.5rem)/1.06 var(--sans);letter-spacing:-.045em;color:var(--on-dark);text-wrap:balance}
.fp-discuss{display:grid;place-items:center;flex-shrink:0;width:clamp(64px,7vw,100px);height:clamp(64px,7vw,100px);border:1px solid var(--teal-pale);border-radius:50%;color:var(--teal-pale);transition:background-color .25s var(--ease),color .25s var(--ease)}
.site-footer[data-footer] .fp-discuss:hover{background:var(--teal-pale);color:var(--night);text-decoration:none}
.fp-discuss svg{transition:transform .25s var(--ease)}
.fp-discuss:hover svg{transform:translate(3px,-3px)}
.fp-contact{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 32px;margin-top:24px;padding-bottom:clamp(28px,2.8vw,40px);border-bottom:1px solid var(--line-dark)}
.fp-contact>a{display:inline-flex;align-items:center;gap:20px;min-height:44px;font:500 clamp(1.125rem,2vw,1.625rem)/1.3 var(--sans);letter-spacing:var(--track-snug)}
.fp-contact p{font-size:var(--fs-small);color:var(--fp-muted)}
.fp-directory{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);margin-top:clamp(28px,2.3vw,36px)}
.fp-directory h3{font:500 var(--fs-label)/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--fp-muted);margin-bottom:14px}
.fp-directory ul{list-style:none;display:grid;gap:0;margin:0;padding:0}
.fp-directory .fp-pages ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.fp-directory a{display:flex;align-items:center;min-height:44px;width:fit-content;font-size:var(--fs-small);line-height:1.4}
.fp-company address{font:400 var(--fs-small)/1.85 var(--sans);font-style:normal;color:var(--on-dark)}
.fp-end{display:flex;align-items:center;justify-content:space-between;gap:24px 40px;margin-top:clamp(28px,3vw,44px);padding-top:24px;border-top:1px solid var(--line-dark)}
.fp-signature{flex-shrink:0;display:inline-flex;align-items:center;gap:.17em;min-height:44px;font:600 clamp(1.625rem,2.3vw,2rem)/1.15 var(--sans);letter-spacing:var(--track-tight);color:var(--paper)}
.fp-signature span{color:var(--teal-pale)}
.fp-base{display:grid;gap:6px;text-align:right;font-size:var(--fs-label);line-height:1.5;color:var(--fp-muted)}
@media(min-width:1600px){.fp-invitation h2{font-size:3.5rem}}
@media(max-width:760px){
  .site-footer[data-footer]>.fp-wrap{padding-top:36px}
  .fp-masthead{align-items:flex-start;gap:20px}
  .fp-masthead p{max-width:25ch}
  .fp-masthead a{font-size:var(--fs-label);min-height:36px}
  .fp-invitation{gap:20px;margin-top:24px}
  .fp-invitation h2{font-size:clamp(1.75rem,5.4vw,2.5rem)}
  .fp-discuss{width:56px;height:56px}
  .fp-discuss svg{width:26px;height:26px}
  .fp-contact{margin-top:20px;padding-bottom:24px;gap:8px}
  .fp-directory{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
  .fp-pages{grid-column:1/-1}
  .fp-directory h3{margin-bottom:8px}
  .fp-end{align-items:flex-start;flex-direction:column;gap:16px;margin-top:28px;padding-top:20px}
  .fp-base{gap:6px;text-align:left}
}
@media(max-width:380px){
  .site-footer[data-footer]>.fp-wrap{padding-left:20px;padding-right:20px}
  .fp-invitation{align-items:flex-start;gap:12px}
  .fp-invitation h2{font-size:1.625rem}
  .fp-invitation h2 br{display:none}
  .fp-discuss{width:48px;height:48px;margin-top:3px}
  .fp-company address{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){.fp-discuss,.fp-discuss svg{transition:none}}
@media print{
  .site-footer[data-footer]{margin:0;border-radius:0;background:none;color:var(--ink)}
  .site-footer[data-footer]>.fp-wrap{padding-top:32px}
  .fp-discuss{display:none}
  .site-footer[data-footer] .fp-wrap *{color:var(--ink)}
}
