:root{color-scheme:dark;--bg:#080b1d;--surface:#111936;--surface2:#17234a;--line:#344370;--text:#f5f7ff;--muted:#b7c2df;--cyan:#51d5ff;--purple:#ad72ff;--pink:#ff63b9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 80% 5%,#5725a43f,transparent 34%),radial-gradient(circle at 10% 72%,#0c67c331,transparent 35%)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}img{max-width:100%}.container{width:min(1180px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-999px;top:0;background:white;color:black;padding:10px;z-index:20}.skip:focus{left:10px}.banner{background:linear-gradient(95deg,#156eee,#6b2bd3,#c539a5);font-size:.72rem;letter-spacing:.16em;font-weight:800;text-align:center;padding:7px}.header{background:#090e27ed;border-bottom:1px solid #344477;position:sticky;top:0;z-index:10;backdrop-filter:blur(16px)}.header .container{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:16px}.brand{display:flex;align-items:center;gap:9px;font-weight:900;letter-spacing:.07em;white-space:nowrap;font-size:.85rem}.brand img{width:44px;height:44px;border-radius:12px;background:white;object-fit:cover}.nav{display:flex;align-items:center;gap:17px;font-size:.77rem;font-weight:700}.nav a{color:#d1daf6}.nav a:hover,.nav a[aria-current=page]{color:var(--cyan)}.menu-btn{display:none}.button{border:1px solid #6584c7;color:white;background:#1b2b5a;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border-radius:10px;font-size:.85rem;font-weight:800;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px);background:#294384}.button.primary{background:linear-gradient(110deg,#137efa,#813ef2,#c939a7);border:0;box-shadow:0 8px 25px #5d3ce077}.button.ghost{background:transparent}.header .button{font-size:.75rem;white-space:nowrap}.hero{position:relative;overflow:hidden;border-bottom:1px solid #40529a;background:radial-gradient(circle at 78% 50%,#842fce9c,transparent 32%),radial-gradient(circle at 42% 100%,#035ac182,transparent 45%),linear-gradient(125deg,#0a1233,#21114b);min-height:570px;display:flex;align-items:center}.hero:before{content:"";position:absolute;inset:0;opacity:.24;background-image:linear-gradient(#8d92ff55 1px,transparent 1px),linear-gradient(90deg,#8d92ff55 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,transparent,#000)}.hero .container{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:center;padding-block:70px}.hero h1{font-size:clamp(3.4rem,7vw,6.6rem);line-height:.95;letter-spacing:-.07em;margin:16px 0 23px}.hero h1 span,.gradient{background:linear-gradient(90deg,#4adaff,#6688ff,#c273ff,#ff61b7);color:transparent;background-clip:text}.hero p{max-width:600px;color:#d5def6;font-size:1.1rem}.hero-logo{width:min(370px,100%);aspect-ratio:1;object-fit:contain;border-radius:30px;box-shadow:0 0 90px #9447ff77,0 15px 60px #050624;transform:rotate(-4deg);justify-self:center}.eyebrow{font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;font-weight:900;color:#9de5ff}.lead{font-size:1.08rem;color:var(--muted);max-width:760px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:76px 0}.section h2,.pagehead h1{letter-spacing:-.045em;line-height:1.06}.section h2{font-size:clamp(2.1rem,4vw,3.5rem);margin:10px 0 15px}.pagehead{padding:75px 0;background:radial-gradient(circle at 80% 30%,#8a35ca80,transparent 35%),linear-gradient(110deg,#102a67,#231046);border-bottom:1px solid #4a54a3}.pagehead h1{font-size:clamp(2.5rem,5.6vw,5rem);margin:10px 0}.pagehead p{max-width:760px;color:#d3def9;font-size:1.05rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid.two{grid-template-columns:repeat(2,1fr)}.card{border:1px solid #4a58a1;background:linear-gradient(145deg,#18295c,#19143f);border-radius:18px;padding:26px;box-shadow:0 16px 35px #05091b77}.card:nth-child(2n){background:linear-gradient(145deg,#242061,#12355b)}.card h3{font-size:1.3rem;margin:10px 0}.card p,.subtle{color:var(--muted)}.card .label{font-size:.7rem;letter-spacing:.12em;color:#94e5ff;font-weight:900}.card .button{margin-top:12px}.pill{display:inline-block;padding:6px 10px;border-radius:50px;background:#5637a4;color:#eee0ff;font-size:.75rem;font-weight:800}.feature{padding:28px;background:linear-gradient(100deg,#12419b,#46219c 60%,#85218e);border:1px solid #8c74f4;border-radius:20px}.feature h2{margin:5px 0}.feature p{color:#e3dffe}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stats div{padding:19px;border-right:1px solid #5565a3}.stats b{display:block;font-size:1.1rem}.stats span{font-size:.85rem;color:var(--muted)}.form{max-width:710px;display:grid;gap:16px}.form label{display:grid;gap:6px;font-weight:750;font-size:.9rem}.form input,.form select,.form textarea,.input{border:1px solid #6175af;border-radius:10px;background:#101936;color:white;padding:12px 14px;min-height:45px;width:100%}.form textarea{min-height:110px}.form fieldset{border:1px solid #46588d;border-radius:12px;padding:18px}.form legend{font-weight:850}.check{display:flex!important;align-items:flex-start;gap:10px;font-weight:500!important}.check input{width:18px!important;min-height:auto!important;margin-top:4px}.notice{border-left:4px solid var(--cyan);background:#152753;padding:17px;border-radius:7px;margin:20px 0}.notice.error{border-color:#ff7992}.notice.success{border-color:#65e4ad}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.tablewrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;min-width:550px}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #3a4a78}.table th{color:#b1c8ff;font-size:.8rem}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.tabs a{padding:9px 12px;background:#1a2c60;border:1px solid #5673af;border-radius:9px;font-weight:700;font-size:.85rem}.tabs a[aria-current=page]{background:#6540bc}.footer{border-top:1px solid #344572;background:#0b1029;margin-top:65px;padding:42px 0;color:#acb9dc}.footer .container{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer-links{display:flex;gap:13px;flex-wrap:wrap}.footer a:hover{color:var(--cyan)}.social{display:flex;gap:10px;flex-wrap:wrap}.social a{padding:7px 11px;border:1px solid #4f6197;border-radius:8px}.empty{padding:25px;border:1px dashed #6374ac;border-radius:14px;color:#b9c8ec}.hide{display:none!important}#status[role=status]{min-height:1.5rem}.small{font-size:.82rem}hr{border:0;border-top:1px solid #344776;margin:25px 0}@media(max-width:1050px){.nav{gap:9px;font-size:.7rem}.brand span{display:none}}@media(max-width:750px){.menu-btn{display:block;color:white;background:#1b2c62;border:1px solid #6d87c8;border-radius:8px;padding:9px 12px}.nav{display:none;position:absolute;top:76px;left:0;right:0;padding:20px;background:#111a3b;flex-direction:column;align-items:stretch;gap:16px;border-bottom:1px solid #5671aa;font-size:.9rem}.nav.open{display:flex}.brand span{display:inline}.header .button{display:none}.hero .container{grid-template-columns:1fr;padding-block:60px}.hero-logo{width:min(270px,70vw)}.hero{min-height:auto}.grid,.grid.two{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.stats div{border-right:0;border-bottom:1px solid #5565a3}.section{padding:55px 0}.pagehead{padding:50px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Accueil PGP : identité gaming, édition 2 */
.hero-home{min-height:690px;display:block;background:#090e24 url('gaming-ensemble.webp') center right/cover no-repeat;border-bottom:0}
.hero-home:before{inset:0;background:linear-gradient(90deg,#080d24 0%,#080d24f0 23%,#080d24aa 47%,#080d2426 78%),linear-gradient(0deg,#080b1daa,transparent 30%);opacity:1;mask-image:none}
.hero-home .container{display:block;padding-block:112px 80px}
.hero-copy{max-width:650px}
.hero-home h1{font-size:clamp(3.7rem,7.7vw,7.6rem);font-weight:950;line-height:.9;letter-spacing:-.065em;text-wrap:balance;max-width:720px;margin:25px 0 27px;text-shadow:0 5px 35px #080d2499}
.hero-home h1 span{display:block;background:linear-gradient(90deg,#54daff 2%,#aa8cff 57%,#ff69cd);background-clip:text;color:transparent}
.hero-home p{max-width:530px;color:#e2e9ff;font-size:1.15rem;line-height:1.65}
.hero-home .eyebrow{display:inline-flex;align-items:center;gap:12px;background:#10265eaf;border:1px solid #54dfff7d;padding:10px 15px;border-radius:100px;backdrop-filter:blur(8px);letter-spacing:.1em}
.live-dot{width:8px;height:8px;border-radius:50%;background:#5cf9cd;box-shadow:0 0 0 5px #5cf9cd35,0 0 17px #5cf9cd}
.hero-home .actions{margin-top:33px}.hero-home .button{min-height:54px;padding-inline:23px;font-size:.91rem}
.hero-home .button.primary{background:linear-gradient(100deg,#127dff,#7146ec,#ab42e7);box-shadow:0 12px 36px #325cdd88}
.hero-home .button.ghost{background:#0d1735b8;border-color:#9aaee3}
.hero-note{display:flex;align-items:center;gap:13px;margin-top:54px;color:#b9c7ea;font-size:.78rem;line-height:1.4}
.hero-note img{border-radius:10px;background:white;width:42px;height:42px;object-fit:contain}
.hero-note strong{color:white;font-weight:750}
.hero-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:20px;padding:16px max(20px,calc((100% - 1180px)/2));border-top:1px solid #ffffff32;font-size:.7rem;letter-spacing:.2em;font-weight:850;color:#cad7ff}
.ticker{background:linear-gradient(92deg,#0b57e8,#5131cf 55%,#a62aaf);border-block:1px solid #927aff}.ticker .container{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:.78rem;letter-spacing:.15em;font-weight:950}.ticker-star{color:#6eeaff;font-size:1.3rem}
.experiences{padding-top:95px}.experiences .lead{margin-bottom:29px}.experiences .card{padding:0 0 27px;overflow:hidden;transition:transform .2s,box-shadow .2s;border-color:#5569ba}.experiences .card:hover{transform:translateY(-5px);box-shadow:0 24px 45px #04091fbb}.experiences .card>.label,.experiences .card>h3,.experiences .card>p,.experiences .card>a{margin-left:26px;margin-right:26px}.experiences .card h3{font-size:1.6rem;margin-top:8px}.experiences .card p{min-height:75px}.experiences .card>a{display:inline-block;color:#7de9ff;font-weight:850;margin-top:8px}.experiences .card>a:hover{text-decoration:underline}.card-visual{height:158px;display:flex;align-items:flex-start;justify-content:space-between;padding:19px 24px;font-weight:950;color:#e7eaff;font-size:.83rem;letter-spacing:.2em;margin-bottom:24px;position:relative;overflow:hidden}.card-visual:before{content:"";position:absolute;inset:0;opacity:.45;background:repeating-linear-gradient(90deg,transparent 0 46px,#ffffff15 47px 48px),repeating-linear-gradient(0deg,transparent 0 46px,#ffffff13 47px 48px)}.card-visual span{font-size:7.2rem;line-height:1;transform:rotate(-18deg);color:#ffffffd9;text-shadow:0 0 40px #ffffff88}.visual-tournament{background:radial-gradient(circle at 75% 70%,#fb4ad59c,transparent 40%),linear-gradient(130deg,#112d84,#6331c3)}.visual-freeplay{background:radial-gradient(circle at 72% 75%,#6cdbff92,transparent 43%),linear-gradient(130deg,#0e4386,#1384b1)}.visual-community{background:radial-gradient(circle at 80% 75%,#ff89b992,transparent 40%),linear-gradient(130deg,#3f248d,#9a369e)}
@media(max-width:750px){.hero-home{min-height:690px;background-position:62% center}.hero-home:before{background:linear-gradient(90deg,#080d24e8,#080d24ac 60%,#080d2466),linear-gradient(0deg,#080d24 0%,transparent 55%)}.hero-home .container{padding-block:76px 100px}.hero-home h1{font-size:clamp(3.55rem,12vw,5.8rem)}.hero-home p{font-size:1rem}.hero-home .eyebrow{font-size:.62rem}.hero-note{margin-top:38px}.hero-bottom{font-size:.57rem;letter-spacing:.08em}.hero-bottom span:last-child{max-width:160px;text-align:right}.ticker .container{justify-content:center;flex-wrap:wrap;padding-block:13px;gap:7px 13px;font-size:.64rem}.ticker span:nth-last-child(-n+4){display:none}.experiences{padding-top:65px}.experiences .card p{min-height:0}}

/* Pages publiques : image, relief et contenu utile */
.pagehead{position:relative;isolation:isolate;overflow:hidden;min-height:380px;display:flex;align-items:center;background:#101b49 url('tournoi-ambiance.webp') center 42%/cover no-repeat;border-bottom:1px solid #5268b5}
.pagehead:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0a1234 1%,#0a1234ed 30%,#0a12348a 67%,#0a123440),linear-gradient(0deg,#0a123484,transparent 45%)}
.pagehead .container{position:relative}.pagehead h1{max-width:820px;font-size:clamp(3rem,6.4vw,6rem);font-weight:900;line-height:.96;margin:18px 0 23px;text-shadow:0 5px 30px #060c2f88}
.pagehead p{font-size:1.15rem;max-width:650px;color:#e6ebff;text-shadow:0 2px 12px #080d2f}
.pagehead .eyebrow{display:inline-flex;background:#14295dbb;border:1px solid #7bd9ff83;padding:8px 13px;border-radius:50px;color:#a9eaff}
.pagehead-evenements{background-position:center 48%}.pagehead-tournois{background-position:center 36%}.pagehead-communaute{background-image:url('gaming-ensemble.webp');background-position:center 48%}.pagehead-archives{background-image:url('gaming-ensemble.webp');background-position:center 62%}.pagehead-pgp{background-image:url('gaming-ensemble.webp');background-position:center 45%}.pagehead-partenaires{background-position:center 55%}.pagehead-contact{background-image:url('gaming-ensemble.webp');background-position:center 48%}.pagehead-inscription{background-position:center 52%}
.pagehead-communaute:before,.pagehead-archives:before,.pagehead-pgp:before,.pagehead-contact:before{background:linear-gradient(90deg,#0a1234 0%,#0a1234ee 32%,#0a123491 65%,#0a12343d),linear-gradient(0deg,#0a1234ae,transparent 50%)}
.editorial{padding-top:68px}.editorial h2{max-width:850px}.story-card{border:1px solid #42588f;border-radius:18px;padding:29px;min-height:235px;background:radial-gradient(circle at 100% 0%,#3e58bb48,transparent 65%),linear-gradient(140deg,#142655,#141b3d);box-shadow:0 18px 35px #040b2080;transition:transform .18s,border-color .18s}.story-card:nth-child(2){background:radial-gradient(circle at 100% 0%,#137ebc66,transparent 65%),linear-gradient(140deg,#123654,#142045)}.story-card:nth-child(3){background:radial-gradient(circle at 100% 0%,#b82c9957,transparent 65%),linear-gradient(140deg,#302058,#1c1943)}.story-card:hover{transform:translateY(-4px);border-color:#8fb8ff}.story-icon{display:inline-grid;place-items:center;width:45px;height:45px;border-radius:12px;background:#3b47a3;border:1px solid #8c9cfd;color:white;font-weight:950;font-size:1.16rem}.story-card:nth-child(2) .story-icon{background:#156ba0;border-color:#50cfff}.story-card:nth-child(3) .story-icon{background:#8b348c;border-color:#ef79d3}.story-card h3{font-size:1.45rem;letter-spacing:-.035em;margin:19px 0 10px}.story-card p{margin:0;color:#c4cee8;line-height:1.62}.story-card a{display:inline-block;margin-top:20px;font-weight:800;color:#71e6ff}.story-card a:hover{text-decoration:underline}.split-spot{margin-top:10px;margin-bottom:80px;border:1px solid #526baf;border-radius:20px;padding:36px;background:radial-gradient(circle at 96% 5%,#8835a66e,transparent 38%),linear-gradient(110deg,#183881,#212057);display:flex;align-items:center;justify-content:space-between;gap:35px}.split-spot h2{max-width:600px}.split-spot p{margin-bottom:0}.split-spot .button{flex:none}
@media(max-width:750px){.pagehead{min-height:360px}.pagehead:before{background:linear-gradient(90deg,#0a1234ec,#0a1234a6),linear-gradient(0deg,#0a1234a8,transparent)}.pagehead h1{font-size:clamp(3rem,10vw,4.5rem)}.pagehead p{font-size:1rem}.editorial{padding-top:55px}.story-card{min-height:0}.split-spot{flex-direction:column;align-items:flex-start;padding:26px;margin-bottom:35px}.split-spot .button{width:100%}}
/* Visuel de la page Événements : scène illustrative, non issue d'une édition réelle. */
.pagehead-evenements{background-image:url('evenement-salle-gaming.webp');background-position:center 51%}
.pagehead-evenements:before{background:linear-gradient(90deg,#09122eed 0%,#09122ec2 24%,#09122e74 48%,#09122e20 78%),linear-gradient(0deg,#09122e88,transparent 55%)}
@media(max-width:750px){.pagehead-evenements{background-position:64% center}.pagehead-evenements:before{background:linear-gradient(90deg,#09122ef2,#09122eae 67%,#09122e8a),linear-gradient(0deg,#09122e9c,transparent 65%)}}

/* Tournois : quatre joueurs réunis autour d'une course locale */
.pagehead-tournois{background-image:url('tournoi-course-quatre-joueurs.webp');background-position:center center}
.pagehead-tournois:before{background:linear-gradient(90deg,#08132be8 0%,#08132bc4 24%,#08132b75 42%,#08132b0d 72%),linear-gradient(0deg,#08132b79,transparent 60%)}
@media(max-width:750px){.pagehead-tournois{background-position:67% center}.pagehead-tournois:before{background:linear-gradient(90deg,#08132bef,#08132ba8 65%,#08132b69),linear-gradient(0deg,#08132b8f,transparent 65%)}}

/* Communauté : portrait de groupe PGP */
.pagehead-communaute{background-image:url('communaute-groupe-pgp.webp');background-position:center 43%}
.pagehead-communaute:before{background:linear-gradient(90deg,#09132deb 0%,#09132dcb 27%,#09132d72 48%,#09132d18 85%),linear-gradient(0deg,#09132d79,transparent 58%)}
@media(max-width:750px){.pagehead-communaute{background-position:64% center}.pagehead-communaute:before{background:linear-gradient(90deg,#09132df2,#09132daa 65%,#09132d7b),linear-gradient(0deg,#09132d8f,transparent 65%)}}

/* Archives : scène d'illustration jusqu'à publication des photos réelles */
.pagehead-archives{background-image:url('archives-souvenirs-illustration.webp');background-position:center 46%}
.pagehead-archives:before{background:linear-gradient(90deg,#09132de9 0%,#09132dd5 30%,#09132d80 51%,#09132d15 86%),linear-gradient(0deg,#09132d72,transparent 58%)}
@media(max-width:750px){.pagehead-archives{background-position:68% center}.pagehead-archives:before{background:linear-gradient(90deg,#09132df2,#09132db0 65%,#09132d7c),linear-gradient(0deg,#09132d88,transparent 65%)}}

/* Découvrir PGP : accueil et préparation d'une journée gaming */
.pagehead-pgp{background-image:url('decouvrir-pgp-ensemble.webp');background-position:center 48%}
.pagehead-pgp:before{background:linear-gradient(90deg,#09132df0 0%,#09132dcb 28%,#09132d75 47%,#09132d10 86%),linear-gradient(0deg,#09132d7a,transparent 60%)}
@media(max-width:750px){.pagehead-pgp{background-position:62% center}.pagehead-pgp:before{background:linear-gradient(90deg,#09132df3,#09132db2 65%,#09132d79),linear-gradient(0deg,#09132d92,transparent 65%)}}

/* Partenaires : échanges pendant une journée gaming (illustration) */
.pagehead-partenaires{background-image:url('partenaires-rencontre-illustration.webp');background-position:center 50%}
.pagehead-partenaires:before{background:linear-gradient(90deg,#09132ded 0%,#09132dcd 28%,#09132d7b 49%,#09132d12 85%),linear-gradient(0deg,#09132d7b,transparent 58%)}
@media(max-width:750px){.pagehead-partenaires{background-position:64% center}.pagehead-partenaires:before{background:linear-gradient(90deg,#09132df3,#09132db4 65%,#09132d7d),linear-gradient(0deg,#09132d8b,transparent 65%)}}
