{"id":686,"date":"2026-07-21T14:51:03","date_gmt":"2026-07-21T14:51:03","guid":{"rendered":"https:\/\/fcrivedroite33.fr\/?page_id=686"},"modified":"2026-10-21T07:59:13","modified_gmt":"2026-10-21T07:59:13","slug":"feminines","status":"publish","type":"page","link":"https:\/\/fcrivedroite33.fr\/index.php\/feminines\/","title":{"rendered":"F\u00e9minines"},"content":{"rendered":"\n<div class=\"wp-block-cover alignfull has-custom-content-position is-position-bottom-left\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--50);padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\"><img loading=\"lazy\" decoding=\"async\" width=\"581\" height=\"1024\" class=\"wp-block-cover__image-background wp-image-694 size-large\" alt=\"\" src=\"http:\/\/fcrivedroite33.fr\/wp-content\/uploads\/2026\/07\/64568EF5-7A92-4F7D-890F-65A3A3B8CE79-581x1024.jpg\" data-object-fit=\"cover\" srcset=\"https:\/\/fcrivedroite33.fr\/wp-content\/uploads\/2026\/07\/64568EF5-7A92-4F7D-890F-65A3A3B8CE79-581x1024.jpg 581w, https:\/\/fcrivedroite33.fr\/wp-content\/uploads\/2026\/07\/64568EF5-7A92-4F7D-890F-65A3A3B8CE79-170x300.jpg 170w, https:\/\/fcrivedroite33.fr\/wp-content\/uploads\/2026\/07\/64568EF5-7A92-4F7D-890F-65A3A3B8CE79-768x1354.jpg 768w, https:\/\/fcrivedroite33.fr\/wp-content\/uploads\/2026\/07\/64568EF5-7A92-4F7D-890F-65A3A3B8CE79-872x1536.jpg 872w, https:\/\/fcrivedroite33.fr\/wp-content\/uploads\/2026\/07\/64568EF5-7A92-4F7D-890F-65A3A3B8CE79-1162x2048.jpg 1162w, https:\/\/fcrivedroite33.fr\/wp-content\/uploads\/2026\/07\/64568EF5-7A92-4F7D-890F-65A3A3B8CE79.jpg 1170w\" sizes=\"auto, (max-width: 581px) 100vw, 581px\" \/><span aria-hidden=\"true\" class=\"wp-block-cover__background has-ast-global-color-2-background-color has-background-dim\"><\/span><div class=\"wp-block-cover__inner-container is-layout-constrained wp-container-core-cover-is-layout-19640242 wp-block-cover-is-layout-constrained\">\n<h2 class=\"wp-block-heading has-ast-global-color-7-color has-text-color has-link-color wp-elements-1\" style=\"margin-top:0;margin-right:0;margin-bottom:0;margin-left:0;padding-top:0;padding-right:0;padding-bottom:0;padding-left:0;line-height:1\">F\u00e9minines<\/h2>\n\n\n\n<p class=\"has-text-align-center has-ast-global-color-7-color has-text-color has-link-color has-large-font-size wp-elements-2 wp-block-paragraph\" style=\"margin-top:0;margin-right:0;margin-bottom:0;margin-left:0;padding-top:0;padding-right:0;padding-bottom:0;padding-left:0;line-height:1.5\">Se former, progresser,&nbsp;acc\u00e9der au haut niveau amateur<\/p>\n<\/div><\/div>\n\n\n\n<div style=\"margin-top:0;margin-bottom:0;height:80px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-ast-global-color-2-color has-text-color has-link-color wp-elements-3 is-layout-constrained wp-container-core-group-is-layout-65be1d01 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:0;padding-right:0;padding-bottom:0px;padding-left:0\">\n<div class=\"wp-block-columns are-vertically-aligned-top is-layout-flex wp-container-core-columns-is-layout-fa703c11 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-container-core-column-is-layout-cbc690f8 wp-block-column-is-layout-flow\"><div class=\"wp-block-icon\"><svg style=\"width:60px;\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\">\n\t<path fill-rule=\"evenodd\" d=\"M15.5 9.5a1 1 0 100-2 1 1 0 000 2zm0 1.5a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm-2.25 6v-2a2.75 2.75 0 00-2.75-2.75h-4A2.75 2.75 0 003.75 15v2h1.5v-2c0-.69.56-1.25 1.25-1.25h4c.69 0 1.25.56 1.25 1.25v2h1.5zm7-2v2h-1.5v-2c0-.69-.56-1.25-1.25-1.25H15v-1.5h2.5A2.75 2.75 0 0120.25 15zM9.5 8.5a1 1 0 11-2 0 1 1 0 012 0zm1.5 0a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z\" \/>\n<\/svg>\n<\/div>\n\n\n<h3 class=\"wp-block-heading has-text-align-left has-ast-global-color-2-color has-text-color has-link-color wp-elements-4\" style=\"margin-top:16px\">14 jeunes<\/h3>\n\n\n\n<p class=\"has-text-align-left has-ast-global-color-2-color has-text-color has-link-color wp-elements-5 wp-block-paragraph\">licenci\u00e9s \u00e9cole de foot<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-container-core-column-is-layout-cbc690f8 wp-block-column-is-layout-flow\"><div class=\"wp-block-icon\"><svg style=\"width:60px;\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\">\n\t<path d=\"M12 4L4 7.9V20h16V7.9L12 4zm6.5 14.5H14V13h-4v5.5H5.5V8.8L12 5.7l6.5 3.1v9.7z\" \/>\n<\/svg>\n<\/div>\n\n\n<h3 class=\"wp-block-heading has-text-align-left has-ast-global-color-2-color has-text-color has-link-color wp-elements-6\" style=\"margin-top:16px\">1 \u00e9quipe<\/h3>\n\n\n\n<p class=\"has-text-align-left has-ast-global-color-2-color has-text-color has-link-color wp-elements-7 wp-block-paragraph\">U14\/U15<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-container-core-column-is-layout-cbc690f8 wp-block-column-is-layout-flow\"><div class=\"wp-block-icon\"><svg style=\"width:60px;\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\">\n\t<path d=\"M11.776 4.454a.25.25 0 01.448 0l2.069 4.192a.25.25 0 00.188.137l4.626.672a.25.25 0 01.139.426l-3.348 3.263a.25.25 0 00-.072.222l.79 4.607a.25.25 0 01-.362.263l-4.138-2.175a.25.25 0 00-.232 0l-4.138 2.175a.25.25 0 01-.363-.263l.79-4.607a.25.25 0 00-.071-.222L4.754 9.881a.25.25 0 01.139-.426l4.626-.672a.25.25 0 00.188-.137l2.069-4.192z\" \/>\n<\/svg>\n<\/div>\n\n\n<h3 class=\"wp-block-heading has-text-align-left has-ast-global-color-2-color has-text-color has-link-color wp-elements-8\" style=\"margin-top:16px\">2 \u00c9ducateurs<\/h3>\n\n\n\n<p class=\"has-text-align-left has-ast-global-color-2-color has-text-color has-link-color wp-elements-9 wp-block-paragraph\">dipl\u00f4m\u00e9s et form\u00e9s<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-container-core-column-is-layout-cbc690f8 wp-block-column-is-layout-flow\"><div class=\"wp-block-icon\"><svg style=\"width:60px;\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\">\n\t<path fill-rule=\"evenodd\" d=\"M12 3.176l6.75 3.068v4.574c0 3.9-2.504 7.59-6.035 8.755a2.283 2.283 0 01-1.43 0c-3.53-1.164-6.035-4.856-6.035-8.755V6.244L12 3.176zM6.75 7.21v3.608c0 3.313 2.145 6.388 5.005 7.33.159.053.331.053.49 0 2.86-.942 5.005-4.017 5.005-7.33V7.21L12 4.824 6.75 7.21z\" \/>\n<\/svg>\n<\/div>\n\n\n<h3 class=\"wp-block-heading has-text-align-left has-ast-global-color-2-color has-text-color has-link-color wp-elements-10\" style=\"margin-top:16px\">2  s\u00e9ances<\/h3>\n\n\n\n<p class=\"has-text-align-left has-ast-global-color-2-color has-text-color has-link-color wp-elements-11 wp-block-paragraph\">Mardi et Jeudi <\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div style=\"margin-top:0;margin-bottom:0;height:80px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<!-- CALENDRIER & R\u00c9SULTATS \u2014 FCRD33 : \u00e0 coller \u00e0 la place de TOUT le contenu du bloc HTML personnalis\u00e9. -->\n<section class=\"match-section\">\n\n  <div class=\"match-header\">\n    <h3>Calendrier &amp; r\u00e9sultats<\/h3>\n    <span class=\"match-team-label\"><\/span>\n  <\/div>\n\n  <div class=\"match-tabs-nav\"><\/div>\n\n  <div class=\"match-tabs-content\"><\/div>\n\n<\/section>\n\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Poppins:wght@400;500;600;700&display=swap');\n\n  .match-section,\n  .match-section * { box-sizing: border-box; }\n\n  .match-section {\n    --navy: #1B3A6B;\n    --ink: #111111;\n    --line: #E6E6E6;\n    --muted: #6F6F6F;\n    width: 100%;\n    max-width: 100%;\n    margin: 0;\n    padding: 0;\n    font-family: 'Poppins', sans-serif;\n  }\n\n  \/* Titre au style du th\u00e8me (m\u00eames titres que \"Les cat\u00e9gories\", \"Projet p\u00e9dagogique\"...) *\/\n  .match-header {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    flex-wrap: wrap;\n    gap: 12px;\n    margin-bottom: 16px;\n  }\n  .match-section .match-header h3 { margin: 0; }\n\n  .match-team-select {\n    font-family: 'Poppins', sans-serif;\n    font-size: 13px;\n    font-weight: 600;\n    color: var(--ink);\n    background-color: #fff;\n    border: 1px solid #D6D6D6;\n    border-radius: 999px;\n    padding: 9px 36px 9px 18px;\n    cursor: pointer;\n    appearance: none;\n    -webkit-appearance: none;\n    -moz-appearance: none;\n    background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23111111' d='M4 6l4 4 4-4z'\/%3E%3C\/svg%3E\");\n    background-repeat: no-repeat;\n    background-position: right 14px center;\n    background-size: 14px;\n    transition: border-color 0.2s ease;\n  }\n  .match-team-select:hover { border-color: var(--ink); }\n  .match-team-select:focus { outline: 2px solid var(--navy); outline-offset: 2px; }\n\n  .match-team-label {\n    font-family: 'Poppins', sans-serif;\n    font-size: 13px;\n    font-weight: 600;\n    color: #fff;\n    background: var(--navy);\n    border-radius: 999px;\n    padding: 9px 18px;\n    white-space: nowrap;\n  }\n\n  \/* Onglets : m\u00eames pastilles que partout, actif en bleu marine *\/\n  .match-tabs-nav { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }\n  .match-tab-btn {\n    padding: 9px 18px;\n    border-radius: 999px;\n    border: 1px solid #D6D6D6;\n    background: transparent;\n    font-family: 'Poppins', sans-serif;\n    font-size: 13px;\n    font-weight: 500;\n    line-height: 1.2;\n    color: var(--ink);\n    cursor: pointer;\n    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;\n  }\n  .match-tab-btn:hover { border-color: var(--ink); background: transparent; }\n  .match-tab-btn:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }\n  .match-tab-btn.active { background: var(--navy); color: #fff; border-color: var(--navy); }\n\n  \/* \u00c9cusson *\/\n  .crest {\n    border-radius: 50%;\n    background-color: #EEEEEE;\n    background-size: 72%;\n    background-repeat: no-repeat;\n    background-position: center;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 700;\n    color: var(--ink);\n    flex-shrink: 0;\n  }\n  .crest--onnavy { background-color: rgba(255, 255, 255, 0.12); color: #FAFAFA; }\n\n  \/* ===== Prochain match ===== *\/\n  .next-card { background: #111111; border-radius: 16px; padding: 30px 24px; text-align: center; }\n  .next-badges { display: flex; justify-content: center; gap: 8px; margin-bottom: 20px; flex-wrap: wrap; }\n  .next-badge {\n    background: rgba(255, 255, 255, 0.12);\n    color: #FAFAFA;\n    font-size: 10px;\n    font-weight: 600;\n    letter-spacing: 0.5px;\n    padding: 5px 12px;\n    border-radius: 999px;\n    text-transform: uppercase;\n  }\n  .next-teams { display: flex; align-items: center; justify-content: center; gap: 28px; margin-bottom: 22px; }\n  .next-team { display: flex; flex-direction: column; align-items: center; gap: 10px; width: 100px; }\n  .next-team-name {\n    color: #FAFAFA; font-size: 13px; font-weight: 600;\n    white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%;\n  }\n  .next-vs-block { display: flex; flex-direction: column; align-items: center; gap: 4px; }\n  .next-vs { color: #FAFAFA; opacity: 0.35; font-size: 22px; font-weight: 700; }\n  .next-countdown {\n    color: #CCCCCC; font-size: 10px; font-weight: 600;\n    letter-spacing: 0.5px; text-transform: uppercase; white-space: nowrap;\n  }\n  .next-divider { width: 40px; height: 1px; background: rgba(255, 255, 255, 0.2); margin: 0 auto 18px; }\n  .next-datetime { color: #FAFAFA; font-size: 15px; font-weight: 500; margin-bottom: 4px; }\n  .next-lieu { color: #CCCCCC; font-size: 12px; }\n\n  \/* ===== Calendrier ===== *\/\n  .match-list {\n    background: #fff;\n    border: 1px solid var(--line);\n    border-radius: 16px;\n    overflow: hidden;\n    box-shadow: 0 3px 10px rgba(17,17,17,0.05);\n  }\n  .match-card { padding: 16px 20px; border-bottom: 1px solid #EFEFEF; }\n  .match-card:last-child { border-bottom: none; }\n  .match-card-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }\n  .match-card-date { color: var(--ink); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.3px; }\n  .match-card-comp { color: #8A8A8A; font-size: 10px; font-weight: 500; }\n  .match-card-row { display: flex; align-items: center; justify-content: space-between; }\n  .match-card-team { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; }\n  .match-card-team--away { justify-content: flex-end; }\n  .match-card-team-name {\n    color: var(--ink); font-size: 13px; font-weight: 500;\n    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\n  }\n  .match-card-team--away .match-card-team-name { text-align: right; }\n  .match-card-score {\n    font-size: 15px; font-weight: 700; padding: 5px 12px; border-radius: 8px;\n    margin: 0 10px; white-space: nowrap;\n  }\n  .match-card-score--win { background: rgba(99, 153, 34, 0.12); color: #3B6D11; }\n  .match-card-score--draw { background: rgba(0, 0, 0, 0.05); color: #555555; }\n  .match-card-score--loss { background: rgba(226, 75, 74, 0.12); color: #A32D2D; }\n  .match-card-score--upcoming { background: #F1F1F1; color: var(--ink); font-size: 12px; }\n\n  .match-empty {\n    padding: 28px 20px; text-align: center; color: var(--muted); font-size: 13px;\n    background: #fff; border: 1px solid var(--line); border-radius: 16px;\n  }\n\n  \/* ===== Classement ===== *\/\n  .standings-wrap {\n    background: #fff;\n    border: 1px solid var(--line);\n    border-radius: 16px;\n    overflow: hidden;\n    box-shadow: 0 3px 10px rgba(17,17,17,0.05);\n  }\n  .standings-head { display: flex; align-items: center; padding: 8px 20px; border-bottom: 1px solid #EFEFEF; }\n  .standings-head span { color: #8A8A8A; font-size: 9px; font-weight: 600; letter-spacing: 0.5px; }\n  .standings-row {\n    display: flex; align-items: center; padding: 11px 20px;\n    border-bottom: 1px solid #EFEFEF; border-left: 3px solid transparent;\n  }\n  .standings-row:last-child { border-bottom: none; }\n  .standings-row--fcrd { background: rgba(27, 58, 107, 0.06); border-left-color: var(--navy); }\n  .standings-pos { width: 20px; font-size: 12px; font-weight: 700; }\n  .standings-pos--gold   { color: #BA7517; }\n  .standings-pos--silver { color: #888780; }\n  .standings-pos--bronze { color: #993C1D; }\n  .standings-pos--other  { color: var(--ink); opacity: 0.5; }\n  .standings-team {\n    flex: 1; color: var(--ink); font-size: 13px; font-weight: 500; margin-left: 10px;\n    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\n  }\n  .standings-row--fcrd .standings-team { font-weight: 700; }\n  .standings-mj { color: #8A8A8A; font-size: 11px; margin-right: 12px; white-space: nowrap; }\n  .standings-pts {\n    background: var(--navy); color: #fff; font-size: 12px; font-weight: 700;\n    padding: 3px 10px; border-radius: 6px; white-space: nowrap;\n  }\n\n  @media (max-width: 480px) {\n    .next-card { padding: 24px 16px; }\n    .next-teams { gap: 16px; }\n    .next-team { width: 80px; }\n    .match-card, .standings-row, .standings-head { padding: 10px 14px; }\n    .match-card-team-name, .standings-team { font-size: 12px; }\n    .match-tab-btn { padding: 8px 14px; font-size: 12px; }\n    .standings-mj { display: none; }\n  }\n<\/style>\n\n<script data-cfasync=\"false\" data-no-optimize=\"1\" data-no-defer=\"1\" data-no-minify=\"1\" data-noptimize=\"1\" data-wpo-ignore=\"1\">\n(function () {\nfunction start() {\n  \/\/ ===== DONN\u00c9ES \u2014 \u00e9quipe unique U14\/U15 F =====\n  \/\/\n  \/\/ MODE D'EMPLOI :\n  \/\/   - \"season\" : la liste des matchs du calendrier.\n  \/\/   - Le \"Prochain match\" est choisi AUTOMATIQUEMENT (premier match \u00e0 venir sans score).\n  \/\/   - HORAIRE ET LIEU : ajoutez  time: \"15h00\"  (et, si besoin,  lieu: \"Ext\u00e9rieur \u00b7 Le Bouscat\")\n  \/\/     dans la ligne du match. Sans horaire, \"Horaire \u00e0 confirmer\" s'affiche.\n  \/\/   - Quand un match est jou\u00e9 : remplissez score: \"2-1\" et result: \"win\" \/ \"draw\" \/ \"loss\"\n  \/\/     (du point de vue du FCRD33).\n  \/\/   - Une journ\u00e9e d'exempt s'\u00e9crit sans \u00e9quipe : { date: \"...\", comp: \"Championnat \u00b7 J3 \u2014 Exempt\" }\n  \/\/   - \"standings\" : le classement. Laisser [] tant que ce n'est pas connu.\n  \/\/   - \"logo\" est optionnel : URL d'image, sinon les initiales (\"hi\" \/ \"ai\") s'affichent.\n  \/\/   - \"fcrd: true\" met en avant la ligne du FCRD33 dans le classement.\n\n  const teamName = \"U14\/U15 F\";\n  const FCRD_LOGO = \"https:\/\/fcrivedroite33.fr\/wp-content\/uploads\/2026\/07\/cropped-FC-RIVE-DROITE-33-BLANC-1-1.png\";\n\n  const team = {\n    nextMatch: null,\n    season: [\n    { date: \"Sam. 19 sept 2026\", time: \"13h00\", comp: \"Championnat \u00b7 J2\", home: \"FCRD33\", away: \"St M\u00e9dard Guiz. Ppe.\", hi: \"FC\", ai: \"SG\", homeLogo: FCRD_LOGO, awayLogo: \"\", score: \"1-6\", result: \"loss\" },\n    { date: \"Sam. 26 sept 2026\", comp: \"Championnat \u00b7 J3 \u2014 Exempt\" },\n    { date: \"Sam. 3 oct 2026\", time: \"13h00\", comp: \"Championnat \u00b7 J4\", home: \"La Br\u00e8de FC\", away: \"FCRD33\", hi: \"LB\", ai: \"FC\", homeLogo: \"\", awayLogo: FCRD_LOGO, score: \"5-1\", result: \"loss\" },\n    { date: \"Sam. 10 oct 2026\", time: \"13h00\", comp: \"Championnat \u00b7 J5\", home: \"FCRD33\", away: \"St M\u00e9dard en Jalles\", hi: \"FC\", ai: \"SJ\", homeLogo: FCRD_LOGO, awayLogo: \"\", score: \"1-7\", result: \"loss\" },\n    { date: \"Sam. 17 oct 2026\", time: \"15h00\", comp: \"Championnat \u00b7 J1\", home: \"Bouscataise US\", away: \"FCRD33\", hi: \"BU\", ai: \"FC\", homeLogo: \"\", awayLogo: FCRD_LOGO, score: \"9-1\", result: \"loss\" },\n    { date: \"Sam. 7 nov 2026\", time: \"15h00\", comp: \"Championnat \u00b7 J6\", home: \"St M\u00e9dard Guiz. Ppe.\", away: \"FCRD33\", hi: \"SG\", ai: \"FC\", homeLogo: \"\", awayLogo: FCRD_LOGO, score: \"\", result: \"\" },\n    { date: \"Sam. 14 nov 2026\", comp: \"Championnat \u00b7 J7 \u2014 Exempt\" },\n    { date: \"Sam. 21 nov 2026\", time: \"13h00\", comp: \"Championnat \u00b7 J8\", home: \"FCRD33\", away: \"La Br\u00e8de FC\", hi: \"FC\", ai: \"LB\", homeLogo: FCRD_LOGO, awayLogo: \"\", score: \"\", result: \"\" },\n    { date: \"Dim. 29 nov 2026\", time: \"11h00\", comp: \"Championnat \u00b7 J9\", home: \"St M\u00e9dard en Jalles\", away: \"FCRD33\", hi: \"SJ\", ai: \"FC\", homeLogo: \"\", awayLogo: FCRD_LOGO, score: \"\", result: \"\" },\n    { date: \"Sam. 12 d\u00e9c 2026\", time: \"13h00\", comp: \"Championnat \u00b7 J10\", home: \"FCRD33\", away: \"Bouscataise US\", hi: \"FC\", ai: \"BU\", homeLogo: FCRD_LOGO, awayLogo: \"\", score: \"\", result: \"\" }\n  ],\n    standings: []\n  };\n\n\/* ---------- MOTEUR DU WIDGET (ne pas modifier) ---------- *\/\nconst tabLabels = [\"Prochain match\", \"Calendrier\", \"Classement\"];\n\nconst TEAM_LIST = [{ label: teamName, data: team }];\n\nlet currentIdx = 0;\nlet currentTab = 0;\n\n\/\/ On cible directement la section du calendrier (plus robuste face aux plugins d'optimisation)\nconst scope = document.querySelector('.match-section');\nif (!scope) { return; }\nconst select = scope.querySelector('.match-team-select');\nconst teamLabel = scope.querySelector('.match-team-label');\nconst nav = scope.querySelector('.match-tabs-nav');\nconst content = scope.querySelector('.match-tabs-content');\n\n\/* ---------- Petits utilitaires ---------- *\/\n\/\/ Le symbole \"et commercial\" est fabriqu\u00e9 ici, pour que WordPress ne le transforme pas dans le code\nconst AMP = String.fromCharCode(38);\n\nfunction esc(s) {\n  s = String(s == null ? '' : s);\n  return s.split(AMP).join(AMP + 'amp;')\n    .split('<').join(AMP + 'lt;')\n    .split('>').join(AMP + 'gt;')\n    .split('\"').join(AMP + 'quot;');\n}\nfunction clean(s, fallback) {\n  s = String(s == null ? '' : s).trim();\n  return (!s || \/^\\[.*\\]$\/.test(s)) ? fallback : s;\n}\nfunction startOfToday() {\n  const t = new Date();\n  t.setHours(0, 0, 0, 0);\n  return t;\n}\nfunction isoOf(d) {\n  const p = function (n) { return (n < 10 ? '0' : '') + n; };\n  return d.getFullYear() + '-' + p(d.getMonth() + 1) + '-' + p(d.getDate());\n}\n\/\/ \"Sam. 3 oct 2026\" -> Date\nfunction frDate(str) {\n  const m = \/(\\d{1,2})\\s+([A-Za-z\\u00C0-\\u00FF]+)\\.?\\s+(\\d{4})\/.exec(str || '');\n  if (!m) return null;\n  const mois = m[2].toLowerCase().normalize('NFD').replace(\/[\\u0300-\\u036f]\/g, '');\n  const prefixes = ['janv', 'fev', 'mar', 'avr', 'mai', 'juin', 'juil', 'aou', 'sep', 'oct', 'nov', 'dec'];\n  for (let i = 0; i < prefixes.length; i++) {\n    if (mois.indexOf(prefixes[i]) === 0) return new Date(+m[3], i, +m[1]);\n  }\n  return null;\n}\nfunction longDate(d) {\n  const s = d.toLocaleDateString('fr-FR', { weekday: 'long', day: 'numeric', month: 'long', year: 'numeric' });\n  return s.charAt(0).toUpperCase() + s.slice(1);\n}\nfunction isFcrd(name) { return \/^FCRD33|Rive Droite\/i.test(name || ''); }\n\nfunction crest(initials, logoUrl, size, onNavy) {\n  const style = 'width:' + size + 'px;height:' + size + 'px;font-size:' + Math.round(size * 0.32) + 'px;' +\n    (logoUrl ? 'background-image:url(\\'' + logoUrl + '\\');' : '');\n  return '<div class=\"crest' + (onNavy ? ' crest--onnavy' : '') + '\" style=\"' + style + '\">' + (logoUrl ? '' : esc(initials)) + '<\/div>';\n}\n\nfunction countdownLabel(dateISO) {\n  if (!dateISO) return '';\n  const diffDays = Math.round((new Date(dateISO + 'T00:00:00') - startOfToday()) \/ 86400000);\n  if (diffDays < 0) return 'Match pass\u00e9';\n  if (diffDays === 0) return \"Aujourd'hui\";\n  if (diffDays === 1) return 'Demain';\n  return 'Dans ' + diffDays + ' jours';\n}\n\n\/* ---------- Choix automatique du prochain match ---------- *\/\nfunction resolveNext(item) {\n  const data = item.data;\n  const today = startOfToday();\n\n  \/\/ 1) premier match \u00e0 venir du calendrier (pas encore de score)\n  let cand = null;\n  (data.season || []).some(function (m) {\n    if (!m.home || m.score) return false;\n    const d = frDate(m.date);\n    if (d) {\n      if (d >= today) { cand = { m: m, d: d }; return true; }\n    }\n    return false;\n  });\n\n  \/\/ 2) fiche \"nextMatch\" facultative\n  const nm = data.nextMatch;\n  if (nm) {\n    if (nm.dateISO) {\n      const nd = new Date(nm.dateISO + 'T00:00:00');\n      if (nd >= today) {\n        if (!cand || isoOf(cand.d) === nm.dateISO || nd < cand.d) {\n          return {\n            comp: nm.comp, journee: nm.journee, dateISO: nm.dateISO, date: nm.date,\n            time: clean(nm.time, 'Horaire \u00e0 confirmer'),\n            home: nm.home, away: nm.away, hi: nm.hi, ai: nm.ai, homeLogo: nm.homeLogo, awayLogo: nm.awayLogo,\n            lieu: clean(nm.lieu, 'Lieu \u00e0 confirmer')\n          };\n        }\n      }\n    }\n  }\n  if (!cand) return null;\n\n  \/\/ 3) sinon on construit la fiche \u00e0 partir du calendrier (horaire et lieu pris dans la ligne du match)\n  const m = cand.m;\n  const jm = \/J(\\d+)\/.exec(m.comp || '');\n  const compBase = (m.comp || '').replace(\/\\s*\u00b7\\s*J\\d+.*$\/, '');\n  return {\n    comp: item.label + (compBase ? ' \u00b7 ' + compBase : ''),\n    journee: jm ? 'Journ\u00e9e ' + jm[1] : '',\n    dateISO: isoOf(cand.d),\n    date: longDate(cand.d),\n    time: clean(m.time, 'Horaire \u00e0 confirmer'),\n    home: m.home, away: m.away, hi: m.hi, ai: m.ai, homeLogo: m.homeLogo, awayLogo: m.awayLogo,\n    lieu: m.lieu ? m.lieu : (isFcrd(m.home) ? 'Domicile' : 'Ext\u00e9rieur')\n  };\n}\n\nfunction renderNextCard(n) {\n  return (\n    '<div class=\"next-card\">' +\n      '<div class=\"next-badges\">' +\n        '<span class=\"next-badge\">' + esc(n.comp) + '<\/span>' +\n        (n.journee ? '<span class=\"next-badge\">' + esc(n.journee) + '<\/span>' : '') +\n      '<\/div>' +\n      '<div class=\"next-teams\">' +\n        '<div class=\"next-team\">' + crest(n.hi, n.homeLogo, 60, true) + '<span class=\"next-team-name\">' + esc(n.home) + '<\/span><\/div>' +\n        '<div class=\"next-vs-block\"><span class=\"next-vs\">VS<\/span><span class=\"next-countdown\">' + countdownLabel(n.dateISO) + '<\/span><\/div>' +\n        '<div class=\"next-team\">' + crest(n.ai, n.awayLogo, 60, true) + '<span class=\"next-team-name\">' + esc(n.away) + '<\/span><\/div>' +\n      '<\/div>' +\n      '<div class=\"next-divider\"><\/div>' +\n      '<div class=\"next-datetime\">' + esc(n.date) + ' \u00b7 ' + esc(n.time) + '<\/div>' +\n      '<div class=\"next-lieu\">' + esc(n.lieu) + '<\/div>' +\n    '<\/div>'\n  );\n}\n\nfunction scoreClass(result) {\n  if (result === 'win') return 'match-card-score--win';\n  if (result === 'loss') return 'match-card-score--loss';\n  if (result === 'draw') return 'match-card-score--draw';\n  return 'match-card-score--upcoming';\n}\n\nfunction matchCard(m, played) {\n  if (!m.home) {\n    return (\n      '<div class=\"match-card\">' +\n        '<div class=\"match-card-top\"><span class=\"match-card-date\">' + esc(String(m.date).toUpperCase()) + '<\/span><\/div>' +\n        '<div style=\"text-align:center;color:#8A8A8A;font-size:12px;font-weight:600;letter-spacing:0.5px;padding:4px 0;\">' + esc(String(m.comp).toUpperCase()) + '<\/div>' +\n      '<\/div>'\n    );\n  }\n  const d = frDate(m.date);\n  let pastNoScore = false;\n  if (!played) {\n    if (d) {\n      if (d < startOfToday()) { pastNoScore = true; }\n    }\n  }\n  const score = played ? m.score : (pastNoScore ? '\u2013' : 'VS');\n  const dateLine = String(m.date) + (m.time ? ' \u00b7 ' + m.time : '');\n  return (\n    '<div class=\"match-card\">' +\n      '<div class=\"match-card-top\">' +\n        '<span class=\"match-card-date\">' + esc(dateLine.toUpperCase()) + '<\/span>' +\n        '<span class=\"match-card-comp\">' + esc(m.comp || '') + '<\/span>' +\n      '<\/div>' +\n      '<div class=\"match-card-row\">' +\n        '<div class=\"match-card-team\">' + crest(m.hi, m.homeLogo, 26, false) + '<span class=\"match-card-team-name\">' + esc(m.home) + '<\/span><\/div>' +\n        '<span class=\"match-card-score ' + (played ? scoreClass(m.result) : 'match-card-score--upcoming') + '\">' + esc(score) + '<\/span>' +\n        '<div class=\"match-card-team match-card-team--away\"><span class=\"match-card-team-name\">' + esc(m.away) + '<\/span>' + crest(m.ai, m.awayLogo, 26, false) + '<\/div>' +\n      '<\/div>' +\n    '<\/div>'\n  );\n}\n\nfunction medalClass(pos) {\n  if (pos === 1) return 'standings-pos--gold';\n  if (pos === 2) return 'standings-pos--silver';\n  if (pos === 3) return 'standings-pos--bronze';\n  return 'standings-pos--other';\n}\n\nfunction standingsRow(s, pos) {\n  return (\n    '<div class=\"standings-row' + (s.fcrd ? ' standings-row--fcrd' : '') + '\">' +\n      '<div class=\"standings-pos ' + medalClass(pos) + '\">' + pos + '<\/div>' +\n      crest(s.i, s.logo, 26, false) +\n      '<div class=\"standings-team\">' + esc(s.team) + '<\/div>' +\n      '<div class=\"standings-mj\">' + esc(s.mj) + ' MJ<\/div>' +\n      '<div class=\"standings-pts\">' + esc(s.pts) + ' pts<\/div>' +\n    '<\/div>'\n  );\n}\n\nfunction render() {\n  const item = TEAM_LIST[currentIdx];\n  const data = item.data;\n\n  nav.querySelectorAll('button').forEach(function (b, idx) {\n    b.classList.toggle('active', idx === currentTab);\n  });\n\n  if (currentTab === 0) {\n    const n = resolveNext(item);\n    content.innerHTML = n ? renderNextCard(n) : '<div class=\"match-empty\">Prochain match \u00e0 venir.<\/div>';\n\n  } else if (currentTab === 1) {\n    const rows = (data.season || []).map(function (m) { return matchCard(m, !!m.score); }).join('');\n    content.innerHTML = rows\n      ? '<div class=\"match-list\">' + rows + '<\/div>'\n      : '<div class=\"match-empty\">Calendrier \u00e0 venir.<\/div>';\n\n  } else {\n    const head =\n      '<div class=\"standings-head\">' +\n        '<span style=\"width:20px;\">POS<\/span>' +\n        '<span style=\"width:26px;\"><\/span>' +\n        '<span style=\"flex:1;margin-left:10px;\">\u00c9QUIPE<\/span>' +\n        '<span style=\"margin-right:12px;\"><\/span>' +\n        '<span>PTS<\/span>' +\n      '<\/div>';\n    \/\/ Classement tri\u00e9 par points. \u00c0 points \u00e9gaux, l'ordre de saisie est conserv\u00e9.\n    const sorted = (data.standings || []).slice().sort(function (a, b) { return b.pts - a.pts; });\n    content.innerHTML = sorted.length\n      ? '<div class=\"standings-wrap\">' + head + sorted.map(function (s, idx) { return standingsRow(s, idx + 1); }).join('') + '<\/div>'\n      : '<div class=\"match-empty\">Classement \u00e0 venir.<\/div>';\n  }\n}\n\n\/* ---------- Menu des \u00e9quipes et onglets ---------- *\/\nif (select) {\n  TEAM_LIST.forEach(function (t, i) {\n    const opt = document.createElement('option');\n    opt.value = String(i);\n    opt.textContent = t.label;\n    select.appendChild(opt);\n  });\n  select.value = '0';\n  select.addEventListener('change', function () { currentIdx = +select.value; render(); });\n}\nif (teamLabel) { teamLabel.textContent = TEAM_LIST[0].label; }\n\ntabLabels.forEach(function (label, i) {\n  const btn = document.createElement('button');\n  btn.className = 'match-tab-btn';\n  btn.textContent = label;\n  btn.addEventListener('click', function () { currentTab = i; render(); });\n  nav.appendChild(btn);\n});\n\nrender();\n}\n\n\/* ---------- D\u00e9marrage s\u00e9curis\u00e9 : attend que la page soit pr\u00eate, et affiche l'erreur s'il y en a une ---------- *\/\nfunction safeStart() {\n  try { start(); }\n  catch (e) {\n    var c = document.querySelector('.match-section .match-tabs-content');\n    if (c) { c.textContent = 'Le calendrier n\\u2019a pas pu se charger : ' + e.message; }\n  }\n}\nif (document.readyState === 'loading') {\n  document.addEventListener('DOMContentLoaded', safeStart);\n} else {\n  safeStart();\n}\n})();\n<\/script>\n\n\n\n<div style=\"margin-top:0;margin-bottom:0;height:80px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Projet p\u00e9dagogique<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Au FCRD33, le football f\u00e9minin a sa place, et on veut qu&rsquo;elle grandisse. Cette saison, nous avons une seule \u00e9quipe : les U14\/U15 F. C&rsquo;est notre point de d\u00e9part. L&rsquo;objectif est clair : reconstruire une fili\u00e8re compl\u00e8te, des U11 jusqu&rsquo;aux seniors, comme le club a d\u00e9j\u00e0 su le faire les ann\u00e9es pr\u00e9c\u00e9dentes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Chez nous, on joue d&rsquo;abord pour le plaisir. Mais le plaisir n&#8217;emp\u00eache pas l&rsquo;exigence. On attend de chaque joueuse qu&rsquo;elle soit pr\u00e9sente, qu&rsquo;elle s&rsquo;investisse et qu&rsquo;elle ait envie de progresser. En \u00e9change, elle trouve un cadre bienveillant, o\u00f9 l&rsquo;on a le droit de se tromper pour apprendre.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ce qu&rsquo;on travaille au quotidien<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nos \u00e9ducateurs font progresser les joueuses sur tous les plans : la technique, la lecture du jeu, le placement, la prise de d\u00e9cision et la condition physique. Les s\u00e9ances sont adapt\u00e9es \u00e0 l&rsquo;\u00e2ge et au niveau du groupe. Le but est de pr\u00e9parer chaque joueuse au football \u00e0 11, puis \u00e0 l&rsquo;\u00e9quipe senior. On travaille aussi l&rsquo;\u00e9tat d&rsquo;esprit : le respect, l&rsquo;esprit d&rsquo;\u00e9quipe, la confiance, et la capacit\u00e9 \u00e0 prendre ses responsabilit\u00e9s sur le terrain.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Reconstruire \u00e9tape par \u00e9tape<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On ne reb\u00e2tit pas une section en une saison. Voici comment on avance :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Cette saison :<\/strong>&nbsp;faire vivre le groupe U14\/U15 F, cr\u00e9er une vraie coh\u00e9sion et un bon niveau de jeu.<\/li>\n\n\n\n<li><strong>D\u00e8s que possible :<\/strong>&nbsp;relancer les plus jeunes, \u00e0 partir des U11, pour qu&rsquo;elles puissent apprendre le foot au club.<\/li>\n\n\n\n<li><strong>Ensuite :<\/strong>&nbsp;faire grandir ces cat\u00e9gories une \u00e0 une, pour que chaque groupe pr\u00e9pare le suivant.<\/li>\n\n\n\n<li><strong>\u00c0 terme :<\/strong>&nbsp;retrouver une \u00e9quipe senior f\u00e9minine, avec des joueuses form\u00e9es au club.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pour y arriver, on compte sur les joueuses, leurs familles et nos \u00e9ducateurs. Chaque nouvelle licenci\u00e9e fait avancer le projet. D\u00e9butante ou d\u00e9j\u00e0 exp\u00e9riment\u00e9e, toute fille qui aime le foot peut trouver sa place au FCRD33.<\/p>\n\n\n\n<div style=\"margin-top:0;margin-bottom:0;height:80px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>14 jeunes licenci\u00e9s \u00e9cole de foot 1 \u00e9quipe U14\/U15 2 \u00c9ducateurs dipl\u00f4m\u00e9s et form\u00e9s 2 s\u00e9ances Mardi et Jeudi Calendrier [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-686","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"woocommerce_thumbnail":false,"woocommerce_single":false,"woocommerce_gallery_thumbnail":false},"uagb_author_info":{"display_name":"admin6586","author_link":"https:\/\/fcrivedroite33.fr\/index.php\/author\/admin6586\/"},"uagb_comment_info":0,"uagb_excerpt":"14 jeunes licenci\u00e9s \u00e9cole de foot 1 \u00e9quipe U14\/U15 2 \u00c9ducateurs dipl\u00f4m\u00e9s et form\u00e9s 2 s\u00e9ances Mardi et Jeudi Calendrier [&hellip;]","_links":{"self":[{"href":"https:\/\/fcrivedroite33.fr\/index.php\/wp-json\/wp\/v2\/pages\/686","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fcrivedroite33.fr\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/fcrivedroite33.fr\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/fcrivedroite33.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fcrivedroite33.fr\/index.php\/wp-json\/wp\/v2\/comments?post=686"}],"version-history":[{"count":7,"href":"https:\/\/fcrivedroite33.fr\/index.php\/wp-json\/wp\/v2\/pages\/686\/revisions"}],"predecessor-version":[{"id":2011,"href":"https:\/\/fcrivedroite33.fr\/index.php\/wp-json\/wp\/v2\/pages\/686\/revisions\/2011"}],"wp:attachment":[{"href":"https:\/\/fcrivedroite33.fr\/index.php\/wp-json\/wp\/v2\/media?parent=686"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}