/* DIMART V33 — definitive mobile hero/footer unification + desktop home footer parity */

/* Desktop: Home uses the exact same footer geometry as every other page. */
@media (min-width:1101px){
  body.v8-ui-preview .site-footer,
  .site-footer{
    margin-top:0!important;
    border-radius:0!important;
  }
  body.v8-ui-preview .site-footer>.container,
  .site-footer>.container{
    width:min(1180px,calc(100% - 40px))!important;
    margin-inline:auto!important;
  }
  body.v8-ui-preview .site-footer .footer-grid,
  .site-footer .footer-grid{
    grid-template-columns:1.45fr repeat(3,.7fr)!important;
    gap:26px!important;
    align-items:start!important;
  }
  body.v8-ui-preview .site-footer .footer-about,
  .site-footer .footer-about{
    padding:0!important;
    border:0!important;
    background:transparent!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.v8-ui-preview .site-footer .footer-utility,
  .site-footer .footer-utility{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-areas:"social contact"!important;
    gap:14px!important;
    align-items:center!important;
    margin:18px 0 14px!important;
    padding:10px 12px!important;
  }
  body.v8-ui-preview .site-footer .footer-map,
  .site-footer .footer-map{
    width:min(980px,92%)!important;
    margin:0 auto 14px!important;
  }
}

@media (max-width:1100px){
  /* HOME HERO — all hero copy begins below the rounded fixed header, never behind it. */
  body.v8-ui-preview .dimart-hero-x,
  body.v8-ui-preview .hero-combo{
    padding-top:92px!important;
  }
  body.v8-ui-preview .dimart-hero-x .dh-shell{
    padding-top:0!important;
    margin-top:0!important;
  }
  body.v8-ui-preview .dimart-hero-x .dh-copy{
    position:relative!important;
    top:0!important;
    margin-top:0!important;
    margin-bottom:0!important;
    padding:10px 8px 0!important;
  }
  body.v8-ui-preview .dimart-hero-x .hero-intent-search,
  body.v8-ui-preview .dimart-hero-x .hero-business-search{
    position:relative!important;
    top:auto!important;
    transform:none!important;
    margin:0 auto 12px!important;
    z-index:4!important;
    width:min(100%,560px)!important;
    align-self:center!important;
  }
  body.v8-ui-preview .dimart-hero-x .hero-kicker{margin:5px auto 12px!important}
  body.v8-ui-preview .dimart-hero-x .dh-copy h1{margin:0 auto 16px!important}
  body.v8-ui-preview .dimart-hero-x .hero-lead{margin:0 auto 12px!important}
  body.v8-ui-preview .dimart-hero-x .hero-ctas{margin-top:10px!important}
  body.v8-ui-preview .dimart-hero-x .hero-proof{margin-top:12px!important}

  /* Shared footer width on every page. */
  .site-footer{
    --v33-footer-w:calc(100% - 28px);
    padding:24px 0 calc(20px + env(safe-area-inset-bottom))!important;
  }
  .site-footer>.container{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
  }
  .site-footer .footer-grid,
  .site-footer .footer-utility,
  .site-footer .footer-map,
  .site-footer .copyright{
    width:var(--v33-footer-w)!important;
    max-width:var(--v33-footer-w)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }

  /* Brand/copy are directly inside footer: no surrounding card. */
  .site-footer .footer-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    padding:0!important;
  }
  .site-footer .footer-about{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 124px!important;
    grid-template-areas:"copy logo"!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
    min-height:86px!important;
    margin:0!important;
    padding:4px 0 9px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  html[lang="en"] .site-footer .footer-about{
    grid-template-columns:124px minmax(0,1fr)!important;
    grid-template-areas:"logo copy"!important;
  }
  .site-footer .footer-about>.brand{
    grid-area:logo!important;
    width:124px!important;
    height:78px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .site-footer .footer-about>.brand img{
    display:block!important;
    width:122px!important;
    max-width:122px!important;
    height:76px!important;
    max-height:76px!important;
    object-fit:contain!important;
    object-position:center!important;
    margin:0!important;
    transform:none!important;
    animation:none!important;
    filter:drop-shadow(0 13px 24px rgba(0,0,0,.24))!important;
  }
  .site-footer .footer-about>p{
    grid-area:copy!important;
    margin:0!important;
    padding:0!important;
    max-width:none!important;
    color:#b5ccdc!important;
    font-size:8.4px!important;
    line-height:1.9!important;
    text-align:right!important;
  }
  html[lang="en"] .site-footer .footer-about>p{text-align:left!important}

  .site-footer .footer-col{
    min-width:0!important;
    padding:9px 5px!important;
    border-radius:14px!important;
    border:1px solid rgba(127,211,251,.07)!important;
    background:rgba(255,255,255,.018)!important;
    text-align:center!important;
  }
  .site-footer .footer-col h4{font-size:9.4px!important;margin:0 0 6px!important}
  .site-footer .footer-col a{font-size:7.2px!important;margin:4px 0!important;line-height:1.45!important}

  /* Social + contact content stays, but outer utility card is removed. */
  .site-footer .footer-utility{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    min-height:0!important;
    margin-top:9px!important;
    margin-bottom:9px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
  }
  .site-footer .footer-social{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    margin:0!important;
    padding:0!important;
  }
  .site-footer .footer-social a{
    width:40px!important;
    min-width:40px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0!important;
    margin:0!important;
    border-radius:12px!important;
    display:grid!important;
    place-items:center!important;
  }
  .site-footer .footer-social .social-icon{width:28px!important;height:28px!important;border-radius:9px!important}
  .site-footer .footer-social .social-copy{display:none!important}
  .site-footer .footer-contact{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) minmax(0,.72fr) minmax(0,1.2fr)!important;
    gap:5px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .site-footer .footer-contact>*{
    min-width:0!important;
    height:32px!important;
    min-height:32px!important;
    padding:5px 7px!important;
    margin:0!important;
    border-radius:10px!important;
    font-size:6.6px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .site-footer .footer-map{
    margin-top:10px!important;
    margin-bottom:10px!important;
    border-radius:20px!important;
    overflow:hidden!important;
  }
  .site-footer .footer-map-copy{padding:15px 16px!important}
  .site-footer .footer-map-frame{min-height:138px!important}
  .site-footer .copyright{margin-top:7px!important}
}

@media (max-width:700px){
  body.v8-ui-preview .dimart-hero-x,
  body.v8-ui-preview .hero-combo{padding-top:88px!important}
  body.v8-ui-preview .dimart-hero-x .dh-copy{top:0!important;margin-bottom:0!important;padding-top:8px!important}

  .site-footer .footer-about{grid-template-columns:minmax(0,1fr) 116px!important;gap:10px!important;min-height:82px!important}
  html[lang="en"] .site-footer .footer-about{grid-template-columns:116px minmax(0,1fr)!important}
  .site-footer .footer-about>.brand{width:116px!important;height:72px!important}
  .site-footer .footer-about>.brand img{width:114px!important;max-width:114px!important;height:70px!important;max-height:70px!important}
  .site-footer .footer-about>p{font-size:8px!important}
  .site-footer .footer-contact>*{font-size:6.1px!important;padding:4px 5px!important}
  .site-footer .copyright{grid-template-columns:1fr 1fr!important;font-size:6.1px!important;padding:7px 8px!important}
}

@media (max-width:390px){
  .site-footer{--v33-footer-w:calc(100% - 22px)}
  .site-footer .footer-about{grid-template-columns:minmax(0,1fr) 102px!important}
  html[lang="en"] .site-footer .footer-about{grid-template-columns:102px minmax(0,1fr)!important}
  .site-footer .footer-about>.brand{width:102px!important}.site-footer .footer-about>.brand img{width:100px!important;max-width:100px!important}
  .site-footer .footer-contact{grid-template-columns:1fr 1fr!important}
  .site-footer .footer-contact .email{grid-column:1/-1!important}
}
