/* ===================================================== */
/* LS ATELIER — CSS COMPLET FINAL V15 */
/* ===================================================== */

:root{
  --ls-bg:#08090d;
  --ls-surface:#11131a;
  --ls-surface-2:#171a24;
  --ls-text:#f7f7f9;
  --ls-muted:#b8bcc8;
  --ls-red:#e30613;
  --ls-blue:#60a5fa;
  --ls-blue-menu:#2563eb;
  --ls-green:#20b455;
  --ls-orange:#f97316;
  --ls-asus:#444b5c;
  --ls-border:rgba(255,255,255,.10);
  --ls-radius:20px;
}

html{scroll-behavior:smooth;}

body{
  background:var(--ls-bg)!important;
  color:var(--ls-text)!important;
  font-family:Arial,Helvetica,sans-serif;
  overflow-x:hidden;
}

a{
  color:var(--ls-red);
  text-decoration:none;
  transition:.2s ease;
}

a:hover{color:#fff;}

/* HEADER */
.site-header,
.wp-site-blocks > header{
  background:#08090d!important;
  background-image:none!important;
  border-bottom:1px solid var(--ls-border)!important;
  box-shadow:none!important;
}

/* MENU DESKTOP */
.wp-block-navigation,
.wp-block-navigation ul,
.wp-block-navigation li{
  background:transparent!important;
}

.wp-block-navigation a,
.wp-block-navigation button,
nav a,
nav button{
  color:#fff!important;
  font-weight:900!important;
  border:none!important;
  border-radius:999px!important;
  padding:.65rem 1rem!important;
  transition:.2s ease;
  text-transform:uppercase;
}

.wp-block-navigation a:hover,
.wp-block-navigation button:hover,
nav a:hover,
nav button:hover{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
}

.wp-block-navigation__submenu-container{
  background:#050609!important;
  border:1px solid var(--ls-border)!important;
  border-radius:20px!important;
  padding:8px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.45)!important;
}

.wp-block-navigation__submenu-container a,
.wp-block-navigation__submenu-container button{
  border-radius:999px!important;
  margin:4px 0!important;
  color:#fff!important;
  font-weight:900!important;
}

/* COULEURS MENU */
.wp-block-navigation button[aria-label*="Sony"],
.wp-block-navigation button[aria-label*="SONY"],
.wp-block-navigation a[href*="sony"],
.wp-block-navigation a[href*="playstation"],
.wp-block-navigation a[href*="ps5"],
.wp-block-navigation a[href*="ps4"],
.wp-block-navigation a[href*="ps-vita"],
.wp-block-navigation a[href*="psp"],
.wp-block-navigation a[href*="ps-portal"],
.wp-block-navigation a[href*="portal"]{
  background:var(--ls-red)!important;
  color:#fff!important;
}

.wp-block-navigation button[aria-label*="Nintendo"],
.wp-block-navigation button[aria-label*="NINTENDO"],
.wp-block-navigation a[href*="nintendo"],
.wp-block-navigation a[href*="switch"],
.wp-block-navigation a[href*="3ds"],
.wp-block-navigation a[href*="gameboy"],
.wp-block-navigation a[href*="gamecube"]{
  background:var(--ls-blue-menu)!important;
  color:#fff!important;
}

.wp-block-navigation button[aria-label*="Microsoft"],
.wp-block-navigation button[aria-label*="MICROSOFT"],
.wp-block-navigation a[href*="microsoft"],
.wp-block-navigation a[href*="xbox"]{
  background:var(--ls-green)!important;
  color:#fff!important;
}

.wp-block-navigation button[aria-label*="Asus"],
.wp-block-navigation button[aria-label*="ASUS"],
.wp-block-navigation a[href*="asus"],
.wp-block-navigation a[href*="rog-ally"]{
  background:var(--ls-asus)!important;
  color:#fff!important;
}

.wp-block-navigation button[aria-label*="Sega"],
.wp-block-navigation button[aria-label*="SEGA"],
.wp-block-navigation a[href*="sega"],
.wp-block-navigation a[href*="dreamcast"],
.wp-block-navigation a[href*="game-gear"]{
  background:var(--ls-orange)!important;
  color:#fff!important;
}

