.site-header { position: absolute; z-index: 100; top: 0; left: 0; width: 100%; border-bottom: 1px solid rgba(255,255,255,.04); background: linear-gradient(180deg, rgba(2,4,18,.86), transparent); }
.site-header__inner { display: grid; min-height: 104px; grid-template-columns: 200px 1fr auto; align-items: center; gap: 20px; }
.brand { display: inline-flex; align-items: center; gap: 11px; width: max-content; }
.brand__mark { display: grid; width: 55px; aspect-ratio: 1; place-items: center; border: 2px solid var(--az-orange); border-radius: 14px 14px 26px 26px; background: radial-gradient(circle at 50% 85%, #ffd500, #ec3200 48%, #780041); box-shadow: 0 0 20px rgba(255,84,0,.38); transform: rotate(45deg); }
.brand__mark span { font-family: var(--az-font-display); font-size: 21px; font-weight: 900; transform: rotate(-45deg); }
.brand__name { display: grid; line-height: 1; }
.brand__name strong { font-family: var(--az-font-display); font-size: 1.56rem; letter-spacing: .025em; }
.brand__name small { margin-top: 6px; color: var(--az-orange); font-size: .7rem; font-weight: 900; letter-spacing: .42em; }
.primary-nav .menu { display: flex; justify-content: center; gap: clamp(18px, 2.3vw, 42px); }
.primary-nav .menu > li { position: relative; }
.primary-nav a { position: relative; padding-block: 14px; font-family: var(--az-font-display); font-size: .76rem; font-weight: 600; letter-spacing: .065em; text-transform: uppercase; }
.primary-nav a::after { position: absolute; right: 50%; bottom: 6px; left: 50%; height: 1px; content: ""; background: linear-gradient(90deg, var(--az-orange), var(--az-pink)); box-shadow: 0 0 7px var(--az-pink); transition: inset .2s ease; }
.primary-nav a:hover::after,
.primary-nav .current-menu-item > a::after,
.primary-nav .current-menu-parent > a::after,
.primary-nav .current-menu-ancestor > a::after,
.primary-nav .current_page_item > a::after,
.primary-nav .current_page_parent > a::after,
.primary-nav a[aria-current="page"]::after { right: 0; left: 0; }
.primary-nav .sub-menu { position: absolute; top: calc(100% - 2px); right: auto; left: 50%; z-index: 4; display: grid; min-width: 220px; justify-items: stretch; gap: 2px; padding: 10px; border: 1px solid rgba(121, 84, 255, .5); visibility: hidden; opacity: 0; background: rgba(4, 6, 25, .98); box-shadow: 0 16px 32px rgba(0, 0, 0,.4), 0 0 18px rgba(97, 51, 225, .16); text-align: center; transform: translate(-50%, 8px); transition: opacity .18s ease, visibility .18s ease, transform .18s ease; }
.primary-nav .sub-menu .sub-menu { top: 0; left: calc(100% + 8px); transform: translate(0, 8px); }
.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu { visibility: visible; opacity: 1; transform: translate(-50%, 0); }
.primary-nav .sub-menu li:hover > .sub-menu,
.primary-nav .sub-menu li:focus-within > .sub-menu { transform: translate(0, 0); }
.primary-nav .sub-menu a { display: block; padding: 10px 12px; text-align: center; white-space: nowrap; }
.primary-nav__submenu-toggle { display: none; }
.header-actions { display: flex; align-items: center; gap: 9px; }
.header-actions__menu { display: flex; align-items: center; gap: 10px; }
.header-actions .button { border-color: rgba(255, 119, 16, .9); background: linear-gradient(105deg, rgba(20, 8, 27, .96), rgba(39, 7, 41, .94)); box-shadow: 0 0 7px rgba(255, 101, 0, .48), 0 0 15px rgba(237, 18, 108, .2), inset 0 0 9px rgba(245,35,112,.08); }
.icon-button, .menu-toggle { display: grid; padding: 0; cursor: pointer; place-items: center; }
.menu-toggle > span { line-height: 0; }
.menu-toggle > span > .icon { display: block; }
.icon-button { width: 44px; height: 44px; min-height: 44px; }
.menu-toggle { display: none; }
.header-account-link { min-height: 44px; gap: 8px; padding-inline: 14px; white-space: nowrap; }
.header-account-link > .icon { width: 17px; height: 17px; }
.header-account-link__avatar { overflow: hidden; display: grid; width: 27px; height: 27px; border-radius: 50%; background: rgba(156,44,255,.18); place-items: center; }
.header-account-link__avatar img { width: 100%; height: 100%; object-fit: cover; }
.header-account-link__avatar .aze-avatar-fallback { display: grid; width: 100%; height: 100%; font-size: .7rem; place-items: center; }
.primary-nav__mobile-actions { display: none; }

.site-search-dialog:not([open]) { display: none; }
.site-search-dialog { position: fixed; z-index: 100000; width: min(calc(100% - 32px), 680px); max-width: none; padding: clamp(28px, 5vw, 54px); color: var(--az-text); border-color: rgba(146, 79, 255, .72); background: radial-gradient(circle at 90% 0, rgba(135,43,255,.2), transparent 36%), linear-gradient(145deg, rgba(12,14,48,.99), rgba(3,5,22,.99)); box-shadow: 0 35px 120px rgba(0,0,0,.72), 0 0 42px rgba(111,48,255,.16); }
.site-search-dialog::backdrop { background: rgba(2,4,18,.86); backdrop-filter: blur(9px); }
.site-search-dialog__controls { display: flex; justify-content: flex-end; margin-bottom: clamp(18px, 3vw, 28px); }
.site-search-dialog__close { position: static; display: grid; width: 44px; min-width: 44px; height: 44px; min-height: 44px; flex: 0 0 44px; margin: 0; padding: 0; line-height: 0; place-items: center; }
.site-search-dialog__close .icon { display: block; width: 18px; height: 18px; }
.site-search-form h2 { margin: 8px 0 12px; font-size: clamp(2rem, 5vw, 3.5rem); }
.site-search-form > p { margin-bottom: 25px; color: var(--az-muted); }
.site-search-form__field { display: grid; grid-template-columns: 24px minmax(0,1fr); align-items: center; gap: 11px; margin-bottom: 15px; padding: 0 16px; border: 1px solid rgba(255,255,255,.16); background: rgba(1,3,16,.75); }
.site-search-form__field:focus-within { border-color: var(--az-orange); box-shadow: 0 0 0 3px rgba(255,121,24,.11); }
.site-search-form__field .icon { color: var(--az-orange); }
.site-search-form__field input { width: 100%; min-height: 58px; padding: 0; color: #fff; border: 0; outline: 0; background: transparent; }
.site-search-form__field input::placeholder { color: #898da7; }
.site-search-form > .button { width: 100%; }
body.search-dialog-open { overflow: hidden; }
.hero { position: relative; overflow: hidden; min-height: 820px; padding-top: 132px; }
.az-responsive-picture { display: contents; }
.hero__background { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.hero::before { position: absolute; z-index: 1; inset: 0; content: ""; background: linear-gradient(90deg, rgba(3,6,25,.64) 0%, rgba(3,6,25,.38) 28%, transparent 52%), linear-gradient(180deg, rgba(2,4,18,.2) 0%, transparent 22%, transparent 82%, rgba(3,6,25,.72) 100%); }
.hero__noise { position: absolute; z-index: 1; inset: 0; opacity: .2; background: repeating-linear-gradient(132deg, transparent 0 110px, rgba(78, 66, 255, .18) 111px, transparent 112px 178px); mask-image: linear-gradient(90deg, transparent 5%, #000 45%, #000 90%, transparent); }
.hero__inner { position: relative; z-index: 2; display: grid; min-height: 670px; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 28px; }
.hero__content { position: relative; z-index: 2; max-width: 720px; padding-bottom: 40px; }
.hero h1 { display: grid; gap: 2px; margin-bottom: 24px; font-size: clamp(3.2rem, 7vw, 6.5rem); font-weight: 800; line-height: .94; letter-spacing: -.025em; text-shadow: 0 4px 0 rgba(0,0,0,.2); }
.hero h1 span, .hero h1 strong { display: block; white-space: nowrap; }
.hero h1 strong { color: transparent; background: linear-gradient(90deg, #ff9c00 3%, #fa2f22 36%, #f31387 74%, #c523d7); background-clip: text; -webkit-background-clip: text; }
.hero__content > p { max-width: 560px; color: #b9bbce; font-size: clamp(1rem, 1.3vw, 1.2rem); }
.hero__actions { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 34px; }
.social-row { display: flex; align-items: center; gap: 19px; min-height: 32px; margin-top: 30px; }
.social-row__link { display: grid; width: 30px; height: 30px; color: #aeb4cf; filter: drop-shadow(0 0 6px currentColor); place-items: center; transition: color .2s ease, transform .2s ease; }
.social-row__link:hover { color: #fff; transform: translateY(-2px) scale(1.08); }
.social-row__link--discord { color: #6675ff; }.social-row__link--x { color: #25b9f2; }.social-row__link--twitch { color: #b14cff; }.social-row__link--steam { color: #70b9ff; }.social-row__link--youtube { color: #ff194f; }.social-row__link--dailymotion { color: #18a9ff; }
.social-icon { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }.social-icon--brand { fill: currentColor; stroke: none; }
.hero__visual { position: relative; display: grid; min-height: 640px; place-items: center; }
.stats-section { position: relative; z-index: 4; margin-top: -44px; }
.stats { display: grid; min-height: 152px; grid-template-columns: repeat(4, 1fr); align-items: center; padding: 24px 28px; }
.stat { display: grid; min-height: 92px; grid-template-columns: 58px 1fr; align-items: center; gap: 16px; padding-inline: 24px; border-right: 1px solid rgba(255,255,255,.1); }
.stat:last-child { border: 0; }
.stat__icon { display: grid; width: 48px; height: 48px; color: var(--az-orange); filter: drop-shadow(0 0 8px currentColor); place-items: center; }
.stat__icon > .icon { width: 48px; height: 48px; }
.stat--2 .stat__icon { color: var(--az-purple); }.stat--3 .stat__icon { color: var(--az-cyan); }.stat--4 .stat__icon { color: var(--az-pink); }
.stat__icon--brands { width: 54px; grid-template-columns: repeat(2, 1fr); gap: 5px; }
.stat__icon--brands .social-icon { width: 25px; height: 25px; }
.stat div { display: grid; }.stat strong { font-family: var(--az-font-display); font-size: 2rem; line-height: 1; }.stat span { margin-top: 7px; font-size: .72rem; font-weight: 600; text-transform: uppercase; }.stat small { margin-top: 6px; color: var(--az-muted); font-size: .69rem; }
.section-intro-row { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 30px; }
.section-heading {
  min-width: 0;
  flex: 1 1 auto;
}
.section-heading h2 { margin-bottom: 10px; font-size: clamp(2rem, 3vw, 3.2rem); }.section-heading p { max-width: min(760px, 100%); margin: 0; color: var(--az-muted); }
.community-section { padding-block: 16px 12px; }
.community-section > .container { display: grid; grid-template-columns: minmax(210px, .28fr) minmax(0, 1fr); align-items: stretch; gap: 18px; }
.community-section .section-intro-row { align-self: center; margin: 0; }
.community-section .eyebrow { margin-bottom: 5px; font-size: .62rem; }
.community-section .section-heading h2 { margin: 0; font-size: clamp(1.35rem, 1.8vw, 1.85rem); line-height: .98; }
.community-section .section-heading p { display: none; }
.community-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, .75fr)); gap: 9px; align-items: stretch; }
.association-card { grid-row: auto; }
.team-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.content-panels { padding-top: 20px; }.content-panels__grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 24px; }.event-panel, .news-panel { padding: 26px; }
.panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 22px; }.panel-heading h2 { display: flex; align-items: center; gap: 12px; margin: 0; font-size: 1.45rem; font-weight: 600; }.panel-heading h2 .icon { color: var(--az-pink); }.panel-heading a { color: #aa91ff; font-size: .68rem; font-weight: 600; text-transform: uppercase; }
.join-grid { display: grid; grid-template-columns: 2.1fr .9fr; gap: 24px; }.partners-section { padding: 12px 0 50px; }
/* Rythme compact partagé par l'accueil et les pages éditoriales : deux demi-espaces forment l'intervalle entre sections. */
body.home #main > .section,
body.page-template-page-community #main > .section,
body.page-template-page-teamspeak #main > .section,
body.page-template-page-association #main > .section,
body.page-template-page-games #main > .section,
body.single-az_event #main > .section { padding-block: 20px; }
body.home #main > .stats-section { padding-bottom: 20px; }
body.home #main > .partners-section { padding-top: 20px; }
.content-page { min-height: 70vh; padding-block: 170px 90px; }.page-header { margin-bottom: 40px; }.page-header h1, .prose h1 { font-size: clamp(2.5rem, 5vw, 5rem); }.post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }.prose { max-width: 920px; padding: clamp(25px, 5vw, 70px); margin-inline: auto; }.prose > img { width: 100%; margin-block: 32px; }.empty-state { padding: 80px; text-align: center; }.empty-state p { color: var(--az-muted); }
.association-page { overflow: hidden; }
.association-hero { position: relative; overflow: hidden; display: grid; min-height: 720px; padding-top: 105px; align-items: center; }
.association-hero__image { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.association-hero__overlay { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(3,6,25,.94) 0%, rgba(3,6,25,.76) 31%, rgba(3,6,25,.18) 58%, rgba(3,6,25,.08) 100%), linear-gradient(180deg, rgba(2,4,18,.18) 0%, transparent 65%, var(--az-bg) 100%); }
.association-hero__inner { position: relative; z-index: 2; display: grid; min-height: 600px; align-items: center; }
.association-hero__content { max-width: 760px; padding-block: 70px; }
.association-hero h1 { display: grid; gap: 5px; margin-bottom: 26px; font-size: clamp(3.5rem, 6.2vw, 6.5rem); line-height: .92; letter-spacing: -.02em; }
.association-hero h1 span, .association-hero h1 strong { display: block; }
.association-hero h1 strong { color: transparent; background: linear-gradient(90deg, #ff9c00, #f23432 45%, #e31693 82%); background-clip: text; -webkit-background-clip: text; font-size: .74em; white-space: nowrap; }
.association-hero__content > p { max-width: 650px; color: #c4c7d7; font-size: clamp(1rem, 1.3vw, 1.2rem); }
.association-hero__facts { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 32px; }
.association-story__grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(35px, 6vw, 85px); }
.association-values-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.association-cta { display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 50px; padding: clamp(30px, 5vw, 62px); }
.association-cta__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 14px; }
.games-section { padding-top: 46px; }
.game-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.games-catalogue .game-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.games-section .game-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.inner-hero { position: relative; overflow: hidden; display: grid; min-height: 590px; padding-top: 105px; align-items: center; }
.inner-hero::before { position: absolute; z-index: 0; inset: 0; content: ""; background: radial-gradient(circle at 76% 34%, rgba(244,17,114,.3), transparent 9%), radial-gradient(circle at 82% 40%, rgba(79,45,255,.25), transparent 28%), linear-gradient(120deg, rgba(3,6,25,.98) 0 48%, rgba(14,8,48,.78) 70%, rgba(3,6,25,.95)); }
.inner-hero::after { position: absolute; z-index: 0; right: -8vw; bottom: -27vw; width: 60vw; aspect-ratio: 1; border: 1px solid rgba(245,29,133,.34); content: ""; box-shadow: inset 0 0 80px rgba(115,38,255,.13), 0 0 45px rgba(244,17,114,.12); transform: rotate(45deg); }
.inner-hero__content { position: relative; z-index: 1; max-width: 850px; padding-block: 80px; }
.inner-hero h1 { display: grid; margin-bottom: 24px; font-size: clamp(3.4rem, 6.5vw, 6.7rem); line-height: .9; }
.inner-hero h1 strong { color: transparent; background: linear-gradient(90deg, #ff9c00, #f23432 45%, #e31693 82%); background-clip: text; -webkit-background-clip: text; font-size: .72em; }
.inner-hero p { max-width: 650px; color: #c1c4d5; font-size: clamp(1rem, 1.3vw, 1.2rem); }
.inner-hero__facts { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
.inner-hero--games { min-height: 700px; isolation: isolate; }
.inner-hero--games .inner-hero__image { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; opacity: var(--games-hero-image-opacity, 1); object-fit: cover; object-position: center; }
.inner-hero--games::before { z-index: 1; background: linear-gradient(90deg, rgba(3, 6, 25, .98) 0%, rgba(3, 6, 25, .93) 29%, rgba(3, 6, 25, .54) 52%, rgba(3, 6, 25, .12) 76%, rgba(3, 6, 25, .18) 100%), linear-gradient(180deg, rgba(3, 6, 25, .18), transparent 64%, var(--az-bg)); }
.inner-hero--games::after { z-index: 1; opacity: .42; }
.inner-hero--games > .az-motion-path { z-index: 2; }
.inner-hero--games .inner-hero__content { z-index: 3; max-width: none; }
.inner-hero--games .inner-hero__copy { max-width: 720px; }
.games-open { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: clamp(30px, 5vw, 62px); }
.games-open h2 { margin-bottom: 12px; font-size: clamp(2rem, 3vw, 3.2rem); }
.games-open p { max-width: 690px; margin: 0; color: #b6b9cc; }
.community-page { overflow: hidden; }
.community-hero { position: relative; overflow: hidden; display: grid; min-height: 700px; padding-top: 105px; align-items: center; }
.community-hero__image { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.community-hero__overlay { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(3,6,25,.97) 0%, rgba(3,6,25,.83) 35%, rgba(3,6,25,.24) 67%, rgba(3,6,25,.06)), linear-gradient(180deg, rgba(3,6,25,.15), transparent 62%, var(--az-bg)); }
.community-hero__inner { position: relative; z-index: 2; display: grid; min-height: 590px; align-items: center; }
.community-hero__content { max-width: 730px; padding-block: 70px; }
.community-hero h1 { display: grid; margin-bottom: 25px; font-size: clamp(3.5rem, 6.5vw, 6.6rem); line-height: .91; }
.community-hero h1 strong { color: transparent; background: linear-gradient(90deg, #ff9c00, #f23432 45%, #e31693 82%); background-clip: text; -webkit-background-clip: text; }
.community-hero__content > p { max-width: 630px; color: #c4c7d7; font-size: clamp(1rem, 1.3vw, 1.2rem); }

/* Keep deferred decorative paths outside the document flow before their full stylesheet loads. */
.az-motion-path { position: absolute; opacity: 0; pointer-events: none; }
.community-benefit-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
