/* ============================================================
   V29 — Accueil PC : géométrie visuelle identique à Services
   - corrige le décalage horizontal du menu
   - corrige le départ du hero
   - aligne verticalement promo/header/hero
   - mobile <= 820px inchangé
   ============================================================ */

@media (min-width:821px){
  body.home-page .shell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  /* HEADER : même gabarit visible que Services */
  body.home-page .header{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-height:104px!important;
    height:104px!important;
    margin:0!important;
    padding-left:max(24px,calc((100vw - 1150px)/2))!important;
    padding-right:max(24px,calc((100vw - 1150px)/2))!important;
    display:flex!important;
    align-items:center!important;
    gap:0!important;
    position:relative!important;
    top:auto!important;
    background:linear-gradient(180deg,#010a1a 0%,#010c20 100%)!important;
    border-radius:0!important;
    border-bottom:1px solid rgba(53,235,255,.18)!important;
  }

  body.home-page .brand{
    flex:0 0 220px!important;
    width:220px!important;
    min-width:220px!important;
    max-width:220px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  body.home-page .brand img{
    width:220px!important;
    max-width:220px!important;
    height:auto!important;
    display:block!important;
    object-fit:contain!important;
  }

  body.home-page .desktop-nav{
    flex:1 1 auto!important;
    margin:0 0 0 auto!important;
    padding:0!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:8px!important;
    flex-wrap:nowrap!important;
  }
  body.home-page .desktop-nav a{
    min-height:46px!important;
    height:46px!important;
    padding:0 14px!important;
    border-radius:13px!important;
    font-size:14px!important;
    line-height:1!important;
    font-weight:850!important;
    gap:8px!important;
    white-space:nowrap!important;
  }
  body.home-page .desktop-nav a i{font-size:16px!important}

  /* HERO : même point de départ que le contenu Services */
  body.home-page .hero{
    min-height:600px!important;
    padding:0!important;
    border-radius:0!important;
  }
  body.home-page .hero-grid{
    box-sizing:border-box!important;
    width:min(1180px,calc(100% - 44px))!important;
    max-width:1180px!important;
    min-height:600px!important;
    margin:0 auto!important;
    padding:68px 0 54px 48px!important;
    display:grid!important;
    grid-template-columns:minmax(0,660px) 1fr!important;
    align-items:start!important;
    justify-content:start!important;
  }
  body.home-page .hero-copy{
    width:100%!important;
    max-width:660px!important;
    margin:0!important;
    padding:0!important;
    background:none!important;
    border-radius:0!important;
  }
  body.home-page .eyebrow{
    margin:0 0 18px!important;
    padding:8px 12px!important;
    font-size:12px!important;
    line-height:1.2!important;
    letter-spacing:.055em!important;
  }
  body.home-page .hero h1{
    width:100%!important;
    max-width:620px!important;
    margin:0 0 18px!important;
    padding:0!important;
    font-size:66px!important;
    line-height:.99!important;
    letter-spacing:-.045em!important;
    font-weight:850!important;
  }
  body.home-page .hero-copy>p{
    max-width:650px!important;
    margin:0!important;
    font-size:16px!important;
    line-height:1.58!important;
  }
  body.home-page .hero-location{
    margin:10px 0 0!important;
    font-size:15px!important;
    line-height:1.45!important;
  }
  body.home-page .hero-actions{
    margin-top:22px!important;
    gap:10px!important;
  }
  body.home-page .hero-actions .btn{
    min-height:46px!important;
    height:46px!important;
    padding:0 16px!important;
    font-size:14px!important;
    border-radius:13px!important;
  }
  body.home-page .hero-badges{
    margin-top:18px!important;
    gap:8px!important;
  }
  body.home-page .hero-badges span{
    padding:8px 11px!important;
    font-size:12px!important;
    border-radius:12px!important;
  }

  /* Les sections restent calées sur la même largeur que Services */
  body.home-page .dashboard,
  body.home-page .content-main,
  body.home-page .home-showcase-grid,
  body.home-page .pro-footer-grid{
    width:min(1180px,calc(100% - 44px))!important;
    max-width:1180px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

@media (min-width:821px) and (max-width:1250px){
  body.home-page .header{
    padding-left:22px!important;
    padding-right:22px!important;
  }
  body.home-page .brand{
    flex-basis:190px!important;
    width:190px!important;
    min-width:190px!important;
  }
  body.home-page .brand img{width:190px!important;max-width:190px!important}
  body.home-page .desktop-nav{gap:6px!important}
  body.home-page .desktop-nav a{padding:0 10px!important;font-size:13px!important}
  body.home-page .hero-grid{padding-left:28px!important;padding-right:28px!important}
}
