/* ============================================================
   Location Sénégal — voiture · Formulaires d'inscription (Gravity Forms, thème « gravity-theme »)
   Valeurs relevées sur Figma rent-senegal 1287:14472 (bureau) · 1289:14617 (mobile).
   lv-form.js regroupe les champs de chaque section en cartes « Bloc N » (.lvf-card).
   Tout est scopé sous .lvf-col : les règles globales Gravity Forms de lv-charte.css (formulaire contact) restent intactes.
   ============================================================ */
.lvf-col{max-width:820px;}
.lvf-head{padding:44px 0;}
.lvf-head .lv-reperes{margin-top:22px;}
.lvf-note{margin-top:18px!important;font-size:13.5px;line-height:1.6;font-weight:600;color:var(--lv-green-dk);}
.lvf-bg{background:var(--lv-warm);padding:36px 0 40px;}
.lvf-after{margin-top:16px!important;font-size:13px;line-height:1.65;color:var(--lv-muted);}

.lvf-col .gform_wrapper{max-width:none;margin:0!important;font-family:var(--lv-font);color:var(--lv-txt);}
.lvf-col .gform_wrapper *{box-sizing:border-box;}
.lvf-col .gform_wrapper .gform_heading{display:none;}
.lvf-col .gform_wrapper .gform_fields{display:flex!important;flex-direction:column;gap:20px;}
.lvf-col .gform_wrapper fieldset{border:0;margin:0;padding:0;min-width:0;}