/* CONTENU */
main{
  background:
    radial-gradient(circle at top left,rgba(227,6,19,.14),transparent 34%),
    linear-gradient(180deg,#0b0d13 0%,#08090d 100%);
}

.entry-content,
.wp-site-blocks main > *{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
}

/* TITRES */
h1,h2{
  color:var(--ls-blue)!important;
  letter-spacing:-.035em;
}

h3,h4{
  color:#fff!important;
  letter-spacing:-.035em;
}

h1{
  font-size:clamp(2rem,4vw,3.4rem)!important;
  line-height:1.08!important;
}

h2{
  font-size:clamp(1.55rem,3vw,2.5rem)!important;
  line-height:1.15!important;
}

h3{
  font-size:clamp(1.25rem,2vw,1.75rem)!important;
}

p,li{
  color:var(--ls-muted);
  font-size:1.04rem;
  line-height:1.72;
}

strong{color:#fff;}

/* CARTES SOMBRES */
.entry-content .wp-block-column{
  background:linear-gradient(180deg,var(--ls-surface),var(--ls-surface-2));
  border:1px solid var(--ls-border);
  border-radius:var(--ls-radius);
  padding:24px;
  box-shadow:0 18px 45px rgba(0,0,0,.28);
  transition:.25s ease;
}

.entry-content .wp-block-column:hover{
  transform:translateY(-2px);
}

/* BLOCS BLANCS */
.entry-content .wp-block-column.has-background,
.entry-content .wp-block-group.has-background,
.entry-content .has-white-background-color,
.entry-content [class*="white-background"],
.entry-content [style*="background-color:#fff"],
.entry-content [style*="background-color: #fff"],
.entry-content [style*="background-color:#ffffff"],
.entry-content [style*="background-color: #ffffff"],
.entry-content [style*="background:#fff"],
.entry-content [style*="background: #fff"],
.entry-content [style*="background:#ffffff"],
.entry-content [style*="background: #ffffff"],
.entry-content [style*="background-color:white"],
.entry-content [style*="background-color: white"],
.entry-content [style*="background:white"],
.entry-content [style*="background: white"]{
  color:#111827!important;
}

.entry-content .wp-block-column.has-background *,
.entry-content .wp-block-group.has-background *,
.entry-content .has-white-background-color *,
.entry-content [class*="white-background"] *,
.entry-content [style*="background-color:#fff"] *,
.entry-content [style*="background-color: #fff"] *,
.entry-content [style*="background-color:#ffffff"] *,
.entry-content [style*="background-color: #ffffff"] *,
.entry-content [style*="background:#fff"] *,
.entry-content [style*="background: #fff"] *,
.entry-content [style*="background:#ffffff"] *,
.entry-content [style*="background: #ffffff"] *,
.entry-content [style*="background-color:white"] *,
.entry-content [style*="background-color: white"] *,
.entry-content [style*="background:white"] *,
.entry-content [style*="background: white"] *{
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
  text-shadow:none!important;
}

/* TITRES DES BLOCS TARIFS BLANCS */
.entry-content .wp-block-column:has(p[style*="#10b981"]) h1,
.entry-content .wp-block-column:has(p[style*="#10b981"]) h2,
.entry-content .wp-block-column:has(p[style*="#10b981"]) h3,
.entry-content .wp-block-column:has(p[style*="#10b981"]) h4,
.entry-content .wp-block-column:has(p[style*="#10b981"]) h5,
.entry-content .wp-block-column:has(p[style*="#10b981"]) h6,
.entry-content .wp-block-group:has(p[style*="#10b981"]) h1,
.entry-content .wp-block-group:has(p[style*="#10b981"]) h2,
.entry-content .wp-block-group:has(p[style*="#10b981"]) h3,
.entry-content .wp-block-group:has(p[style*="#10b981"]) h4,
.entry-content .wp-block-group:has(p[style*="#10b981"]) h5,
.entry-content .wp-block-group:has(p[style*="#10b981"]) h6{
  color:#020617!important;
  -webkit-text-fill-color:#020617!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:none!important;
}

.entry-content .wp-block-column:has(p[style*="#10b981"]) strong,
.entry-content .wp-block-group:has(p[style*="#10b981"]) strong,
.entry-content .wp-block-column.has-background strong,
.entry-content .wp-block-group.has-background strong{
  color:#020617!important;
  -webkit-text-fill-color:#020617!important;
  font-weight:900!important;
}

.entry-content p[style*="color: #6b7280"],
.entry-content p[style*="color:#6b7280"],
.entry-content p[style*="#6b7280"]{
  color:#374151!important;
  -webkit-text-fill-color:#374151!important;
}

.entry-content p[style*="color: #10b981"],
.entry-content p[style*="color:#10b981"],
.entry-content p[style*="#10b981"],
.entry-content .has-vivid-green-cyan-color{
  color:#10b981!important;
  -webkit-text-fill-color:#10b981!important;
  font-weight:900!important;
}

/* FORMULAIRE CONTACT BLEU CLAIR */
.entry-content div[style*="background: #f0f9ff"],
.entry-content div[style*="background:#f0f9ff"],
.entry-content div[style*="background-color: #f0f9ff"],
.entry-content div[style*="background-color:#f0f9ff"]{
  color:#0f172a!important;
}

.entry-content div[style*="background: #f0f9ff"] *,
.entry-content div[style*="background:#f0f9ff"] *,
.entry-content div[style*="background-color: #f0f9ff"] *,
.entry-content div[style*="background-color:#f0f9ff"] *{
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
}

.entry-content div[style*="background: #f0f9ff"] h2,
.entry-content div[style*="background:#f0f9ff"] h2,
.entry-content div[style*="background-color: #f0f9ff"] h2,
.entry-content div[style*="background-color:#f0f9ff"] h2{
  color:#0c4a6e!important;
  -webkit-text-fill-color:#0c4a6e!important;
}

.entry-content div[style*="background: #f0f9ff"] input,
.entry-content div[style*="background:#f0f9ff"] input,
.entry-content div[style*="background-color: #f0f9ff"] input,
.entry-content div[style*="background-color:#f0f9ff"] input,
.entry-content div[style*="background: #f0f9ff"] textarea,
.entry-content div[style*="background:#f0f9ff"] textarea,
.entry-content div[style*="background-color: #f0f9ff"] textarea,
.entry-content div[style*="background-color:#f0f9ff"] textarea{
  background:#fff!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  border:1px solid #cbd5e1!important;
}

.entry-content div[style*="background: #f0f9ff"] button[type="submit"],
.entry-content div[style*="background:#f0f9ff"] button[type="submit"],
.entry-content div[style*="background-color: #f0f9ff"] button[type="submit"],
.entry-content div[style*="background-color:#f0f9ff"] button[type="submit"]{
  background:#1e40af!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* IMAGES */
img{
  max-width:100%;
  height:auto;
}

.entry-content figure,
.entry-content .wp-block-image{
  text-align:center;
}

.entry-content img,
.wp-block-image img{
  display:block;
  max-width:100%;
  height:auto;
  margin-left:auto;
  margin-right:auto;
  border-radius:18px;
}

/* ICÔNES INLINE — évite les icônes géantes sur mobile */
.entry-content p img,
.entry-content li img,
.entry-content h1 img,
.entry-content h2 img,
.entry-content h3 img,
.entry-content h4 img,
.entry-content span img,
.entry-content strong img,
.entry-content .emoji,
.entry-content img.emoji,
.entry-content img.wp-smiley{
  display:inline-block!important;
  width:1.15em!important;
  height:1.15em!important;
  max-width:1.15em!important;
  max-height:1.15em!important;
  min-width:0!important;
  min-height:0!important;
  margin:0 .15em!important;
  vertical-align:-.15em!important;
  border-radius:0!important;
  box-shadow:none!important;
  object-fit:contain!important;
}

/* SVG icônes dans le texte */
.entry-content p svg,
.entry-content li svg,
.entry-content h1 svg,
.entry-content h2 svg,
.entry-content h3 svg,
.entry-content h4 svg,
.entry-content span svg,
.entry-content strong svg{
  width:1.15em!important;
  height:1.15em!important;
  max-width:1.15em!important;
  max-height:1.15em!important;
  vertical-align:-.15em!important;
}

/* BOUTONS */
.wp-block-button__link,
button:not(.wp-block-navigation-submenu__toggle),
input[type="submit"]{
  background:var(--ls-red)!important;
  color:#fff!important;
  border:none!important;
  border-radius:999px!important;
  padding:13px 24px!important;
  font-weight:800!important;
  transition:.2s ease;
}

.wp-block-button__link:hover,
button:not(.wp-block-navigation-submenu__toggle):hover,
input[type="submit"]:hover{
  transform:translateY(-1px);
  filter:brightness(1.1);
}

/* FORMULAIRES GÉNÉRAUX */
input,
textarea,
select{
  background:#10131b!important;
  color:#fff!important;
  border:1px solid var(--ls-border)!important;
  border-radius:12px!important;
  padding:12px!important;
}

input:focus,
textarea:focus,
select:focus{
  outline:none!important;
  border-color:var(--ls-red)!important;
}

/* TABLEAUX */
table{
  background:var(--ls-surface);
  border:1px solid var(--ls-border);
  border-radius:14px;
  overflow:hidden;
}

td,th{
  border-color:var(--ls-border)!important;
  color:var(--ls-muted);
}

/* FOOTER */
footer,
.site-footer{
  background:#050609!important;
  border-top:1px solid var(--ls-border)!important;
  color:var(--ls-muted)!important;
}

/* RESPONSIVE TABLETTE */
@media(max-width:1024px){
  .entry-content,
  .wp-site-blocks main > *{
    max-width:94%;
  }

  .wp-block-columns{
    gap:20px!important;
  }
}

/* MOBILE */
@media(max-width:768px){
  body{
    overflow-x:hidden;
  }

  main{
    padding-left:14px;
    padding-right:14px;
  }

  .entry-content,
  .wp-site-blocks main > *{
    max-width:100%;
    width:100%;
  }

  .wp-block-columns{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
  }

  .wp-block-column{
    flex-basis:100%!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  h1{
    font-size:clamp(1.8rem,8vw,2.45rem)!important;
    text-align:center;
  }

  h2{
    font-size:clamp(1.4rem,6vw,2rem)!important;
    text-align:center;
  }

  h3{
    font-size:clamp(1.2rem,5vw,1.6rem)!important;
  }

  p,li{
    font-size:1rem;
    line-height:1.65;
  }

  .entry-content .wp-block-column{
    padding:18px;
    border-radius:16px;
  }

  .entry-content figure,
  .entry-content .wp-block-image{
    width:100%!important;
    max-width:100%!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .entry-content img,
  .wp-block-image img{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    margin-left:auto!important;
    margin-right:auto!important;
    object-fit:contain;
  }

  /* Re-force les icônes à taille police sur mobile */
  .entry-content p img,
  .entry-content li img,
  .entry-content h1 img,
  .entry-content h2 img,
  .entry-content h3 img,
  .entry-content h4 img,
  .entry-content span img,
  .entry-content strong img,
  .entry-content .emoji,
  .entry-content img.emoji,
  .entry-content img.wp-smiley{
    display:inline-block!important;
    width:1.1em!important;
    height:1.1em!important;
    max-width:1.1em!important;
    max-height:1.1em!important;
    margin:0 .12em!important;
    vertical-align:-.14em!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  .entry-content p svg,
  .entry-content li svg,
  .entry-content h1 svg,
  .entry-content h2 svg,
  .entry-content h3 svg,
  .entry-content h4 svg,
  .entry-content span svg,
  .entry-content strong svg{
    width:1.1em!important;
    height:1.1em!important;
    max-width:1.1em!important;
    max-height:1.1em!important;
  }

  /* MENU MOBILE — GRILLE 2x2 + SOUS-MENUS */
  .wp-block-navigation{
    width:100%!important;
    position:relative!important;
    z-index:9999!important;
  }

  .wp-block-navigation__responsive-container{
    background:#08090d!important;
    color:#fff!important;
  }

  .wp-block-navigation__responsive-container.is-menu-open{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    max-height:100vh!important;
    overflow-y:auto!important;
    padding:72px 16px 28px!important;
    background:
      radial-gradient(circle at top,rgba(227,6,19,.16),transparent 35%),
      #08090d!important;
    z-index:999999!important;
  }

  .wp-block-navigation__responsive-container-content{
    width:100%!important;
    max-width:420px!important;
    margin:0 auto!important;
    padding:0!important;
  }

  .wp-block-navigation__container{
    width:100%!important;
    max-width:420px!important;
    margin:0 auto!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    align-items:start!important;
  }

  .wp-block-navigation-item,
  .wp-block-navigation-submenu{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    text-align:center!important;
  }

  .wp-block-navigation-item__content,
  .wp-block-navigation-submenu__toggle,
  .wp-block-navigation a,
  .wp-block-navigation button{
    width:100%!important;
    min-height:46px!important;
    margin:0!important;
    padding:11px 10px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    text-align:center!important;
    border-radius:14px!important;
    font-size:.86rem!important;
    line-height:1.15!important;
    white-space:normal!important;
  }

  .wp-block-navigation-submenu__toggle[aria-label*="Modification"],
  .wp-block-navigation-submenu__toggle[aria-label*="MODIFICATION"]{
    font-size:0!important;
  }

  .wp-block-navigation-submenu__toggle[aria-label*="Modification"]::before,
  .wp-block-navigation-submenu__toggle[aria-label*="MODIFICATION"]::before{
    content:"MODIF & RETRO";
    font-size:.86rem!important;
    line-height:1.15!important;
  }

  .wp-block-navigation__submenu-icon{
    margin-left:6px!important;
  }

  .wp-block-navigation__submenu-container{
    position:static!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:8px 0 0!important;
    padding:8px!important;
    border-radius:16px!important;
    background:#11131a!important;
    border:1px solid var(--ls-border)!important;
    box-shadow:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:7px!important;
  }

  .wp-block-navigation__submenu-container .wp-block-navigation-item{
    width:100%!important;
  }

  .wp-block-navigation__submenu-container a,
  .wp-block-navigation__submenu-container button{
    width:100%!important;
    min-height:40px!important;
    margin:0!important;
    padding:9px 8px!important;
    justify-content:center!important;
    text-align:center!important;
    border-radius:12px!important;
    font-size:.82rem!important;
  }

  .wp-block-navigation__responsive-container-open,
  .wp-block-navigation__responsive-container-close{
    color:#fff!important;
    background:rgba(255,255,255,.10)!important;
    border-radius:14px!important;
    padding:10px!important;
  }

  .wp-block-navigation__responsive-container-close{
    position:fixed!important;
    top:18px!important;
    right:18px!important;
    z-index:1000000!important;
  }

  .wp-block-button,
  .wp-block-buttons{
    width:100%;
    justify-content:center!important;
  }

  .wp-block-button__link,
  button:not(.wp-block-navigation-submenu__toggle),
  input[type="submit"]{
    width:100%;
    text-align:center;
  }
}

/* PETITS MOBILES */
@media(max-width:480px){
  main{
    padding-left:10px;
    padding-right:10px;
  }

  .entry-content .wp-block-column{
    padding:16px;
  }

  h1{
    font-size:2rem!important;
  }

  h2{
    font-size:1.55rem!important;
  }

  .wp-block-navigation__container{
    gap:8px!important;
  }

  .wp-block-navigation-item__content,
  .wp-block-navigation-submenu__toggle,
  .wp-block-navigation a,
  .wp-block-navigation button{
    font-size:.8rem!important;
    padding:10px 8px!important;
  }

  .wp-block-navigation-submenu__toggle[aria-label*="Modification"]::before,
  .wp-block-navigation-submenu__toggle[aria-label*="MODIFICATION"]::before{
    font-size:.8rem!important;
  }
}