.obc{--c-bg:var(--ob-card,#2A2927);--c-ink:var(--ob-light,#F7F5F2);--c-ink2:var(--ob-ink2,rgba(247,245,242,.8));--c-line:var(--ob-line,rgba(247,245,242,.12));--c-line2:var(--ob-line2,rgba(247,245,242,.28));--c-acc:var(--ob-sand,#EFD6AC);--c-acc-ink:var(--ob-acc-ink,#1E1D1B);color:var(--c-ink);font-family:var(--ob-text,'Kumbh Sans'),sans-serif;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:40px;align-items:start}
.obc *{box-sizing:border-box}
.obc-steps{display:flex;flex-direction:column;gap:36px}
.obc-step h3{font-family:var(--ob-title,'Space Grotesk'),sans-serif;font-weight:600;font-size:22px;letter-spacing:-.01em;margin:0 0 4px;color:var(--c-ink)}
.obc-step .obc-hint{font-size:14px;color:var(--c-ink2);margin:0 0 14px}
.obc-num{font-family:var(--ob-mono,'Space Mono'),monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-acc);margin:0 0 6px}
.obc-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.obc .obc-opt{white-space:normal;line-height:1.4;height:auto;min-height:0;display:block;width:100%;text-transform:none;letter-spacing:0;font-weight:400;box-shadow:none}
.obc .obc-opt:hover,.obc .obc-opt:focus{background:transparent;color:var(--c-ink)}
.obc .obc-opt[aria-pressed="true"]:hover,.obc .obc-opt[aria-pressed="true"]:focus{background:rgba(239,214,172,.1)}
.obc .obc-btn{white-space:normal;line-height:1.2;text-transform:none;letter-spacing:0}
.obc .obc-btn:hover,.obc .obc-btn:focus{background:var(--c-acc);color:var(--c-acc-ink)}
.obc-opt{position:relative;text-align:left;border:1px solid var(--c-line2);border-radius:16px;padding:14px 16px;background:transparent;color:var(--c-ink);cursor:pointer;font:inherit;transition:border-color .2s,background .2s}
.obc-opt:hover{border-color:var(--c-acc)}
.obc-opt[aria-pressed="true"]{border-color:var(--c-acc);background:rgba(239,214,172,.1);box-shadow:inset 0 0 0 1px var(--c-acc)}
.obc-opt b{display:block;font-weight:600;font-size:15px;margin-bottom:4px}
.obc-opt span{display:block;font-size:13px;color:var(--c-ink2);line-height:1.4}
.obc-opt .obc-price{font-family:var(--ob-mono,'Space Mono'),monospace;font-size:12.5px;color:var(--c-acc);margin-top:8px}
.obc-badge{position:absolute;top:-9px;right:12px;background:var(--c-acc);color:var(--c-acc-ink);font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px}
.obc-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--c-ink2);margin-top:12px;cursor:pointer}
.obc-check input{margin-top:3px;accent-color:var(--c-acc)}
.obc-range{display:flex;align-items:center;gap:14px}
.obc-range input{flex:1;accent-color:var(--c-acc)}
.obc-range output{font-family:var(--ob-mono,'Space Mono'),monospace;min-width:110px;text-align:right}
.obc-sum{position:sticky;top:100px;border:1px solid var(--c-line2);border-radius:24px;padding:28px;background:var(--c-bg)}
.obc-sum h3{font-family:var(--ob-title,'Space Grotesk'),sans-serif;font-size:22px;margin:0 0 18px}
.obc-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-top:1px solid var(--c-line)}
.obc-row span{font-size:14px;color:var(--c-ink2)}
.obc-row b{font-family:var(--ob-title,'Space Grotesk'),sans-serif;font-size:22px;font-weight:700;letter-spacing:-.02em}
.obc-row.obc-main b{font-size:34px;color:var(--c-acc)}
.obc-lines{list-style:none;margin:8px 0 0;padding:0;font-size:13px;color:var(--c-ink2)}
.obc-lines li{display:flex;justify-content:space-between;gap:10px;padding:4px 0}
.obc-note{font-size:12.5px;color:var(--c-ink2);margin:14px 0 0;line-height:1.5}
.obc-btn{display:inline-flex;justify-content:center;align-items:center;width:100%;height:54px;margin-top:18px;border-radius:999px;border:1px solid var(--c-acc);background:var(--c-acc);color:var(--c-acc-ink);font:600 16px var(--ob-text,'Kumbh Sans'),sans-serif;cursor:pointer}
.obc-btn:hover{transform:translateY(-1px)}
.obc-form{display:none;margin-top:20px;gap:10px;flex-direction:column}
.obc-form.is-open{display:flex}
.obc-form .obc-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.obc-form input,.obc-form textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--c-line2);background:transparent;color:var(--c-ink);font:inherit;font-size:14px}
.obc-form input::placeholder,.obc-form textarea::placeholder{color:var(--c-ink2)}
.obc-form .obc-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.obc-err{color:#F09595;font-size:13px;margin:4px 0 0}
.obc-ok{border:1px solid var(--c-acc);border-radius:16px;padding:16px;margin-top:18px;font-size:15px}
@media(max-width:1024px){.obc{grid-template-columns:minmax(0,1fr)}.obc-sum{position:static}}
@media(max-width:767px){.obc-form .obc-2{grid-template-columns:1fr}.obc-row.obc-main b{font-size:28px}}

/* Rayons : neutralise le style de bouton du thème (50px). */
.obc .obc-opt{border-radius:16px!important;text-align:left!important;white-space:normal!important}
.obc button:not(.obc-opt){border-radius:999px!important}
/* Sous-groupes d'une étape (Site vitrine / E-commerce) */
.obc-group{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:14px 0 2px;padding-top:12px;border-top:1px solid var(--c-line2)}
.obc-group b{font-family:var(--ob-mono,'Space Mono'),monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--c-acc);font-weight:400}
.obc-group span{font-size:13px;color:var(--c-ink2)}

