
:root{--red:#C41230;--ink:#171717;--paper:#f4f3ef;--line:#d8d6cf;--muted:#66645f}
a:focus-visible,summary:focus-visible,button:focus-visible{
  outline:2px solid var(--red);
  outline-offset:3px;
}
.skip-link{
  position:absolute;
  left:var(--content-gutter, 1rem);
  top:0.75rem;
  z-index:10000;
  width:1px;
  height:1px;
  padding:0;
  overflow:hidden;
  clip-path:inset(50%);
  white-space:nowrap;
  background:var(--ink);
  color:#fff;
  font:600 .86rem/1.2 Inter,Arial,sans-serif;
  letter-spacing:.02em;
  text-decoration:none;
}
.skip-link:focus,
.skip-link:focus-visible{
  width:auto;
  height:auto;
  padding:0.55rem 0.9rem;
  overflow:visible;
  clip-path:none;
  color:#fff;
}
footer{
  padding:28px 4.5vw 32px;
  background:#171717;
  color:#aaa;
  font-size:.78rem;
}
footer{padding-left:var(--content-gutter, 4.5vw);padding-right:var(--content-gutter, 4.5vw)}
.footer-eco{
  margin:0 0 18px;
  color:var(--red);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.footer-eco a{
  color:var(--red);
  text-decoration:none;
  border-bottom:1px solid rgba(196,18,48,.45);
}
.footer-eco [aria-current="page"]{
  border-bottom:1px solid rgba(196,18,48,.45);
}
.footer-legal{
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
}
.footer-legal a{
  color:inherit;
  text-decoration:none;
  border-bottom:1px solid #555;
  align-self:flex-start;
}
.footer-legal span:first-child{
  flex:1 1 16rem;
  min-width:min(100%, 16rem);
  overflow-wrap:break-word;
}
.footer-ip{
  margin:14px 0 0;
  max-width:40rem;
  color:#777;
  font-size:.68rem;
  font-weight:400;
  letter-spacing:.01em;
  line-height:1.45;
  text-transform:none;
}
@media(max-width:820px){
  .footer-legal{flex-direction:column}
  .footer-legal span:first-child{flex-basis:auto}
}
