/* SkyloreFR.eu — Version 1.4.4 */
/* Menu Skylore — mobile first */
.menuwrap{
  position:fixed;
  z-index:300;
  top:0;
  left:0;
  width:100%;
  padding:8px 6px;
  font-family:Georgia, 'Times New Roman', serif;
  background:linear-gradient(180deg, rgba(12,16,13,.72), rgba(12,16,13,.34) 70%, rgba(12,16,13,0));
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.menuwrap__inner{
  width:100%;
  min-height:48px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:6px;
  padding:5px;
  border:1px solid rgba(199,155,69,.36);
  border-radius:14px;
  background:linear-gradient(180deg, rgba(255,255,255,.30), rgba(251,247,238,.14));
  box-shadow:0 12px 30px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,255,255,.18);
}

.cascade-nav{position:relative;flex:0 0 auto;}
.menuwrap__separator{width:1px;height:32px;flex:0 0 1px;background:linear-gradient(180deg, transparent, rgba(199,155,69,.82), transparent);}

.menuwrap__brand,
.menuwrap__langs,
.cascade-toggle{
  min-height:40px;
  display:flex;
  align-items:center;
  color:#173756;
  background:linear-gradient(180deg, rgba(255,255,255,.76), rgba(251,247,238,.50));
  border:1px solid rgba(199,155,69,.58);
  border-radius:13px;
  box-shadow:0 10px 22px rgba(23,55,86,.10), inset 0 0 0 1px rgba(255,255,255,.60);
}

.menuwrap__brand{
  flex:1 1 auto;
  min-width:0;
  padding:6px 8px;
  font-size:clamp(.96rem, 4.8vw, 1.35rem);
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
}

.menuwrap__langs{
  flex:0 0 auto;
  justify-content:center;
  gap:3px;
  padding:6px 5px;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.035em;
}

