/* Design moderne et responsive */
.df-wrapper { max-width: 920px; margin: 2rem auto; padding: 1.5rem; background: #fff; border-radius: 16px; box-shadow: 0 10px 30px rgba(0,0,0,.06); }
.df-title { text-align: center; font-size: 2rem; margin-bottom: .25rem; letter-spacing:.3px; }
.df-subtitle { text-align: center; font-weight: 600; color: #555; margin-bottom: 1.5rem; }
.df-form label { display:block; font-weight:600; margin-bottom:.35rem; }
.df-row { margin-bottom: 1rem; }
.df-grid-2 { display:grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.df-col input, .df-row input, .df-row select, .df-row textarea { width: 100%; padding: .75rem 1rem; border-radius: 12px; border:1px solid #e3e3e7; outline:none; transition: box-shadow .2s, border-color .2s; background:#fafafe; }
.df-col input:focus, .df-row input:focus, .df-row select:focus, .df-row textarea:focus { border-color:#d0c1ff; box-shadow: 0 0 0 4px rgba(142,97,255,.12); background:#fff; }
.df-inline { display:flex; gap:1rem; align-items:center; }
.df-radio { display:flex; gap:.5rem; align-items:center; font-weight:600; }
.df-actions { display:flex; justify-content:center; margin-top:1.25rem; }


/*.df-btn { font-size: 16px;
font-family: 'Campton' !important;
    font-weight: 300;
        background-color: #c1a16e;
    line-height: 1;
    letter-spacing: 0.01em;
    text-transform: capitalize; }*/



.df-btn:hover { transform: translateY(-1px); }
@media (max-width: 640px) { .df-grid-2 { grid-template-columns: 1fr; } .df-wrapper{ padding:1rem; } }
