/* =====================================================================
   UFW · version téléphone (écrans de 760 px de large et moins)
   ===================================================================== */

/* bouton Menu et panneau du menu : cachés sur ordinateur */
.m-menu-btn, .m-menu { display: none; }

@media (max-width: 760px) {
  /* ---------- échelle ---------- */
  .u6, .rg { --u: 4.4px; --gut: 20px; }
  .u6 .shead { flex-direction: column; align-items: flex-start; gap: 14px; margin-bottom: 28px; }
  .u6 .shead h2, .u6 .disp { font-size: 40px; }
  .u6 p.lines span { white-space: normal; }
  .u6 .cta { font-size: 14px; height: 52px; }

  /* ---------- menu ---------- */
  .u6 nav .l { display: none; }
  .u6 nav { padding: 16px 20px !important; }
  .u6 nav img { height: 22px !important; }
  .u6 nav .r, .u6 nav > .pill { margin-left: auto; }
  .m-menu-btn { display: inline-flex; align-items: center; gap: 8px; margin-left: 12px; background: none; border: 1px solid rgba(244,244,242,.35); color: #f4f4f2; font: 600 13px 'Inter Tight', sans-serif; padding: 9px 12px; cursor: pointer; }
  .m-menu-btn i { width: 16px; height: 10px; border-top: 2px solid currentColor; border-bottom: 2px solid currentColor; position: relative; }
  .m-menu-btn i::after { content: ''; position: absolute; left: 0; right: 0; top: 2px; border-top: 2px solid currentColor; }
  .m-menu { display: flex; position: fixed; inset: 0; z-index: 1000; flex-direction: column; background: #0a0808; padding: 18px 20px 28px; transform: translateY(-100%); transition: transform .45s cubic-bezier(.16,1,.3,1); visibility: hidden; }
  .m-menu.open { transform: none; visibility: visible; }
  .m-menu .top { display: flex; justify-content: space-between; align-items: center; }
  .m-menu .top img { height: 22px; }
  .m-menu .close { background: none; border: 1px solid rgba(244,244,242,.35); color: #f4f4f2; font: 600 13px 'Inter Tight', sans-serif; padding: 9px 12px; cursor: pointer; }
  .m-menu ul { list-style: none; margin: 40px 0 0; padding: 0; }
  .m-menu li a { display: block; padding: 12px 0; border-bottom: 1px solid rgba(244,244,242,.1); color: #f4f4f2; text-decoration: none; font: 900 42px/1 'Big Shoulders Display', sans-serif; text-transform: uppercase; }
  .m-menu li a[aria-current] { color: #e3141d; }
  .m-menu .buy { margin-top: auto; display: flex; justify-content: space-between; align-items: center; height: 56px; padding: 0 20px; background: #ffff2a; color: #0a0808; font: 700 16px 'Inter Tight', sans-serif; text-decoration: none; }
  .m-menu .soc { display: flex; gap: 18px; margin-top: 18px; }
  .m-menu .soc a { color: rgba(244,244,242,.7); font: 600 13px 'Inter Tight', sans-serif; text-decoration: none; }
  body.m-open { overflow: hidden; }

  /* ---------- hauts de page avec cordes ---------- */
  .u6 .rg .crumb { top: 64px !important; }
  .u6 .rg .status { top: 96px !important; font-size: 10px; white-space: nowrap; }

  /* accueil */
  .u6 .rg.desk { height: max(640px, 100svh) !important; --lw: 88% !important; --ly: 37% !important; }
  .u6 .rg.desk .bar { left: 16px; right: 16px; bottom: 16px; grid-template-columns: 1fr 1fr; }
  .u6 .rg.desk .bar > div { padding: 12px 14px; border-bottom: 1px solid rgba(244,244,242,.1); }
  .u6 .rg.desk .bar > div:nth-child(2) { border-right: 0; }
  .u6 .rg.desk .bar .cd { grid-column: span 2; border-right: 0; flex-direction: row; justify-content: space-between; align-items: center; }
  .u6 .rg.desk .bar .cd small { margin: 0; }
  .u6 .rg.desk .bar strong { font-size: 14px; }
  .u6 .rg.desk .bar .cd strong { font-size: 30px; }
  .u6 .rg.desk .bar .cta { grid-column: span 2; height: 56px; font-size: 16px; }

  /* page du show */
  .u6 .sh-hero { height: 78svh !important; min-height: 520px; --lw: 86% !important; --ly: 50% !important; }

  /* pages intérieures : photo en plein fond, texte en bas */
  .u6 .ec-hero, .u6 .pa-hero, .u6 .rd-hero, .u6 .if-hero { height: 78svh !important; min-height: 540px; }
  .u6 .ec-hero .bg, .u6 .pa-hero .bg, .u6 .rd-hero .bg, .u6 .if-hero .bg { width: 100% !important; -webkit-mask-image: none !important; mask-image: none !important; filter: brightness(.6) !important; }
  .u6 .ec-hero .tint, .u6 .pa-hero .tint, .u6 .rd-hero .tint, .u6 .if-hero .tint { background: linear-gradient(0deg, rgba(5,3,3,.97) 0%, rgba(5,3,3,.85) 38%, rgba(5,3,3,.15) 70%) !important; }
  .u6 .ec-hero canvas.ropes, .u6 .pa-hero canvas.ropes, .u6 .rd-hero canvas.ropes, .u6 .if-hero canvas.ropes { -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 50%, rgba(0,0,0,.1) 64%) !important; mask-image: linear-gradient(180deg, #000 0%, #000 50%, rgba(0,0,0,.1) 64%) !important; }
  .u6 .ec-hero .title, .u6 .pa-hero .title, .u6 .rd-hero .title, .u6 .if-hero .title { top: auto !important; bottom: 32px; left: 20px !important; right: 20px; transform: none !important; max-width: none !important; }
  .u6 .ec-hero h1, .u6 .pa-hero h1, .u6 .rd-hero h1, .u6 .if-hero h1 { font-size: 52px !important; }
  .u6 .pa-hero p, .u6 .rd-hero p, .u6 .if-hero p { font-size: 15px !important; }
  .u6 .ec-hero .acts, .u6 .pa-hero .acts { flex-direction: column; align-items: stretch; gap: 14px; }
  .u6 .ec-hero .acts .cta, .u6 .pa-hero .acts .cta { justify-content: space-between; }
  .u6 .ec-hero .acts .link { align-self: flex-start; }

  /* ---------- sections : une colonne ---------- */
  .u6 .stage .grid, .u6 .vids, .u6 .partner, .u6 .sh-tix .grid, .u6 .sh-night, .u6 .sh-go,
  .u6 .ec-pack, .u6 .pa-form, .u6 .rd-feat, .u6 .if-go, .u6 .if-contact, .u6 .ml-body { grid-template-columns: 1fr !important; gap: 32px; }
  .u6 .vids .side { grid-template-columns: 1fr; }
  .u6 .vids .v { aspect-ratio: 16 / 9; }
  .u6 .vids, .u6 .vids .side { gap: 10px !important; }
  .u6 .v.big .meta h3 { font-size: 34px; }
  .u6 .v .meta h3 { font-size: 24px; }

  /* stage TLB (accueil) */
  .u6 .stage .ghost { font-size: 120px; }
  .u6 .stage h2 { font-size: 46px; }
  .u6 .stage .vis { min-height: 112vw; }
  .u6 .stage .date { left: 12px; top: 12px; }
  .u6 .stage .date b { font-size: 46px; }
  .u6 .stage .coach .serif { font-size: 20px; }
  .u6 .stage .coach .disp { font-size: 40px; }
  .u6 .steps li { grid-template-columns: 70px 1fr; }
  .u6 .steps .t { font-size: 22px; }
  .u6 .stage .price { font-size: 40px; }

  /* Instagram : on fait défiler du doigt */
  .u6 .insta .row { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 46%; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 6px; scrollbar-width: none; }
  .u6 .insta .row::-webkit-scrollbar { display: none; }
  .u6 .insta .p { scroll-snap-align: start; }

  /* merch, partenaires, pied de page */
  .u6 .merch .grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .u6 .merch .it .tag { font-size: 18px; }
  .u6 .merch .it h4 { font-size: 18px; }
  .u6 .partner h2 { font-size: 40px; }
  .u6 footer .top { grid-template-columns: 1fr 1fr; gap: 28px; }
  .u6 footer .top > div:first-child { grid-column: span 2; }
  .u6 footer img { height: 30px; }
  .u6 footer .bot { flex-direction: column; gap: 10px; }

  /* ---------- page du show ---------- */
  .u6 .sh-key { grid-template-columns: 1fr 1fr; }
  .u6 .sh-key > div { padding: 16px 12px 16px 0 !important; border-bottom: 1px solid rgba(244,244,242,.1); }
  .u6 .sh-key > div:nth-child(even) { border-right: 0; padding-left: 14px !important; }
  .u6 .sh-key > div:nth-child(odd) { padding-left: 0 !important; }
  .u6 .sh-key strong { white-space: normal; font-size: 19px; }
  .u6 .plan { position: static; }
  .u6 .plan .legend { flex-wrap: wrap; white-space: normal; font-size: 10px; justify-content: flex-start; gap: 10px 16px; }
  .u6 .tier { padding: 16px; }
  .u6 .tier h3 { font-size: 20px; }
  .u6 .tier .price { font-size: 30px; }
  .u6 .tix-cta { flex-direction: column; align-items: stretch; }
  .u6 .tix-cta .cta { justify-content: space-between; }
  .u6 .sh-night .carton { flex-direction: column; text-align: center; padding: 22px 18px; }
  .u6 .tl .t { font-size: 36px; }
  .u6 .map { min-height: 300px; }
  .u6 .go-tx { padding: 32px 20px 40px !important; }
  .u6 .faq summary { font-size: 16px; padding: 18px 0; }
  .u6 .go-tx .bus li, .u6 .if-go ol li { padding-left: 36px !important; }

  /* ---------- école ---------- */
  .u6 .st-card { grid-template-columns: auto 1fr; }
  .u6 .st-card .buy { grid-column: 1 / -1; flex-direction: row; justify-content: space-between; border-left: 0; border-top: 1px dashed rgba(10,8,8,.2); padding: 16px 18px; }
  .u6 .st-card .d { padding: 16px 18px; }
  .u6 .st-card .d b { font-size: 46px; }
  .u6 .st-card .w { padding: 18px; }
  .u6 .st-card .w h3 { font-size: 28px; }
  .u6 .ec-contact { padding: 28px 22px; }
  .u6 .ec-contact h3 { font-size: 34px; }

  /* ---------- partenaires ---------- */
  .u6 .pa-stats { grid-template-columns: 1fr 1fr; }
  .u6 .pa-stats > div { padding: 18px 12px 18px 0 !important; border-bottom: 1px solid rgba(244,244,242,.1); }
  .u6 .pa-stats > div:nth-child(even) { border-right: 0; padding-left: 14px !important; }
  .u6 .pa-stats > div:nth-child(odd) { padding-left: 0 !important; }
  .u6 .pa-stats b { font-size: 44px; }
  .u6 .pa-offer .grid { grid-template-columns: 1fr; }
  .u6 form { grid-template-columns: 1fr; padding: 22px 18px; }
  .u6 form .send { flex-direction: column; align-items: stretch; gap: 14px; }
  .u6 form button.cta { justify-content: space-between; }

  /* ---------- rediffs ---------- */
  .u6 .rd-feat .info h2 { font-size: 44px; }
  .u6 .rd-grid { grid-template-columns: 1fr; gap: 26px; }
  .u6 .rd-sub { flex-direction: column; align-items: stretch; }
  .u6 .rd-sub h2 { white-space: normal !important; font-size: 40px; }
  .u6 .rd-sub .cta { justify-content: space-between; }

  /* ---------- infos ---------- */
  .u6 .if-cards { grid-template-columns: 1fr; }
  .u6 .if-contact h2 { font-size: 42px; }
  .u6 .if-contact li { font-size: 15px; }

  /* ---------- mentions légales ---------- */
  .u6 .ml-head { padding: 0 20px 30px; }
  .u6 .ml-head nav { padding: 16px 0 34px !important; }
  .u6 .ml-head h1 { font-size: 46px; }
  .u6 .ml-toc { display: none; }
  .u6 .ml-text p, .u6 .ml-text li { font-size: 15px; }
}

/* coupures de lignes propres au téléphone : les retours prévus pour l'ordinateur sautent, chaque phrase s'équilibre */
@media (max-width: 760px) {
  .u6 p.lines br.d { display: none; }
  .u6 p.lines span, .u6 .rg .title p, .u6 .ec-contact p, .u6 .carton p, .u6 .pa-form .lead { text-wrap: balance; }
}
@media (max-width: 760px) {
  .u6 nav .l, .u6 .ml-head nav .l { display: none !important; }
  .u6 br.d { display: none; }
}
