/* ====== Brand & font ====== */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

:root{
  --noel-red:   #7B1E22; /* buttons/active */
  --noel-green: #134E3A; /* borders/focus, headings */
  --gap: 18px;
  --radius: 12px;
  --input-h: 46px;
}

/* ====== Form scope ====== */
#inscription-noel{
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.45;
  color: #1f2937;
}

/* ====== 2-column grid everywhere ====== */
#inscription-noel .grid-2{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: var(--gap);
}
#inscription-noel .span-2{ grid-column: 1 / -1; }

/* ====== Fields, labels, inputs ====== */
#inscription-noel .field{ min-width:0; }
#inscription-noel .label{
  display:block;
  font-size:14px;
  font-weight:600;
  color:#374151;
  margin: 0 0 6px;
}

/* CF7 wraps */
#inscription-noel .wpcf7-form-control-wrap{ display:block; width:100%; }

/* Text & URL & Email & Tel & Textarea & Select */
#inscription-noel input[type="text"],
#inscription-noel input[type="url"],
#inscription-noel input[type="email"],
#inscription-noel input[type="tel"],
#inscription-noel select,
#inscription-noel textarea{
  width:100%;
  font-family:inherit;
  font-size:14px;
  font-weight:500;
  color:#111827;
  background:#fff;
  border:1px solid rgba(19,78,58,0.45);           /* your green */
  border-radius: var(--radius);
  padding: 10px 14px;
  height: var(--input-h);
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

#inscription-noel textarea{
  min-height:120px;
  height:auto;
  resize: vertical;
}

/* Placeholder */
#inscription-noel ::placeholder{ color:#9ca3af; }

/* Focus */
#inscription-noel input:focus,
#inscription-noel select:focus,
#inscription-noel textarea:focus{
  border-color: var(--noel-green);
  box-shadow: 0 0 0 3px rgba(19,78,58,0.18);
}

/* File input (modern browsers) */
#inscription-noel input[type="file"]{
  font-size:14px;
  background:#fff;
  border:1px solid rgba(19,78,58,0.45);
  border-radius: var(--radius);
  padding: 6px 10px;
  height:auto;
}
#inscription-noel input[type="file"]::file-selector-button{
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  color:#fff;
  background: var(--noel-green);
  border: none;
  border-radius: 10px;
  padding: 8px 12px;
  margin-right: 10px;
  cursor: pointer;
}
#inscription-noel input[type="file"]::file-selector-button:hover{
  filter: brightness(0.95);
}

/* Remove stray <br> CF7 inserts */
#inscription-noel br{ display:none; }

/* ====== Section headings ====== */
#inscription-noel .divider {
  font-weight:800;
  color: var(--noel-green);
  border-top: 2px solid #f0f2f5;
  padding-top: 10px;
  margin-top: 6px;
}

/* ====== Radio as pills (profil) ====== */
#inscription-noel .profil .wpcf7-list-item{ margin-right:10px; }
#inscription-noel .profil .wpcf7-list-item label{
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid rgba(19,78,58,0.45);
  color:#374151;
  background:#fff;
  padding:8px 14px;
  border-radius: 999px;
  cursor:pointer;
  transition: all .15s ease;
  font-weight:600;
}
#inscription-noel .profil input[type="radio"]{ /* keep native input hidden but accessible */
  position:absolute; opacity:0; width:1px; height:1px; overflow:hidden;
}
#inscription-noel .profil input[type="radio"]:checked + span{ /* CF7 turns text into a span */
  background: var(--noel-red);
  border-color: var(--noel-red);
  color:#fff;
}

/* ====== Submit button ====== */
#inscription-noel .btn.btn-primary,
#inscription-noel input[type="submit"].wpcf7-submit{
  display:inline-block;
  width:auto;
  font-family:inherit;
  font-size:14px;
  font-weight:800;
  color:#fff;
  background: var(--noel-red);
  border: none;
  border-radius: var(--radius);
  padding: 14px 22px;
  cursor:pointer;
  transition: filter .15s ease, transform .02s ease;
}
#inscription-noel .btn.btn-primary:hover,
#inscription-noel input[type="submit"].wpcf7-submit:hover{
  filter: brightness(0.92);
}
#inscription-noel .btn.btn-primary:active,
#inscription-noel input[type="submit"].wpcf7-submit:active{
  transform: translateY(1px);
}

