.rules{grid-template-columns:.85fr 1.15fr;gap:8vw}
.material{margin-top:34px;padding:22px;border:2px solid rgba(255,255,255,.75);border-radius:12px}
.material h3{margin:0 0 8px;font:900 1.15rem "Gambado Sans","Arial Black",sans-serif}
.material p{margin:0;line-height:1.5}
.rule-flow{min-width:0}
.setup{padding:20px 22px;background:rgba(255,255,255,.12);border-left:5px solid var(--yellow);border-radius:8px}
.setup span,.victory span{display:block;color:var(--yellow);font-weight:800;letter-spacing:.12em;font-size:.75rem}
.setup p{margin:7px 0 0;line-height:1.5}
.rule-flow ol{margin-top:8px}
.rule-flow li{padding:22px 0}
.victory{margin-top:24px;padding:22px;background:var(--pink);border:3px solid white;border-radius:10px;box-shadow:6px 7px 0 #5f2f79}
.victory span{margin-bottom:6px}
.victory strong{font:900 1.25rem/1.25 "Gambado Sans","Arial Black",sans-serif}
@media(max-width:900px){.rules{grid-template-columns:1fr}.rule-flow{margin-top:10px}}
.order-strip{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:38px;min-height:500px;padding:90px 7vw;background:var(--yellow);border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);text-align:center}
.order-strip>div>span{font-size:1rem;font-weight:800;letter-spacing:.16em}
.order-strip h2{max-width:1400px;font-size:clamp(3.8rem,7vw,8rem);line-height:.9;margin:18px auto 0}
.order-button{flex:0 0 auto;min-width:340px;padding:28px 46px;background:var(--pink);color:white;border:3px solid var(--ink);border-radius:12px;box-shadow:10px 11px 0 var(--ink);font-size:1.35rem;font-weight:800;transition:.2s transform,.2s box-shadow}
.order-button:hover{transform:translateY(-3px);box-shadow:10px 12px 0 var(--ink)}
.order-button span{margin-left:10px}
@media(max-width:700px){.order-strip{min-height:420px;padding:64px 22px}.order-strip h2{font-size:clamp(3.2rem,15vw,5rem)}.order-button{width:100%;min-width:0;padding:24px 22px;text-align:center}}
.pitch{padding:110px 7vw;background:var(--soft);border-top:3px solid var(--ink)}
.video-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:24px 0 45px}.pitch h2{margin:0}
.pitch h2 em{color:var(--pink)}
.video-heading p{margin:0 0 10px;max-width:340px;color:#514b51;font-size:1.1rem}.video-shell{position:relative;aspect-ratio:16/9;max-width:1100px;margin:auto;background:var(--ink);border:3px solid var(--ink);border-radius:15px;box-shadow:10px 12px 0 var(--pink);overflow:hidden}.video-shell video{display:none;width:100%;height:100%;object-fit:contain;background:#000}.video-shell.video-ready video{display:block}.video-shell.video-ready .video-placeholder{display:none}.video-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;background:linear-gradient(135deg,var(--violet),var(--pink));color:white}.play-symbol{display:grid;place-items:center;width:86px;height:86px;padding-left:6px;margin-bottom:22px;border:4px solid white;border-radius:50%;background:rgba(255,255,255,.12);font-size:2rem}.video-placeholder strong{font:900 clamp(1.7rem,4vw,3rem) "Gambado Sans","Arial Black",sans-serif}.video-placeholder small{margin-top:10px;font-size:.95rem}.video-placeholder::before,.video-placeholder::after{content:"✦";position:absolute;color:var(--yellow);font-size:3rem}.video-placeholder::before{top:12%;left:12%}.video-placeholder::after{right:12%;bottom:12%}
@media(max-width:900px){.video-heading{align-items:start;flex-direction:column}}
@media(max-width:560px){.pitch{padding:80px 22px}.video-heading{margin-bottom:30px}.play-symbol{width:62px;height:62px;font-size:1.4rem;margin-bottom:14px}.video-placeholder small{font-size:.8rem}}
/* Bande défilante continue */
body{overflow-x:hidden}
.ticker{width:104vw;margin:-5px -2vw -8px;overflow:hidden;transform:rotate(-1.1deg);transform-origin:center;position:relative;z-index:5;background:var(--pink)}
.ticker-track{display:flex;width:max-content;will-change:transform;animation:ticker-scroll 34s linear infinite;padding:0!important}
.ticker-track>span{display:block;flex:none;white-space:nowrap;padding:17px 0;font:900 1rem "Gambado Sans","Arial Black",sans-serif;letter-spacing:.06em}
.ticker-track b{color:var(--yellow);margin:0 28px}
.concept{position:relative;margin-top:-10px;padding-top:125px}
@keyframes ticker-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}}
.concept h2{font-size:clamp(3.7rem,6.2vw,6.8rem)}

