/* LE ROY FACTORY — MOBILE V8 FINAL */
@media (max-width:900px){
  html,body{overflow-x:hidden!important}
  html body.lrf-premium-v2.lrf-premium-v2{width:100%!important}

  /* Header mobile compact */
  html body.lrf-premium-v2.lrf-premium-v2 header{height:76px!important;min-height:76px!important;position:relative!important;z-index:100000!important;background:linear-gradient(180deg,#b7c6ae 0%,#91a78b 20%,#71896f 58%,#536b55 100%)!important;border-bottom:1px solid #d4af37!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.28),inset 0 -2px 0 rgba(42,64,45,.28),0 5px 18px rgba(32,48,35,.20)!important}
  html body.lrf-premium-v2.lrf-premium-v2 header .nav-container{height:76px!important;min-height:76px!important;width:100%!important;max-width:none!important;padding:0 12px 0 14px!important;box-sizing:border-box!important}
  html body.lrf-premium-v2.lrf-premium-v2 header .logo{width:64px!important;min-width:64px!important;height:64px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:100004!important}
  html body.lrf-premium-v2.lrf-premium-v2 .lrf-monogram-header,
  html body.lrf-premium-v2.lrf-premium-v2 header .logo img{width:62px!important;height:62px!important;object-fit:contain!important;filter:drop-shadow(0 0 8px rgba(255,205,30,.42))!important}

  /* Burger */
  html body.lrf-premium-v2.lrf-premium-v2 .burger-btn{display:flex!important;width:52px!important;height:52px!important;margin:0!important;padding:0!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:6px!important;border:1px solid #D6A90E!important;border-radius:13px!important;background:linear-gradient(180deg,#7f987b,#5f765f)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 3px 10px rgba(36,58,40,.18)!important;z-index:100020!important}
  html body.lrf-premium-v2.lrf-premium-v2 .burger-btn span{width:25px!important;height:2px!important;background:#FFD000!important;border-radius:2px!important}
  html body.lrf-premium-v2.lrf-premium-v2 .burger-btn.active span:nth-child(1){transform:translateY(8px) rotate(45deg)!important}
  html body.lrf-premium-v2.lrf-premium-v2 .burger-btn.active span:nth-child(2){opacity:0!important}
  html body.lrf-premium-v2.lrf-premium-v2 .burger-btn.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)!important}

  /* Menu sous le header : lisible et compact */
  html body.lrf-premium-v2.lrf-premium-v2 header nav ul.main-nav{
    position:fixed!important;top:76px!important;right:0!important;left:auto!important;
    width:min(88vw,360px)!important;height:calc(100dvh - 76px)!important;
    transform:translateX(105%)!important;transition:transform .22s ease!important;
    margin:0!important;padding:14px 20px 26px!important;box-sizing:border-box!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;
    overflow-y:auto!important;background:#FBF8F1!important;border-left:1px solid rgba(196,149,34,.35)!important;
    box-shadow:-14px 12px 35px rgba(0,0,0,.20)!important;z-index:100010!important}
  html body.lrf-premium-v2.lrf-premium-v2 header nav ul.main-nav.active{transform:translateX(0)!important}
  html body.lrf-premium-v2.lrf-premium-v2 .main-nav li{width:100%!important;display:block!important;border-bottom:1px solid rgba(32,38,45,.10)!important}
  html body.lrf-premium-v2.lrf-premium-v2 .main-nav>li>a:not(.agent-btn){width:100%!important;min-height:54px!important;margin:0!important;padding:13px 8px!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;background:transparent!important;color:#202832!important;opacity:1!important;text-shadow:none!important;font-size:1rem!important;line-height:1.2!important;font-weight:800!important;letter-spacing:.035em!important;text-align:left!important}
  html body.lrf-premium-v2.lrf-premium-v2 .main-nav>li>a:not(.agent-btn):hover,
  html body.lrf-premium-v2.lrf-premium-v2 .main-nav>li>a:not(.agent-btn):focus,
  html body.lrf-premium-v2.lrf-premium-v2 .main-nav>li>a:not(.agent-btn):active{background:transparent!important;color:#B7830D!important;box-shadow:none!important}
  html body.lrf-premium-v2.lrf-premium-v2 .main-nav>li>a.active:not(.agent-btn){background:transparent!important;color:#B7830D!important;opacity:1!important;box-shadow:none!important}
  html body.lrf-premium-v2.lrf-premium-v2 .main-nav>li>a.active:not(.agent-btn)::after{display:none!important}
  html body.lrf-premium-v2.lrf-premium-v2 .main-nav .agent-btn{width:100%!important;min-height:54px!important;margin:18px 0 0!important;padding:13px 14px!important;background:#111!important;color:#FFD000!important;border:1px solid #C99B14!important;border-radius:14px!important;box-shadow:none!important;font-size:1rem!important;font-weight:900!important;text-align:center!important}

  /* Accueil : image smartphone HD fournie */
  html body.lrf-page-index.lrf-premium-v2 .hero-video-section{
    height:calc(100svh - 76px)!important;min-height:640px!important;max-height:none!important;
    background-image:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.10) 54%,rgba(0,0,0,.34)),url('../brand-v2/accueil-mobile.png?v=20260901-hd2')!important;
    background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;background-color:#050505!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-overlay{background:radial-gradient(circle at 50% 44%,rgba(0,0,0,0),rgba(0,0,0,.14) 78%)!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-content{padding:16px 18px 26px!important;justify-content:center!important;box-sizing:border-box!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-logo{width:min(340px,76vw)!important;max-width:76vw!important;height:auto!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-content h2{font-size:clamp(1.65rem,6.8vw,2.15rem)!important;line-height:1.08!important;letter-spacing:.025em!important;margin:.5rem 0 .8rem!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-content p{max-width:92vw!important;font-size:.98rem!important;line-height:1.5!important;margin-bottom:.8rem!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-buttons{width:100%!important;flex-direction:column!important;align-items:center!important;gap:.7rem!important;margin-top:.55rem!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-btn{width:min(320px,86vw)!important;min-height:52px!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:.8rem 1.1rem!important}

  /* Pages internes compactes */
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page:not(.lrf-agent-page) .hero-banner{min-height:0!important;height:auto!important;padding:24px 16px!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page:not(.lrf-agent-page) .hero-banner .container{padding:0 14px!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page:not(.lrf-agent-page) .hero-banner h1{font-size:clamp(1.65rem,7vw,2.05rem)!important;line-height:1.08!important;margin:0 auto .45rem!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page:not(.lrf-agent-page) .hero-banner p{font-size:.93rem!important;line-height:1.45!important;max-width:92vw!important}

  /* Réalisations : mobile beaucoup plus compact, photos visibles dès le premier écran */
  body main:has(.realisations-filters){padding-top:24px!important;padding-bottom:32px!important}
  body main:has(.realisations-filters)>.container{padding-left:14px!important;padding-right:14px!important}
  body main:has(.realisations-filters)>.container>h1{font-size:clamp(2rem,9vw,2.55rem)!important;line-height:1.03!important;margin:0 0 .65rem!important;letter-spacing:-.025em!important}
  body main:has(.realisations-filters)>.container>p{font-size:.98rem!important;line-height:1.38!important;margin:0 0 1rem!important;max-width:100%!important}
  body .realisations-filters{gap:.42rem!important;margin:0 0 1rem!important;display:flex!important;flex-wrap:wrap!important}
  body .realisations-filters .btn{font-size:.78rem!important;line-height:1.1!important;padding:.48rem .72rem!important;min-height:38px!important;border-radius:999px!important}
  body .realisations-grid{grid-template-columns:1fr!important;gap:14px!important}
  body .realisation-card{min-height:330px!important;border-radius:16px!important}

  /* Conteneurs / cartes sans débordement */
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page main .container{width:100%!important;max-width:100%!important;padding-left:14px!important;padding-right:14px!important;box-sizing:border-box!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page #grid-partenaires,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page #grid-catalogues,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page #grid-tarifs,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page #products-grid,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .products-grid,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .partners-grid,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .cards-grid{grid-template-columns:minmax(0,1fr)!important;gap:16px!important;width:100%!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .card-premium,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .partner-card,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .inspiration-card,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .realisation-card,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page #grid-catalogues>div,
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page #grid-tarifs>div{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .partner-card{padding:1.35rem!important;border-radius:22px!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .partner-card [style*='padding-right:90px']{padding-right:72px!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .partner-card [style*='width:110px']{width:76px!important;height:42px!important;right:1.1rem!important;top:1.15rem!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .partner-card h3{font-size:1.35rem!important;line-height:1.15!important}
  html body.lrf-premium-v2.lrf-premium-v2.lrf-light-page .partner-card p{font-size:.93rem!important;line-height:1.5!important}

  /* Catalogues */
  html body.lrf-page-catalogues.lrf-premium-v2 main{padding-top:26px!important}
  html body.lrf-page-catalogues.lrf-premium-v2 main>.container>h1{font-size:1.9rem!important;line-height:1.08!important}
  html body.lrf-page-catalogues.lrf-premium-v2 main>.container>p{font-size:.93rem!important;margin-bottom:1.3rem!important}

  /* Accès PRO */
  html body.lrf-page-tarifs-pro.lrf-premium-v2 #login-section{width:calc(100% - 28px)!important;max-width:520px!important;margin:22px auto!important;padding:22px 16px!important;box-sizing:border-box!important;border-radius:20px!important}
  html body.lrf-page-tarifs-pro.lrf-premium-v2 .pro-login-grid{grid-template-columns:1fr!important;gap:.7rem!important}
  html body.lrf-page-tarifs-pro.lrf-premium-v2 .pro-login-grid input{width:100%!important;min-width:0!important;box-sizing:border-box!important;min-height:50px!important}

  /* Espace Agent */
  html body.lrf-agent-page.lrf-premium-v2 main{min-height:auto!important;display:block!important;padding:26px 0 34px!important;box-sizing:border-box!important;align-items:initial!important}
  html body.lrf-agent-page.lrf-premium-v2 main>.container{width:100%!important;max-width:100%!important;padding:0 14px!important;box-sizing:border-box!important}
  html body.lrf-agent-page.lrf-premium-v2 .login-wrapper{width:100%!important;max-width:480px!important;margin:0 auto!important;padding:24px 18px!important;box-sizing:border-box!important;border-radius:22px!important;overflow:visible!important}
  html body.lrf-agent-page.lrf-premium-v2 .login-header-title{margin:0 0 20px!important;padding:0!important}
  html body.lrf-agent-page.lrf-premium-v2 .login-header-title h1{font-size:1.85rem!important;line-height:1.05!important;margin:0 0 9px!important;white-space:normal!important;transform:none!important;position:static!important}
  html body.lrf-agent-page.lrf-premium-v2 .login-header-title p{font-size:.98rem!important;line-height:1.4!important}
  html body.lrf-agent-page.lrf-premium-v2 .secure-note{margin-bottom:20px!important;padding:13px 14px!important;font-size:.88rem!important;line-height:1.4!important}
  html body.lrf-agent-page.lrf-premium-v2 .form-group{margin-bottom:17px!important}
  html body.lrf-agent-page.lrf-premium-v2 .form-group input{min-height:52px!important;font-size:1rem!important}
  html body.lrf-agent-page.lrf-premium-v2 .form-row{flex-direction:column!important;align-items:flex-start!important;gap:12px!important;margin-bottom:20px!important}
  html body.lrf-agent-page.lrf-premium-v2 .btn-login-submit{min-height:54px!important;font-size:1rem!important}
}

@media(max-width:430px){
  html body.lrf-premium-v2.lrf-premium-v2 header nav ul.main-nav{width:90vw!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-content h2{font-size:1.75rem!important}
  html body.lrf-page-index.lrf-premium-v2 .hero-content p{font-size:.94rem!important}
  html body.lrf-agent-page.lrf-premium-v2 .login-wrapper{padding:22px 16px!important}
  body main:has(.realisations-filters){padding-top:18px!important}
  body main:has(.realisations-filters)>.container>h1{font-size:2.05rem!important;margin-bottom:.5rem!important}
  body main:has(.realisations-filters)>.container>p{font-size:.92rem!important;line-height:1.32!important;margin-bottom:.8rem!important}
  body .realisations-filters{gap:.36rem!important;margin-bottom:.85rem!important}
  body .realisations-filters .btn{font-size:.73rem!important;padding:.43rem .62rem!important;min-height:34px!important}
  body .realisation-card{min-height:300px!important}
}