/* ====== Messages / errors (optional polish) ====== */
#inscription-noel .wpcf7 form .wpcf7-response-output{
  border-radius: var(--radius);
  font-size:14px;
}
#inscription-noel .wpcf7-not-valid-tip{
  font-size:12px; margin-top:6px;
}
#inscription-noel .wpcf7-form-control.wpcf7-not-valid{
  border-color:#dc2626 !important;
  box-shadow: 0 0 0 3px rgba(220,38,38,0.15) !important;
}

/* ====== Show/Hide sections (JS toggles aria-hidden) ====== */
#inscription-noel .profile-section[aria-hidden="true"]{ display:none; }

/* ====== Responsive ====== */
@media (max-width: 768px){
  #inscription-noel .grid-2{ grid-template-columns: 1fr; }
}

/* ===== smaller submit button ===== */
#inscription-noel input[type="submit"].wpcf7-submit,
#inscription-noel .btn.btn-primary{
  font-size: 13px;
  padding: 4px 4px;
  border-radius: 10px;
	
}
/* Kill the extra spacing CF7 adds around the submit */
#inscription-noel .actions > p{
  margin: 0 !important;
  padding: 0 !important;
  display: contents;            /* ignore the <p> box so the input sizes itself */
}

/* (optional) if you prefer not to use `contents`, use inline-block instead */
/* #inscription-noel .actions > p{ display:inline-block; } */

/* keep the spinner aligned next to the button */
#inscription-noel .actions .wpcf7-spinner{ margin-left:8px; }


/* ===== smaller file "Choisir un fichier" button ===== */
#inscription-noel input[type="file"]{
  padding: 4px 4px;         /* shrink field */
}
#inscription-noel input[type="file"]::file-selector-button{
  font-size: 13px;
  padding: 6px 10px;
  border-radius: 8px;
}

/* ===== smaller radio "pills" (Type de profil) ===== */
/* make the span the visual pill so it can be smaller */
#inscription-noel .profil .wpcf7-list-item label{
  padding: 0;                           /* remove big outer padding */
  border: 1px solid rgba(19,78,58,0.45);
  border-radius: 999px;
}
#inscription-noel .profil .wpcf7-list-item label span{
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 12px;                    /* smaller pill */
  border-radius: 999px;
  line-height: 1.1;
}
#inscription-noel .profil input[type="radio"]{
  position: absolute; opacity: 0; width: 1px; height: 1px; overflow: hidden;
}
#inscription-noel .profil input[type="radio"]:checked + span{
  background: var(--noel-red);
  color: #fff;
}
/* border follows the active state (modern browsers) */
#inscription-noel .profil .wpcf7-list-item label:has(input[type="radio"]:checked){
  border-color: var(--noel-red);
}

/* Center the CF7 submit button in the actions row */
#inscription-noel .actions{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px; /* space for the spinner */
}

#inscription-noel .actions > p{
  margin: 0 !important;
  padding: 0 !important;
  display: contents;           /* let the input be the flex item */
}

#inscription-noel .wpcf7-submit{
  display: inline-block;       /* size to content so centering is clean */
}

#inscription-noel .actions .wpcf7-spinner{
  margin-left: 0;              /* spinner sits in the gap */
}
/* Make the CF7 submit small and centered on this page/form */
body.page-id-1078 #inscription-noel .actions{
  display:flex; justify-content:center; align-items:center; gap:8px;
}
body.page-id-1078 #inscription-noel .actions > p{ margin:0; padding:0; display:contents; }

body.page-id-1078 #inscription-noel input.wpcf7-form-control.wpcf7-submit{
  height: auto !important;
  line-height: normal !important;
  font-size: 13px !important;
  padding: 10px 16px !important;
  border-radius: 10px !important;
  background: var(--noel-red) !important;
  color:#fff !important;
  display:inline-block;
}

/* Make group titles look like other labels */
#inscription-noel .divider{
  font-family: inherit !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;     /* same as .label */
  color: #374151 !important;       /* same as .label */
  text-transform: none !important;
  letter-spacing: 0 !important;

  /* keep the thin divider look */
  border-top: 1px solid #e5e7eb;
  padding-top: 6px;
  margin-top: 6px;
}



/* Hide footer only on page ID 1078 */
body.page-id-1078 footer,
body.page-id-1078 #colophon,
body.page-id-1078 .site-footer,
body.page-id-1078 .elementor-location-footer {
  display: none !important;
}

