html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{overflow-x:hidden}
@media(max-width:820px){
.site-header{height:72px;padding:0 20px}.brand img{width:185px;height:52px}.nav{top:72px}
.hero{display:flex!important;flex-direction:column;min-height:auto!important;overflow:hidden}.hero::after{display:none!important}.hero-copy{order:1;width:100%!important;min-height:auto!important;padding:42px 24px 26px!important}.hero h1{font-size:clamp(2rem,8vw,2.65rem)!important;line-height:1.08!important;max-width:none!important;margin:14px 0 20px}.hero-copy p{max-width:none!important;font-size:1rem;line-height:1.7}.hero-actions{display:grid;grid-template-columns:1fr;gap:12px;width:100%;margin-top:24px}.hero-actions .btn{width:100%;min-height:54px}.hero-proof{display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:center!important;gap:8px 12px!important;margin-top:22px;padding-top:18px}.hero-visual{order:2;position:relative!important;inset:auto!important;width:100%;height:330px;min-height:330px!important;overflow:hidden}.hero-visual img{position:absolute!important;top:50%!important;left:50%!important;right:auto!important;width:112%!important;max-width:none!important;height:auto!important;max-height:330px!important;transform:translate(-50%,-50%)!important;object-fit:contain}
.trust-strip{display:grid!important;grid-template-columns:1fr 1fr!important;padding:0!important}.trust-strip article{min-height:72px;padding:14px 10px!important;border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.trust-strip article:nth-child(even){border-right:0}.trust-strip article strong{font-size:.72rem!important;line-height:1.4;color:#fff!important}
.partners{padding:30px 0!important;overflow:hidden}.partners .section-kicker{display:block;text-align:center;padding:0 20px}.partner-grid{display:flex!important;gap:12px!important;overflow-x:auto;padding:0 20px 10px!important;margin-top:20px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.partner-grid::-webkit-scrollbar{display:none}.partner-grid div{flex:0 0 150px!important;width:150px!important;height:84px!important;padding:12px!important;border:1px solid var(--line);border-radius:8px;background:#fff;scroll-snap-align:start}.partner-grid img{width:auto!important;height:auto!important;max-width:125px!important;max-height:54px!important;object-fit:contain!important}
.section{padding:58px 24px!important}.section h2{font-size:clamp(2rem,8vw,2.65rem)!important;line-height:1.12!important}
.reviews{text-align:left}.google-rating{justify-content:flex-start!important;flex-wrap:wrap}.reviews-wrap{position:relative;display:block!important;padding:0 38px}.reviews-window{overflow:hidden;width:100%}.reviews-track{display:flex!important;flex-wrap:nowrap!important;gap:0!important}.review-card{flex:0 0 100%!important;width:100%!important;min-width:100%!important;min-height:235px;padding:22px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 10px 24px rgba(8,35,63,.07)!important}.review-card p{min-height:auto!important;font-size:.94rem;line-height:1.6}.review-arrow{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;z-index:5;width:32px!important;height:32px!important}.review-arrow.prev{left:0!important}.review-arrow.next{right:0!important}.reviews>.btn{display:flex;width:100%}
.service-grid,.pro-grid{grid-template-columns:1fr!important}.service-grid article,.pro-grid article{padding:24px!important}
.gallery-grid{grid-template-columns:1fr!important;grid-auto-rows:250px!important}.gallery-item,.gallery-item:nth-child(n){grid-column:1!important;grid-row:auto!important}
.contact{display:block!important}.contact-copy{margin-bottom:28px}.contact form{display:flex!important;flex-direction:column!important;width:100%!important;gap:15px!important;padding:22px!important}.contact form label{display:flex!important;flex-direction:column!important;width:100%!important;grid-column:auto!important;gap:7px}.contact form input,.contact form select,.contact form textarea{width:100%!important;min-width:0;margin:0!important;padding:13px 12px!important;font-size:16px!important;line-height:1.35}.contact form textarea{min-height:150px}.contact form .full{width:100%!important;grid-column:auto!important}.contact form button{width:100%!important;min-height:56px}
}
@media(max-width:480px){.brand img{width:168px}.hero-copy{padding:38px 20px 22px!important}.hero h1{font-size:2.08rem!important}.hero-visual{height:285px;min-height:285px!important}.hero-visual img{width:120%!important;max-height:285px!important}.trust-strip{grid-template-columns:1fr!important}.trust-strip article{min-height:56px;border-right:0}.section{padding-left:20px!important;padding-right:20px!important}.partner-grid div{flex-basis:142px!important;width:142px!important}}


/* Correctif galerie Safari et carrousel mobile */
@media(max-width:820px){
  .gallery-section{
    display:block !important;
    visibility:visible !important;
  }

  .gallery-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-auto-rows:auto !important;
    width:100% !important;
    gap:14px !important;
  }

  .gallery-item,
  .gallery-item:nth-child(n){
    display:block;
    grid-column:1 !important;
    grid-row:auto !important;
    width:100% !important;
    min-height:230px;
    aspect-ratio:4/3;
    opacity:1 !important;
    visibility:visible !important;
    overflow:hidden;
  }

  .gallery-item.hidden{
    display:none !important;
  }

  .gallery-item img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:230px;
    object-fit:cover !important;
  }

  .reviews-track{
    gap:0 !important;
    align-items:stretch;
    will-change:transform;
  }

  .review-card{
    flex:0 0 100% !important;
    width:100% !important;
    min-width:100% !important;
    margin:0 !important;
    box-sizing:border-box !important;
  }
}


/* V6 — Pages légales sur mobile */
@media(max-width:820px){
  .legal-hero{
    padding:52px 24px 40px;
  }
  .legal-hero h1{
    font-size:2.45rem;
  }
  .legal-page{
    padding:48px 24px 70px;
  }
  .legal-card{
    margin-bottom:25px;
    padding-bottom:25px;
  }
  .legal-card h2{
    font-size:1.2rem;
  }
  .footer-legal{
    align-items:center;
  }
  .footer-legal p:last-child{
    justify-content:center;
  }
}
