/* V342 — responsive footer composition for tablet and phone widths. */
body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__shell{
  box-sizing:border-box;
}

@media (max-width:1150px){
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__main{
    grid-template-columns:minmax(0,1fr)!important;
    gap:20px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__brand{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:8px 24px;
    min-width:0;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__brand p{
    max-width:42ch;
    margin:0;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__brand .web-app-entry{
    justify-self:start;
    width:max-content;
    max-width:100%;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__menus{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    align-items:start;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__menus>section{
    min-width:0;
    padding:14px 16px;
    border:1px solid color-mix(in srgb,var(--studio-color-border) 82%,transparent);
    border-radius:14px;
    background:color-mix(in srgb,var(--studio-component-card-bg) 72%,transparent);
    align-self:start;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__menus strong{
    margin-block-end:6px;
    font-size:13px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__newsletter{
    grid-column:auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    align-items:center;
    gap:20px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal{
    grid-template-columns:minmax(0,1fr);
    gap:12px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal-links{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:5px 12px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal-links a{
    min-width:0;
    white-space:normal;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal-links .site-footer__up{
    justify-self:end;
  }
}

@media (max-width:600px){
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__waves{
    height:54px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__shell{
    width:calc(100% - 24px);
    padding:26px 0 104px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__main{
    gap:16px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__brand{
    grid-template-columns:minmax(0,1fr);
    justify-items:center;
    gap:8px;
    padding:6px 8px 12px;
    text-align:center;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__brand>a{
    justify-self:center;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__brand .web-app-entry{
    justify-self:center;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__brand img{
    width:var(--site-footer-logo-mobile-width,162px);
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__brand p{
    max-width:34ch;
    font-size:12px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__menus{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__menus>section{
    padding:12px 11px;
    border-radius:12px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__menus strong{
    font-size:11px;
    line-height:1.7;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__menus :is(a,button){
    min-height:34px;
    gap:5px;
    font-size:11px;
    line-height:1.6;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__icon{
    width:14px;
    height:14px;
    flex-basis:14px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__newsletter{
    grid-template-columns:minmax(0,1fr);
    gap:12px;
    padding:15px;
    border-radius:14px;
    text-align:center;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__newsletter-copy>strong{
    font-size:16px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__newsletter-copy>p{
    font-size:11px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__newsletter form{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:6px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__newsletter button{
    min-height:40px;
    padding-inline:11px;
    font-size:11px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal{
    margin-block-start:18px;
    padding-block-start:15px;
    gap:10px;
    text-align:center;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal-links{
    grid-template-columns:repeat(2,minmax(0,1fr));
    justify-items:stretch;
    gap:3px 8px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal-links a{
    justify-content:center;
    min-height:34px;
    font-size:11px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal-links .site-footer__up{
    grid-column:1/-1;
    justify-self:center;
    width:36px;
    height:36px;
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal .site-footer__tagline,
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__legal .site-footer__rights{
    font-size:10px;
    line-height:1.8;
    text-align:center;
  }
}

@media (max-width:380px){
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__menus{
    grid-template-columns:minmax(0,1fr);
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__newsletter form{
    grid-template-columns:minmax(0,1fr);
  }
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__newsletter button{
    width:100%;
  }
}

@media (prefers-reduced-motion:reduce){
  body.studio-theme .studio-exact-footer.studio-footer-responsive .site-footer__waves *{animation:none!important}
}