footer{display:block;padding:0;background:var(--ink)}
.socials{padding:85px 7vw 75px;text-align:center;background:var(--pink);color:white;border-top:3px solid var(--ink)}
.socials>span{font-size:.8rem;font-weight:800;letter-spacing:.16em;color:var(--yellow)}
.socials h2{margin:12px 0 38px;font-size:clamp(3.4rem,6vw,6.5rem)}
.social-links{display:flex;justify-content:center;gap:24px;max-width:900px;margin:auto}
.social-link{display:flex;align-items:center;gap:18px;min-width:300px;padding:22px 28px;text-align:left;background:white;color:var(--ink);border:3px solid var(--ink);border-radius:14px;box-shadow:8px 9px 0 var(--ink);transition:.2s transform,.2s box-shadow}
.social-link:hover{transform:translateY(-5px) rotate(-1deg);box-shadow:10px 13px 0 var(--ink)}
.social-link:nth-child(2):hover{transform:translateY(-5px) rotate(1deg)}
.social-link svg{flex:0 0 52px;width:52px;height:52px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.social-link .social-dot{fill:currentColor;stroke:none}
.social-link small,.social-link strong{display:block}
.social-link small{font-size:.82rem;font-weight:700;color:#625b62}
.social-link strong{font:900 1.22rem "Gambado Sans","Arial Black",sans-serif;margin-top:2px}
.instagram svg{color:var(--pink)}
.tiktok svg{color:var(--violet)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding:38px 6vw;font-size:.9rem}
.footer-bottom p{color:#bbb}
@media(max-width:700px){.socials{padding:65px 22px 58px}.social-links{flex-direction:column}.social-link{width:100%;min-width:0}.footer-bottom{flex-direction:column;gap:16px;text-align:center}}

/* Ajustements complets pour téléphone */
@media(max-width:700px){
  html{scroll-padding-top:72px}
  body{font-size:16px}
  .nav{height:72px;padding:0 16px;gap:12px}
  .brand{min-width:82px;font-size:2rem}
  .brand .wing{left:-10px;font-size:1.35rem}
  .brand .halo{width:23px;height:8px;left:17px}
  .brand .tail{right:3px;font-size:1.15rem}
  .mini-cta{min-height:44px;padding:10px 13px;white-space:nowrap;font-size:.78rem}

  .hero{display:flex;flex-direction:column;align-items:stretch;gap:18px;min-height:0;padding:48px 20px 20px;background:linear-gradient(165deg,#fff 0 51%,rgba(199,3,100,.16) 51% 64%,rgba(124,163,54,.2) 64% 76%,rgba(145,124,181,.22) 76% 88%,rgba(244,204,34,.2) 88%)}
  .hero-copy{width:100%;max-width:none}
  .eyebrow{font-size:.7rem;line-height:1.35;letter-spacing:.1em}
  h1{font-size:clamp(3rem,15.5vw,4.5rem);line-height:.9;overflow-wrap:anywhere}
  .hero-copy>p{font-size:1.05rem;line-height:1.5}
  .hero-actions{margin:25px 0}
  .primary{width:100%;min-height:52px;padding:15px 20px}
  .player-note{align-items:flex-start;margin-top:28px;font-size:.84rem;line-height:1.45}
  .faces{padding-left:8px}
  .faces b{width:32px;height:32px}

  .game-stage{width:100%;height:410px;margin:0;transform:none}
  .card{width:210px;height:300px;padding:17px;border-radius:13px;box-shadow:7px 8px 0 var(--ink)}
  .violet{transform:rotate(-14deg) translate(-52px,7px)}
  .yellow{transform:rotate(13deg) translate(52px,8px)}
  .back .loop{font-size:5rem}
  .card-content p{font-size:1.25rem}
  .s1{left:4%;top:24px}.s2{right:1%;bottom:35px}.s3{right:6%;top:35px}

  .ticker{width:108vw;margin:-4px -4vw -7px}
  .ticker-track>span{padding:14px 0;font-size:.86rem}
  .ticker-track b{margin:0 18px}

  .concept,.categories,.rules{padding:72px 20px}
  .concept{display:block;margin-top:-7px;padding-top:82px}
  .concept h2,.section-head h2,.rules h2{font-size:clamp(2.7rem,13vw,4rem);line-height:.92;overflow-wrap:anywhere}
  .concept-copy{padding-top:15px;font-size:1.05rem;line-height:1.6}
  .section-head{margin-bottom:35px}

  .order-strip{gap:28px;min-height:0;padding:64px 20px}
  .order-strip>div>span{font-size:.76rem;letter-spacing:.12em}
  .order-strip h2{font-size:clamp(2.65rem,13vw,4rem);line-height:.94;overflow-wrap:anywhere}
  .order-button{width:100%;min-width:0;min-height:58px;padding:18px 18px;font-size:1.08rem;box-shadow:7px 8px 0 var(--ink)}

  .category-grid{grid-template-columns:1fr;gap:20px}
  .cat{min-height:240px;padding:20px}
  .cat>div{font-size:3.5rem}
  .cat h3{font-size:1.4rem}
  .cat:hover{transform:none}

  .rules{gap:34px}
  .rules-intro>p{font-size:1rem}
  .material,.setup,.victory{padding:18px}
  .rules li{gap:14px;padding:20px 0}
  .rules li>b{flex-basis:42px;height:42px}
  .rules h3{font-size:1.16rem}
  .rules li p{font-size:.96rem;line-height:1.45}
  .victory{box-shadow:5px 6px 0 #5f2f79}

  .pitch{padding:72px 20px}
  .pitch h2{font-size:clamp(2.8rem,13vw,4rem);line-height:.92}
  .video-heading{gap:16px;margin:20px 0 30px}
  .video-heading p{font-size:1rem}
  .video-shell{aspect-ratio:4/3;border-radius:12px;box-shadow:7px 8px 0 var(--pink)}
  .video-placeholder{padding:20px}
  .video-placeholder strong{font-size:clamp(1.5rem,8vw,2.2rem)}
  .video-placeholder small{max-width:250px;line-height:1.4}

  .socials{padding:62px 20px 56px}
  .socials h2{font-size:clamp(3rem,15vw,4.5rem);margin-bottom:30px}
  .social-links{gap:18px}
  .social-link{min-height:82px;padding:17px 20px;box-shadow:6px 7px 0 var(--ink)}
  .social-link:hover,.social-link:nth-child(2):hover{transform:none}
  .social-link svg{flex-basis:44px;width:44px;height:44px}
  .social-link strong{font-size:1.08rem;overflow-wrap:anywhere}
  .footer-bottom{padding:34px 20px;gap:12px}
  .footer-bottom p{margin:5px 0;line-height:1.45}
}

@media(max-width:380px){
  .mini-cta{padding:9px 10px;font-size:.72rem}
  h1{font-size:2.8rem}
  .game-stage{height:370px}
  .card{width:184px;height:270px;padding:15px}
  .violet{transform:rotate(-13deg) translate(-43px,6px)}
  .yellow{transform:rotate(12deg) translate(43px,7px)}
  .card-content p{font-size:1.08rem}
  .concept h2,.section-head h2,.rules h2,.order-strip h2,.pitch h2{font-size:2.55rem}
  .rules li{align-items:flex-start}
  .social-link{padding:15px}
}

@media(max-width:700px) and (orientation:landscape){
  .hero{padding-top:35px}
  .game-stage{height:360px}
  .card{width:190px;height:275px}
}

/* Précommande et pitch vertical, adaptés aux petits écrans. */
.preorder-price{margin:0;max-width:100%;font-size:clamp(1.1rem,3vw,1.5rem);line-height:1.5}
.preorder-price strong{display:inline-block}
.order-email{font-weight:700;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;min-height:44px;display:flex;align-items:center;justify-content:center}
.video-shell{aspect-ratio:9/16;width:min(100%,440px)}
.video-shell video{display:block}
.video-placeholder{display:none}
.video-shell.video-error .video-placeholder{display:flex}
section[id]{scroll-margin-top:100px}
a:focus-visible,button:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
@media(max-width:700px){
 .order-strip{gap:24px}
 .order-button{font-size:1rem}
 .game-stage .violet{transform:rotate(-14deg) translate(-46px,7px)}
 .game-stage .yellow{transform:rotate(13deg) translate(46px,8px)}
 .cat.violet,.cat.yellow{transform:none}
 .video-shell{aspect-ratio:9/16;width:min(100%,380px)}
 section[id]{scroll-margin-top:88px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Logo officiel IRL fourni par l’équipe. */
.brand{min-width:0;letter-spacing:normal;flex-shrink:0;line-height:0}
.brand-logo{display:block;width:142px;height:76px;object-fit:contain}
.footer-brand{background:white;border-radius:12px;padding:8px 14px}
@media(max-width:700px){.brand-logo{width:108px;height:58px}.footer-brand .brand-logo{width:142px;height:76px}}

.spicy-price{margin:-8px 0 0;font-size:1.05rem;font-weight:700;line-height:1.5;text-align:center}

.spicy-options{order:0;width:min(100%,680px);min-width:0;margin:0;padding:24px;border:3px solid var(--ink);border-radius:16px;text-align:left;background:#fff9e5}
.spicy-options legend{padding:0 10px;font-size:1.5rem;font-weight:800}
.spicy-option{display:flex;align-items:center;gap:16px;padding:20px;margin:10px 0;border:2px solid #736c61;border-radius:12px;background:white;cursor:pointer;min-height:90px}
.spicy-option:has(input:checked){border:3px solid var(--pink);background:#fff0f7;box-shadow:4px 4px 0 var(--pink)}
.spicy-option input{width:24px;height:24px;flex-shrink:0;accent-color:var(--pink)}
.spicy-option span{flex:1;min-width:0}.spicy-option strong{display:block;font-size:1.25rem;line-height:1.25}.spicy-option small{display:block;margin-top:7px;font-size:1rem;line-height:1.35;color:#514b51}
.spicy-option>b{font-size:1.8rem;white-space:nowrap;color:var(--pink)}
@media(max-width:560px){.spicy-options{padding:14px}.spicy-options legend{font-size:1.3rem}.spicy-option{gap:10px;flex-wrap:wrap;padding:16px}.spicy-option>b{width:100%;padding-left:38px;font-size:2rem}.spicy-option strong{font-size:1.15rem}}

.irl-prices{display:flex;flex-direction:column;gap:12px;text-align:center}.irl-prices .preorder-price{font-weight:700}.irl-prices strong{font-size:1.5em;white-space:nowrap}.open-day-price{margin:0;font-size:1.15rem;line-height:1.5}.open-day-price strong{font-size:1.2em}