/* v2 : questions du parcours */
.obc-q{font-size:14px;font-weight:600;color:var(--c-ink);margin:20px 0 10px}
.obc-opts-s{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.obc-opts-s .obc-opt{padding:10px 14px}
.obc-url{display:flex;gap:10px;align-items:stretch}
.obc-url input{flex:1;min-width:0;padding:12px 14px;border-radius:12px;border:1px solid var(--c-line2);background:transparent;color:var(--c-ink);font:inherit;font-size:15px}
.obc .obc-btn.obc-btn-s{width:auto;height:auto;margin:0;padding:0 22px;font-size:14px}
.obc-detect{margin:8px 0 0!important;min-height:1em}
.obc-incl{border:1px dashed var(--c-line2);border-radius:16px;padding:14px 16px;font-size:14px;color:var(--c-ink2);margin:0 0 12px}
/* Le kit Elementor impose une couleur claire aux boutons : textes invisibles en mode clair */
.obc .obc-opt,.obc .obc-opt b{color:var(--c-ink)!important}
.obc .obc-opt span{color:var(--c-ink2)!important}
.obc .obc-opt .obc-price{color:var(--c-acc)!important}
html.v4-light .obc .obc-opt .obc-price{color:#75542C!important}
.obc .obc-opt .obc-badge{color:var(--c-acc-ink)!important}

/* v2 : sections en accordéon */
.obc-steps{gap:14px}
.obc-sec{border:1px solid var(--c-line2);border-radius:20px;overflow:hidden}
.obc-sec.is-open{border-color:var(--c-acc)}
.obc .obc-sec-head{display:flex!important;align-items:center;gap:16px;width:100%;padding:20px 22px;background:transparent;border:0;border-radius:0!important;cursor:pointer;text-align:left;color:var(--c-ink)!important;font:inherit;height:auto;text-transform:none;letter-spacing:0;box-shadow:none}
.obc .obc-sec-head:hover,.obc .obc-sec-head:focus{background:transparent;color:var(--c-ink)!important}
.obc-sec-head .obc-num{margin:0;flex:none}
.obc-sec-t{flex:1;min-width:0}
.obc-sec-t b{display:block;font-family:var(--ob-title,'Space Grotesk'),sans-serif;font-size:20px;font-weight:600;color:var(--c-ink)}
.obc-sec-t span{display:block;font-size:13px;color:var(--c-ink2);margin-top:2px}
.obc-sec-t .obc-sec-chosen{color:var(--c-acc)}
html.v4-light .obc-sec-t .obc-sec-chosen{color:#75542C}
.obc-sec-ico{font-size:24px;line-height:1;color:var(--c-acc);flex:none}
.obc-sec-body{padding:0 22px 22px}
.obc-sec-body>.obc-q:first-child,.obc-sec-body>.obc-hint:first-child{margin-top:0}
.obc-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px;border:1px solid var(--c-line2);border-radius:999px;margin:0 0 16px}
.obc .obc-mode-btn{border:0;border-radius:999px!important;padding:10px 14px;background:transparent;color:var(--c-ink)!important;cursor:pointer;font:inherit;height:auto;text-transform:none;letter-spacing:0;line-height:1.2;box-shadow:none}
.obc .obc-mode-btn b{display:block;font-size:15px;font-weight:600}
.obc .obc-mode-btn span{display:block;font-size:12px;color:var(--c-ink2)}
.obc .obc-mode-btn[aria-pressed="true"]{background:var(--c-acc);color:var(--c-acc-ink)!important}
.obc .obc-mode-btn[aria-pressed="true"] span{color:var(--c-acc-ink)}
.obc .obc-next{display:inline-block;margin-top:22px;padding:10px 20px;border:1px solid var(--c-acc);background:transparent;color:var(--c-ink)!important;cursor:pointer;font:inherit;font-size:14px;height:auto;text-transform:none;letter-spacing:0}
.obc .obc-next:hover{background:var(--c-acc);color:var(--c-acc-ink)!important}

/* v2 : cartes détaillées, recommandation, packs */
.obc .obc-card{display:flex!important;flex-direction:column;gap:4px}
.obc .obc-card .obc-who{font-size:12px;color:var(--c-ink2)!important;margin:0}
.obc .obc-card b{font-size:17px;margin-bottom:6px}
.obc .obc-card .obc-li{position:relative;padding-left:14px;font-size:13.5px;color:var(--c-ink)!important}
.obc .obc-card .obc-li:before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--c-acc)}
.obc .obc-card .obc-cnote{font-size:12.5px;margin-top:6px}
.obc .obc-card .obc-price{font-size:15px;margin-top:10px}
.obc .obc-card .obc-foot{font-size:12px;margin-top:2px}
.obc-packs{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.obc-rec{border-radius:20px;padding:4px 0 0}
.obc-rec-l{font-family:var(--ob-mono,'Space Mono'),monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--c-acc);margin:20px 0 8px}
.obc .obc-link{display:inline-block;background:none!important;border:0;padding:12px 0 0;margin:0;color:var(--c-acc)!important;font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;height:auto;text-transform:none;letter-spacing:0;box-shadow:none}
html.v4-light .obc .obc-link{color:#75542C!important}
.obc-nudge{margin-top:14px;border-radius:14px;padding:12px 14px;font-size:14px;background:rgba(239,214,172,.12);border:1px solid var(--c-acc)}
.obc-nudge .obc-link{padding:0}
.obc-input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--c-line2);background:transparent;color:var(--c-ink);font:inherit;font-size:15px}
.obc-sw{display:inline-flex;gap:4px;margin-top:10px;padding:3px;border:1px solid var(--c-line2);border-radius:999px;align-self:flex-start}
.obc-sw-b{padding:4px 12px;border-radius:999px;font-size:12.5px;cursor:pointer;color:var(--c-ink)!important}
.obc-sw-b.is-on{background:var(--c-acc);color:var(--c-acc-ink)!important}
.obc .obc-mode-btn:only-child{grid-column:1/-1}

