/* Jumbo Balades Vista Sol - CLEAN FRONT 2026 */
:root{--jbvs-pink:#e62d87;--jbvs-pink2:#d91b78;--jbvs-soft:#fde7f2;--jbvs-navy:#0f2d44;--jbvs-text:#415a70;--jbvs-border:#d8e2ea;--jbvs-bg:#ffffff}
.jbvs-wrap,.jbvs-wrap *,.jbvs-modal,.jbvs-modal *{box-sizing:border-box!important}
.jbvs-wrap{width:100%!important;max-width:920px!important;margin:0 auto 18px!important;padding:0!important;background:#fff!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;color:var(--jbvs-navy)!important;line-height:1.35!important;overflow:visible!important}
.elementor-widget-shortcode:has(.jbvs-wrap),.elementor-widget-shortcode .elementor-widget-container:has(.jbvs-wrap){margin-top:0!important;padding-top:0!important}
.jbvs-topbar{background:linear-gradient(135deg,var(--jbvs-pink),var(--jbvs-pink2))!important;text-align:center!important;padding:30px 12px 56px!important;margin:0 0 -30px!important;border-radius:0!important}
.jbvs-brand{display:inline-flex!important;align-items:flex-end!important;gap:10px!important;color:#fff!important;font-size:42px!important;font-weight:300!important;line-height:1!important;letter-spacing:-1px!important}
.jbvs-brand strong{color:#fff!important;font-weight:900!important;letter-spacing:-2px!important;position:relative!important}.jbvs-brand strong:after{content:""!important;position:absolute!important;right:2px!important;bottom:-8px!important;width:44px!important;height:14px!important;border-bottom:5px solid #fff!important;border-radius:0 0 45px 45px!important}
.jbvs-card{position:relative!important;z-index:2!important;background:#fff!important;border-radius:28px!important;margin:0 16px!important;padding:40px 40px 34px!important;border:1px solid rgba(216,226,234,.9)!important;box-shadow:0 22px 52px rgba(15,45,68,.14)!important;overflow:visible!important}
.jbvs-header{text-align:center!important;margin:0 0 32px!important}.jbvs-header h2{margin:0 0 10px!important;color:var(--jbvs-navy)!important;font-size:40px!important;line-height:1.1!important;font-weight:900!important;letter-spacing:-.6px!important}.jbvs-header p{margin:0 0 12px!important;color:var(--jbvs-pink)!important;font-size:29px!important;font-weight:500!important}.jbvs-intro{margin:0!important;color:var(--jbvs-navy)!important;font-size:29px!important;font-weight:400!important}
.jbvs-alert{display:none;border-radius:14px!important;padding:13px 16px!important;margin:0 0 18px!important;font-weight:800!important;background:#fff0f7!important;color:#a90048!important;border:1px solid #ffc0dc!important}.jbvs-form{margin:0!important;padding:0!important}
.jbvs-label{display:flex!important;align-items:center!important;gap:14px!important;margin:0!important;color:var(--jbvs-navy)!important;font-size:25px!important;font-weight:900!important;line-height:1.18!important}.jbvs-label small{font-size:.7em!important;color:#6d8293!important;font-weight:600!important}.jbvs-ico,.jbvs-date-icon,.jbvs-secure-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;color:var(--jbvs-pink)!important}.jbvs-ico svg{width:38px!important;height:38px!important;display:block!important;fill:currentColor!important;stroke:none!important}.jbvs-date-icon svg{width:32px!important;height:32px!important;display:block!important;fill:currentColor!important;stroke:none!important}
.jbvs-date-label{margin-bottom:14px!important}.jbvs-date-box{position:relative!important;width:100%!important;height:80px!important;border:2px solid var(--jbvs-border)!important;border-radius:18px!important;background:#fff!important;display:flex!important;align-items:center!important;padding:0 72px 0 28px!important;margin:0 0 32px!important;cursor:pointer!important;overflow:hidden!important}.jbvs-date-human{display:block!important;font-size:28px!important;color:var(--jbvs-navy)!important;font-weight:500!important;margin-left:18px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.jbvs-date-arrow{position:absolute!important;right:28px!important;top:50%!important;transform:translateY(-50%)!important;color:var(--jbvs-pink)!important;font-size:40px!important;line-height:1!important;font-weight:800!important}.jbvs-date-native{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;z-index:3!important;cursor:pointer!important;-webkit-appearance:none!important;appearance:none!important;border:0!important;background:transparent!important;color:transparent!important}
.jbvs-section-title{font-size:28px!important;color:var(--jbvs-navy)!important;font-weight:900!important;margin:0 0 18px!important}
/* SELECTEUR DES BALADES - 2 COLONNES STABLES */
.jbvs-options-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:18px!important;width:100%!important;max-width:100%!important;margin:0 0 34px!important;align-items:stretch!important;overflow:visible!important}
.jbvs-options-grid>.jbvs-option{width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;float:none!important;display:block!important}
.jbvs-option{position:relative!important;min-height:252px!important;border:2px solid #f7b8d5!important;border-radius:22px!important;background:#fff!important;padding:24px 16px 20px!important;cursor:pointer!important;color:var(--jbvs-navy)!important;overflow:hidden!important;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease!important}
.jbvs-option input[type=checkbox]{position:absolute!important;left:18px!important;top:18px!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;margin:0!important;z-index:5!important;cursor:pointer!important;-webkit-appearance:none!important;appearance:none!important;border:2px solid #7f8991!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;padding:0!important}
.jbvs-option input[type=checkbox]:checked{background:var(--jbvs-pink)!important;border-color:var(--jbvs-pink)!important}.jbvs-option input[type=checkbox]:checked:after{content:"✓"!important;display:block!important;color:#fff!important;font-size:22px!important;font-weight:900!important;text-align:center!important;line-height:28px!important}.jbvs-option:hover,.jbvs-option:focus-within{border-color:var(--jbvs-pink)!important;box-shadow:0 12px 28px rgba(230,45,135,.13)!important}.jbvs-option:has(input:checked){border-color:var(--jbvs-pink)!important;background:linear-gradient(180deg,#fff,#fff8fc)!important;box-shadow:0 14px 30px rgba(230,45,135,.16)!important}
.jbvs-option-content{height:100%!important;min-height:204px!important;padding:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;text-align:center!important}
.jbvs-option-title{width:100%!important;margin:0 0 16px!important;padding:0 6px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;text-align:center!important;color:var(--jbvs-navy)!important}
.jbvs-activity-icon{width:38px!important;height:38px!important;min-width:38px!important;border-radius:13px!important;background:var(--jbvs-soft)!important;color:var(--jbvs-pink)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;margin:0 auto!important}.jbvs-activity-icon svg{width:23px!important;height:23px!important;display:block!important;fill:currentColor!important;stroke:none!important}.jbvs-option-title strong{display:block!important;width:100%!important;font-size:26px!important;line-height:1.05!important;font-weight:900!important;color:var(--jbvs-navy)!important;text-align:center!important;white-space:normal!important;overflow-wrap:normal!important}
.jbvs-option small{display:flex!important;align-items:center!important;justify-content:center!important;min-height:58px!important;max-width:235px!important;margin:0 auto 18px!important;font-size:21px!important;line-height:1.32!important;font-weight:500!important;color:var(--jbvs-text)!important;text-align:center!important;overflow-wrap:break-word!important}.jbvs-option em{display:inline-flex!important;align-items:center!important;justify-content:center!important;background:var(--jbvs-soft)!important;color:var(--jbvs-pink)!important;border-radius:999px!important;padding:10px 23px!important;margin:0 auto 18px!important;font-size:22px!important;font-weight:900!important;font-style:normal!important;line-height:1!important;white-space:nowrap!important;max-width:100%!important}.jbvs-places{display:block!important;margin-top:auto!important;color:#526a7e!important;font-size:18px!important;font-weight:900!important;line-height:1.18!important;text-align:center!important}.jbvs-option.jbvs-disabled{opacity:.55!important;background:#f7f8fa!important;border-color:#d8e1e8!important;cursor:not-allowed!important}.jbvs-option-note{display:block!important;margin-top:8px!important;color:#9b234f!important;font-size:13px!important;font-weight:800!important;line-height:1.2!important;text-align:center!important}.jbvs-divider{height:1px!important;background:#dfe5eb!important;margin:0 0 28px!important}
.jbvs-field-row{display:grid!important;grid-template-columns:1fr minmax(260px,1.08fr)!important;gap:26px!important;align-items:center!important;margin:0 0 26px!important}.jbvs-input{width:100%!important;height:74px!important;border:2px solid var(--jbvs-border)!important;border-radius:17px!important;background:#fff!important;padding:0 22px!important;font-size:24px!important;color:var(--jbvs-navy)!important;outline:none!important;box-shadow:none!important;line-height:1!important}.jbvs-input:focus{border-color:var(--jbvs-pink)!important;box-shadow:0 0 0 4px rgba(230,45,135,.10)!important}.jbvs-counter{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:28px!important;flex-wrap:nowrap!important;width:100%!important}.jbvs-counter button{width:74px!important;height:74px!important;min-width:74px!important;border:0!important;border-radius:18px!important;background:var(--jbvs-pink)!important;color:#fff!important;font-size:42px!important;font-weight:900!important;line-height:1!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 10px 20px rgba(230,45,135,.25)!important;cursor:pointer!important;padding:0!important;margin:0!important}.jbvs-counter input{width:96px!important;height:74px!important;min-width:96px!important;text-align:center!important;border:2px solid var(--jbvs-border)!important;border-radius:17px!important;background:#fff!important;color:var(--jbvs-navy)!important;font-size:27px!important;font-weight:900!important;padding:0!important;appearance:textfield!important;-moz-appearance:textfield!important;box-shadow:none!important}.jbvs-counter input::-webkit-outer-spin-button,.jbvs-counter input::-webkit-inner-spin-button{-webkit-appearance:none!important;margin:0!important}.jbvs-whatsapp-label{margin:4px 0 14px!important}.jbvs-whatsapp-input{margin-bottom:28px!important}.jbvs-submit{width:100%!important;height:82px!important;border:0!important;border-radius:18px!important;background:linear-gradient(135deg,var(--jbvs-pink),var(--jbvs-pink2))!important;color:#fff!important;font-size:28px!important;font-weight:900!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:18px!important;box-shadow:0 12px 26px rgba(230,45,135,.25)!important;cursor:pointer!important;padding:0 16px!important;margin:0!important}.jbvs-submit svg{width:34px!important;height:34px!important;fill:currentColor!important}.jbvs-submit:disabled{opacity:.7!important;cursor:wait!important}.jbvs-secure{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;margin:18px 0 0!important;color:#7c8b96!important;font-size:18px!important}.jbvs-secure svg{width:22px!important;height:22px!important;fill:var(--jbvs-pink)!important}
.jbvs-modal{position:fixed!important;inset:0!important;z-index:999999!important;display:none!important;align-items:center!important;justify-content:center!important;padding:20px!important}.jbvs-modal.is-open{display:flex!important}.jbvs-modal-bg{position:absolute!important;inset:0!important;background:rgba(15,45,68,.58)!important;backdrop-filter:blur(5px)!important}.jbvs-modal-box{position:relative!important;width:min(520px,100%)!important;background:#fff!important;border-radius:24px!important;box-shadow:0 24px 70px rgba(0,0,0,.25)!important;padding:30px 24px!important;text-align:left!important;color:var(--jbvs-navy)!important}.jbvs-modal-close{position:absolute!important;right:14px!important;top:12px!important;width:34px!important;height:34px!important;border:0!important;background:var(--jbvs-soft)!important;color:var(--jbvs-pink)!important;border-radius:999px!important;font-size:26px!important;line-height:1!important;cursor:pointer!important}.jbvs-modal-box h3{margin:0 34px 14px 0!important;font-size:28px!important;color:var(--jbvs-navy)!important;font-weight:900!important}.jbvs-modal-box p{font-size:17px!important;line-height:1.45!important;color:#415a70!important;margin:8px 0!important}.jbvs-recap{background:#fff7fb!important;border:1px solid #ffd0e5!important;border-radius:16px!important;padding:12px 14px!important;margin:14px 0!important}.jbvs-modal-ok{display:block!important;width:100%!important;height:54px!important;margin-top:16px!important;border:0!important;border-radius:14px!important;background:var(--jbvs-pink)!important;color:#fff!important;font-size:18px!important;font-weight:900!important;cursor:pointer!important}
@media(max-width:680px){
  .jbvs-wrap{max-width:100%!important;margin:0 auto 12px!important}.jbvs-topbar{padding:22px 10px 46px!important;margin-bottom:-24px!important}.jbvs-brand{font-size:36px!important}.jbvs-card{margin:0 10px!important;border-radius:24px!important;padding:26px 14px 24px!important}.jbvs-header{margin-bottom:24px!important}.jbvs-header h2{font-size:29px!important}.jbvs-header p{font-size:23px!important}.jbvs-intro{font-size:22px!important}.jbvs-label{font-size:19px!important;gap:10px!important}.jbvs-ico svg{width:30px!important;height:30px!important}.jbvs-date-label{margin-bottom:12px!important}.jbvs-date-box{height:62px!important;border-radius:14px!important;padding:0 48px 0 15px!important;margin-bottom:24px!important}.jbvs-date-icon svg{width:26px!important;height:26px!important}.jbvs-date-human{font-size:19px!important;margin-left:12px!important}.jbvs-date-arrow{right:17px!important;font-size:30px!important}.jbvs-section-title{font-size:22px!important;margin-bottom:13px!important}.jbvs-options-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;margin-bottom:25px!important}.jbvs-option{min-height:205px!important;border-radius:18px!important;padding:12px 7px 12px!important}.jbvs-option input[type=checkbox]{left:10px!important;top:10px!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;border-radius:6px!important}.jbvs-option input[type=checkbox]:checked:after{font-size:19px!important;line-height:25px!important}.jbvs-option-content{min-height:178px!important}.jbvs-option-title{margin:0 0 10px!important;padding:0 2px!important;gap:7px!important}.jbvs-activity-icon{width:31px!important;height:31px!important;min-width:31px!important;border-radius:10px!important}.jbvs-activity-icon svg{width:19px!important;height:19px!important}.jbvs-option-title strong{font-size:19px!important;letter-spacing:-.2px!important}.jbvs-option small{font-size:13.5px!important;line-height:1.22!important;margin-bottom:10px!important;max-width:128px!important;min-height:50px!important}.jbvs-option em{font-size:14px!important;padding:7px 11px!important;margin-bottom:10px!important}.jbvs-places{font-size:11.8px!important;line-height:1.15!important}.jbvs-option-note{font-size:10.5px!important}.jbvs-divider{margin-bottom:22px!important}.jbvs-field-row{display:block!important;margin-bottom:18px!important}.jbvs-field-row .jbvs-label{margin-bottom:10px!important}.jbvs-input{height:56px!important;border-radius:13px!important;font-size:18px!important;padding:0 15px!important}.jbvs-counter{justify-content:center!important;gap:15px!important}.jbvs-counter button{width:56px!important;height:56px!important;min-width:56px!important;border-radius:14px!important;font-size:32px!important}.jbvs-counter input{width:74px!important;height:56px!important;min-width:74px!important;border-radius:14px!important;font-size:21px!important}.jbvs-whatsapp-label{margin-top:4px!important}.jbvs-whatsapp-input{margin-bottom:22px!important}.jbvs-submit{height:66px!important;border-radius:14px!important;font-size:19px!important;gap:12px!important}.jbvs-submit svg{width:28px!important;height:28px!important}.jbvs-secure{font-size:14px!important;margin-top:14px!important}.jbvs-secure svg{width:18px!important;height:18px!important}
}
@media(max-width:390px){.jbvs-card{padding-left:10px!important;padding-right:10px!important}.jbvs-options-grid{gap:8px!important}.jbvs-option{min-height:198px!important;padding-left:5px!important;padding-right:5px!important}.jbvs-option-title strong{font-size:17px!important}.jbvs-option small{font-size:12.5px!important;max-width:115px!important}.jbvs-option em{font-size:13px!important;padding:7px 9px!important}.jbvs-places{font-size:10.8px!important}.jbvs-counter{gap:12px!important}}


/* === HARD FIX 2026-05-29: sélecteur balades 2 colonnes égales === */
.jbvs-wrap .jbvs-card .jbvs-options-grid{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  justify-content:space-between!important;
  gap:14px!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
.jbvs-wrap .jbvs-card .jbvs-options-grid > .jbvs-option,
.jbvs-wrap .jbvs-card .jbvs-options-grid > #jbvs-option-part1,
.jbvs-wrap .jbvs-card .jbvs-options-grid > #jbvs-option-part2{
  display:flex!important;
  flex:0 0 calc(50% - 7px)!important;
  width:calc(50% - 7px)!important;
  min-width:0!important;
  max-width:calc(50% - 7px)!important;
  margin:0!important;
  float:none!important;
  clear:none!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.jbvs-wrap .jbvs-card .jbvs-option-content{
  width:100%!important;
  max-width:100%!important;
}
.jbvs-wrap .jbvs-card .jbvs-option-title{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.jbvs-wrap .jbvs-card .jbvs-activity-icon{
  display:flex!important;
  margin:0 auto 4px auto!important;
}
.jbvs-wrap .jbvs-card .jbvs-option-title strong,
.jbvs-wrap .jbvs-card .jbvs-option small,
.jbvs-wrap .jbvs-card .jbvs-option em,
.jbvs-wrap .jbvs-card .jbvs-places{
  max-width:100%!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
.jbvs-wrap{margin-top:0!important;padding-top:0!important;}
.elementor-widget-shortcode:has(.jbvs-wrap),
.elementor-widget-shortcode .elementor-widget-container:has(.jbvs-wrap),
.elementor-section:has(.jbvs-wrap),
.elementor-container:has(.jbvs-wrap){margin-top:0!important;padding-top:0!important;}

@media(max-width:680px){
  .jbvs-wrap .jbvs-card .jbvs-options-grid{gap:12px!important;}
  .jbvs-wrap .jbvs-card .jbvs-options-grid > .jbvs-option,
  .jbvs-wrap .jbvs-card .jbvs-options-grid > #jbvs-option-part1,
  .jbvs-wrap .jbvs-card .jbvs-options-grid > #jbvs-option-part2{
    flex-basis:calc(50% - 6px)!important;
    width:calc(50% - 6px)!important;
    max-width:calc(50% - 6px)!important;
  }
  .jbvs-wrap .jbvs-card .jbvs-option{min-height:230px!important;padding:12px 8px 14px!important;}
  .jbvs-wrap .jbvs-card .jbvs-option-title strong{font-size:18px!important;line-height:1.05!important;}
  .jbvs-wrap .jbvs-card .jbvs-option small{font-size:13px!important;line-height:1.18!important;min-height:46px!important;max-width:118px!important;}
  .jbvs-wrap .jbvs-card .jbvs-option em{font-size:14px!important;padding:7px 10px!important;}
  .jbvs-wrap .jbvs-card .jbvs-places{font-size:11.5px!important;line-height:1.12!important;}
}
@media(max-width:360px){
  .jbvs-wrap .jbvs-card .jbvs-options-grid{gap:8px!important;}
  .jbvs-wrap .jbvs-card .jbvs-options-grid > .jbvs-option,
  .jbvs-wrap .jbvs-card .jbvs-options-grid > #jbvs-option-part1,
  .jbvs-wrap .jbvs-card .jbvs-options-grid > #jbvs-option-part2{
    flex-basis:calc(50% - 4px)!important;
    width:calc(50% - 4px)!important;
    max-width:calc(50% - 4px)!important;
  }
  .jbvs-wrap .jbvs-card .jbvs-option-title strong{font-size:16px!important;}
  .jbvs-wrap .jbvs-card .jbvs-option small{font-size:12px!important;max-width:105px!important;}
}
