/* Footer geometry and outlined assets follow the supplied XD artboards. */
.saito-footer {
  --saito-footer-offset:clamp(0px,calc((100vw - 1366px) * .0054151625),3px);
  position:relative;
  isolation:isolate;
  overflow:clip;
  min-height:640px;
  padding:90px 0 115px;
  background:#fff;
  color:#fff;
  font-weight:400;
  letter-spacing:0;
  text-align:center
}
.saito-footer::after { background:rgb(56 81 50/.65); }
.saito-footer-no-photo { background:#385132; }
.saito-footer .saito-footer-photo {
  inset:0;
  width:100%;
  max-width:none;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.995769024
}
.saito-footer .saito-footer-inner { transform:translateX(var(--saito-footer-offset)); }
.saito-footer .saito-footer-logo { display:block; width:255px; height:39.641px; margin:0 auto; filter:none; }
.saito-footer .saito-footer-logo img { display:block; width:255px; height:39.641px; }
.saito-footer .saito-footer-address { margin:17.359px 0 0; font-size:12px; line-height:20px; }
.saito-footer-address>span { display:block; position:relative; top:-1px; }
.saito-footer-map { white-space:nowrap; }
.saito-footer-map a { text-underline-offset:1px; }
.saito-footer-social { position:relative; left:.5px; display:flex; width:max-content; gap:15px; margin:25px auto 0; color:#fff; }
.saito-footer-social a, .saito-footer-social button { display:block; width:26px; height:26px; padding:1px; border:0; background:none; color:inherit; opacity:1; }
.saito-footer-social button:disabled { cursor:default; }
.saito-footer-social-icon { display:block; width:24px; height:24px; }
.saito-footer .saito-footer-nav { display:block; margin-top:50px; }
.saito-footer .saito-footer-links {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:repeat(5,minmax(34px,auto));
  grid-auto-flow:column;
  gap:0 30px;
  margin:0;
  padding:0;
  list-style:none;
  font-size:14px;
  line-height:34px;
  text-align:left
}
.saito-footer-links li { min-width:0; }
.saito-footer .saito-footer-links a { display:flex; align-items:center; text-decoration:none; }
.saito-footer .saito-footer-links a::before { content:none; }
.saito-footer .saito-footer-links a:hover { text-decoration:underline; }
.saito-footer-menu-bullet { position:relative; top:0; flex:0 0 12px; width:12px; height:12px; margin-right:7px; color:#fff; opacity:.5; }
.saito-footer-sitemap { display:none; }
.saito-footer .saito-copyright { position:relative; top:-1px; display:block; margin:46px 0 0; font-size:11px; line-height:21px; }
@media(max-width:1000px) and (min-width:601px) {
  .saito-footer .saito-footer-links { gap:0 15px; font-size:12px; }
}
@media(max-width:600px) {
  .saito-footer { --saito-footer-offset:.5px; min-height:473px; padding:60px 0 142px; }
  .saito-footer .saito-footer-inner { width:100%; }
  .saito-footer .saito-footer-photo { left:calc(50% - 682.5px); right:auto; width:1366px; height:100%; }
  .saito-footer .saito-footer-address { margin-top:17.359px; font-size:12px; line-height:20px; }
  .saito-footer-social { margin-top:15px; }
  .saito-footer .saito-footer-nav { display:none; }
  .saito-footer-sitemap { display:block; width:324px; max-width:calc(100% - 40px); margin:30px auto 0; }
  .saito-footer-sitemap summary { list-style:none; min-height:56px; padding:11px 0 13px; border:1px solid #fff; border-radius:4px; font-size:14px; line-height:30px; cursor:pointer; }
  .saito-footer-sitemap summary::-webkit-details-marker { display:none; }
  .saito-footer-sitemap summary:focus-visible { outline:3px solid var(--saito-gold); outline-offset:5px; }
  .saito-footer-sitemap-nav { margin-top:20px; }
  .saito-footer .saito-footer-sitemap-nav .saito-footer-links { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:none; grid-auto-flow:row; column-gap:16px; }
  .saito-footer-sitemap-nav .saito-footer-links a { align-items:center; }
  .saito-footer .saito-copyright { margin-top:26px; font-size:11px; line-height:21px; }
}
