/* =========================================================
   ZENBROC COACHING
   Formulaire public - CMS Coaching
   ========================================================= */

/* Les quatre cartes */
.zenbroc-coaching .row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

.zenbroc-coaching .row > .col-md-3 {
    display: flex;
    margin-bottom: 20px;
}

.zenbroc-coaching .row > .col-md-3 > div {
    width: 100%;
    height: 100% !important;
    min-height: 390px;
    padding: 22px !important;
    box-sizing: border-box;
    text-align: left !important;
}

/* Empêche le thème de justifier les textes */
.zenbroc-coaching .row > .col-md-3 *,
.zenbroc-coaching .row > .col-md-3 p,
.zenbroc-coaching .row > .col-md-3 label,
.zenbroc-coaching .row > .col-md-3 span,
.zenbroc-coaching .row > .col-md-3 strong {
    text-align: left !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
}

/* Titres */
.zenbroc-coaching .row > .col-md-3 h3 {
    margin: 0 0 22px 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 23px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

/* =========================================================
   ÉTAPE 1 - FORFAITS
   ========================================================= */

.zbc-package-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.zbc-package {
    display: flex !important;
    align-items: flex-start !important;
    gap: 11px;
    margin: 0 !important;
    padding: 13px !important;
    background: rgba(255, 255, 255, 0.10);
    border-radius: 8px;
    cursor: pointer;
    line-height: 1.3 !important;
}

.zbc-package input[type="radio"] {
    flex: 0 0 auto;
    width: 18px !important;
    height: 18px !important;
    margin: 3px 0 0 0 !important;
    cursor: pointer;
}

.zbc-package span {
    display: flex !important;
    flex: 1;
    flex-direction: column;
    min-width: 0;
}

.zbc-package strong {
    display: block;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

.zbc-package small {
    display: block;
    margin-top: 5px;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 700;
}

/* =========================================================
   ÉTAPE 2 - DATE
   ========================================================= */

#zbc-start-date {
    display: block;
    width: 100% !important;
    height: 52px;
    margin-top: 12px;
    padding: 10px 13px;
    box-sizing: border-box;
    background: #fff;
    color: #173b3e;
    border: 0;
    border-radius: 7px;
    font-size: 17px;
}

.zbc-selected-days {
    margin-top: 16px;
    padding: 12px;
    background: rgba(255, 255, 255, 0.10);
    border-radius: 7px;
    color: #fff;
}

.zbc-selected-days strong {
    display: block;
    margin-bottom: 8px;
    color: #fff !important;
}

.zbc-day {
    margin: 5px 0;
    color: #fff;
    font-size: 14px;
    line-height: 1.35;
}

/* =========================================================
   ÉTAPE 3 - COORDONNÉES
   ========================================================= */

.zbc-fields {
    display: flex;
    flex-direction: column;
    gap: 11px;
}

.zbc-fields label {
    display: block;
    margin: 0 !important;
    color: #fff !important;
}

.zbc-fields input {
    display: block;
    width: 100% !important;
    height: 50px;
    margin: 0 !important;
    padding: 10px 12px !important;
    box-sizing: border-box;
    background: #fff !important;
    color: #173b3e !important;
    border: 0 !important;
    border-radius: 7px !important;
    font-size: 16px !important;
    box-shadow: none !important;
}

.zbc-fields input::placeholder {
    color: #888;
    opacity: 1;
}

/* =========================================================
   ÉTAPE 4 - ENVOI
   ========================================================= */

#zbc-submit,
.zbc-submit {
    display: block;
    width: 100%;
    min-height: 54px;
    margin: 20px 0 15px;
    padding: 12px 14px;
    background: #fff;
    color: #08656a;
    border: 0;
    border-radius: 7px;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 700;
    text-align: center !important;
    cursor: pointer;
    transition: transform .15s ease, opacity .15s ease;
}

#zbc-submit:hover,
.zbc-submit:hover {
    transform: translateY(-1px);
}

#zbc-submit:disabled,
.zbc-submit:disabled {
    opacity: .65;
    cursor: wait;
}

.zbc-notice {
    display: block;
    margin-top: 14px;
    color: #fff !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.zbc-message {
    width: 100%;
    box-sizing: border-box;
    line-height: 1.4;
}

/* =========================================================
   TABLETTE / MOBILE
   ========================================================= */

@media (max-width: 991px) {
    .zenbroc-coaching .row > .col-md-3 > div {
        min-height: 0;
    }
}

@media (max-width: 767px) {
    .zenbroc-coaching .row {
        display: block;
    }

    .zenbroc-coaching .row > .col-md-3 {
        display: block;
        width: 100%;
        margin-bottom: 16px;
    }

    .zenbroc-coaching .row > .col-md-3 > div {
        min-height: 0;
        padding: 20px !important;
    }

    .zenbroc-coaching .row > .col-md-3 h3 {
        font-size: 21px !important;
    }
}

/* ZENBROC CATEGORY 29-30 */
body.page-category .block-category{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
body.page-category .block-category>h1{display:none!important}
body.page-category #category-description{color:#173b3e!important}
body.page-category #left-column{margin-top:0}
.zb-cat{font-family:inherit;color:#173b3e;margin:0 0 24px;overflow:hidden}
.zb-cat *{box-sizing:border-box}
.zb-cat>.zb-kicker{display:inline-block;background:#dff3f3;color:#08656a;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}
.zb-cat>h2{background:linear-gradient(135deg,#08656a 0%,#14979b 100%);color:#fff!important;border-radius:20px 20px 0 0;padding:30px 30px 10px;margin:0!important;font-size:32px!important;line-height:1.12!important;font-weight:800!important}
.zb-cat>h2+p{background:linear-gradient(135deg,#08656a 0%,#14979b 100%);color:#fff!important;border-radius:0 0 20px 20px;padding:4px 30px 30px;margin:0 0 14px!important;font-size:16px!important;line-height:1.6!important}
.zb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}
.zb-card{background:#fff;border:1px solid #cfe7e7;border-radius:16px;padding:18px;box-shadow:0 5px 16px rgba(8,101,106,.08)}
.zb-icon{width:42px;height:42px;border-radius:12px;background:#e5f5f5;color:#08656a;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:10px}
.zb-card strong{display:block;color:#08656a;font-size:15px;margin-bottom:5px}
.zb-card span{font-size:13px;line-height:1.45;color:#587172}
.zb-note{background:#edf8f8;border-left:4px solid #14979b;border-radius:12px;padding:15px 17px;margin:14px 0;color:#315657;font-size:14px;line-height:1.55}
.zb-linkbox{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#173b3e;color:#fff;border-radius:16px;padding:18px 20px;margin-top:14px}
.zb-linkbox strong{color:#fff!important;font-size:16px}
.zb-linkbox span{display:block;color:#cfe6e6;font-size:13px;margin-top:3px}
.zb-btn{display:inline-block;background:#fff;color:#08656a!important;text-decoration:none!important;font-weight:700;padding:10px 15px;border-radius:10px;white-space:nowrap;transition:transform .15s ease}
.zb-btn:hover{color:#08656a!important;transform:translateY(-1px)}
body.page-category #products .page-not-found{border:1px solid #d8ecec;border-radius:16px;box-shadow:none;background:#fff;padding:22px}
@media(max-width:767px){
 .zb-cat>h2{font-size:25px!important;padding:24px 20px 9px}
 .zb-cat>h2+p{font-size:14px!important;padding:3px 20px 24px}
 .zb-grid{grid-template-columns:1fr}
 .zb-linkbox{align-items:flex-start;flex-direction:column}
 .zb-btn{width:100%;text-align:center}
}


/* ZENBROC HOMEPAGE 2026 */
.zb-home{max-width:1200px;margin:0 auto;padding:12px 0 40px;color:#173b3e;text-align:left}
.zb-home *{box-sizing:border-box}
.zb-home-hero{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;overflow:hidden;background:linear-gradient(135deg,#08656a 0%,#14979b 100%);border-radius:26px;box-shadow:0 18px 42px rgba(8,101,106,.18);margin-bottom:42px;min-height:480px}
.zb-home-hero-copy{padding:46px 18px 46px 42px;position:relative;z-index:2}
.zb-home-kicker{display:inline-block;border-radius:999px;padding:7px 12px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px}
.zb-home-hero h1{color:#fff!important;font-size:43px!important;line-height:1.08!important;font-weight:800!important;margin:0 0 16px!important;letter-spacing:-.5px}
.zb-home-lead{color:#fff!important;font-size:17px!important;line-height:1.65!important;margin:0!important}
.zb-home-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.zb-home-btn{display:inline-block;padding:12px 17px;border-radius:11px;font-weight:700;text-decoration:none!important;line-height:1.25}
.zb-home-btn-light{background:#fff;color:#08656a!important}.zb-home-btn-outline{border:1px solid rgba(255,255,255,.55);color:#fff!important;background:rgba(255,255,255,.08)}.zb-home-btn-dark{background:#173b3e;color:#fff!important}
.zb-home-trust{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:22px}.zb-home-trust span{color:#fff;font-size:13px;font-weight:600}
.zb-home-hero-visual{height:100%;min-height:480px;position:relative}.zb-home-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#14979b 0%,rgba(20,151,155,.1) 35%,rgba(0,0,0,0) 100%)}
.zb-home-hero-visual img{width:100%;height:100%;min-height:480px;object-fit:cover;display:block}
.zb-home-section{margin:42px 0}.zb-home-heading{margin-bottom:20px}.zb-home-heading>span,.zb-home-final>span{display:inline-block;color:#08656a;background:#e5f5f5;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}
.zb-home-heading h2,.zb-home-final h2{font-size:30px!important;line-height:1.2!important;color:#173b3e!important;font-weight:800!important;margin:0 0 8px!important}.zb-home-heading p{color:#617879;line-height:1.6;max-width:800px;margin:0}
.zb-home-catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.zb-home-catgrid>div{min-width:0}.zb-home-catgrid a{display:block;height:100%;background:#fff;border:1px solid #d4eaea;border-radius:16px;padding:19px;text-decoration:none!important;box-shadow:0 6px 18px rgba(8,101,106,.06);transition:.18s ease}.zb-home-catgrid a:hover{transform:translateY(-3px);border-color:#9dd3d3;box-shadow:0 11px 25px rgba(8,101,106,.11)}.zb-home-catgrid b{display:block;color:#08656a;font-size:16px;margin-bottom:5px}.zb-home-catgrid span{display:block;color:#647a7b;font-size:13px;line-height:1.45}
.zb-home-values{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:#f0f8f8;border-radius:20px;padding:18px}.zb-home-values>div{background:#fff;border-radius:14px;padding:18px}.zb-home-values strong{display:block;color:#08656a;font-size:16px;margin-bottom:5px}.zb-home-values span{display:block;color:#627879;font-size:13px;line-height:1.5}
.zb-home-pro{background:#f4fafa;border-radius:22px;padding:28px}.zb-home-duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}.zb-home-procard{background:#fff;border:1px solid #d4eaea;border-radius:17px;padding:22px;box-shadow:0 7px 20px rgba(8,101,106,.06)}.zb-home-procard small{color:#14979b;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.zb-home-procard h3{color:#173b3e!important;font-size:21px!important;margin:7px 0!important;font-weight:800!important}.zb-home-procard p{color:#627879;line-height:1.5}.zb-home-procard a{color:#08656a!important;font-weight:800;text-decoration:none!important}
.zb-home-live{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;background:#173b3e;border-radius:24px;padding:34px;margin:42px 0;color:#fff}.zb-home-live h2{color:#fff!important;font-size:32px!important;font-weight:800!important;margin:0 0 8px!important}.zb-home-live p{color:#d8e9e9!important;line-height:1.6}.zb-home-live-big{color:#fff!important;font-size:18px!important;font-weight:700}.zb-home-stats{display:grid;gap:9px}.zb-home-stats>div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:13px;padding:14px}.zb-home-stats b,.zb-home-stats span{display:block}.zb-home-stats b{color:#fff;font-size:20px}.zb-home-stats span{color:#cce2e2;font-size:12px;margin-top:2px}
.zb-home-services{display:grid;grid-template-columns:1fr 1fr;gap:14px}.zb-home-services>div{border:1px solid #d4eaea;border-radius:17px;padding:22px;background:#fff}.zb-home-services b,.zb-home-services span,.zb-home-services a{display:block}.zb-home-services b{color:#08656a;font-size:18px;margin-bottom:6px}.zb-home-services span{color:#63797a;font-size:13px;line-height:1.5;margin-bottom:13px}.zb-home-services a{color:#08656a!important;font-weight:800;text-decoration:none!important}
.zb-home-final{text-align:center;background:#eaf7f7;border-radius:22px;padding:34px 20px;margin-top:42px}.zb-home-final p{max-width:700px;margin:0 auto 18px;color:#5e7677;line-height:1.6}
@media(max-width:900px){.zb-home-hero{grid-template-columns:1fr}.zb-home-hero-visual{min-height:300px;max-height:360px}.zb-home-hero-visual img{min-height:300px;max-height:360px}.zb-home-hero-visual:after{background:linear-gradient(180deg,#14979b 0%,rgba(20,151,155,0) 38%)}.zb-home-catgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.zb-home{padding:5px 0 28px;overflow:hidden}.zb-home-hero{border-radius:18px;margin-bottom:30px;min-height:0}.zb-home-hero-copy{padding:27px 19px 23px}.zb-home-hero h1{font-size:30px!important}.zb-home-lead{font-size:15px!important}.zb-home-actions{display:grid}.zb-home-btn{text-align:center;width:100%}.zb-home-trust{display:grid;gap:6px}.zb-home-hero-visual{min-height:220px;max-height:260px}.zb-home-hero-visual img{min-height:220px;max-height:260px}.zb-home-section{margin:30px 0}.zb-home-heading h2,.zb-home-final h2{font-size:24px!important}.zb-home-catgrid,.zb-home-values,.zb-home-duo,.zb-home-services,.zb-home-live{grid-template-columns:1fr}.zb-home-catgrid{gap:9px}.zb-home-values{padding:12px}.zb-home-pro{padding:20px 13px;border-radius:17px}.zb-home-live{padding:24px 18px;border-radius:18px;gap:18px}.zb-home-live h2{font-size:27px!important}.zb-home-final{padding:27px 17px;border-radius:18px}}
