html{min-width:100%;max-width:100%;background:#f6f1e9;overflow-x:hidden}
body{min-width:100%;max-width:100%;overflow-x:hidden}
@supports (overflow:clip){html,body{overflow-x:clip}}

.brand-image{height:auto;display:inline-flex;align-items:center;overflow:visible;background:transparent}
.brand-image img{display:block;height:72px;width:auto;max-width:300px;object-fit:contain;background:transparent}
.footer-logo{display:block;width:232px;height:232px;max-width:232px;object-fit:contain;background:transparent}
@media(max-width:980px){
  .brand-image img{height:62px;max-width:258px}
  .footer-logo{width:208px;height:208px;max-width:208px}
}
@media(max-width:640px){
  .brand-image{height:auto}
  .brand-image img{height:50px;max-width:210px}
  .footer-logo{width:182px;height:182px;max-width:182px}
}

/* Compact footer: no dead zones on desktop, no horizontal overflow on phones. */
.footer{padding:26px 0 16px!important}
.footer .shell{min-width:0}
.footer-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(150px,.55fr) minmax(190px,.65fr)!important;
  gap:36px!important;
  align-items:center!important;
}
.footer-brand{
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr)!important;
  gap:24px!important;
  align-items:center!important;
  grid-column:auto!important;
  min-width:0!important;
}
.footer-logo{
  display:block!important;
  width:150px!important;
  height:auto!important;
  max-width:150px!important;
  margin:0!important;
  object-fit:contain!important;
}
.footer-brand p{
  margin:0!important;
  max-width:360px!important;
  min-width:0!important;
}
.footer-nav,.footer-contact{
  min-width:0!important;
  width:100%!important;
  padding-top:0!important;
  align-self:center!important;
}
.footer-contact a{overflow-wrap:anywhere}
.footer-bottom{margin-top:18px!important;padding-top:14px!important}

@media(max-width:760px){
  .footer{padding:24px 0 calc(18px + env(safe-area-inset-bottom))!important}
  .footer .shell{
    width:calc(100% - 28px)!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .footer-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:20px!important;
    align-items:start!important;
  }
  .footer-brand{
    grid-template-columns:96px minmax(0,1fr)!important;
    gap:18px!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
  }
  .footer-logo{
    width:96px!important;
    height:auto!important;
    max-width:96px!important;
  }
  .footer-brand p{
    max-width:none!important;
    font-size:.92rem!important;
    line-height:1.55!important;
  }
  .footer-nav,.footer-contact{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:7px!important;
    width:100%!important;
    max-width:100%!important;
    font-size:.94rem!important;
  }
  .footer-contact .store-link{margin-top:5px!important}
  .footer-bottom{
    margin-top:18px!important;
    padding-top:14px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:4px!important;
    width:calc(100% - 28px)!important;
    max-width:100%!important;
  }
}

@media(max-width:420px){
  .footer-brand{grid-template-columns:82px minmax(0,1fr)!important;gap:14px!important}
  .footer-logo{width:82px!important;max-width:82px!important}
  .footer-brand p{font-size:.88rem!important}
}
