:root{
  --fab-header-height:76px;
}



.setoda-footer-directory.setoda-footer-directory-sketch{
  position:relative;
  z-index:2;
  width:min(90vw,var(--setoda-frame));
  margin-inline:auto;
  display:grid;
  grid-template-columns:minmax(190px,250px) minmax(0,1fr);
  grid-template-areas:none;
  gap:clamp(34px,4.5vw,76px);
  align-items:start;
  padding:clamp(76px,8vw,124px) 0 clamp(70px,7vw,108px);
}
.setoda-footer-profile{
  display:grid;
  align-content:start;
  justify-items:start;
  gap:25px;
}
.setoda-footer-stamp{
  display:grid;
  place-content:center;
  width:112px;
  aspect-ratio:1.36/1;
  border:1px solid rgba(241,243,232,.48);
  border-radius:4px;
  color:var(--setoda-footer-text);
  text-align:center;
  transition:background .45s ease,color .45s ease,border-color .45s ease;
}
.setoda-footer-stamp span{
  font:400 19px/1 var(--setoda-serif);
  letter-spacing:.12em;
}
.setoda-footer-stamp small{
  margin-top:8px;
  color:rgba(241,243,232,.62);
  font:500 var(--fab-font-minimum)/1 var(--setoda-sans);
  letter-spacing:.24em;
}
.setoda-footer-stamp:hover{
  background:rgba(255,255,255,.08);
  border-color:rgba(241,243,232,.76);
}
.setoda-footer-address{
  display:grid;
  gap:8px;
  color:var(--setoda-footer-text);
  font-style:normal;
}
.setoda-footer-address b{
  font:400 12px/1.6 var(--setoda-serif);
  letter-spacing:.08em;
}
.setoda-footer-address span{
  color:rgba(241,243,232,.68);
  font:400 11px/1.85 var(--setoda-serif);
  letter-spacing:.055em;
}
.setoda-footer-booking{
  position:relative;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  width:100%;
  min-height:72px;
  padding:15px 16px;
  border:1px solid rgba(241,243,232,.42);
  border-radius:4px;
  color:var(--setoda-footer-text);
  transition:background .45s ease,color .45s ease,border-color .45s ease,transform .45s ease;
}
.setoda-footer-booking small{
  grid-column:1/-1;
  margin-bottom:3px;
  color:rgba(241,243,232,.55);
  font:500 var(--fab-font-minimum)/1.4 var(--setoda-sans);
  letter-spacing:.18em;
}
.setoda-footer-booking span{
  font:400 14px/1.5 var(--setoda-serif);
  letter-spacing:.08em;
}
.setoda-footer-booking i{
  font-style:normal;
  font-size:15px;
}
.setoda-footer-booking:hover{
  transform:translateY(-2px);
  background:#f1f3e8;
  border-color:#f1f3e8;
  color:var(--setoda-footer-deep);
}
.setoda-footer-booking:hover small{color:rgba(6,68,18,.58)}
.setoda-footer-menu-block{
  min-width:0;
}
.setoda-footer-menu-heading{
  display:flex;
  align-items:baseline;
  gap:18px;
  margin-bottom:clamp(27px,3vw,42px);
}
.setoda-footer-menu-heading span{
  color:rgba(241,243,232,.50);
  font:500 var(--fab-font-minimum)/1.4 var(--setoda-sans);
  letter-spacing:.19em;
}
.setoda-footer-menu-heading h3{
  margin:0;
  color:var(--setoda-footer-text);
  font:400 max(var(--fab-font-minimum), clamp(18px,1.55vw,24px))/1.5 var(--setoda-serif);
  letter-spacing:.065em;
}
.setoda-footer-feature-links{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(12px,1.45vw,22px);
  margin-bottom:clamp(34px,4vw,52px);
}
.setoda-footer-feature-links a{
  min-width:0;
  color:var(--setoda-footer-text);
}
.setoda-footer-feature-links figure{
  aspect-ratio:1.48/1;
  margin:0 0 13px;
  overflow:hidden;
  border-radius:4px;
  background:rgba(255,255,255,.08);
}
.setoda-footer-feature-links img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.86) brightness(.88);
  transition:transform 1.15s var(--setoda-ease),filter .75s ease;
}
.setoda-footer-feature-links span{
  display:inline-block;
  padding-bottom:5px;
  border-bottom:1px solid transparent;
  font:400 max(var(--fab-font-minimum), clamp(11px,.85vw,14px))/1.75 var(--setoda-serif);
  letter-spacing:.045em;
  transition:border-color .4s ease,transform .4s ease;
}
.setoda-footer-feature-links a:hover img{
  transform:scale(1.045);
  filter:saturate(1) brightness(.98);
}
.setoda-footer-feature-links a:hover span{
  border-color:rgba(241,243,232,.46);
  transform:translateX(3px);
}
.setoda-footer-utility-area{
  display:grid;
  gap:18px;
}
.setoda-footer-text-links{
  display:flex;
  flex-wrap:wrap;
  gap:9px clamp(20px,2.2vw,38px);
}
.setoda-footer-text-links a,
.setoda-footer-instagram{
  width:max-content;
  color:var(--setoda-footer-text);
  font:400 13px/1.75 var(--setoda-serif);
  letter-spacing:.055em;
  transition:opacity .35s ease,transform .35s ease;
}
.setoda-footer-text-links a:hover,
.setoda-footer-instagram:hover{
  opacity:.72;
  transform:translateX(3px);
}
.setoda-footer-instagram{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-top:2px;
}
.setoda-footer-instagram span{
  font-size:14px;
}
.setoda-footer-legal{
  display:flex;
  flex-wrap:wrap;
  gap:7px 20px;
  margin-top:5px;
}
.setoda-footer-legal a{
  width:max-content;
  color:rgba(241,243,232,.43);
  font:500 var(--fab-font-minimum)/1.6 var(--setoda-sans);
  letter-spacing:.085em;
  transition:color .35s ease;
}
.setoda-footer-legal a:hover{
  color:rgba(241,243,232,.68);
}
.setoda-footer-bottom>div{
  justify-content:flex-end;
}
@media(max-width:1120px){.setoda-footer-directory.setoda-footer-directory-sketch{
    grid-template-columns:minmax(170px,220px) minmax(0,1fr);
    gap:36px;
  }
.setoda-footer-feature-links{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px 18px;
  }
}
@media(max-width:760px){.setoda-footer-directory.setoda-footer-directory-sketch{
    width:calc(100% - 40px);
    display:grid;
    grid-template-columns:1fr;
    gap:38px;
    padding:72px 0 68px;
  }
.setoda-footer-profile{
    grid-template-columns:auto 1fr;
    column-gap:24px;
    align-items:start;
  }
.setoda-footer-stamp{
    grid-row:1/3;
    width:92px;
  }
.setoda-footer-address{
    align-self:start;
  }
.setoda-footer-booking{
    grid-column:2;
    max-width:260px;
  }
.setoda-footer-menu-heading{
    display:grid;
    gap:7px;
  }
.setoda-footer-feature-links{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px 12px;
  }
.setoda-footer-feature-links span{
    font-size:12px;
  }
.setoda-footer-text-links{
    gap:8px 20px;
  }
}
@media(max-width:430px){.setoda-footer-profile{
    grid-template-columns:88px 1fr;
    column-gap:18px;
  }
.setoda-footer-stamp{
    width:88px;
  }
.setoda-footer-booking{
    grid-column:1/-1;
    max-width:none;
  }
.setoda-footer-feature-links{
    gap:21px 10px;
  }
.setoda-footer-feature-links figure{
    aspect-ratio:1.25/1;
  }
.setoda-footer-text-links{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
.setoda-footer-legal{
    display:grid;
    gap:8px;
  }
}


.setoda-footer-brand-logo{
  display:block;
  width:min(178px,100%);
  line-height:0;
}
.setoda-footer-brand-logo img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.setoda-footer-menu-heading{
  display:block;
}
.setoda-footer-instagram svg{
  display:block;
  width:15px;
  height:15px;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.setoda-footer-instagram span{
  font:inherit;
}
.setoda-footer-legal{
  justify-content:flex-end;
}
@media(max-width:760px){.setoda-footer-brand-logo{width:150px;}
}