.menuwrap__lang{color:#173756;text-decoration:none;padding:4px 2px;border-radius:8px;}
.menuwrap__lang:hover,.menuwrap__lang:focus-visible,.menuwrap__lang.is-active{color:#b6842f;outline:none;}

.cascade-toggle{
  min-width:76px;
  justify-content:center;
  gap:6px;
  padding:7px 8px;
  cursor:pointer;
  text-transform:uppercase;
  font-weight:700;
  font-size:.70rem;
  letter-spacing:.065em;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease;
}

.cascade-toggle:hover,.cascade-toggle:focus-visible,.cascade-toggle[aria-expanded="true"]{
  transform:translateY(-1px);
  background:linear-gradient(180deg, rgba(255,255,255,.86), rgba(251,247,238,.60));
  box-shadow:0 14px 28px rgba(23,55,86,.14), 0 0 16px rgba(69,186,255,.16), inset 0 0 0 1px rgba(255,255,255,.70);
  outline:2px solid rgba(69,186,255,.36);
  outline-offset:2px;
}

.cascade-toggle__icon,.cascade-toggle__icon::before,.cascade-toggle__icon::after{width:15px;height:2px;display:block;border-radius:99px;background:#b6842f;transition:transform .24s ease, opacity .18s ease, background .22s ease;}
.cascade-toggle__icon{position:relative;}
.cascade-toggle__icon::before,.cascade-toggle__icon::after{content:"";position:absolute;left:0;}
.cascade-toggle__icon::before{top:-5px;}.cascade-toggle__icon::after{top:5px;}
.cascade-toggle[aria-expanded="true"] .cascade-toggle__icon{transform:rotate(45deg);background:#173756;}
.cascade-toggle[aria-expanded="true"] .cascade-toggle__icon::before{transform:translateY(5px) rotate(90deg);background:#173756;}
.cascade-toggle[aria-expanded="true"] .cascade-toggle__icon::after{opacity:0;transform:translateY(-5px) rotate(90deg);}

.cascade-menu{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  width:calc(100vw - 20px);
  max-width:260px;
  max-height:calc(100vh - 86px);
  overflow-y:auto;
  padding:8px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(-18px) scale(.98);
  transform-origin:top left;
  background:linear-gradient(180deg, rgba(16,44,69,.96), rgba(23,55,86,.94));
  border:1px solid rgba(232,207,155,.68);
  border-radius:16px;
  box-shadow:0 18px 40px rgba(8,22,35,.34), inset 0 0 0 1px rgba(255,255,255,.12);
  backdrop-filter:blur(18px) saturate(1.08);
  -webkit-backdrop-filter:blur(18px) saturate(1.08);
  transition:opacity .24s ease, transform .28s ease, visibility .24s ease;
}
.cascade-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0) scale(1);}

.cascade-list,.cascade-submenu,.cascade-submenu ul{margin:0;padding:0;list-style:none;}
.cascade-list{display:grid;gap:6px;}.cascade-item,.cascade-submenu li{position:relative;}

.cascade-link,.cascade-submenu a{
  position:relative;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 24px 0 10px;
  color:#173756;
  text-decoration:none;
  text-transform:uppercase;
  font-weight:700;
  letter-spacing:.045em;
  font-size:.70rem;
  border-radius:11px;
  border:1px solid rgba(199,155,69,.28);
  background:linear-gradient(180deg, rgba(255,255,255,.56), rgba(251,247,238,.34));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.32);
}
.cascade-link::after,.cascade-submenu li:has(ul)>a::after{content:"›";position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#b6842f;font-size:1rem;line-height:1;}
.cascade-link:hover,.cascade-link:focus-visible,.cascade-submenu a:hover,.cascade-submenu a:focus-visible,.cascade-item.is-active>.cascade-link,.cascade-submenu li.is-active>a{transform:translateY(-1px);border-color:rgba(199,155,69,.56);background:linear-gradient(180deg, rgba(255,255,255,.70), rgba(251,247,238,.44));box-shadow:inset 0 0 0 2px rgba(69,186,255,.20), 0 0 14px rgba(69,186,255,.10);outline:none;}

.cascade-submenu,.cascade-submenu ul{
  position:static;
  width:auto;
  margin-top:6px;
  margin-left:10px;
  display:none;
  gap:6px;
  padding:8px;
  background:linear-gradient(180deg, rgba(16,44,69,.96), rgba(23,55,86,.94));
  border:1px solid rgba(232,207,155,.58);
  border-radius:14px;
}
.cascade-item.is-active>.cascade-submenu,.cascade-submenu li.is-active>ul{display:grid;}

@media (min-width:390px){
  .menuwrap__brand{font-size:1.08rem;padding-inline:10px;}
  .menuwrap__langs{font-size:.78rem;padding-inline:7px;}
  .cascade-toggle{min-width:82px;font-size:.70rem;}
}

@media (min-width:520px){
  .menuwrap__inner{gap:7px;}
  .cascade-toggle{min-width:94px;min-height:40px;padding:7px 10px;font-size:.78rem;}
  .menuwrap__brand{font-size:clamp(1.06rem, 5.2vw, 1.5rem);}
  .menuwrap__langs{font-size:.86rem;padding-inline:8px;}
  .cascade-menu{width:166px;max-width:none;overflow:visible;}
  .cascade-submenu,.cascade-submenu ul{
    position:absolute;
    top:0;
    left:calc(100% + 6px);
    width:166px;
    margin:0;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateX(-8px) scale(.98);
    transform-origin:top left;
    display:grid;
    background:linear-gradient(180deg, rgba(16,44,69,.97), rgba(23,55,86,.95));
    border:1px solid rgba(232,207,155,.66);
    box-shadow:0 18px 38px rgba(8,22,35,.36), inset 0 0 0 1px rgba(255,255,255,.12);
    backdrop-filter:blur(18px) saturate(1.06);
    -webkit-backdrop-filter:blur(18px) saturate(1.06);
    transition:opacity .18s ease, transform .22s ease, visibility .18s ease;
  }
  .cascade-item:hover>.cascade-submenu,.cascade-item:focus-within>.cascade-submenu,.cascade-item.is-active>.cascade-submenu,.cascade-submenu li:hover>ul,.cascade-submenu li:focus-within>ul,.cascade-submenu li.is-active>ul{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0) scale(1);}
}

@media (min-width:640px){
  .menuwrap{padding:10px;}
  .menuwrap__inner{width:min(100% - 8px, 1536px);min-height:52px;gap:10px;padding:6px;border-radius:16px;}
  .menuwrap__separator{height:36px;}
  .cascade-toggle{min-width:104px;min-height:42px;padding:8px 13px;font-size:.82rem;}
  .menuwrap__brand{min-height:42px;padding:6px 14px;font-size:clamp(1.25rem, 5.8vw, 2.05rem);}
  .menuwrap__langs{min-height:42px;padding:6px 10px;gap:5px;}
  .cascade-menu{top:calc(100% + 10px);width:184px;max-height:calc(100vh - 96px);}
  .cascade-submenu,.cascade-submenu ul{width:184px;left:calc(100% + 10px);}
  .cascade-link,.cascade-submenu a{min-height:38px;font-size:.76rem;padding-left:12px;padding-right:28px;}
}


/* Sous-menus plus opaques + teinte bleu nuit */
.cascade-menu,
.cascade-submenu,
.cascade-submenu ul{
  color:#fbf7ee;
}
.cascade-menu .cascade-link,
.cascade-submenu a{
  color:#fbf7ee;
  border-color:rgba(232,207,155,.34);
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(232,207,155,.08));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.cascade-menu .cascade-link::after,
.cascade-submenu li:has(ul)>a::after{color:#e8cf9b;}
.cascade-menu .cascade-link:hover,
.cascade-menu .cascade-link:focus-visible,
.cascade-submenu a:hover,
.cascade-submenu a:focus-visible,
.cascade-item.is-active>.cascade-link,
.cascade-submenu li.is-active>a{
  color:#ffffff;
  border-color:rgba(232,207,155,.78);
  background:linear-gradient(180deg, rgba(69,186,255,.28), rgba(232,207,155,.15));
  box-shadow:inset 0 0 0 2px rgba(69,186,255,.22), 0 0 18px rgba(69,186,255,.16);
}

/* === v1.2.3 : accueil/cards plus compactes et sans background === */
.card,
.news-card,
.actualite-card,
.home-card,
.guide-card,
.content-card {
    background: transparent !important;
}

.news-grid,
.cards-grid,
.home-news,
.actualites-grid {
    gap: 12px !important;
}

.news-card,
.actualite-card,
.home-card,
.card {
    margin: 10px 0 !important;
    padding: 14px 16px !important;
    min-height: auto !important;
}

.news-card p,
.actualite-card p,
.home-card p,
.card p {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-card h2,
.news-card h3,
.actualite-card h2,
.actualite-card h3,
.home-card h2,
.home-card h3,
.card h2,
.card h3 {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
}

.news-card .btn,
.actualite-card .btn,
.home-card .btn,
.card .btn,
.news-card a.button,
.actualite-card a.button,
.home-card a.button,
.card a.button {
    margin-top: 10px !important;
}

@media (max-width: 640px) {
    .news-card,
    .actualite-card,
    .home-card,
    .card {
        padding: 12px 14px !important;
        margin: 8px 0 !important;
    }
}

/* === v1.2.3 : Decayra, sections lisibles mobile-first === */
.decayra-mechanics-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 16px 0;
}

.decayra-mechanic-card {
    background: transparent;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 14px;
    padding: 14px 16px;
}

.decayra-mechanic-card h2 {
    margin: 0 0 8px;
}

.decayra-mechanic-card p {
    margin: 0;
}

@media (min-width: 760px) {
    .decayra-mechanics-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* === v1.2.5 : correction cards accueil + Decayra === */

/* Accueil : toutes les cards d'actualité ont la même densité */
.home-news .card,
.home-news .news-card,
.home-news .actualite-card,
.actualites-grid .card,
.actualites-grid .news-card,
.actualites-grid .actualite-card,
.news-grid .card,
.news-grid .news-card,
.news-grid .actualite-card {
    width: 100%;
    min-height: 0 !important;
    max-height: none !important;
    padding: 12px 14px !important;
    margin: 8px 0 !important;
    box-sizing: border-box;
    background: transparent !important;
}

.home-news .card h2,
.home-news .card h3,
.home-news .news-card h2,
.home-news .news-card h3,
.actualites-grid .card h2,
.actualites-grid .card h3,
.news-grid .card h2,
.news-grid .card h3 {
    font-size: clamp(1.15rem, 4.8vw, 1.45rem) !important;
    line-height: 1.15 !important;
    margin: 0 0 6px !important;
}

.home-news .card p,
.home-news .news-card p,
.home-news .actualite-card p,
.actualites-grid .card p,
.actualites-grid .news-card p,
.news-grid .card p,
.news-grid .news-card p {
    font-size: clamp(.95rem, 3.8vw, 1rem) !important;
    line-height: 1.45 !important;
    margin: 6px 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.home-news .card .separator,
.home-news .news-card .separator,
.actualites-grid .card .separator,
.news-grid .card .separator {
    margin: 6px 0 !important;
}

/* Decayra : empêche les cards de se coller, de déborder ou de former une grille cassée */
.decayra-grid,
.decayra-mechanics-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 14px 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}

.decayra-box,
.decayra-mechanic-card {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    overflow-wrap: anywhere;
    word-break: normal;
    background: transparent !important;
}

.decayra-box h2,
.decayra-box h3,
.decayra-mechanic-card h2,
.decayra-mechanic-card h3 {
    margin: 0 0 8px !important;
    line-height: 1.2 !important;
}

.decayra-box p,
.decayra-mechanic-card p {
    margin: 0 !important;
    line-height: 1.45 !important;
}

@media (min-width: 760px) {
    .decayra-grid,
    .decayra-mechanics-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 1080px) {
    .decayra-grid,
    .decayra-mechanics-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}


/* === v1.3.3 : restauration menu fonctionnel === */
.menuwrap {
    z-index: 2147483000 !important;
    overflow: visible !important;
}

.menuwrap__inner,
.cascade-nav {
    overflow: visible !important;
}

.cascade-menu {
    z-index: 2147483001 !important;
}

.cascade-menu.is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

.cascade-item.is-active > .cascade-submenu,
.cascade-submenu li.is-active > ul {
    display: grid !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}