/* ---------- Carte de bloc ---------- */
.lvf-card{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px 20px;background:#fff;border:1px solid var(--lv-line);border-radius:12px;padding:30px 32px;}
.lvf-card>.gfield{grid-column:span 12;min-width:0;margin:0!important;padding:0!important;}
.lvf-card>.gfield--width-half{grid-column:span 6;}
.lvf-card>.gfield--width-third{grid-column:span 4;}
.lvf-card>.gfield_visibility_hidden,.lvf-card>.gform_hidden,.lvf-card>.gfield[style*="display: none"],.lvf-card>.gfield[style*="display:none"]{display:none!important;}
.lvf-col .gsection{border:0!important;padding:0!important;margin:0 0 2px!important;}
.lvf-bh{display:flex;align-items:center;gap:14px;}
.lvf-bh__n{background:var(--lv-green);color:#fff;border-radius:16px;padding:6px 12px;font-size:12px;font-weight:700;line-height:normal;white-space:nowrap;}
body .lvf-col .gsection_title{margin:0!important;font-family:var(--lv-font)!important;font-size:21px!important;font-weight:700!important;line-height:1.3!important;color:var(--lv-ink)!important;letter-spacing:normal!important;text-transform:none!important;}
.lvf-col .gsection_description{margin-top:10px!important;padding:0!important;font-size:14.5px!important;line-height:1.7!important;color:var(--lv-txt)!important;}

/* ---------- Libellés et pastilles ---------- */
body.lv-charte .lvf-col .gform_wrapper .gfield_label{display:flex!important;align-items:center;flex-wrap:wrap;gap:6px 8px;margin:0 0 7px!important;padding:0!important;font-family:var(--lv-font)!important;font-size:13.5px!important;font-weight:600!important;line-height:normal!important;letter-spacing:0!important;text-transform:none!important;color:var(--lv-ink)!important;}
.lvf-col .gfield_required{display:none!important;}
.lvf-st{display:inline-block;border-radius:10px;padding:3px 8px;font-size:10.5px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;line-height:normal;white-space:nowrap;}
.lvf-st--o{background:var(--lv-green-lt);color:var(--lv-green-dk);}
.lvf-st--f{background:var(--lv-line);color:var(--lv-txt);}
.lvf-st--c{background:var(--lv-sand-lt);color:var(--lv-terra);}
.lvf-col .hidden_label>.gfield_label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}

/* ---------- Champs ---------- */
body.lv-charte .lvf-col .gform_wrapper input[type=text],
body.lv-charte .lvf-col .gform_wrapper input[type=email],
body.lv-charte .lvf-col .gform_wrapper input[type=tel],
body.lv-charte .lvf-col .gform_wrapper input[type=number],
body.lv-charte .lvf-col .gform_wrapper input[type=date],
body.lv-charte .lvf-col .gform_wrapper select{display:block;width:100%!important;height:46px!important;margin:0!important;padding:0 14px!important;border:1px solid var(--lv-line)!important;border-radius:6px!important;background-color:#fff!important;box-shadow:none!important;font-family:var(--lv-font)!important;font-size:14px!important;line-height:normal!important;color:var(--lv-ink)!important;-webkit-appearance:none;appearance:none;}
body.lv-charte .lvf-col .gform_wrapper select{padding-right:40px!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23767B84' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 16px center!important;cursor:pointer;}
body.lv-charte .lvf-col .gform_wrapper select.is-empty{color:var(--lv-muted)!important;}
.lvf-col .gform_wrapper input::placeholder{color:var(--lv-muted);opacity:1;}
body.lv-charte .lvf-col .gform_wrapper input:focus,body.lv-charte .lvf-col .gform_wrapper select:focus{border-color:var(--lv-green)!important;box-shadow:0 0 0 3px rgba(30,158,62,.14)!important;outline:none!important;}
.lvf-col .lvf-maj input{text-transform:uppercase;}
.lvf-col .ginput_container{margin:0!important;}
body.lv-charte .lvf-col .gform_wrapper .gfield_description{margin:7px 0 0!important;padding:0!important;font-size:12.5px!important;line-height:1.58!important;color:var(--lv-muted)!important;}
.lvf-col .gform_fileupload_rules{display:none!important;}
/* Consignes de plage ajoutées par Gravity Forms (« nombre entre 1 et 15 ») : la maquette n'en a pas, l'erreur s'affiche si besoin. */
.lvf-col .gfield_description.instruction:not(.validation_message){display:none!important;}

/* Oui / non (1287:14729) */
.lvf-col .lvf-yn .gfield_radio{display:flex;gap:10px;}
.lvf-col .lvf-yn--half .gfield_radio{max-width:368px;}
.lvf-col .lvf-yn .gchoice{flex:1 1 0;min-width:0;position:relative;margin:0!important;}
.lvf-col .lvf-yn .gchoice input{position:absolute;opacity:0;pointer-events:none;}
body.lv-charte .lvf-col .lvf-yn .gchoice label{display:flex!important;align-items:center;justify-content:center;max-width:none!important;width:100%;margin:0!important;padding:13px 16px!important;border:1px solid var(--lv-line);border-radius:6px;background:#fff;font-size:14px!important;font-weight:600;line-height:normal!important;color:var(--lv-txt)!important;cursor:pointer;transition:background-color .12s,border-color .12s,color .12s;}
body.lv-charte .lvf-col .lvf-yn .gchoice label:hover{border-color:var(--lv-green);}
body.lv-charte .lvf-col .lvf-yn .gchoice input:checked+label{background:var(--lv-green);border-color:var(--lv-green);color:#fff!important;}
.lvf-col .lvf-yn .gchoice input:focus-visible+label{box-shadow:0 0 0 3px rgba(30,158,62,.25);}

/* Puces d'équipement (1287:14741) */
.lvf-col .lvf-chips .gfield_checkbox{display:flex;flex-wrap:wrap;gap:10px;}
.lvf-col .lvf-chips .gchoice{position:relative;margin:0!important;}
.lvf-col .lvf-chips .gchoice input{position:absolute;opacity:0;pointer-events:none;}
body.lv-charte .lvf-col .lvf-chips .gchoice label{display:block!important;max-width:none!important;margin:0!important;padding:9px 16px!important;border:1px solid var(--lv-line);border-radius:16px;background:#fff;font-size:13px!important;font-weight:500;line-height:normal!important;color:var(--lv-txt)!important;cursor:pointer;transition:background-color .12s,border-color .12s,color .12s;}
body.lv-charte .lvf-col .lvf-chips .gchoice label:hover{border-color:var(--lv-green);}
body.lv-charte .lvf-col .lvf-chips .gchoice input:checked+label{background:var(--lv-green-lt);border-color:var(--lv-green);color:var(--lv-green-dk)!important;font-weight:600;}
.lvf-col .lvf-chips .gchoice input:focus-visible+label{box-shadow:0 0 0 3px rgba(30,158,62,.25);}

/* Dépôt de fichiers (1287:14635) */
.lvf-col .gform_drop_area{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:78px;margin:0!important;padding:12px 16px!important;border:1px solid var(--lv-line)!important;border-radius:6px!important;background:#fff!important;box-shadow:none!important;text-align:center;cursor:pointer;transition:border-color .12s,background-color .12s;}
.lvf-col .gform_drop_area:hover,.lvf-col .gform_drop_area.hover{border-color:var(--lv-green)!important;background:#FAFDFB!important;}
.lvf-col .gform_drop_area::before{display:none!important;}
.lvf-col .gform_drop_instructions{order:2;margin:0!important;font-size:12px!important;line-height:normal;color:var(--lv-muted)!important;}
body.lv-charte .lvf-col .gform_wrapper .gform_button_select_files{order:1;margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;min-height:0!important;font-family:var(--lv-font)!important;font-size:13.5px!important;font-weight:600!important;line-height:normal!important;color:var(--lv-green-dk)!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer;}
.lvf-col .ginput_preview_list{margin-top:8px;display:flex;flex-direction:column;gap:6px;}
.lvf-col .ginput_preview_list:empty{display:none;}
.lvf-col .ginput_preview{display:flex;align-items:center;gap:10px;margin:0!important;padding:8px 10px!important;border:1px solid var(--lv-line);border-radius:6px;background:#fff;font-size:13px;line-height:1.35;color:var(--lv-ink);}
.lvf-col .ginput_preview .gfield_fileupload_filename{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.lvf-col .ginput_preview .gfield_fileupload_filesize,.lvf-col .ginput_preview .gfield_fileupload_percent{font-size:12px;color:var(--lv-muted);white-space:nowrap;}
.lvf-col .ginput_preview .gfield_fileupload_progress{flex:0 0 70px;height:4px;border-radius:2px;background:var(--lv-line);overflow:hidden;}
.lvf-col .ginput_preview .gfield_fileupload_progressbar_progress{height:100%;background:var(--lv-green);}
.lvf-col .ginput_preview .gfield_fileupload_progress_complete{display:none;}

/* Périodes d'indisponibilité (champ liste) */
.lvf-col .lvf-periodes .gfield_list_header{display:none!important;}
.lvf-col .lvf-periodes .gfield_list_groups{display:flex;flex-direction:column;gap:8px;}
.lvf-col .lvf-periodes .gfield_list_group{display:flex!important;align-items:center;gap:10px;margin:0!important;}
.lvf-col .lvf-periodes .gfield_list_cell{flex:1 1 0;min-width:0;padding:0!important;}
.lvf-col .lvf-periodes .gfield_list_cell::before{display:none!important;}
.lvf-col .lvf-periodes .gfield_list_icons{flex:0 0 auto;display:flex;gap:6px;padding:0!important;}
.lvf-col .lvf-periodes .gfield_list_icons button{width:36px;height:36px;margin:0!important;border:1px solid var(--lv-line)!important;border-radius:6px!important;background-color:#fff!important;cursor:pointer;}
.lvf-col .lvf-periodes .gfield_list_icons button:hover{border-color:var(--lv-green)!important;}

/* Encadrés */
.lvf-col .gfield--type-html{font-size:14px;line-height:1.68;color:var(--lv-txt);}
.lvf-box{border-radius:8px;padding:16px 20px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.68;color:var(--lv-txt);}
.lvf-box p,.lvf-msg p,.lvf-arg p,.lvf-recap p{margin:0!important;padding:0!important;}
.lvf-box--sable{background:var(--lv-sand-lt);}
.lvf-box--vert{background:var(--lv-green-lt);}
.lvf-box--vert p:not(.lvf-box__k){font-size:14.5px;}
.lvf-box__k{font-size:11.5px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;line-height:normal;color:var(--lv-green-dk);}
.lvf-col strong{font-weight:700;color:var(--lv-ink);}
.lvf-msg{background:var(--lv-sand-lt);border-radius:8px;padding:18px 20px;display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.68;color:var(--lv-txt);}
.lvf-msg__t,.lvf-msg p:first-child{font-size:15px;font-weight:700;line-height:1.5;color:var(--lv-ink);}
.lvf-aide{margin:-8px 0 0!important;font-size:12.5px;line-height:1.58;color:var(--lv-txt);}
.lvf-p{margin:0!important;font-size:14px;line-height:1.68;color:var(--lv-txt);}

/* Tarif dégressif repliable (1288:14604) */
.lvf-fold{grid-column:span 12;border:1px solid var(--lv-line);border-radius:8px;background:#fff;}
.lvf-fold__h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;cursor:pointer;list-style:none;}
.lvf-fold__h::-webkit-details-marker{display:none;}
.lvf-fold__l{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;line-height:normal;color:var(--lv-ink);}
.lvf-fold__a{font-size:13px;font-weight:600;line-height:normal;color:var(--lv-green-dk);white-space:nowrap;}
.lvf-fold__a::after{content:"";display:inline-block;width:7px;height:7px;margin:0 2px 3px 8px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg);transition:transform .15s;}
.lvf-fold[open] .lvf-fold__a::after{transform:rotate(-135deg);margin-bottom:-1px;}
.lvf-fold__c{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid var(--lv-line);padding:18px;}
.lvf-fold__c>.gfield{grid-column:auto!important;margin:0!important;padding:0!important;}
.lvf-fold__c>.gfield--type-html{grid-column:1/-1!important;}
body.lv-charte .lvf-col .lvf-fold__c .gfield_label{font-size:12.5px!important;margin-bottom:6px!important;}
body.lv-charte .lvf-col .lvf-fold__c input{height:42px!important;padding:0 12px!important;font-size:13.5px!important;}
.lvf-fold__c .lvf-st{display:none;}
.lvf-deg-aide{margin:0!important;font-size:12.5px;line-height:1.6;color:var(--lv-muted);}
.lvf-deg-h{display:none;}

/* Récapitulatif (1288:14676) */
.lvf-recap{background:var(--lv-green-lt);border-radius:10px;padding:20px 22px;}
.lvf-recap__t{font-size:16px;font-weight:700;line-height:normal;color:var(--lv-ink);margin-bottom:14px!important;}
.lvf-recap__l{margin:0 0 12px!important;padding:0!important;}
.lvf-recap__l>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--lv-line);font-size:14px;line-height:normal;color:var(--lv-txt);}
.lvf-recap__l>div:last-child{border-bottom:0;}
.lvf-recap__l dt,.lvf-recap__l dd{margin:0!important;padding:0!important;font-weight:inherit;}
.lvf-recap__l dd{white-space:nowrap;}
.lvf-recap__net{font-weight:700;color:var(--lv-ink)!important;}
.lvf-recap__p{font-size:13px;line-height:1.65;color:var(--lv-txt);}
.lvf-recap__p+.lvf-recap__p{margin-top:4px!important;}

/* Argument bloc 7 (1288:14708) */
.lvf-arg{background:var(--lv-green-lt);border-radius:10px;padding:20px 22px;display:flex;flex-direction:column;gap:8px;font-size:14.5px;line-height:1.7;color:var(--lv-txt);}
.lvf-arg__t{font-size:17px;font-weight:700!important;line-height:normal;color:var(--lv-ink);}

/* Cases de déclaration (1288:14740) */
.lvf-col .lvf-case .ginput_container_consent{display:flex;align-items:flex-start;gap:12px;position:relative;}
.lvf-col .lvf-case input[type=checkbox]{position:absolute;left:0;top:0;opacity:0;width:20px;height:20px;margin:2px 0 0!important;}
body.lv-charte .lvf-col .lvf-case .gfield_consent_label{display:block!important;position:relative;max-width:none!important;margin:0!important;padding:0 0 0 32px!important;font-size:14px!important;font-weight:400!important;line-height:1.68!important;color:var(--lv-txt)!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer;}
.lvf-col .lvf-case .gfield_consent_label::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border:1px solid var(--lv-muted);border-radius:4px;background:#fff;transition:background-color .12s,border-color .12s;}
.lvf-col .lvf-case input:checked+.gfield_consent_label::before{background:var(--lv-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='10' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center;border-color:var(--lv-green);}
.lvf-col .lvf-case input:focus-visible+.gfield_consent_label::before{box-shadow:0 0 0 3px rgba(30,158,62,.25);}
.lvf-col .lvf-case .gfield_consent_label a{color:var(--lv-green-dk)!important;text-decoration:underline!important;}
.lvf-col .lvf-case .gfield_consent_label .gfield_required{display:none!important;}
.lvf-col .lvf-case+.lvf-case{margin-top:-4px!important;}

/* Boutons (1288:14756) */
.lvf-col .gform_footer{grid-column:span 12;display:flex!important;flex-wrap:wrap;align-items:center;gap:14px;margin:8px 0 0!important;padding:0!important;}
body.lv-charte .lvf-col .gform_wrapper .gform_footer input[type=submit]{margin:0!important;padding:16px 28px!important;border-radius:6px!important;}
body.lv-charte .lvf-col .gform_wrapper .gform_save_link{display:inline-flex!important;align-items:center;margin:0!important;padding:16px 28px!important;border:1px solid var(--lv-line)!important;border-radius:6px!important;background:#fff!important;box-shadow:none!important;font-family:var(--lv-font)!important;font-size:15px!important;font-weight:700!important;line-height:normal!important;color:var(--lv-green-dk)!important;text-decoration:none!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer;}
body.lv-charte .lvf-col .gform_wrapper .gform_save_link:hover{border-color:var(--lv-green)!important;}
.lvf-col .gform_save_link svg,.lvf-col .gform_save_link .gform-icon,.lvf-col .gform_save_link img{display:none!important;}
body.lv-charte .lvf-col .gform_wrapper .gform_save_link::before{display:none!important;content:none!important;}
.lvf-col .gform_ajax_spinner{margin-left:4px;}

/* Erreurs */
.lvf-col .gform_validation_errors{margin:0 0 20px!important;padding:16px 20px!important;border:0!important;border-radius:8px!important;background:var(--lv-sand-lt)!important;box-shadow:none!important;}
.lvf-col .gform_validation_errors .gform_submission_error{margin:0!important;font-family:var(--lv-font)!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important;color:var(--lv-terra)!important;}
.lvf-col .gform_validation_errors .gform-icon{display:none!important;}
.lvf-col .gform_validation_errors ol{margin:8px 0 0 18px!important;padding:0!important;font-size:13px;line-height:1.6;}
.lvf-col .gform_validation_errors a{color:var(--lv-terra)!important;}
.lvf-col .gfield_error input,.lvf-col .gfield_error select,.lvf-col .gfield_error .gform_drop_area,.lvf-col .gfield_error.lvf-yn label{border-color:var(--lv-terra)!important;}
.lvf-col .gfield_error .gfield_consent_label::before{border-color:var(--lv-terra)!important;}
.lvf-col .gfield_validation_message,.lvf-col .validation_message{margin:7px 0 0!important;padding:0!important;border:0!important;background:none!important;font-size:12.5px!important;font-weight:600!important;line-height:1.5!important;color:var(--lv-terra)!important;}
.lvf-col .gfield_error .gfield_label{color:var(--lv-ink)!important;}

/* Confirmation et « continuer plus tard » */
.lvf-col .gform_confirmation_message,.lvf-col .form_saved_message,.lvf-col .form_saved_message_sent{background:#fff!important;border:1px solid var(--lv-line)!important;border-radius:12px!important;padding:30px 32px!important;font-size:15px!important;line-height:1.7!important;color:var(--lv-txt)!important;}
.lvf-done{display:flex;flex-direction:column;gap:12px;}
.lvf-done p{margin:0!important;}
.lvf-done__t{font-size:24px;font-weight:700;line-height:1.3;color:var(--lv-ink);}
.lvf-col .form_saved_message input[type=email]{margin:10px 0!important;}

/* ---------- Mobile (1289:14617) ---------- */
@media (max-width:960px){
  .lvf-head{padding:26px 0 28px;}
  .lvf-head .lv-reperes{margin-top:16px;}
  .lvf-bg{padding:20px 0 24px;}
  .lvf-bg>.lv-wrap{padding-left:16px;padding-right:16px;}
  .lvf-col .gform_wrapper .gform_fields{gap:14px;}
  .lvf-card{padding:24px 18px;gap:16px;}
  .lvf-card>.gfield--width-half,.lvf-card>.gfield--width-third{grid-column:span 12;}
  body .lvf-col .gsection_title{font-size:19px!important;}
  .lvf-bh{gap:12px;}
  .lvf-col .lvf-yn--half .gfield_radio{max-width:none;}
  .lvf-fold__c{grid-template-columns:1fr 1fr;padding:16px;}
  .lvf-fold__h{padding:14px 16px;}
  .lvf-recap,.lvf-arg{padding:18px;}
  .lvf-col .gform_footer{flex-direction:column;align-items:stretch;gap:12px;}
  body.lv-charte .lvf-col .gform_wrapper .gform_footer input[type=submit],body.lv-charte .lvf-col .gform_wrapper .gform_save_link{width:100%!important;justify-content:center;padding:15px 20px!important;}
  .lvf-col .gform_confirmation_message,.lvf-col .form_saved_message{padding:24px 18px!important;}
}

/* Après envoi : la phrase « Après envoi… » n'a plus lieu d'être sous la confirmation. */
.lvf-col:has(.gform_confirmation_message) .lvf-after{display:none;}

/* ---------- Formulaire B (1290:14702) ---------- */
.lvf-col .lvf-invisible{display:none!important;}
.lvf-bh{flex-wrap:wrap;row-gap:8px;}
.lvf-bh__n--cond{background:var(--lv-sand-lt);color:var(--lv-terra);}
.lvf-bh__cond{background:var(--lv-sand-lt);color:var(--lv-terra);border-radius:11px;padding:4px 10px;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;line-height:normal;white-space:nowrap;}
.lvf-box--tight{padding:14px 20px;margin-top:-2px;}
/* Type d'offre en cartes (1290:14907) */
.lvf-col .lvf-offre .gfield_radio{display:flex;flex-direction:column;gap:12px;}
.lvf-col .lvf-offre .gchoice{position:relative;margin:0!important;}
.lvf-col .lvf-offre .gchoice input{position:absolute;left:21px;top:21px;opacity:0;margin:0!important;}
body.lv-charte .lvf-col .lvf-offre .gchoice label{display:flex!important;flex-direction:column;gap:4px;max-width:none!important;width:100%;margin:0!important;padding:18px 20px 18px 54px!important;border:1px solid var(--lv-line);border-radius:10px;background:#fff;cursor:pointer;position:relative;transition:background-color .12s,border-color .12s;}
body.lv-charte .lvf-col .lvf-offre .gchoice label::before{content:"";position:absolute;left:20px;top:19px;width:20px;height:20px;border:1px solid var(--lv-muted);border-radius:10px;background:#fff;box-sizing:border-box;}
body.lv-charte .lvf-col .lvf-offre .gchoice label:hover{border-color:var(--lv-green);}
body.lv-charte .lvf-col .lvf-offre .gchoice input:checked+label{background:var(--lv-green-lt);border:2px solid var(--lv-green);padding:17px 19px 17px 53px!important;}
body.lv-charte .lvf-col .lvf-offre .gchoice input:checked+label::before{border:6px solid var(--lv-green);left:19px;top:18px;}
.lvf-col .lvf-offre .gchoice input:focus-visible+label{box-shadow:0 0 0 3px rgba(30,158,62,.25);}
.lvf-offre__t{font-size:15.5px;font-weight:700;line-height:1.38;color:var(--lv-ink);}
.lvf-offre__s{font-size:13px;font-weight:400;line-height:1.6;color:var(--lv-muted);}
/* Tableau des deux régimes (1290:14924) */
.lvf-table{border:1px solid var(--lv-line);border-radius:10px;overflow:hidden;margin-top:6px;}
.lvf-table__h,.lvf-table__r{display:grid;grid-template-columns:176px 150px 150px 1fr;padding:12px 20px;}
.lvf-table__h{background:var(--lv-green-lt);}
.lvf-table__h span{padding-right:12px;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;line-height:normal;color:var(--lv-green-dk);}
.lvf-table__r{padding:14px 20px;}
.lvf-table__r+.lvf-table__r{border-top:1px solid var(--lv-line);}
.lvf-table__r span{padding-right:12px;font-size:13px;line-height:1.58;color:var(--lv-txt);}
.lvf-table__r span:first-child{font-weight:600;color:var(--lv-ink);}
.lvf-p--mt{margin-top:16px!important;}
.lvf-p+.lvf-p{margin-top:10px!important;}
.lvf-col .gfield--type-html .lvf-p{font-size:14.5px;line-height:1.7;}
/* Encadrés tarifs (1290:15096) */
.lvf-panel{border-radius:10px;padding:20px 22px;display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.68;color:var(--lv-txt);}
.lvf-panel p{margin:0!important;}
.lvf-panel--vert{background:var(--lv-green-lt);}
.lvf-panel--sable{background:var(--lv-sand-lt);}
.lvf-panel__t{font-size:16px;font-weight:700;line-height:normal;color:var(--lv-ink);}
/* Listes « + Ajouter » (véhicules, grille tarifaire) */
.lvf-col .lvf-vehicules .gfield_list_header,.lvf-col .lvf-grille .gfield_list_header{display:flex!important;gap:10px;margin:0 0 6px!important;padding-right:92px;}
.lvf-col .lvf-vehicules .gfield_header_item,.lvf-col .lvf-grille .gfield_header_item{flex:1 1 0;min-width:0;padding:0!important;font-size:11.5px!important;font-weight:600;color:var(--lv-muted)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lvf-col .lvf-vehicules .gfield_header_item--icons,.lvf-col .lvf-grille .gfield_header_item--icons{display:none;}
.lvf-col .lvf-vehicules .gfield_list_groups,.lvf-col .lvf-grille .gfield_list_groups{display:flex;flex-direction:column;gap:8px;}
.lvf-col .lvf-vehicules .gfield_list_group,.lvf-col .lvf-grille .gfield_list_group{display:flex!important;align-items:center;gap:10px;margin:0!important;}
.lvf-col .lvf-vehicules .gfield_list_cell,.lvf-col .lvf-grille .gfield_list_cell{flex:1 1 0;min-width:0;padding:0!important;}
.lvf-col .lvf-vehicules .gfield_list_cell::before,.lvf-col .lvf-grille .gfield_list_cell::before{display:none!important;}
.lvf-col .lvf-vehicules .gfield_list_icons,.lvf-col .lvf-grille .gfield_list_icons{flex:0 0 82px;display:flex;gap:6px;padding:0!important;}
.lvf-col .lvf-vehicules .gfield_list_icons button,.lvf-col .lvf-grille .gfield_list_icons button{width:36px;height:36px;margin:0!important;border:1px solid var(--lv-line)!important;border-radius:6px!important;background-color:#fff!important;cursor:pointer;}
@media (max-width:960px){
  .lvf-table__h{display:none;}
  .lvf-table__r{grid-template-columns:1fr 1fr;gap:4px 12px;}
  .lvf-table__r span:first-child{grid-column:1/-1;}
  .lvf-table__r span:last-child{grid-column:1/-1;}
  body.lv-charte .lvf-col .lvf-offre .gchoice label{padding:16px 16px 16px 50px!important;}
  body.lv-charte .lvf-col .lvf-offre .gchoice input:checked+label{padding:15px 15px 15px 49px!important;}
  body.lv-charte .lvf-col .lvf-offre .gchoice label::before{left:16px;top:17px;}
  body.lv-charte .lvf-col .lvf-offre .gchoice input:checked+label::before{left:15px;top:16px;}
  .lvf-panel{padding:18px;}
  .lvf-col .lvf-vehicules .gfield_list_header,.lvf-col .lvf-grille .gfield_list_header{display:none!important;}
  .lvf-col .lvf-vehicules .gfield_list_group,.lvf-col .lvf-grille .gfield_list_group{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;padding:12px;border:1px solid var(--lv-line);border-radius:8px;}
  .lvf-col .lvf-grille .gfield_list_group{grid-template-columns:1fr;}
  .lvf-col .lvf-vehicules .gfield_list_cell,.lvf-col .lvf-grille .gfield_list_cell{width:auto!important;max-width:none!important;}
  .lvf-col .lvf-vehicules .gfield_list_cell::before,.lvf-col .lvf-grille .gfield_list_cell::before{display:block!important;position:static!important;content:attr(data-label);font-size:11.5px;font-weight:600;line-height:1.3;color:var(--lv-muted);margin:0 0 4px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .lvf-col .lvf-vehicules .gfield_list_icons,.lvf-col .lvf-grille .gfield_list_icons{grid-column:1/-1;justify-content:flex-end;flex:none;}
  .lvf-col .lvf-periodes .gfield_list_group{flex-wrap:wrap;}
}

/* ============================================================
   Page « Demander le tarif résident » — formulaire C (Figma 562:3671, valeurs reprises du site logement)
   ============================================================ */
.lvr{background:#fff;}
.lvr-hero{background:var(--lv-warm);border-bottom:1px solid var(--lv-line);padding:34px 0 48px;}
.lvr-crumb{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;font-size:13px;color:var(--lv-muted);margin:0 0 24px!important;}
.lvr-crumb a{color:var(--lv-muted)!important;}
.lvr-crumb strong{font-weight:600;color:var(--lv-ink);}
body .lv-page .lvr-h1{font-size:42px;line-height:1.25;font-weight:700;color:var(--lv-ink);margin:0 0 14px!important;}
.lvr-sub{font-size:17px;line-height:1.75;color:var(--lv-txt);max-width:860px;}
.lvr-body{padding:64px 0 48px;}
.lvr-grid{display:grid;grid-template-columns:minmax(0,1fr) 376px;gap:24px;align-items:start;}
.lvr-who{background:var(--lv-green-lt);border-radius:12px;padding:22px 24px;margin:0 0 44px!important;}
.lvr-who__t{font-size:17px;font-weight:700;color:var(--lv-ink);margin:0 0 12px!important;}
.lvr-who ul{display:flex;flex-direction:column;gap:8px;}
.lvr-who li,.lvr-change__l li{position:relative;padding-left:18px;font-size:14px;line-height:1.72;color:var(--lv-txt);}
.lvr-who li::before,.lvr-change__l li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:2px;background:var(--lv-green);}
body .lv-page .lvr-ftitle{font-size:24px;font-weight:700;color:var(--lv-ink);margin:0 0 24px!important;}
.lvr-note{font-size:12px;line-height:1.65;color:var(--lv-muted);margin-top:16px!important;}
.lvr-form.lvf-col{max-width:none;}
/* Formulaire : grille GF sans cartes */
.lvr-form .gform_wrapper .gform_fields{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px 20px;}
.lvr-form .gform_fields>.gfield{grid-column:span 12;margin:0!important;padding:0!important;}
.lvr-form .gform_fields>.gfield--width-half{grid-column:span 6;}
.lvr-form .gform_fields>.gfield--width-third{grid-column:span 4;}
.lvr-form .gform_wrapper .gform_fields>.gfield.lvr-ind{grid-column:span 2!important;}
.lvr-form .gform_wrapper .gform_fields>.gfield.lvr-tel{grid-column:span 4!important;}
body.lv-charte .lvr-form .gform_wrapper .gfield_label{font-size:13px!important;}
.lvr-form .lvr-ind .gfield_label{visibility:hidden;}
body.lv-charte .lvr-form .gform_wrapper select{padding:0 26px 0 12px!important;background-position:right 10px center!important;}
body.lv-charte .lvr-form .gform_wrapper input[type=text],body.lv-charte .lvr-form .gform_wrapper input[type=email],body.lv-charte .lvr-form .gform_wrapper input[type=tel],body.lv-charte .lvr-form .gform_wrapper select{height:48px!important;border-radius:8px!important;font-size:15px!important;padding-left:16px!important;}
body.lv-charte .lvr-form .gform_wrapper .lvr-ind select{padding-left:12px!important;}
/* Créneaux d'appel en pilules (562:3671) */
.lvr-form .lvr-pills .gfield_radio{display:flex;flex-wrap:wrap;gap:10px;}
.lvr-form .lvr-pills .gchoice{position:relative;margin:0!important;}
.lvr-form .lvr-pills .gchoice input{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:16px;height:16px;margin:0!important;accent-color:var(--lv-green);z-index:1;}
body.lv-charte .lvr-form .lvr-pills .gchoice label{display:inline-flex!important;align-items:center;max-width:none!important;margin:0!important;padding:10px 18px 10px 43px!important;border:1px solid var(--lv-line);border-radius:999px;background:#fff;font-size:14px!important;font-weight:500;line-height:normal!important;color:var(--lv-ink)!important;cursor:pointer;transition:background-color .12s,border-color .12s;}
body.lv-charte .lvr-form .lvr-pills .gchoice input:checked+label{background:var(--lv-green-lt);border-color:var(--lv-green);}
body.lv-charte .lvr-form .lvr-pills .gchoice label:hover{border-color:var(--lv-green);}
.lvr-form .gform_footer{grid-column:span 12;margin:6px 0 0!important;padding:0!important;}
body.lv-charte .lvr-form .gform_wrapper .gform_footer input[type=submit]{border-radius:999px!important;padding:16px 34px!important;font-size:16px!important;font-weight:600!important;}
.lvr-form .gform_confirmation_message{background:var(--lv-green-lt)!important;border:0!important;}
/* Colonne latérale collante */
.lvr-side{position:sticky;top:24px;display:flex;flex-direction:column;gap:16px;}
.lvr-change{background:#fff;border:1px solid var(--lv-line);border-radius:16px;padding:24px;}
.lvr-change__t{font-size:18px;font-weight:700;color:var(--lv-ink);margin:0 0 10px!important;}
.lvr-change__ex{font-size:13px;line-height:1.65;color:var(--lv-muted);margin:0 0 12px!important;}
.lvr-change__l{display:flex;flex-direction:column;gap:6px;}
.lvr-eco{background:var(--lv-green-lt);border-radius:12px;padding:16px 18px;margin-top:16px!important;}
.lvr-eco__t{font-size:22px;font-weight:700;color:var(--lv-green-dk);margin:0 0 4px!important;line-height:1.3;}
.lvr-eco p:not(.lvr-eco__t){font-size:13px;line-height:1.65;color:var(--lv-txt);}
.lvr-acct{background:var(--lv-warm);border-radius:16px;padding:20px 22px;}
.lvr-acct__t{font-size:15px;font-weight:700;color:var(--lv-ink);margin:0 0 6px!important;}
.lvr-acct p:not(.lvr-acct__t){font-size:13px;line-height:1.65;color:var(--lv-txt);margin:0 0 14px!important;}
.lvr-acct a{display:block;text-align:center;border:1.5px solid var(--lv-green);color:var(--lv-green-dk)!important;border-radius:999px;padding:12px;font-weight:600;font-size:14px;}
.lvr-acct a:hover{background:var(--lv-green-lt);}
/* Comment se passe la vérification */
.lvr-how{background:var(--lv-warm);padding:72px 0 80px;}
body .lv-page .lvr-how__h{font-size:28px;font-weight:700;color:var(--lv-ink);margin:0 0 10px!important;}
.lvr-how__sub{font-size:16px;line-height:1.72;color:var(--lv-txt);margin:0 0 32px!important;max-width:860px;}
.lvr-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.lvr-step{background:#fff;border-radius:16px;padding:24px 26px;font-size:14px;line-height:1.72;color:var(--lv-txt);}
.lvr-step__n{width:32px;height:32px;border-radius:999px;background:var(--lv-green);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;margin:0 0 12px;}
.lvr-step__t{font-size:18px;font-weight:700;color:var(--lv-ink);margin:0 0 8px!important;line-height:1.35;}
.lvr-hownote{display:flex;gap:12px;background:var(--lv-sand-lt);border-radius:8px;padding:16px 20px;margin-top:24px!important;}
.lvr-hownote::before{content:"";flex:0 0 6px;background:var(--lv-sand);border-radius:3px;}
.lvr-hownote p{font-size:14px;line-height:1.72;color:#5E4A0A;}
@media (max-width:900px){
  .lvr-hero{padding:26px 0 30px;}
  body .lv-page .lvr-h1{font-size:27px;}
  .lvr-sub{font-size:16px;}
  .lvr-body{padding:40px 0;}
  .lvr-grid{grid-template-columns:1fr;gap:32px;}
  .lvr-side{position:static;}
  .lvr-form .gform_fields>.gfield--width-half{grid-column:span 12;}
  .lvr-form .gform_wrapper .gform_fields>.gfield.lvr-ind{grid-column:span 4!important;}
  .lvr-form .gform_wrapper .gform_fields>.gfield.lvr-tel{grid-column:span 8!important;}
  .lvr-how{padding:48px 0;}
  .lvr-steps{grid-template-columns:1fr;}
  body.lv-charte .lvr-form .gform_wrapper .gform_footer input[type=submit]{width:100%!important;}
}

.lvr-who ul,.lvr-change__l{list-style:none!important;margin:0!important;padding:0!important;}
.lvr-who li,.lvr-change__l li{list-style:none!important;margin:0!important;}
.lvr-who li::marker,.lvr-change__l li::marker{content:""!important;}

@media (max-width:900px){.lvr-form .gform_wrapper .gform_fields{column-gap:12px!important;}}

/* ---------- Page contact (composants V3 de 562:3671) ---------- */
body.lv-charte .lvr-form .gform_wrapper textarea{width:100%!important;min-height:150px;height:auto!important;padding:13px 16px!important;border:1px solid var(--lv-line)!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;font-family:var(--lv-font)!important;font-size:15px!important;line-height:1.6!important;color:var(--lv-ink)!important;resize:vertical;}
body.lv-charte .lvr-form .gform_wrapper textarea:focus{border-color:var(--lv-green)!important;box-shadow:0 0 0 3px rgba(30,158,62,.14)!important;outline:none!important;}
.lvr-note a{color:var(--lv-green-dk)!important;text-decoration:underline;}
.lvc-wa__btn{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:4px;background:var(--lv-green);color:#fff!important;border-radius:999px;padding:13px 20px;font-weight:600;font-size:15px;}
.lvc-wa__btn:hover{background:var(--lv-green-dk);}
.lvc-wa__btn svg{width:20px;height:20px;fill:currentColor;flex:0 0 20px;}
.lvc-coord dl{margin:0!important;display:flex;flex-direction:column;gap:12px;}
.lvc-coord dt{font-size:11.5px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--lv-muted);margin:0 0 2px!important;}
.lvc-coord dd{margin:0!important;font-size:14.5px;line-height:1.5;color:var(--lv-ink);font-weight:600;}
.lvc-coord dd a{color:var(--lv-ink)!important;}
.lvc-coord dd a:hover{color:var(--lv-green-dk)!important;}
.lvr-form .gfield--type-captcha{margin:0!important;}
.lvr-acct.lvc-coord dd a{display:inline;border:0;border-radius:0;padding:0;text-align:left;font-size:14.5px;font-weight:600;background:none;}
.lvr-acct.lvc-coord dd a:hover{background:none;}
body.lv-charte .lvr-form .gform_wrapper .gform_footer input[type=submit]{width:auto!important;}
@media (max-width:900px){body.lv-charte .lvr-form .gform_wrapper .gform_footer input[type=submit]{width:100%!important;}}
/* Formulaire C : case « même numéro WhatsApp » */
.lvr-form .lvr-wa .gfield_checkbox .gchoice{display:flex;align-items:center;gap:10px;margin:0!important;}
.lvr-form .lvr-wa input[type=checkbox]{width:18px;height:18px;margin:0!important;accent-color:var(--lv-green);}
body.lv-charte .lvr-form .lvr-wa .gchoice label{margin:0!important;font-size:14px!important;color:var(--lv-ink)!important;max-width:none!important;}

/* ---------- Saisie assistée par un télévendeur (LV-36) ---------- */
body.lv-saisie-assistee .lv-tv-bandeau{background:var(--lv-warm);border-left:3px solid var(--lv-green);border-radius:8px;padding:16px 20px;margin-bottom:26px;max-width:760px;}
body.lv-saisie-assistee .lv-tv-bandeau__t{font-family:var(--lv-font);font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--lv-green-dk);line-height:normal;margin:0 0 6px;padding-bottom:0;}
body.lv-saisie-assistee .lv-tv-bandeau__p{font-family:var(--lv-font);font-size:13.5px;line-height:1.6;color:var(--lv-txt);margin:0;padding-bottom:0;}
/* Le bloc « Saisie par » est interne : on le distingue du reste du formulaire. */
body.lv-saisie-assistee #field_3_801,body.lv-saisie-assistee #field_3_802,body.lv-saisie-assistee #field_3_803,body.lv-saisie-assistee #field_3_804{background:#FBFAF8;}
body.lv-saisie-assistee #field_3_801{border-top:1px solid var(--lv-line);padding-top:18px;}
body.lv-saisie-assistee #field_3_804{border-bottom:1px solid var(--lv-line);padding-bottom:18px;margin-bottom:26px;}
@media (max-width:767px){
  body.lv-saisie-assistee .lv-tv-bandeau{padding:14px 16px;margin-bottom:20px;}
}

/* ---------- Écran « Enregistrer et continuer plus tard » ---------- */
.form_saved_message .lv-reprise{background:var(--lv-warm);border-radius:12px;padding:24px 26px;max-width:760px;margin:24px auto;}
.lv-reprise__t{font-family:var(--lv-font);font-size:20px;font-weight:700;color:var(--lv-ink);line-height:normal;margin:0 0 10px;padding-bottom:0;}
.lv-reprise__p{font-family:var(--lv-font);font-size:14.5px;line-height:1.6;color:var(--lv-txt);margin:0 0 14px;padding-bottom:0;}
.lv-reprise__l{margin:0 0 16px;padding-bottom:0;}
.lv-reprise__l a{display:block;background:#fff;border:1px solid var(--lv-line);border-radius:8px;padding:12px 14px;font-size:13px;word-break:break-all;color:var(--lv-green-dk)!important;}
.lv-reprise__n{font-family:var(--lv-font);font-size:12.5px;line-height:1.55;color:var(--lv-muted);margin:0;padding-bottom:0;}
.lv-reprise input[type=email]{background:#fff!important;border:1px solid var(--lv-line)!important;border-radius:8px!important;padding:11px 13px!important;font-family:var(--lv-font)!important;font-size:14px!important;}
.lv-reprise input[type=submit],.lv-reprise button{background:var(--lv-green)!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:11px 20px!important;font-weight:700!important;font-size:14px!important;cursor:pointer;}
.lv-reprise__wa{display:inline-flex;align-items:center;justify-content:center;background:#25D366;color:#fff!important;border-radius:8px;padding:13px 22px;font-size:15px;font-weight:700;line-height:normal;text-decoration:none!important;margin-top:16px;}
.lv-reprise__wa:hover{background:#1da851;color:#fff!important;}
@media (max-width:767px){ .form_saved_message .lv-reprise{padding:18px;} .lv-reprise__wa{width:100%;} }
