/* Liyu Parallel — shared site footer.
   Self-contained so it can drop into every page regardless of which
   stylesheet that page already carries. Tokens fall back to literals
   in case a page has not defined them. */

.sitefoot{
  background:#14202B;color:#F8F8F4;
  padding-block:clamp(3rem,6vw,4.5rem) 0;margin-top:clamp(3rem,7vw,6rem);
  font-family:'Karla',system-ui,sans-serif;
}
.sitefoot__shell{max-width:1440px;margin:0 auto;padding-inline:clamp(1.25rem,5vw,4.5rem)}

.sitefoot__top{
  display:grid;gap:clamp(2rem,4vw,3.5rem);
  grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr)) minmax(0,1.3fr);
  padding-bottom:clamp(2.5rem,5vw,3.5rem);
}
@media(max-width:1080px){.sitefoot__top{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.sitefoot__top{grid-template-columns:1fr;gap:2.25rem}}

.sitefoot .logo{display:flex;align-items:center;gap:.62rem;text-decoration:none;color:#F8F8F4}
.sitefoot .logo__mark{width:26px;height:26px;flex:none}
.sitefoot .logo__mark .bar-a{fill:currentColor}
.sitefoot .logo__mark .bar-b{fill:#3D8A75}
.sitefoot .logo__type{
  font-family:'Archivo',system-ui,sans-serif;font-weight:900;font-stretch:118%;
  font-size:1.02rem;letter-spacing:.11em;line-height:1;text-transform:uppercase;
}
.sitefoot .logo__type i{font-style:normal;font-weight:500;font-stretch:100%;opacity:.6}

.sitefoot__line{color:rgba(248,248,244,.62);font-size:.92rem;margin:1.1rem 0 0;max-width:34ch}

.sitefoot h4{
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:.66rem;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;color:rgba(248,248,244,.45);
  margin:0 0 1rem;
}
.sitefoot ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.sitefoot a{color:rgba(248,248,244,.78);text-decoration:none;font-size:.92rem}
.sitefoot a:hover{color:#F8F8F4;text-decoration:underline;text-underline-offset:3px}
.sitefoot :focus-visible{outline:2px solid #E5541B;outline-offset:3px}

.sitefoot address{font-style:normal;color:rgba(248,248,244,.62);font-size:.92rem;line-height:1.7}
.sitefoot address a{display:inline-block}
.sitefoot__hours{
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:.66rem;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(248,248,244,.4);margin:.9rem 0 0;
}

.sitefoot__news{margin-top:1.6rem;max-width:22rem}
.sitefoot__news p{color:rgba(248,248,244,.62);font-size:.86rem;margin:0 0 .7rem}
.sitefoot__form{display:flex;gap:.5rem}
.sitefoot__form input{
  flex:1;min-width:0;background:rgba(248,248,244,.06);color:#F8F8F4;
  border:1px solid rgba(248,248,244,.22);border-radius:2px;padding:.6rem .75rem;
  font:inherit;font-size:.88rem;
}
.sitefoot__form input::placeholder{color:rgba(248,248,244,.38)}
.sitefoot__form input:focus{border-color:rgba(248,248,244,.6);outline:none}
.sitefoot__form button{
  background:#F8F8F4;color:#14202B;border:1px solid #F8F8F4;border-radius:2px;
  padding:.6rem 1rem;font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;
  transition:background .18s,color .18s;
}
.sitefoot__form button:hover{background:#3D8A75;border-color:#3D8A75;color:#fff}
.sitefoot__note{
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:.64rem;letter-spacing:.08em;
  color:rgba(229,84,27,.9);margin:.6rem 0 0;min-height:1em;
}

.sitefoot__social{display:flex;gap:.8rem;margin-top:1.5rem}
.sitefoot__social a{
  width:34px;height:34px;display:grid;place-items:center;border-radius:2px;
  border:1px solid rgba(248,248,244,.2);color:rgba(248,248,244,.7);
}
.sitefoot__social a:hover{border-color:#F8F8F4;color:#F8F8F4}
.sitefoot__social svg{width:15px;height:15px;fill:currentColor}

.sitefoot__bar{
  border-top:1px solid rgba(248,248,244,.14);
  padding-block:1.5rem 2rem;display:flex;flex-wrap:wrap;gap:.75rem 2rem;
  justify-content:space-between;align-items:center;
}
.sitefoot__bar p{
  margin:0;font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:.66rem;letter-spacing:.09em;color:rgba(248,248,244,.4);
}
.sitefoot__bar b{font-weight:400;color:rgba(248,248,244,.62)}
@media(prefers-reduced-motion:reduce){.sitefoot *{transition-duration:.001ms!important}}