.obc-amount{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:14px;color:var(--c-ink2)}
.obc-amount .obc-input{max-width:160px}
.obc-ta{margin-top:10px;resize:vertical;min-height:80px}

/* Respirations (retours du 15/10) */
.obc-sec-body{padding:4px 28px 28px}
.obc .obc-q{margin:26px 0 12px}
.obc-sec-body>.obc-mode+.obc-q,.obc-sec-body>.obc-mode+.obc-hint{margin-top:4px}
.obc-opts{gap:12px}
.obc-opts-s{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.obc .obc-opt{padding:16px 18px}
.obc .obc-card{padding:20px 20px 18px}
.obc-packs{gap:14px}
.obc-incl,.obc-nudge{margin-top:16px}
.obc-note-strong{color:var(--c-ink)!important;font-weight:600}
@media(max-width:767px){.obc-sec-body{padding:4px 16px 20px}.obc .obc-sec-head{padding:16px}.obc-opts-s{grid-template-columns:1fr 1fr}}

.obc-cartnote{margin:0 0 4px;padding:14px 18px;border-radius:16px;border:1px solid var(--c-acc);background:rgba(239,214,172,.1);font-size:14px;color:var(--c-ink)}
.obc-cartnote .obc-link{padding:0}

/* Mobile : aucun débordement horizontal (sur iPhone, un débordement dézoome la page et décale les éléments fixes) */
.obc,.obc *{min-width:0}
.obc-mode{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.obc .obc-mode-btn,.obc .obc-next{white-space:normal!important;overflow-wrap:anywhere}
.obc .obc-next{max-width:100%;text-align:left;line-height:1.3}
.obc-sec-t b{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:767px){.obc-sec-t b{font-size:17px}.obc .obc-mode-btn b{font-size:14px}.obc .obc-mode-btn{padding:9px 10px}.obc .obc-sec-head{gap:10px}.obc-sec-body{padding:4px 14px 20px}}
