

/* ===== Lignes Divi : cachées par défaut ===== */
.js-commune-form-row{ display:none !important; }
.js-commune-form-row.is-visible{ display:block !important; }
.js-commune-charte-row{ display:none !important; }
.js-commune-charte-row.is-visible{ display:block !important; }

/* ===== Bouton charte ===== */
.js-commune-charte-button{
  display:inline-block;
  padding:.8rem 1.1rem;
  border-radius:.5rem;
  background:#009490;
  color:#fff;
  text-decoration:none;
  opacity:.6;
  pointer-events:none;
  transition:background-color .2s ease, color .2s ease, opacity .2s ease;
}
.js-commune-charte-button.is-enabled{
  opacity:1 !important;
  pointer-events:auto !important;
}
.js-commune-charte-button:hover{
  background: rgba(0,0,0,.05) !important;
  color:#009490 !important; /* mettez #fff si vous préférez */
}
.js-commune-charte-button:focus-visible{
  outline: 2px solid #009490;
  outline-offset: 2px;
}

/* ===== Spinner ===== */
.dv-spinner{
  width:28px; height:28px; border-radius:50%;
  border:3px solid #e5e7eb; border-top-color:#6b7280;
  animation: dvspin .8s linear infinite; margin:.25rem auto;
}
@keyframes dvspin { to { transform: rotate(360deg); } }

/* ===== Styles du picker ===== */
.dv-picker-wrap .dv-select-commune{
  width:100%;
  max-width:760px;
  padding:.65rem .9rem;
  border:1px solid #e5e7eb;
  border-radius:.75rem;
  background:#fff;
  font-size:1rem; line-height:1.4;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  transition:box-shadow .15s ease, border-color .15s ease;
}
.dv-picker-wrap .dv-select-commune:focus{ outline:none; border-color:#c7d2fe; box-shadow:0 0 0 4px rgba(99,102,241,.15); }

.dv-picker-wrap .dv-output{
  margin-top:1rem; padding:1.25rem;
  background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.04);
  min-height:3rem;
}
.dv-picker-wrap .dv-title{ margin:0 0 .4rem; font-weight:700; font-size:clamp(1.2rem, 1.2vw + .9rem, 1.8rem); }
.dv-picker-wrap .dv-featured,
.dv-picker-wrap .dv-photo-commune{ margin:.75rem 0 1rem; overflow:hidden; }
.dv-picker-wrap .dv-contact-photo{ margin:-10rem auto 1rem; border-radius:200px; overflow:hidden; width:180px }
.dv-picker-wrap .dv-featured img,
.dv-picker-wrap .dv-photo-commune img { width:100%; height:auto; display:block; }
.dv-picker-wrap .dv-contact-photo img{ max-width:180px; height:auto; display:block; }
.dv-picker-wrap .dv-section{ padding:1rem; margin:1rem 0; }
.dv-picker-wrap .dv-section h3{ margin:.2rem 0 .8rem; font-size:1.05rem; }
.dv-picker-wrap .dv-section h3#dv-contacts { font-weight:700; font-size:clamp(1.2rem, 1.2vw + .9rem, 1.8rem); text-align:center; }

.dv-picker-wrap .dv-grid{ display:grid; grid-template-columns: repeat(12, 1fr); gap:14px; }
.dv-picker-wrap .dv-sep{ padding-top:10rem; }
.dv-picker-wrap .col-12{ grid-column: span 12; }
.dv-picker-wrap .col-8{ grid-column: span 8; }
.dv-picker-wrap .col-4{ grid-column: span 4; }
@media (max-width: 980px){
  .dv-picker-wrap .col-8, .dv-picker-wrap .col-4 { grid-column: span 12; }
}

.dv-picker-wrap .dv-fields{ display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:10px; }
@media (max-width: 768px){ .dv-picker-wrap .dv-fields{ grid-template-columns: 1fr; } }
.dv-picker-wrap .dv-field b{ display:block; font-weight:600; margin-bottom:.2rem; }
.dv-picker-wrap .dv-content{ line-height:1.7; }
.dv-picker-wrap .dv-error{ color:#b91c1c; }

.dv-picker-wrap .dv-contacts-wrap{ display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:16px; }
@media (max-width: 980px){ .dv-picker-wrap .dv-contacts-wrap{ grid-template-columns: 1fr; }
	.dv-picker-wrap .dv-contact-card.card2 {margin-top: 180px;}
	.dv-picker-wrap .dv-contact-card {max-width: 250px;}
	.dv-contact-links {font-size: 85%;}
}
.dv-picker-wrap .dv-contact-card{ border:1px solid #eef2f7; border-radius:0; padding:1rem; background:rgba(138,179,37,0.2); }
.dv-picker-wrap .dv-contact-name{ font-weight:700; margin:.25rem 0 .35rem; text-align:center; color:#009490!important; }
.dv-picker-wrap .dv-contact-links a{ text-decoration: underline; }