/* Optional: kill leftover spacing at bottom */
body.page-id-1078 #content,
body.page-id-1078 .site-content,
body.page-id-1078 main {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Hide HEADER only on page ID 1078 (covers Elementor + most themes) */
body.page-id-1078 header,
body.page-id-1078 .site-header,
body.page-id-1078 .elementor-location-header,
body.page-id-1078 #masthead,
body.page-id-1078 .navbar-area {
  display: none !important;
}

/* Kill leftover top spacing on that page */
body.page-id-1078,
body.page-id-1078 #content,
body.page-id-1078 .site-content,
body.page-id-1078 main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* If you used the split layout vars earlier, zero the offset on this page */
body.page-id-1078 { --header-offset: 0px; }
body.page-id-1078 .noel-left { top: 0; height: 100svh; }
body.page-id-1078 .noel-right { margin-top: 0; height: 100svh; }

/* === Hide FOOTER on all pages === */
footer,
#colophon,
.site-footer,
.elementor-location-footer {
  display: none !important;
}

/* === Remove bottom spacing globally === */
#content,
.site-content,
main {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* === Hide HEADER on all pages === */
header,
.site-header,
.elementor-location-header,
#masthead,
.navbar-area {
  display: none !important;
}

/* === Remove top spacing globally === */
body,
#content,
.site-content,
main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* === Split layout vars: zero the offset everywhere === */
body { --header-offset: 0px; }
.noel-left  { top: 0; height: 100svh; }   /* assumes position: sticky/fixed set elsewhere */
.noel-right { margin-top: 0; height: 100svh; }

/* Keep room for the WP admin bar when logged in */
body.admin-bar { padding-top: 32px !important; }
@media (max-width: 782px){
  body.admin-bar { padding-top: 46px !important; }
}



/* Badge "danger" collé au label, sur la même ligne */
#inscription-noel .label-badge-danger{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-left:8px;
  padding:4px 10px;
  font-size:12px;
  font-weight:700;
  color:#7B1E22;                           /* var(--noel-red) si tu veux */
  background: rgba(123,30,34,0.12);
  border:1px solid rgba(123,30,34,0.38);
  border-radius:999px;
  line-height:1.1;
  white-space:nowrap;                      /* reste sur la même ligne */
}
@media (max-width:768px){
  #inscription-noel .label-badge-danger{ white-space:normal; }
}










/* ====== Brand & font (shared) ====== */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

:root{
  --noel-red:   #7B1E22; /* buttons/active */
  --noel-green: #134E3A; /* borders/focus, headings */
  --gap: 18px;
  --radius: 12px;
  --input-h: 46px;
}

/* ====== Form scope ====== */
#inscription-noel-m{
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.45;
  color: #1f2937;
}

/* ====== 2-column grid everywhere ====== */
#inscription-noel-m .grid-2{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: var(--gap);
}
#inscription-noel-m .span-2{ grid-column: 1 / -1; }

/* ====== Fields, labels, inputs ====== */
#inscription-noel-m .field{ min-width:0; }
#inscription-noel-m .label{
  display:block;
  font-size:14px;
  font-weight:600;
  color:#374151;
  margin: 0 0 6px;
}

/* CF7 wraps */
#inscription-noel-m .wpcf7-form-control-wrap{ display:block; width:100%; }

/* Text & URL & Email & Tel & Textarea & Select */
#inscription-noel-m input[type="text"],
#inscription-noel-m input[type="url"],
#inscription-noel-m input[type="email"],
#inscription-noel-m input[type="tel"],
#inscription-noel-m select,
#inscription-noel-m textarea{
  width:100%;
  font-family:inherit;
  font-size:14px;
  font-weight:500;
  color:#111827;
  background:#fff;
  border:1px solid rgba(19,78,58,0.45);
  border-radius: var(--radius);
  padding: 10px 14px;
  height: var(--input-h);
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

#inscription-noel-m textarea{
  min-height:120px;
  height:auto;
  resize: vertical;
}

/* Placeholder */
#inscription-noel-m ::placeholder{ color:#9ca3af; }

/* Focus */
#inscription-noel-m input:focus,
#inscription-noel-m select:focus,
#inscription-noel-m textarea:focus{
  border-color: var(--noel-green);
  box-shadow: 0 0 0 3px rgba(19,78,58,0.18);
}

/* File input (modern browsers) */
#inscription-noel-m input[type="file"]{
  font-size:14px;
  background:#fff;
  border:1px solid rgba(19,78,58,0.45);
  border-radius: var(--radius);
  padding: 6px 10px;
  height:auto;
}
#inscription-noel-m input[type="file"]::file-selector-button{
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  color:#fff;
  background: var(--noel-green);
  border: none;
  border-radius: 10px;
  padding: 8px 12px;
  margin-right: 10px;
  cursor: pointer;
}
#inscription-noel-m input[type="file"]::file-selector-button:hover{
  filter: brightness(0.95);
}

