/* ---------- footer ----------
   Four quiet columns, then the operator's identification data set like the rating plate on the back of a solar module. */
.footer{background:var(--night);color:var(--frost);border-top:1px solid var(--hair-d);
  padding:clamp(3.5rem,7vw,5.5rem) var(--gut-r) calc(env(safe-area-inset-bottom,0px) + 5.5rem) var(--gut-l)}
.footer-in{max-width:78rem;margin:0 auto}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:clamp(2rem,4vw,4rem)}
.footer-brand img{display:block;height:34px;width:auto}
.footer-brand p{margin:1.25rem 0 1.1rem;max-width:34ch;color:var(--frost-2);font-size:1rem;line-height:1.6}
.footer-link-strong{display:inline-flex;align-items:center;min-height:44px;color:#fff;font-weight:600;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px;text-decoration-thickness:1px}
.footer-link-strong:hover{text-decoration-thickness:2px}
.footer-col h3{margin:0 0 .8rem;font:600 1rem/1.3 var(--f-display);font-stretch:104%;color:#fff}
.footer-col ul{list-style:none;margin:0;padding:0}
.footer-col a,.footer-textbtn{display:inline-flex;align-items:center;min-height:40px;color:var(--frost-2);text-decoration:none;font-size:.97rem;line-height:1.4;transition:color .2s}
.footer-col a:hover,.footer-textbtn:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-col a[aria-current]{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-textbtn{padding:0;border:0;background:none;font-family:inherit;cursor:pointer;text-align:left}
.footer-contact li{display:flex;align-items:flex-start;gap:.65rem;padding:.55rem 0;color:var(--frost-2);font-size:.97rem;line-height:1.5}
.footer-contact li>a{min-height:24px;gap:.65rem;align-items:flex-start;min-width:0}
.footer-contact span{min-width:0;overflow-wrap:anywhere}   /* long e-mail addresses wrap instead of widening the page */
.footer-contact svg{width:18px;height:18px;flex:none;margin-top:.15em;color:var(--gold)}
.footer-social{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}
.footer-social a,.footer-social-off{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;border:1px solid rgba(232,236,241,.22);border-radius:50%;color:var(--frost);transition:color .2s,border-color .2s,background-color .2s}
.footer-social a:hover{color:var(--night);background:var(--gold);border-color:var(--gold);text-decoration:none}
.footer-social-off{opacity:.55;cursor:default}
.footer-social svg{width:20px;height:20px}

/* identification plate */
.plate{margin-top:clamp(3rem,6vw,4.5rem);border:1px solid rgba(232,236,241,.2);border-radius:6px}
.plate-title{margin:0;padding:.85rem 1.1rem;border-bottom:1px solid rgba(232,236,241,.2);font:600 .95rem/1.2 var(--f-display);font-stretch:104%;color:#fff}
.plate-grid{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.plate-grid>div{padding:.85rem 1.1rem;border-top:1px solid var(--hair-d);border-left:1px solid var(--hair-d)}
.plate-grid>div:nth-child(-n+3){border-top:0}
.plate-grid>div:nth-child(3n+1){border-left:0}
.plate-grid dt{margin-bottom:.3rem;color:var(--frost-2);font-size:.84rem;line-height:1.3}
.plate-grid dd{margin:0;color:#fff;font-size:.95rem;line-height:1.45}
.plate .code{font-family:var(--f-mono);font-size:.88rem;letter-spacing:.02em;font-variant-numeric:tabular-nums}

.footer-base{margin-top:1.75rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem}
.footer-base p{margin:0;color:var(--frost-2);font-size:.9rem}
.anpc-row{display:flex;flex-wrap:wrap;gap:.75rem}
.anpc{display:block;line-height:0;border-radius:6px}
.anpc img{display:block;width:201px;height:50px;object-fit:contain}

@media (max-width:1023px){
  .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .footer-brand{grid-column:1/-1}
  .plate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .plate-grid>div:nth-child(-n+3){border-top:1px solid var(--hair-d)}
  .plate-grid>div:nth-child(-n+2){border-top:0}
  .plate-grid>div:nth-child(3n+1){border-left:1px solid var(--hair-d)}
  .plate-grid>div:nth-child(2n+1){border-left:0}
}
@media (max-width:640px){
  .footer-grid{grid-template-columns:minmax(0,1fr)}
  .plate-grid{grid-template-columns:minmax(0,1fr)}
  .plate-grid>div{border-left:0!important;border-top:1px solid var(--hair-d)!important}
  .plate-grid>div:first-child{border-top:0!important}
}
/* phones: the call bar is docked at the bottom of the homepage */
@media (max-width:819px){.page-home .footer{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 9rem)}}
