/* =========================================================
   CONTACT — FINAL CLEANUP RULES V6.9.10.27
   Page-specific rules only. Do not duplicate below.
   The shell remains handled by urw-functional-core.css.
   ========================================================= */
.urw-contact-card .urw-functional-stack{gap:18px;}
.urw-contact-card .card{margin:0;box-shadow:none;}
.urw-contact-card .contactClubProfileV642,
.urw-contact-card #contactPublicSiteV187{width:100%;box-sizing:border-box;}
.urw-contact-card .contactClubProfileV642{position:relative;padding:26px;border-radius:30px;background:linear-gradient(180deg,#ffffff 0%,#f6faff 100%);border:1px solid rgba(15,23,42,.08);box-shadow:0 24px 60px rgba(15,23,42,.11);overflow:hidden;}
.urw-contact-card .contactClubProfileV642:before{content:"";position:absolute;inset:0 0 auto 0;height:7px;background:linear-gradient(90deg,var(--club-primary,#0b3d6e),rgba(125,180,235,.9));}
.urw-contact-card .contactClubProfileV642 h2{margin:0 0 8px;font-size:1.45rem;letter-spacing:-.025em;color:#061f3f;}
.urw-contact-card .contactClubProfileV642>.mutedText{max-width:760px;margin:0 0 18px;color:#516174;line-height:1.45;}
.urw-contact-card #contactRoot{display:grid;gap:13px;}

/* Hero identity */
.urw-contact-card .contactLogoHeroV691018{position:relative;display:grid;grid-template-columns:132px minmax(0,1fr);gap:22px;align-items:center;padding:20px;border:1px solid rgba(11,61,110,.14);border-radius:26px;background:radial-gradient(circle at 8% 6%,rgba(125,180,235,.35),transparent 34%),linear-gradient(135deg,#ffffff 0%,#eef6ff 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 16px 36px rgba(15,23,42,.075);overflow:hidden;}
.urw-contact-card .contactLogoHeroV691018:after{content:"";position:absolute;right:-60px;top:-70px;width:190px;height:190px;border-radius:999px;background:rgba(11,61,110,.07);pointer-events:none;}
.urw-contact-card .contactLogoPreviewV641{position:relative;z-index:1;width:132px;height:132px;border-radius:32px;background:#fff;border:1px solid rgba(15,23,42,.12);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 18px 34px rgba(15,23,42,.14);color:#64748b;font-size:.8rem;font-weight:900;letter-spacing:.02em;}
.urw-contact-card .contactLogoPreviewV641 img{width:100%;height:100%;object-fit:contain;padding:14px;box-sizing:border-box;background:#fff;}
.urw-contact-card .contactLogoPreviewV641.isEmpty{background:linear-gradient(180deg,#fff,#f8fafc);}
.urw-contact-card .contactHeroContentV691018{position:relative;z-index:1;min-width:0;display:grid;gap:8px;}
.urw-contact-card .contactEyebrowV691018{margin:0;color:var(--club-primary,#0b3d6e);font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.11em;}
.urw-contact-card .contactHeroContentV691018 h3{margin:0;color:#061f3f;font-size:1.55rem;line-height:1.05;letter-spacing:-.035em;}
.urw-contact-card .contactHeroContentV691018 .small-help{margin:0;color:#64748b;line-height:1.35;}
.urw-contact-card .contactHeroContentV691018 .contactHeroMetaLineV691020{display:block;}
.urw-contact-card .contactHeroContentV691018 .contactHeroMetaLineV691020+.contactHeroMetaLineV691020{margin-top:2px;}
.urw-contact-card .contactLogoActionsV641{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px;}
.urw-contact-card input[type="file"]{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none;}
.urw-contact-card .contactLogoUploadBtnV691018{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:11px 17px;background:var(--club-primary,#0b3d6e);color:#fff;font-weight:950;cursor:pointer;box-shadow:0 10px 24px rgba(11,61,110,.22);}
.urw-contact-card #contactRemoveLogoBtnV641{border:1px solid rgba(190,18,60,.22);border-radius:999px;background:#fff7f7;color:#9f1239!important;padding:10px 14px;font-weight:950;cursor:pointer;box-shadow:0 8px 18px rgba(190,18,60,.08);}
.urw-contact-readonly .contactLogoUploadBtnV691018,
.urw-contact-readonly #contactRemoveLogoBtnV641,
.urw-contact-readonly #contactLogoInputV641{display:none!important;}

/* Sections */
.urw-contact-card .contactSectionTitleV691018{display:flex;align-items:center;gap:10px;margin:6px 2px 0;color:#061f3f;font-weight:950;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;}
.urw-contact-card .contactSectionTitleV691018:before{content:"";width:8px;height:8px;border-radius:99px;background:var(--club-primary,#0b3d6e);box-shadow:0 0 0 5px rgba(11,61,110,.08);}
.urw-contact-card .contactFieldsGridV691016{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.urw-contact-card .contact-field--address{grid-column:1/-1;}
.urw-contact-card .formRow{max-width:100%;display:grid;grid-template-columns:minmax(142px,185px) minmax(0,1fr);gap:12px;align-items:center;padding:13px 15px;border:1px solid rgba(15,23,42,.075);border-radius:19px;background:rgba(255,255,255,.9);box-sizing:border-box;box-shadow:0 9px 22px rgba(15,23,42,.035);}
.urw-contact-card .formRow label{display:flex;align-items:center;gap:10px;min-width:0;font-weight:950;color:#061f3f;line-height:1.12;}
.urw-contact-card .contactFieldIcon{width:34px;height:34px;min-width:34px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;color:var(--club-primary,#0b3d6e);background:linear-gradient(180deg,#eef6ff,#ffffff);border:1px solid rgba(11,61,110,.13);box-shadow:0 8px 16px rgba(11,61,110,.08);}
.urw-contact-card .contactFieldIcon svg{width:17px;height:17px;}
.urw-contact-card .formRow .small-help{grid-column:2;margin:2px 0 0;color:#64748b;line-height:1.3;}
.urw-contact-card input[type="text"],
.urw-contact-card input[type="tel"],
.urw-contact-card input[type="email"],
.urw-contact-card input[type="url"]{width:100%;box-sizing:border-box;border:1px solid rgba(15,23,42,.13);border-radius:15px;background:#fff;padding:11px 13px;color:#061f3f;font:inherit;box-shadow:inset 0 1px 0 rgba(15,23,42,.02);}
.urw-contact-card input:focus{outline:none;border-color:rgba(11,61,110,.45);box-shadow:0 0 0 4px rgba(11,61,110,.10);}
.urw-contact-card .contact-field--address input{min-height:48px;font-size:1.03rem;}
.urw-contact-card .readOnlyText,
.urw-contact-card .readOnlyLink{min-width:0;color:#061f3f;font-weight:800;word-break:break-word;padding:10px 0;}
.urw-contact-card .readOnlyLink{color:#0b5cad;text-decoration:none;}
.urw-contact-card .readOnlyLink:hover{text-decoration:underline;}
.urw-contact-readonly .formRow{background:rgba(255,255,255,.74);}
.urw-contact-readonly input{display:none!important;}
.urw-contact-card .contactOnboardingActionsV644{margin-top:4px;padding:16px;border-radius:18px;background:#fff7df;border:1px solid rgba(245,158,11,.2);}
.urw-contact-card .primaryActionLinkV644{border:0;border-radius:999px;background:var(--club-primary,#0b3d6e);color:#fff;padding:11px 16px;font-weight:900;cursor:pointer;box-shadow:0 10px 24px rgba(11,61,110,.2);}
.urw-contact-card [hidden]{display:none!important;}

@media(min-width:980px){
  .urw-contact-card .contact-field--facebook,
  .urw-contact-card .contact-field--instagram,
  .urw-contact-card .contact-field--tiktok,
  .urw-contact-card .contact-field--other1,
  .urw-contact-card .contact-field--other2{grid-column:span 1;}
}
@media(max-width:900px){
  .urw-contact-card .contactFieldsGridV691016{grid-template-columns:1fr;}
  .urw-contact-card .contact-field--address{grid-column:auto;}
}
@media(max-width:760px){
  .urw-contact-card .contactClubProfileV642{padding:16px;border-radius:22px;}
  .urw-contact-card .contactClubProfileV642>.mutedText{font-size:.94rem;}
  .urw-contact-card .formRow{grid-template-columns:1fr;gap:8px;padding:12px;}
  .urw-contact-card .formRow .small-help{grid-column:1;}
  .urw-contact-card .contactLogoHeroV691018{grid-template-columns:92px minmax(0,1fr);gap:14px;padding:15px;border-radius:22px;}
  .urw-contact-card .contactLogoPreviewV641{width:92px;height:92px;border-radius:22px;}
  .urw-contact-card .contactHeroContentV691018 h3{font-size:1.28rem;}
  .urw-contact-card .contactLogoActionsV641{gap:8px;align-items:stretch;}
  .urw-contact-card .contactLogoUploadBtnV691018,
  .urw-contact-card #contactRemoveLogoBtnV641{width:100%;max-width:100%;min-width:0;padding-inline:12px;font-size:.92rem;white-space:normal;text-align:center;}
}
@media(max-width:420px){
  .urw-contact-card .contactLogoHeroV691018{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:14px;}
  .urw-contact-card .contactLogoPreviewV641{width:76px;height:76px;border-radius:18px;}
  .urw-contact-card .contactLogoActionsV641{grid-column:1 / -1;}
  .urw-contact-card .contactFieldIcon{width:30px;height:30px;min-width:30px;border-radius:11px;}
}


/* Contact — app access and gallery block V6.9.10.21 */
.urw-contact-card .contactAppAccessV691021{padding:18px;border-radius:24px;border:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);box-shadow:0 12px 30px rgba(15,23,42,.055);}
.urw-contact-card .contactAppAccessGridV691021{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:14px;margin-top:12px;}
.urw-contact-card .contactAppQrCardV691021,.urw-contact-card .contactPhotoGalleryCardV691021{display:grid;gap:12px;align-content:start;padding:16px;border-radius:20px;background:rgba(255,255,255,.92);border:1px solid rgba(15,23,42,.075);box-shadow:0 8px 22px rgba(15,23,42,.035);}
.urw-contact-card .contactAppQrCardV691021{grid-template-columns:116px minmax(0,1fr);align-items:center;}
.urw-contact-card .contactQrImageV691021{width:116px;height:116px;border-radius:18px;background:#fff;border:1px solid rgba(15,23,42,.12);padding:8px;box-sizing:border-box;box-shadow:0 12px 22px rgba(15,23,42,.09);}
.urw-contact-card .contactAppQrCardV691021 h3,.urw-contact-card .contactPhotoGalleryCardV691021 h3{margin:0;color:#061f3f;font-size:1.08rem;letter-spacing:-.02em;}
.urw-contact-card .contactAppQrCardV691021 .mutedText,.urw-contact-card .contactPhotoGalleryCardV691021 .mutedText{margin:0;color:#64748b;line-height:1.35;}
.urw-contact-card .contactAppLinkV691021{display:inline-flex;align-items:center;justify-content:center;width:max-content;max-width:100%;margin-top:4px;border-radius:999px;background:var(--club-primary,#0b3d6e);color:#fff;text-decoration:none;font-weight:950;padding:10px 15px;box-shadow:0 10px 24px rgba(11,61,110,.22);}
.urw-contact-card .contactGalleryPreviewV187{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.urw-contact-card .contactGalleryPreviewV187 img{width:100%;aspect-ratio:1.15/1;object-fit:cover;border-radius:14px;border:1px solid rgba(15,23,42,.08);background:#f8fafc;}
.urw-contact-card .contactGalleryEmptyV691021{margin:0;color:#64748b;}
@media(max-width:900px){.urw-contact-card .contactAppAccessGridV691021{grid-template-columns:1fr;}.urw-contact-card .contactGalleryPreviewV187{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:520px){.urw-contact-card .contactAppQrCardV691021{grid-template-columns:82px minmax(0,1fr);padding:13px;}.urw-contact-card .contactQrImageV691021{width:82px;height:82px;border-radius:15px;padding:6px;}.urw-contact-card .contactAppLinkV691021{width:100%;}.urw-contact-card .contactGalleryPreviewV187{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* =========================================================
   CONTACT — APPLICATION + PHOTOS SPLIT V6.9.10.22
   Page-specific rules only. Carousel thumbnails and lightbox.
   ========================================================= */
.urw-contact-card .contactAppAccessV691021{display:grid;gap:14px;}
.urw-contact-card .contactAppAccessGridV691021{display:block;}
.urw-contact-card .contactAppSectionV691022{margin-top:0;}
.urw-contact-card .contactPhotosTitleV691022{margin-top:10px;}
.urw-contact-card .contactPhotosSectionV691022{margin-top:0;}
.urw-contact-card .contactGalleryPreviewV187{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.urw-contact-card .contactGalleryThumbV691022{display:block;width:100%;padding:0;border:0;background:transparent;border-radius:16px;cursor:pointer;overflow:hidden;box-shadow:0 10px 20px rgba(15,23,42,.07);}
.urw-contact-card .contactGalleryThumbV691022 img{display:block;width:100%;aspect-ratio:1.2/1;object-fit:cover;border-radius:16px;border:1px solid rgba(15,23,42,.08);background:#f8fafc;transition:transform .18s ease,filter .18s ease;}
.urw-contact-card .contactGalleryThumbV691022:hover img{transform:scale(1.035);filter:saturate(1.04);}
.urw-contact-card .contactGalleryThumbV691022:focus-visible{outline:3px solid rgba(11,61,110,.24);outline-offset:3px;}
.contactGalleryLightboxV691022{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:rgba(2,8,23,.82);backdrop-filter:blur(8px);padding:24px;box-sizing:border-box;}
.contactGalleryFigureV691022{margin:0;display:grid;gap:12px;justify-items:center;max-width:min(92vw,980px);max-height:88vh;}
.contactGalleryFigureV691022 img{max-width:100%;max-height:78vh;object-fit:contain;border-radius:22px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.38);}
.contactGalleryFigureV691022 figcaption{color:#fff;font-weight:900;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 12px;}
.contactGalleryCloseV691022,.contactGalleryNavV691022{position:fixed;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.14);color:#fff;box-shadow:0 18px 38px rgba(0,0,0,.22);cursor:pointer;}
.contactGalleryCloseV691022{right:20px;top:18px;width:46px;height:46px;border-radius:999px;font-size:2rem;line-height:1;}
.contactGalleryNavV691022{top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:999px;font-size:2.3rem;line-height:1;display:flex;align-items:center;justify-content:center;}
.contactGalleryPrevV691022{left:22px;}
.contactGalleryNextV691022{right:22px;}
.contactGalleryLightboxV691022.is-single .contactGalleryNavV691022{display:none;}
@media(max-width:900px){.urw-contact-card .contactGalleryPreviewV187{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:520px){.urw-contact-card .contactGalleryPreviewV187{grid-template-columns:repeat(2,minmax(0,1fr));}.contactGalleryLightboxV691022{padding:12px;}.contactGalleryNavV691022{width:42px;height:42px;font-size:1.9rem;background:rgba(255,255,255,.18);}.contactGalleryPrevV691022{left:10px;}.contactGalleryNextV691022{right:10px;}.contactGalleryCloseV691022{right:10px;top:10px;width:42px;height:42px;font-size:1.8rem;}.contactGalleryFigureV691022 img{max-height:74vh;border-radius:17px;}}

/* =========================================================
   CONTACT — PHOTO UPLOAD FIX V6.9.10.23
   Page-specific rules only. Do not duplicate below.
   ========================================================= */
.urw-contact-card .contactPhotosHeaderV691023{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.urw-contact-card .contactPhotosHeaderV691023 h3{margin:0;}
.urw-contact-card .contactGalleryActionsV691023{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.urw-contact-card .contactGalleryInputV691023{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none;}
.urw-contact-card .contactGalleryUploadBtnV691023{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--club-primary,#0b3d6e);color:#fff;font-weight:950;padding:10px 15px;box-shadow:0 10px 24px rgba(11,61,110,.18);cursor:pointer;line-height:1;text-align:center;white-space:nowrap;}
.urw-contact-card .contactGalleryUploadBtnV691023:hover{filter:brightness(1.04);}
.urw-contact-card .contactGalleryStatusV691023{font-size:.88rem;font-weight:800;color:#64748b;}
@media(max-width:520px){.urw-contact-card .contactPhotosHeaderV691023{align-items:stretch;}.urw-contact-card .contactGalleryActionsV691023,.urw-contact-card .contactGalleryUploadBtnV691023{width:100%;}.urw-contact-card .contactGalleryUploadBtnV691023{padding:11px 14px;}.urw-contact-card .contactGalleryStatusV691023{display:block;width:100%;}}

/* =========================================================
   CONTACT — APP DOWNLOAD LINK TARGET V6.9.10.24
   QR code and CTA now point to the app download/install page.
   ========================================================= */
.urw-contact-card .contactAppLinkV691021{width:auto;min-width:0;padding:9px 14px;font-size:.96rem;line-height:1.05;}
@media(max-width:520px){.urw-contact-card .contactAppLinkV691021{width:auto;max-width:100%;padding:9px 13px;font-size:.92rem;}}

/* =========================================================
   Contact — QR download link fix V6.9.10.26
   Le QR code est aussi un vrai lien cliquable vers la page de téléchargement.
   ========================================================= */
.contactQrLinkV691026{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:24px;
  text-decoration:none;
  outline:none;
}
.contactQrLinkV691026:focus-visible{
  box-shadow:0 0 0 4px rgba(11,61,110,.18);
}


/* =========================================================
   URW V7.10.1 — CONTACT MOBILE LOGO ACTION FIX
   Correction ciblée : éviter le débordement du bouton logo sur mobile.
   ========================================================= */
@media(max-width:520px){
  .urw-contact-card .contactLogoHeroV691018{
    grid-template-columns:1fr!important;
    justify-items:stretch!important;
    align-items:start!important;
  }
  .urw-contact-card .contactLogoPreviewV641{
    justify-self:start!important;
    width:88px!important;
    height:88px!important;
  }
  .urw-contact-card .contactHeroContentV691018{
    width:100%!important;
    min-width:0!important;
  }
  .urw-contact-card .contactLogoActionsV641{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    min-width:0!important;
  }
  .urw-contact-card .contactLogoUploadBtnV691018,
  .urw-contact-card #contactRemoveLogoBtnV641{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    justify-content:center!important;
    white-space:normal!important;
  }
}