/* Remove stray <br> CF7 inserts */
#inscription-noel-m br{ display:none; }

/* ====== Section headings ====== */
#inscription-noel-m .divider {
  font-weight:800;
  color: var(--noel-green);
  border-top: 2px solid #f0f2f5;
  padding-top: 10px;
  margin-top: 6px;
}

/* ====== Radio as pills (profil) ====== */
#inscription-noel-m .profil .wpcf7-list-item{ margin-right:10px; }
#inscription-noel-m .profil .wpcf7-list-item label{
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid rgba(19,78,58,0.45);
  color:#374151;
  background:#fff;
  padding:8px 14px;
  border-radius: 999px;
  cursor:pointer;
  transition: all .15s ease;
  font-weight:600;
}
#inscription-noel-m .profil input[type="radio"]{
  position:absolute; opacity:0; width:1px; height:1px; overflow:hidden;
}
#inscription-noel-m .profil input[type="radio"]:checked + span{
  background: var(--noel-red);
  border-color: var(--noel-red);
  color:#fff;
}

/* ====== Submit button ====== */
#inscription-noel-m .btn.btn-primary,
#inscription-noel-m input[type="submit"].wpcf7-submit{
  display:inline-block;
  width:auto;
  font-family:inherit;
  font-size:14px;
  font-weight:800;
  color:#fff;
  background: var(--noel-red);
  border: none;
  border-radius: var(--radius);
  padding: 14px 22px;
  cursor:pointer;
  transition: filter .15s ease, transform .02s ease;
}
#inscription-noel-m .btn.btn-primary:hover,
#inscription-noel-m input[type="submit"].wpcf7-submit:hover{
  filter: brightness(0.92);
}
#inscription-noel-m .btn.btn-primary:active,
#inscription-noel-m input[type="submit"].wpcf7-submit:active{
  transform: translateY(1px);
}

/* ====== Messages / errors (optional polish) ====== */
#inscription-noel-m .wpcf7 form .wpcf7-response-output{
  border-radius: var(--radius);
  font-size:14px;
}
#inscription-noel-m .wpcf7-not-valid-tip{
  font-size:12px; margin-top:6px;
}
#inscription-noel-m .wpcf7-form-control.wpcf7-not-valid{
  border-color:#dc2626 !important;
  box-shadow: 0 0 0 3px rgba(220,38,38,0.15) !important;
}

/* ====== Show/Hide sections (JS toggles aria-hidden) ====== */
#inscription-noel-m .profile-section[aria-hidden="true"]{ display:none; }

/* ====== Responsive ====== */
@media (max-width: 768px){
  #inscription-noel-m .grid-2{ grid-template-columns: 1fr; }
}

/* ===== smaller submit button ===== */
#inscription-noel-m input[type="submit"].wpcf7-submit,
#inscription-noel-m .btn.btn-primary{
  font-size: 13px;
  padding: 4px 4px;
  border-radius: 10px;
}

/* Kill the extra spacing CF7 adds around the submit */
#inscription-noel-m .actions > p{
  margin: 0 !important;
  padding: 0 !important;
  display: contents;
}

/* keep the spinner aligned next to the button */
#inscription-noel-m .actions .wpcf7-spinner{ margin-left:8px; }

/* ===== smaller file "Choisir un fichier" button ===== */
#inscription-noel-m input[type="file"]{
  padding: 4px 4px;
}
#inscription-noel-m input[type="file"]::file-selector-button{
  font-size: 13px;
  padding: 6px 10px;
  border-radius: 8px;
}

/* ===== smaller radio "pills" (Type de profil) ===== */
#inscription-noel-m .profil .wpcf7-list-item label{
  padding: 0;
  border: 1px solid rgba(19,78,58,0.45);
  border-radius: 999px;
}
#inscription-noel-m .profil .wpcf7-list-item label span{
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 999px;
  line-height: 1.1;
}
#inscription-noel-m .profil input[type="radio"]{
  position: absolute; opacity: 0; width: 1px; height: 1px; overflow: hidden;
}
#inscription-noel-m .profil input[type="radio"]:checked + span{
  background: var(--noel-red);
  color: #fff;
}
/* border follows the active state (modern browsers) */
#inscription-noel-m .profil .wpcf7-list-item label:has(input[type="radio"]:checked){
  border-color: var(--noel-red);
}



