/* DIMART V32 — mobile footer alignment / hero spacing / menu polish / desktop home footer parity */

/* Desktop: keep the approved non-home footer geometry on Home as well. */
@media (min-width:1101px){
  body.v8-ui-preview .site-footer{
    margin-top:0!important;
    padding:68px 0 22px!important;
    border-radius:0!important;
  }
  body.v8-ui-preview .site-footer>.container{
    width:min(1180px,calc(100% - 40px))!important;
    margin-inline:auto!important;
  }
  body.v8-ui-preview .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{
    padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;
  }
  body.v8-ui-preview .site-footer .footer-utility{
    display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-areas:"social contact"!important;
    margin:18px 0 14px!important;padding:10px 12px!important;
  }
  body.v8-ui-preview .site-footer .footer-map{
    width:min(980px,92%)!important;margin:0 auto 14px!important;
  }
}

@media (max-width:1100px){
  /* HOME HERO: search box + copy stay under fixed header, never behind it. */
  body.v8-ui-preview .dimart-hero-x,
  body.v8-ui-preview .hero-combo{
    padding-top:82px!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:12px 8px 0!important;
  }
  body.v8-ui-preview .dimart-hero-x .hero-intent-search,
  body.v8-ui-preview .dimart-hero-x .hero-business-search{
    margin:0 auto 10px!important;
    transform:none!important;
    position:relative!important;
    z-index:5!important;
  }
  body.v8-ui-preview .dimart-hero-x .hero-kicker{margin:4px auto 12px!important}
  body.v8-ui-preview .dimart-hero-x .dh-copy h1{margin:0 auto 15px!important}
  body.v8-ui-preview .dimart-hero-x .hero-lead{margin:0 auto 10px!important}
  body.v8-ui-preview .dimart-hero-x .hero-ctas{margin-top:7px!important}
  body.v8-ui-preview .dimart-hero-x .hero-proof{margin-top:10px!important}

  /* FOOTER: all mobile modules share one measured horizontal rhythm. */
  .site-footer{
    --v32-footer-w:min(92%,640px);
    padding:24px 0 calc(22px + 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(--v32-footer-w)!important;
    max-width:var(--v32-footer-w)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }

  /* Remove only the two outer cards requested by user. */
  .site-footer .footer-about{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 138px!important;
    grid-template-areas:"copy logo"!important;
    align-items:center!important;
    gap:14px!important;
    width:100%!important;
    min-height:96px!important;
    margin:0!important;
    padding:5px 0 8px!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:138px minmax(0,1fr)!important;
    grid-template-areas:"logo copy"!important;
  }
  .site-footer .footer-about>.brand{
    grid-area:logo!important;
    width:138px!important;
    height:86px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  .site-footer .footer-about>.brand img{
    width:136px!important;
    max-width:136px!important;
    height:82px!important;
    max-height:82px!important;
    object-fit:contain!important;
    object-position:center!important;
    margin:0!important;
    transform:none!important;
    animation:none!important;
    filter:drop-shadow(0 15px 28px 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:9px!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-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    padding:0!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.5px!important;margin:0 0 6px!important}
  .site-footer .footer-col a{font-size:7.4px!important;margin:4px 0!important;line-height:1.45!important}

  /* Outer utility card disappears; contents remain in two compact rows. */
  .site-footer .footer-utility{
    display:flex!important;
    flex-direction:column!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{
    order:1!important;
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    margin:0!important;
  }
  .site-footer .footer-social a{
    width:42px!important;
    min-width:42px!important;
    height:38px!important;
    min-height:38px!important;
    border-radius:12px!important;
    padding:0!important;
    margin:0!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{
    order:2!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.2fr) minmax(0,.72fr) minmax(0,1.28fr)!important;
    gap:5px!important;
    margin:0!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.8px!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;
  }
  .site-footer .footer-map-copy{padding:15px 16px!important}
  .site-footer .copyright{margin-top:7px!important}

  /* Creative mobile navigation drawer. No Quick Contact / Start buttons inside. */
  .v29-mobile-menu{
    top:78px!important;
    left:10px!important;
    right:10px!important;
    bottom:12px!important;
    padding:12px!important;
    gap:7px!important;
    border-radius:28px!important;
    border:1px solid rgba(135,222,255,.24)!important;
    background:
      radial-gradient(circle at 84% 5%,rgba(60,201,255,.17),transparent 28%),
      linear-gradient(155deg,rgba(2,15,45,.995),rgba(4,56,111,.985))!important;
    box-shadow:0 36px 100px rgba(0,8,31,.55),inset 0 1px 0 rgba(255,255,255,.08)!important;
    overflow-y:auto!important;
  }
  .v29-mobile-menu::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    border-radius:inherit;
    opacity:.28;
    background-image:linear-gradient(rgba(116,216,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(116,216,255,.04) 1px,transparent 1px);
    background-size:24px 24px;
  }
  .v32-menu-brand{
    position:relative!important;
    z-index:1!important;
    display:grid!important;
    grid-template-columns:54px minmax(0,1fr) 38px!important;
    gap:10px!important;
    align-items:center!important;
    min-height:66px!important;
    margin-bottom:4px!important;
    padding:9px 10px!important;
    border-radius:20px!important;
    border:1px solid rgba(128,218,255,.15)!important;
    background:linear-gradient(130deg,rgba(255,255,255,.065),rgba(255,255,255,.02))!important;
  }
  .v32-menu-logo{display:grid!important;place-items:center!important;width:54px!important;height:46px!important}
  .v32-menu-logo img{width:48px!important;height:42px!important;object-fit:contain!important}
  .v32-menu-brand-copy{display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important}
  .v32-menu-brand-copy small{font:700 7px/1 Arial,sans-serif!important;letter-spacing:.16em!important;color:#6edcff!important;direction:ltr!important}
  .v32-menu-brand-copy b{font-size:12px!important;color:#fff!important}
  .v32-menu-close{
    width:36px!important;height:36px!important;border-radius:50%!important;border:1px solid rgba(164,229,255,.2)!important;
    background:rgba(255,255,255,.06)!important;color:#fff!important;font-size:24px!important;line-height:1!important;
    display:grid!important;place-items:center!important;
  }
  .v29-menu-link,.v29-acc-btn{position:relative!important;z-index:1!important;border-radius:16px!important}
  .v29-acc-panel{position:relative!important;z-index:1!important}
  .mobile-menu-actions,.v29-mobile-menu .mobile-menu-actions{display:none!important}
}

@media (max-width:700px){
  body.v8-ui-preview .dimart-hero-x,
  body.v8-ui-preview .hero-combo{padding-top:78px!important}
  body.v8-ui-preview .dimart-hero-x .dh-copy{padding-top:9px!important}

  .site-footer{--v32-footer-w:calc(100% - 28px)}
  .site-footer .footer-about{grid-template-columns:minmax(0,1fr) 118px!important;gap:10px!important;min-height:86px!important}
  html[lang="en"] .site-footer .footer-about{grid-template-columns:118px minmax(0,1fr)!important}
  .site-footer .footer-about>.brand{width:118px!important;height:76px!important}
  .site-footer .footer-about>.brand img{width:116px!important;max-width:116px!important;height:72px!important;max-height:72px!important}
  .site-footer .footer-about>p{font-size:8.2px!important}
  .site-footer .footer-contact>*{font-size:6.2px!important;padding:4px 5px!important}
  .site-footer .footer-map{width:var(--v32-footer-w)!important;max-width:var(--v32-footer-w)!important}
  .site-footer .footer-map-frame{min-height:138px!important}
  .site-footer .copyright{grid-template-columns:1fr 1fr!important;font-size:6.2px!important;padding:7px 8px!important}
}

@media (max-width:390px){
  .site-footer .footer-about{grid-template-columns:minmax(0,1fr) 104px!important}
  html[lang="en"] .site-footer .footer-about{grid-template-columns:104px minmax(0,1fr)!important}
  .site-footer .footer-about>.brand{width:104px!important}.site-footer .footer-about>.brand img{width:102px!important;max-width:102px!important}
  .site-footer .footer-contact{grid-template-columns:1fr 1fr!important}
  .site-footer .footer-contact .email{grid-column:1/-1!important}
  .v29-mobile-menu{left:7px!important;right:7px!important}
}