/* Base submit style (mobile form) */
#inscription-noel-m .btn.btn-primary,
#inscription-noel-m input[type="submit"].wpcf7-submit{
  display: inline-block;
  width: auto;
  font-family: inherit;
  font-size: 14px;
  font-weight: 800;
  color: #fff;
  background: var(--noel-red);
  border: none;
  border-radius: var(--radius);
  padding: 14px 22px;
  cursor: pointer;
  transition: filter .15s ease, transform .02s ease;
}
#inscription-noel-m .btn.btn-primary:hover,
#inscription-noel-m input[type="submit"].wpcf7-submit:hover{
  filter: brightness(0.92);
}
#inscription-noel-m .btn.btn-primary:active,
#inscription-noel-m input[type="submit"].wpcf7-submit:active{
  transform: translateY(1px);
}

/* Smaller version (like desktop tweak) + protect from global height rules */
#inscription-noel-m input[type="submit"].wpcf7-submit,
#inscription-noel-m .btn.btn-primary{
  height: auto !important;
  line-height: normal !important;
  font-size: 13px;
  padding: 10px 10px;
  border-radius: 10px;
}

/* Center the button row (matches other form) */
#inscription-noel-m .actions{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px; /* space for spinner */
}
#inscription-noel-m .actions > p{
  margin: 0 !important;
  padding: 0 !important;
  display: contents; /* makes the input the flex item */
}
#inscription-noel-m .wpcf7-submit{ display: inline-block; }
#inscription-noel-m .actions .wpcf7-spinner{ margin-left: 0; }



/* Badge "danger" — same style on mobile form */
#inscription-noel-m .label-badge-danger{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 8px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 700;
  color: #7B1E22; /* or var(--noel-red) */
  background: rgba(123,30,34,0.12);
  border: 1px solid rgba(123,30,34,0.38);
  border-radius: 999px;
  line-height: 1.1;
  white-space: nowrap;
}

@media (max-width: 768px){
  #inscription-noel-m .label-badge-danger{ white-space: normal; }
}


/* ===== mfile / codedropz styling (desktop + mobile) ===== */
:is(#inscription-noel, #inscription-noel-m) .codedropz-upload-container{
  border: 1px dashed rgba(19,78,58,0.45);   /* noel-green */
  background: #fff;
  border-radius: var(--radius);
  padding: 14px;
  min-height: 120px;
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

/* focus/drag highlight */
:is(#inscription-noel, #inscription-noel-m) .codedropz-upload-container:focus-within{
  border-color: var(--noel-green);
  box-shadow: 0 0 0 3px rgba(19,78,58,0.18);
}

/* inner layout + typography matches .label */
:is(#inscription-noel, #inscription-noel-m) .codedropz-upload-inner{
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:#374151;
  text-align: center;
}

:is(#inscription-noel, #inscription-noel-m) .codedropz-upload-inner h3{
  margin: 0 0 6px;
  font-size:14px;
  font-weight:600;   /* same as .label */
  line-height:1.4;
  color:#374151;
}

:is(#inscription-noel, #inscription-noel-m) .codedropz-upload-inner > span{
  display:inline-block;
  margin: 0 8px 10px;
  font-size:12px;
  color:#9ca3af;
}

/* Browse button -> same vibe as your file button */
:is(#inscription-noel, #inscription-noel-m) .codedropz-btn-wrap .cd-upload-btn{
  display:inline-block;
  font-family:inherit;
  font-size:14px;
  font-weight:700;
  color:#fff;
  background: var(--noel-green);
  border:0;
  border-radius:10px;
  padding:8px 12px;
  text-decoration:none;
  cursor:pointer;
  transition: filter .15s ease, transform .02s ease;
}
:is(#inscription-noel, #inscription-noel-m) .codedropz-btn-wrap .cd-upload-btn:hover{ filter:brightness(.95); }
:is(#inscription-noel, #inscription-noel-m) .codedropz-btn-wrap .cd-upload-btn:active{ transform:translateY(1px); }

/* uploaded items (if plugin shows list) */
:is(#inscription-noel, #inscription-noel-m) .cd-upload-preview,
:is(#inscription-noel, #inscription-noel-m) .cd-upload-response,
:is(#inscription-noel, #inscription-noel-m) .cd-upload-list{
  margin-top:10px;
  font-size:13px;
  color:#374151;
}

/*
Theme Name: Bridge
Theme URI: https://bridgelanding.qodeinteractive.com/
Description: Creative Multipurpose WordPress Theme
Tags: one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-menu, featured-images, flexible-header, post-formats, sticky-post, threaded-comments, translation-ready
Author: Qode Interactive
Author URI: https://qodeinteractive.com/
Text Domain: bridge
Version: 30.8.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

CSS changes can be made in files in the /css/ folder. This is a placeholder file required by WordPress, so do not delete it.

*/
