/* Coach Caillet — styles du pack Divi */
:root{--cc-red:#A81A24;--cc-black:#000;--cc-white:#fff;--cc-dark:#101010;--cc-muted:#cfcfcf;--cc-max:1320px}
html{scroll-behavior:smooth}body{background:#000;color:#fff;font-family:Barlow,Arial,sans-serif}body.admin-bar .cc-site-header{top:32px}#main-header,#main-footer{display:none!important}#page-container{padding-top:0!important}.et_pb_section{background:#000}.et_pb_row{width:min(92%,var(--cc-max));max-width:var(--cc-max)}
.cc-site-header{position:fixed;z-index:9999;top:0;left:0;right:0;height:76px;padding:10px 4vw;display:flex;align-items:center;gap:30px;background:rgba(0,0,0,.28);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(8px);transition:background .25s ease,box-shadow .25s ease}.cc-site-header.is-scrolled{background:#000;box-shadow:0 10px 30px rgba(0,0,0,.35)}.cc-brand{display:flex;align-items:center;gap:12px;color:#fff!important;text-decoration:none;font-weight:800;letter-spacing:.08em}.cc-brand img{width:48px;height:50px;object-fit:contain}.cc-main-nav{display:flex;gap:28px;margin-left:auto}.cc-main-nav a{color:#fff!important;text-transform:uppercase;font-size:14px;font-weight:700;letter-spacing:.05em}.cc-main-nav a:hover,.cc-legal-links a:hover{color:var(--cc-red)!important}.cc-header-cta,.cc-button-inline,.cc-footer-instagram,.cc-form-submit{display:inline-flex;justify-content:center;align-items:center;background:var(--cc-red);color:#fff!important;text-decoration:none;text-transform:uppercase;font-weight:800;letter-spacing:.05em;border:0;border-radius:0;padding:14px 20px;cursor:pointer;transition:transform .2s ease,filter .2s ease}.cc-header-cta:hover,.cc-button-inline:hover,.cc-footer-instagram:hover,.cc-form-submit:hover{transform:translateY(-2px);filter:brightness(1.12)}.cc-nav-toggle{display:none;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);padding:9px 12px}
.cc-hero{min-height:94vh;display:flex!important;align-items:center;padding-top:110px!important;padding-bottom:70px!important;background:radial-gradient(circle at 50% 45%,#181818 0,#050505 50%,#000 75%)}.cc-hero-inner{text-align:center;max-width:1020px;margin:auto}.cc-hero-logo{width:110px;margin-bottom:20px}.cc-hero h1,.cc-page-heading h1{font-family:Syncopate,Arial,sans-serif;font-weight:700;color:#fff;font-size:clamp(48px,8vw,108px);line-height:.98;letter-spacing:-.04em;margin:0}.cc-kicker,.cc-eyebrow{color:#fff;text-transform:uppercase;letter-spacing:.22em;font-weight:700}.cc-kicker{font-size:clamp(15px,2vw,22px);margin-top:20px}.cc-red-rule{display:block;width:min(520px,75vw);height:3px;background:var(--cc-red);margin:24px auto}.cc-hero-lead{font-size:clamp(18px,2vw,24px);max-width:760px;margin:18px auto;color:#e8e8e8}.cc-hero h2{font-family:Syncopate,Arial,sans-serif;font-size:clamp(26px,4vw,52px);margin-top:35px;color:#fff}
.cc-video-section{padding:0!important}.cc-video-row{width:100%!important;max-width:none!important;display:flex;align-items:stretch}.cc-video-row>.et_pb_column{margin:0!important}.cc-video-col{width:66.666%!important}.cc-video-copy-col{width:33.333%!important;background:var(--cc-dark);display:flex;align-items:center}.cc-video-wrap{position:relative;height:620px;background:#111;overflow:hidden}.cc-hero-video{width:100%;height:100%;object-fit:cover;display:block}.cc-sound-toggle{position:absolute;left:24px;bottom:24px;background:rgba(0,0,0,.75);border:1px solid rgba(255,255,255,.4);color:#fff;padding:11px 14px;cursor:pointer}.cc-video-copy{padding:60px 44px}.cc-video-copy h2,.cc-panel h2,.cc-section-heading h2,.cc-cta-copy h2,.cc-offer h2,.cc-payment-info h2,.cc-contact-card h2,.cc-legal-copy h2{font-family:Syncopate,Arial,sans-serif;color:#fff;line-height:1.15}.cc-video-copy h2{font-size:clamp(30px,3vw,48px)}.cc-video-copy p,.cc-panel p,.cc-service-card p,.cc-offer p,.cc-contact-card p,.cc-legal-copy p,.cc-legal-copy li{font-size:18px;line-height:1.65;color:#ededed}.cc-video-copy .et_pb_button_module_wrapper{margin:25px 44px 55px}
.cc-about,.cc-services-teaser,.cc-final-cta,.cc-offers,.cc-payment-info,.cc-contact-section,.cc-legal-section{padding:90px 0!important}.cc-about-row{display:flex;gap:28px}.cc-about-row>.et_pb_column{width:50%!important;margin:0!important}.cc-panel,.cc-service-card,.cc-contact-card,.cc-legal-copy{background:#101010;border:1px solid rgba(168,26,36,.58);padding:42px;height:100%}.cc-center{text-align:center}.cc-section-heading h2,.cc-cta-copy h2{font-size:clamp(34px,5vw,62px);max-width:1000px;margin:15px auto 0}.cc-three-cards{display:flex;gap:24px;margin-top:35px}.cc-three-cards>.et_pb_column{width:33.333%!important;margin:0!important}.cc-service-card{min-height:330px;display:flex;flex-direction:column}.cc-service-card h3{font-family:Syncopate,Arial,sans-serif;color:#fff;font-size:clamp(24px,2.4vw,38px);min-height:82px}.cc-service-card:before{content:"";display:block;width:100%;height:54px;background:var(--cc-red);margin:-42px 0 32px}.cc-service-card p{flex:1}.cc-text-link{color:#fff!important;text-transform:uppercase;font-weight:800;border-bottom:2px solid var(--cc-red);padding-bottom:5px}.cc-final-cta{background:linear-gradient(135deg,#080808,#171717)!important}.cc-center-button{text-align:center}.cc-center-button .et_pb_button{margin-top:22px}
.cc-page-hero{padding:170px 0 75px!important;background:linear-gradient(180deg,#111,#000)!important}.cc-page-heading h1{font-size:clamp(46px,7vw,88px)}.cc-page-lead{font-size:22px;line-height:1.6;max-width:850px;color:#ddd}.cc-offer-columns{display:flex;align-items:stretch;gap:22px}.cc-offer-column{width:33.333%!important;margin:0!important;display:flex}.cc-offer-module,.cc-offer-module .et_pb_text_inner,.cc-offer{height:100%}.cc-offer{background:#0e0e0e;border:1px solid var(--cc-red);padding:34px;display:flex;flex-direction:column}.cc-offer header{border-top:58px solid var(--cc-red);margin:-34px -34px 30px;padding:26px 34px 0}.cc-offer h2{font-size:clamp(28px,3vw,42px);min-height:96px}.cc-feature-list{list-style:none!important;padding:0!important;margin:0 0 28px!important;border-top:1px solid rgba(168,26,36,.7)}.cc-feature-list li{padding:12px 0;border-bottom:1px solid rgba(168,26,36,.7);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.cc-price-box{margin-top:auto;background:#000;padding:24px;border-left:4px solid var(--cc-red)}.cc-price-box h3{font-family:Syncopate,Arial,sans-serif;color:#fff;font-size:21px;margin:20px 0 12px}.cc-price-box h3:first-child{margin-top:0}.cc-price-box p{margin:4px 0}.cc-small{font-size:14px!important;color:#bbb!important}.cc-button-inline{margin-top:24px;width:100%}.cc-payment-info .et_pb_row{display:flex;gap:26px}.cc-payment-info .et_pb_column{width:50%!important;margin:0!important}
.cc-contact-section .et_pb_row{display:flex;gap:30px}.cc-contact-section .et_pb_column:first-child{width:60%!important;margin:0!important}.cc-contact-section .et_pb_column:last-child{width:40%!important;margin:0!important}.cc-contact-form{background:#101010;border:1px solid rgba(168,26,36,.58);padding:38px}.cc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cc-contact-form label{display:block;color:#fff;font-weight:700;margin-bottom:7px}.cc-contact-form input,.cc-contact-form textarea,.cc-contact-form select{width:100%;background:#000;color:#fff;border:1px solid #555;padding:13px;font:inherit}.cc-contact-form input:focus,.cc-contact-form textarea:focus,.cc-contact-form select:focus{outline:2px solid var(--cc-red);border-color:var(--cc-red)}.cc-checkbox label{font-weight:400}.cc-checkbox input{width:auto;margin-right:7px}.cc-hp{position:absolute!important;left:-9999px!important}.cc-form-success,.cc-form-error{padding:16px;margin-bottom:18px}.cc-form-success{background:#12381c}.cc-form-error{background:#49151a}.cc-contact-card a{color:#fff}.cc-contact-card .cc-button-inline{margin-top:18px}
.cc-legal-hero{padding-bottom:40px!important}.cc-legal-copy{max-width:1000px;margin:auto}.cc-legal-copy h2{font-size:28px;margin-top:38px}.cc-legal-note{border-left:4px solid var(--cc-red);padding:14px 18px;background:#000}.cc-site-footer{padding:70px 5vw;background:#070707;border-top:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr;gap:34px;color:#fff}.cc-site-footer img{width:72px}.cc-site-footer h2,.cc-site-footer h3{font-family:Syncopate,Arial,sans-serif;color:#fff}.cc-site-footer h2{font-size:24px}.cc-site-footer h3{font-size:17px}.cc-site-footer p{line-height:1.65}.cc-site-footer a{color:#fff}.cc-footer-instagram{font-size:13px;padding:12px 14px}.cc-cookie{position:fixed;z-index:10000;left:20px;right:20px;bottom:20px;max-width:780px;margin:auto;background:#111;border:1px solid var(--cc-red);padding:18px 20px;display:none;align-items:center;gap:20px;box-shadow:0 20px 60px rgba(0,0,0,.55)}.cc-cookie.is-visible{display:flex}.cc-cookie p{margin:0;flex:1;color:#fff}.cc-cookie a{color:#fff;text-decoration:underline}.cc-cookie button{background:var(--cc-red);color:#fff;border:0;padding:11px 16px;font-weight:800;cursor:pointer}
@media(max-width:980px){body.admin-bar .cc-site-header{top:46px}.cc-site-header{height:68px}.cc-brand span,.cc-header-cta{display:none}.cc-nav-toggle{display:block;margin-left:auto}.cc-main-nav{position:absolute;top:68px;left:0;right:0;background:#000;display:none;flex-direction:column;gap:0;padding:12px 5vw}.cc-main-nav.is-open{display:flex}.cc-main-nav a{padding:14px 0;border-bottom:1px solid #222}.cc-video-row,.cc-about-row,.cc-three-cards,.cc-offer-columns,.cc-payment-info .et_pb_row,.cc-contact-section .et_pb_row{display:block}.cc-video-col,.cc-video-copy-col,.cc-about-row>.et_pb_column,.cc-three-cards>.et_pb_column,.cc-offer-column,.cc-payment-info .et_pb_column,.cc-contact-section .et_pb_column:first-child,.cc-contact-section .et_pb_column:last-child{width:100%!important;margin:0 0 24px!important}.cc-video-wrap{height:430px}.cc-video-copy{padding:42px 28px}.cc-three-cards{margin-top:20px}.cc-service-card h3{min-height:auto}.cc-offer h2{min-height:auto}.cc-site-footer{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.cc-hero{min-height:88vh}.cc-hero-logo{width:82px}.cc-video-wrap{height:310px}.cc-about,.cc-services-teaser,.cc-final-cta,.cc-offers,.cc-payment-info,.cc-contact-section,.cc-legal-section{padding:58px 0!important}.cc-panel,.cc-service-card,.cc-contact-card,.cc-legal-copy,.cc-contact-form{padding:26px}.cc-service-card:before{margin:-26px 0 25px;height:40px}.cc-offer{padding:24px}.cc-offer header{margin:-24px -24px 24px;padding:22px 24px 0;border-top-width:44px}.cc-form-grid{grid-template-columns:1fr}.cc-site-footer{grid-template-columns:1fr}.cc-cookie{align-items:flex-start;flex-direction:column}.cc-cookie button{width:100%}}


/* Coach Caillet — correctif final v2.4 */
:root{--cc-red:#A81A24;--cc-black:#000;--cc-white:#fff;--cc-dark:#101010}
body,.cc-site-header,.cc-site-footer,.cc-contact-form,.cc-offer,.cc-panel{font-family:"Barlow",Arial,sans-serif!important}
.cc-hero h1,.cc-hero h2,.cc-page-heading h1,.cc-video-copy h2,.cc-panel h2,.cc-section-heading h2,.cc-cta-copy h2,.cc-offer h2,.cc-price-box h3,.cc-contact-card h2,.cc-site-footer h2,.cc-site-footer h3{font-family:"Horizon","Syncopate",Arial,sans-serif!important}

/* Accueil : texte d’introduction et vidéo réellement visible */
.cc-hero-lead{max-width:980px!important}
.cc-video-section-v22{padding:0!important}
.cc-video-row-v22{width:100%!important;max-width:none!important;display:flex!important;align-items:stretch!important;min-height:0!important}
.cc-video-row-v22>.et_pb_column{margin:0!important}
.cc-video-col-v22{width:72%!important;flex:0 0 72%!important}
.cc-video-copy-col-v22{width:28%!important;flex:0 0 28%!important;background:var(--cc-dark)!important;display:flex!important;flex-direction:column!important;justify-content:center!important;overflow:hidden!important}
.cc-video-wrap-v22{height:390px!important;min-height:390px!important;overflow:hidden!important;position:relative!important;background:#070707!important}
.cc-video-wrap-v22 video{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;display:block!important;background:#070707!important}
.cc-video-copy-v22{padding:26px 28px 8px!important}
.cc-video-copy-v22 .cc-eyebrow{font-size:12px!important;line-height:1.4!important;letter-spacing:.18em!important;margin:0 0 14px!important}
.cc-video-copy-v22 h2{font-size:clamp(22px,1.75vw,31px)!important;line-height:1.12!important;margin:0 0 16px!important}
.cc-video-copy-v22 p{font-size:15px!important;line-height:1.48!important;margin:0!important}
.cc-video-copy-col-v22 .et_pb_button_module_wrapper{margin:12px 28px 25px!important}
.cc-video-copy-col-v22 .et_pb_button{font-size:13px!important;padding:11px 14px!important}
.cc-video-wrap-v22 .cc-sound-toggle{left:16px!important;bottom:16px!important;font-size:12px!important;padding:9px 12px!important}

/* Accueil : mêmes bandeaux rouges que les cartes de prestations */
.cc-about-row-v22{align-items:stretch!important}
.cc-about-row-v22>.et_pb_column{display:flex!important}
.cc-panel-module,.cc-panel-module>.et_pb_text_inner{display:flex!important;width:100%!important;height:100%!important}
.cc-panel-band{padding:0!important;overflow:hidden!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important}
.cc-panel-band-title{background:var(--cc-red)!important;color:#fff!important;font-family:"Horizon","Syncopate",Arial,sans-serif!important;font-weight:700!important;letter-spacing:.12em!important;font-size:19px!important;line-height:1.2!important;padding:24px 36px!important;min-height:70px!important;display:flex!important;align-items:center!important}
.cc-panel-band-body{padding:38px 42px 42px!important;flex:1!important}
.cc-panel-band-body h2{margin-top:0!important}

/* Prestations : vrai espacement régulier entre les trois colonnes */
.cc-page-lead-wide{max-width:1040px!important;width:100%!important}
@media (min-width:981px){
  .cc-offer-columns-v22{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:28px!important;align-items:stretch!important;width:min(92%,1320px)!important;max-width:1320px!important}
  .cc-offer-columns-v22>.cc-offer-column{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;display:flex!important}
  .cc-offer-columns-v22 .cc-offer-module,
  .cc-offer-columns-v22 .cc-offer-module>.et_pb_text_inner{display:flex!important;width:100%!important;height:100%!important;min-width:0!important}
  .cc-offer-v22{width:100%!important;min-width:0!important;height:100%!important;display:grid!important;grid-template-rows:145px 245px minmax(220px,1fr) 330px auto!important;box-sizing:border-box!important}
  .cc-offer-v22 header{height:145px!important;min-height:145px!important;box-sizing:border-box!important;display:flex!important;align-items:flex-end!important;margin-bottom:0!important}
  .cc-offer-v22 header h2{margin:0!important;min-height:0!important;width:100%!important;font-size:clamp(24px,2vw,35px)!important;line-height:1.05!important;white-space:nowrap!important;letter-spacing:-.035em!important}
  .cc-offer-v22 .cc-feature-list{min-height:245px!important;height:245px!important;margin:0!important;box-sizing:border-box!important}
  .cc-offer-v22 .cc-feature-list li{min-height:59px!important;display:flex!important;align-items:center!important;box-sizing:border-box!important}
  .cc-offer-v22 .cc-offer-summary{min-height:220px!important;height:100%!important;padding-top:28px!important;box-sizing:border-box!important}
  .cc-offer-v22 .cc-offer-summary p{margin:0!important;font-size:17px!important;line-height:1.55!important}
  .cc-offer-v22 .cc-price-box{margin-top:0!important;min-height:330px!important;height:330px!important;box-sizing:border-box!important;padding:26px 28px!important;overflow:hidden!important}
  .cc-offer-v22 .cc-price-box h3{font-size:20px!important;line-height:1.1!important;margin:24px 0 14px!important}
  .cc-offer-v22 .cc-price-box h3:first-child{margin-top:0!important}
  .cc-offer-v22 .cc-price-box p{font-size:16px!important;line-height:1.5!important;margin:8px 0!important}
  .cc-offer-v22>.cc-button-inline{margin-top:28px!important;min-height:84px!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:flex-start!important}
}

/* Contact : phrase d’introduction sur une largeur plus généreuse */
.cc-contact-hero-v22 .et_pb_row{max-width:1500px!important;width:90%!important}
.cc-contact-lead-v22{max-width:1320px!important;width:100%!important;font-size:clamp(21px,1.7vw,30px)!important;line-height:1.5!important}

/* Pied de page */
.cc-site-footer-v22{grid-template-columns:1.05fr 1fr 1.15fr .9fr!important}
.cc-site-footer-v22>div:last-child{align-self:start!important}

@media(max-width:980px){
  .cc-video-row-v22{display:block!important}
  .cc-video-col-v22,.cc-video-copy-col-v22{width:100%!important;flex:0 0 100%!important}
  .cc-video-wrap-v22{height:340px!important;min-height:340px!important}
  .cc-video-copy-v22{padding:30px 28px 8px!important}
  .cc-video-copy-col-v22 .et_pb_button_module_wrapper{margin:12px 28px 32px!important}
  .cc-about-row-v22>.et_pb_column{display:block!important}
  .cc-panel-band-title{padding:20px 28px!important;min-height:60px!important;font-size:17px!important}
  .cc-panel-band-body{padding:30px 28px 34px!important}
  .cc-offer-columns-v22{display:block!important}
  .cc-offer-v22 header h2{white-space:normal!important}
}
@media(max-width:640px){
  .cc-video-wrap-v22{height:260px!important;min-height:260px!important}
  .cc-video-copy-v22 h2{font-size:25px!important}
  .cc-site-footer-v22{grid-template-columns:1fr!important}
  .cc-contact-lead-v22{font-size:20px!important}
}


/* v2.2 — son, cartes et alignements finaux */
.cc-video-wrap-v22 .cc-sound-toggle{
  left:18px!important;bottom:18px!important;z-index:6!important;
  background:var(--cc-red)!important;border:0!important;color:#fff!important;
  font-family:"Barlow",Arial,sans-serif!important;font-weight:800!important;
  font-size:13px!important;line-height:1!important;padding:12px 15px!important;
  cursor:pointer!important;box-shadow:0 8px 24px rgba(0,0,0,.35)!important;
}
.cc-video-wrap-v22 .cc-sound-toggle.is-on{background:#fff!important;color:#000!important}
.cc-video-wrap-v22 video{cursor:pointer!important}

/* Même langage visuel que les offres : bande rouge, puis titre dans le bloc noir. */
.cc-about-row-v22,.cc-payment-row-v22{gap:28px!important;align-items:stretch!important}
.cc-about-row-v22>.et_pb_column,.cc-payment-row-v22>.et_pb_column{margin:0!important;display:flex!important}
.cc-panel-module,.cc-panel-module>.et_pb_text_inner{width:100%!important;height:100%!important;display:flex!important}
.cc-info-card-v22{
  width:100%!important;height:100%!important;box-sizing:border-box!important;
  padding:34px!important;background:#101010!important;border:1px solid var(--cc-red)!important;
  display:flex!important;flex-direction:column!important;overflow:hidden!important;
}
.cc-info-card-v22>header{
  border-top:58px solid var(--cc-red)!important;margin:-34px -34px 30px!important;
  padding:26px 34px 0!important;box-sizing:border-box!important;
}
.cc-info-card-v22>header h2{
  margin:0!important;color:#fff!important;font-size:clamp(23px,2.2vw,34px)!important;
  line-height:1.1!important;letter-spacing:.02em!important;
}
.cc-info-card-body-v22{flex:1!important}
.cc-info-card-body-v22 h3{
  font-family:"Horizon","Syncopate",Arial,sans-serif!important;color:#fff!important;
  font-size:clamp(22px,2vw,31px)!important;line-height:1.18!important;margin:0 0 20px!important;
}
.cc-info-card-body-v22 p{font-size:18px!important;line-height:1.6!important;color:#ededed!important}
.cc-payment-card-v22 .cc-info-card-body-v22 p{margin:0!important}

/* Prestations : même point de départ pour résumés, prix et boutons. */
@media (min-width:981px){
  .cc-offer-columns-v22{
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:32px!important;align-items:stretch!important;width:min(92%,1320px)!important;max-width:1320px!important;
  }
  .cc-offer-columns-v22>.cc-offer-column{
    width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;display:flex!important;
  }
  .cc-offer-columns-v22 .cc-offer-module,
  .cc-offer-columns-v22 .cc-offer-module>.et_pb_text_inner{width:100%!important;height:100%!important;display:flex!important}
  .cc-offer-layout-v22{
    width:100%!important;min-width:0!important;height:1120px!important;box-sizing:border-box!important;
    display:grid!important;grid-template-rows:145px 245px 230px 405px 95px!important;
    align-content:start!important;padding:34px!important;
  }
  .cc-offer-layout-v22>header{height:145px!important;min-height:145px!important;margin:-34px -34px 0!important;padding:26px 34px 0!important;box-sizing:border-box!important}
  .cc-offer-layout-v22>header h2{margin:0!important;min-height:0!important;width:100%!important;white-space:nowrap!important;font-size:clamp(24px,1.85vw,34px)!important;line-height:1.08!important;letter-spacing:-.025em!important}
  .cc-offer-layout-v22>.cc-feature-list{height:245px!important;min-height:245px!important;margin:0!important;box-sizing:border-box!important}
  .cc-offer-layout-v22>.cc-feature-list li{height:59px!important;min-height:59px!important;display:flex!important;align-items:center!important;box-sizing:border-box!important}
  .cc-offer-layout-v22>.cc-offer-summary{height:230px!important;min-height:230px!important;margin:0!important;padding:28px 0 18px!important;box-sizing:border-box!important;overflow:hidden!important}
  .cc-offer-layout-v22>.cc-offer-summary p{margin:0!important;font-size:17px!important;line-height:1.55!important}
  .cc-offer-layout-v22>.cc-price-box{
    height:405px!important;min-height:405px!important;margin:0!important;padding:30px 36px!important;
    box-sizing:border-box!important;overflow:hidden!important;align-self:stretch!important;
  }
  .cc-offer-layout-v22>.cc-price-box h3{font-size:20px!important;line-height:1.15!important;margin:28px 0 15px!important}
  .cc-offer-layout-v22>.cc-price-box h3:first-child{margin-top:0!important}
  .cc-offer-layout-v22>.cc-price-box p{font-size:16px!important;line-height:1.5!important;margin:10px 0!important}
  .cc-offer-layout-v22>.cc-button-inline{
    height:95px!important;min-height:95px!important;margin:0!important;padding:18px 24px!important;
    box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;
    line-height:1.35!important;text-align:left!important;
  }
  .cc-offer-layout-v22>.cc-button-inline span{display:block!important}
}

@media(max-width:980px){
  .cc-about-row-v22,.cc-payment-row-v22{display:block!important}
  .cc-about-row-v22>.et_pb_column,.cc-payment-row-v22>.et_pb_column{width:100%!important;margin:0 0 24px!important;display:block!important}
  .cc-info-card-v22{padding:28px!important}
  .cc-info-card-v22>header{border-top-width:48px!important;margin:-28px -28px 26px!important;padding:22px 28px 0!important}
  .cc-offer-layout-v22{height:auto!important;display:flex!important;flex-direction:column!important}
  .cc-offer-layout-v22>.cc-button-inline{min-height:78px!important}
}

/* v2.3 — bandeaux rouges inset identiques aux cartes de l'accueil */
.cc-inset-band-card-v23{
  overflow:hidden!important;
}
.cc-inset-band-card-v23>header{
  border-top:0!important;
  background:transparent!important;
  margin:0 0 30px!important;
  padding:0!important;
  height:auto!important;
  min-height:0!important;
  display:block!important;
  align-items:initial!important;
  box-sizing:border-box!important;
}
.cc-inset-band-card-v23>header::before{
  content:""!important;
  display:block!important;
  width:100%!important;
  height:58px!important;
  min-height:58px!important;
  background:var(--cc-red)!important;
  margin:0 0 36px!important;
}
.cc-inset-band-card-v23>header h2{
  margin:0!important;
  padding:0!important;
  min-height:0!important;
  color:#fff!important;
}

/* Présentation / Mon but / Paiement / Annulation : le rectangle reste dans le cadre noir. */
.cc-info-card-v22.cc-inset-band-card-v23{
  padding:42px!important;
}
.cc-info-card-v22.cc-inset-band-card-v23>header{
  margin:0 0 28px!important;
}
.cc-info-card-v22.cc-inset-band-card-v23>header::before{
  height:54px!important;
  min-height:54px!important;
  margin:0 0 32px!important;
}

/* Les trois grandes offres gardent le même bandeau inset et le même alignement vertical. */
@media (min-width:981px){
  .cc-offer-layout-v22.cc-inset-band-card-v23{
    grid-template-rows:145px 245px 230px 405px 95px!important;
  }
  .cc-offer-layout-v22.cc-inset-band-card-v23>header{
    height:145px!important;
    min-height:145px!important;
    margin:0!important;
    padding:0!important;
  }
  .cc-offer-layout-v22.cc-inset-band-card-v23>header::before{
    height:58px!important;
    min-height:58px!important;
    margin:0 0 32px!important;
  }
  .cc-offer-layout-v22.cc-inset-band-card-v23>header h2{
    white-space:nowrap!important;
    font-size:clamp(24px,1.85vw,34px)!important;
    line-height:1.08!important;
  }
}

/* CTA de la vidéo : même présence visuelle que le bouton "Prendre contact". */
.cc-video-copy-col-v22 .et_pb_button_module_wrapper.cc-video-cta{
  margin:18px 28px 28px!important;
}
.cc-video-copy-col-v22 .cc-video-cta .et_pb_button,
.cc-final-cta .cc-center-button .et_pb_button{
  min-height:58px!important;
  padding:17px 24px!important;
  font-size:17px!important;
  line-height:1.25!important;
  font-weight:800!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
.cc-video-copy-col-v22 .cc-video-cta .et_pb_button{
  width:100%!important;
}

@media(max-width:980px){
  .cc-info-card-v22.cc-inset-band-card-v23{padding:28px!important}
  .cc-info-card-v22.cc-inset-band-card-v23>header::before{height:44px!important;min-height:44px!important;margin-bottom:26px!important}
  .cc-offer-layout-v22.cc-inset-band-card-v23>header::before{height:44px!important;min-height:44px!important;margin-bottom:26px!important}
  .cc-video-copy-col-v22 .cc-video-cta .et_pb_button{width:auto!important}
}


/* v2.4 — dernier ajustement des CTA et suppression du rognage des boutons */
@media (min-width:981px){
  .cc-offer-layout-v22{
    height:1170px!important;
    min-height:1170px!important;
    grid-template-rows:145px 235px 215px 385px 122px!important;
    overflow:hidden!important;
  }
  .cc-offer-layout-v22.cc-inset-band-card-v23{
    grid-template-rows:145px 235px 215px 385px 122px!important;
  }
  .cc-offer-layout-v22>.cc-feature-list{
    height:235px!important;
    min-height:235px!important;
  }
  .cc-offer-layout-v22>.cc-feature-list li{
    height:58px!important;
    min-height:58px!important;
  }
  .cc-offer-layout-v22>.cc-offer-summary{
    height:215px!important;
    min-height:215px!important;
    padding-top:24px!important;
  }
  .cc-offer-layout-v22>.cc-price-box{
    height:385px!important;
    min-height:385px!important;
  }
  .cc-offer-layout-v22>.cc-button-inline{
    height:122px!important;
    min-height:122px!important;
    padding:22px 28px!important;
    font-size:18px!important;
    line-height:1.3!important;
    overflow:visible!important;
    white-space:normal!important;
  }
  .cc-offer-layout-v22>.cc-button-inline,
  .cc-offer-layout-v22>.cc-button-inline span{
    text-align:left!important;
  }
}

/* Le CTA de la bannière reprend la présence du bouton de navigation principal. */
.cc-video-copy-col-v22 .et_pb_button_module_wrapper.cc-video-cta{
  width:330px!important;
  max-width:calc(100% - 56px)!important;
  margin:20px 28px 28px!important;
}
.cc-video-copy-col-v22 .et_pb_button_module_wrapper.cc-video-cta .et_pb_button{
  width:100%!important;
  min-height:64px!important;
  padding:17px 24px!important;
  font-size:17px!important;
  line-height:1.2!important;
  letter-spacing:.05em!important;
  font-weight:800!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  text-align:center!important;
}

@media(max-width:980px){
  .cc-video-copy-col-v22 .et_pb_button_module_wrapper.cc-video-cta{
    width:auto!important;
    max-width:none!important;
    margin:18px 28px 32px!important;
  }
  .cc-video-copy-col-v22 .et_pb_button_module_wrapper.cc-video-cta .et_pb_button{
    width:auto!important;
    min-height:58px!important;
  }
  .cc-offer-layout-v22>.cc-button-inline{
    min-height:90px!important;
    height:auto!important;
    padding:20px 24px!important;
  }
}

/* v2.6 — responsive final, CTA cohérent et suppression définitive du rognage */
html,body{max-width:100%;overflow-x:hidden}

/* Le CTA de la bannière reprend exactement le gabarit du CTA principal du menu. */
.cc-video-copy-col-v22 .et_pb_button_module_wrapper.cc-video-cta{
  width:auto!important;max-width:none!important;margin:20px 28px 28px!important;
  align-self:flex-start!important;
}
.cc-video-copy-col-v22 .cc-video-cta .et_pb_button,
.cc-header-cta{
  width:auto!important;min-width:232px!important;min-height:50px!important;
  padding:14px 20px!important;font-size:14px!important;line-height:1.2!important;
  letter-spacing:.05em!important;font-weight:800!important;white-space:nowrap!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;text-align:center!important;
}

/* Offres : on conserve les mêmes repères de hauteur sans enfermer les boutons dans un cadre rogné. */
@media (min-width:981px){
  .cc-offer-columns-v22,.cc-offer-columns-v22>.cc-offer-column,
  .cc-offer-columns-v22 .cc-offer-module,.cc-offer-columns-v22 .cc-offer-module>.et_pb_text_inner{
    overflow:visible!important;
  }
  .cc-offer-layout-v22,
  .cc-offer-layout-v22.cc-inset-band-card-v23{
    height:auto!important;min-height:1188px!important;overflow:visible!important;
    display:flex!important;flex-direction:column!important;grid-template-rows:none!important;
    padding:34px!important;
  }
  .cc-offer-layout-v22>header{
    flex:0 0 145px!important;height:145px!important;min-height:145px!important;
  }
  .cc-offer-layout-v22>.cc-feature-list{
    flex:0 0 235px!important;height:235px!important;min-height:235px!important;
  }
  .cc-offer-layout-v22>.cc-offer-summary{
    flex:0 0 215px!important;height:215px!important;min-height:215px!important;
  }
  .cc-offer-layout-v22>.cc-price-box{
    flex:0 0 385px!important;height:385px!important;min-height:385px!important;
  }
  .cc-offer-layout-v22>.cc-button-inline{
    position:relative!important;z-index:3!important;flex:0 0 112px!important;
    width:100%!important;height:112px!important;min-height:112px!important;
    margin:28px 0 0!important;padding:22px 28px!important;overflow:visible!important;
    white-space:normal!important;line-height:1.3!important;box-sizing:border-box!important;
  }
}

/* Tous les bandeaux inset partagent strictement le même gabarit. */
.cc-inset-band-card-v23>header::before{
  width:100%!important;max-width:none!important;box-sizing:border-box!important;
  margin-left:0!important;margin-right:0!important;
}

/* Tablette : contenus empilés, vidéo puis texte, boutons sans débordement. */
@media (min-width:641px) and (max-width:980px){
  .cc-hero h1{font-size:clamp(60px,11vw,104px)!important}
  .cc-video-wrap-v22{height:360px!important;min-height:360px!important}
  .cc-video-copy-v22{max-width:760px!important;margin:0 auto!important;padding:34px 38px 10px!important}
  .cc-video-copy-col-v22 .et_pb_button_module_wrapper.cc-video-cta{margin:18px auto 36px!important;width:min(760px,calc(100% - 76px))!important}
  .cc-video-copy-col-v22 .cc-video-cta .et_pb_button{min-width:232px!important;width:auto!important}
  .cc-three-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}
  .cc-three-cards>.et_pb_column{width:100%!important;margin:0!important}
  .cc-three-cards>.et_pb_column:last-child{grid-column:1/-1!important;max-width:calc(50% - 12px)!important;justify-self:center!important}
  .cc-service-card{height:100%!important;min-height:330px!important}
  .cc-offer-columns-v22>.cc-offer-column{max-width:760px!important;margin:0 auto 30px!important}
  .cc-site-footer-v22{grid-template-columns:1fr 1fr!important;gap:34px!important}
}

/* Téléphone : lecture verticale, typographies et espacements adaptés. */
@media (max-width:640px){
  body.admin-bar .cc-site-header{top:46px!important}
  .cc-site-header{height:64px!important;padding:8px 18px!important}
  .cc-brand img{width:42px!important;height:44px!important}
  .cc-main-nav{top:64px!important}
  .cc-hero{padding:126px 20px 64px!important;min-height:auto!important}
  .cc-hero-logo{width:88px!important;max-height:110px!important}
  .cc-hero h1{font-size:clamp(50px,17vw,76px)!important;line-height:.94!important}
  .cc-hero h2{font-size:clamp(22px,7vw,34px)!important}
  .cc-hero-lead{font-size:18px!important;line-height:1.45!important}
  .cc-video-wrap-v22{height:230px!important;min-height:230px!important}
  .cc-video-copy-v22{padding:28px 22px 8px!important}
  .cc-video-copy-v22 h2{font-size:24px!important;line-height:1.15!important}
  .cc-video-copy-v22 p{font-size:15px!important}
  .cc-video-copy-col-v22 .et_pb_button_module_wrapper.cc-video-cta{margin:16px 22px 30px!important}
  .cc-video-copy-col-v22 .cc-video-cta .et_pb_button{min-width:0!important;width:100%!important;white-space:normal!important}
  .cc-video-wrap-v22 .cc-sound-toggle{left:12px!important;bottom:12px!important;font-size:11px!important;padding:10px 12px!important}
  .cc-about,.cc-services-teaser,.cc-final-cta,.cc-offers,.cc-payment-info,.cc-contact-section,.cc-legal-section{padding:58px 0!important}
  .cc-info-card-v22.cc-inset-band-card-v23{padding:22px!important}
  .cc-info-card-v22.cc-inset-band-card-v23>header::before{height:40px!important;min-height:40px!important;margin-bottom:22px!important}
  .cc-info-card-body-v22 h3{font-size:23px!important}
  .cc-info-card-body-v22 p{font-size:16px!important;line-height:1.55!important}
  .cc-three-cards{display:block!important}
  .cc-three-cards>.et_pb_column{width:100%!important;margin:0 0 22px!important}
  .cc-service-card{min-height:0!important;padding:30px!important}
  .cc-offer-columns-v22{width:92%!important;margin:auto!important}
  .cc-offer-layout-v22{padding:24px!important;overflow:visible!important}
  .cc-offer-layout-v22>.cc-button-inline{width:100%!important;min-height:82px!important;height:auto!important;margin-top:22px!important;padding:19px 22px!important}
  .cc-page-heading h1{font-size:clamp(46px,15vw,72px)!important}
  .cc-page-lead,.cc-contact-lead-v22{font-size:18px!important;line-height:1.45!important}
  .cc-contact-section .et_pb_row{width:92%!important}
  .cc-site-footer-v22{grid-template-columns:1fr!important;padding:46px 24px!important;gap:30px!important}
  .cc-cookie{left:12px!important;right:12px!important;bottom:12px!important;display:block!important;padding:18px!important}
  .cc-cookie button{margin-top:12px!important;width:100%!important}
}

/* v2.6 — textes originaux d’Ethan et cinquième ligne Programme */
.cc-ethan-original{
  margin:0 0 22px!important;
  font-family:"Barlow",Arial,sans-serif!important;
  font-size:18px!important;
  line-height:1.58!important;
  font-weight:600!important;
  letter-spacing:.035em!important;
  color:#fff!important;
}
.cc-ethan-original:last-child{margin-bottom:0!important}
@media (min-width:981px){
  .cc-offer-v22{grid-template-rows:145px 300px minmax(220px,1fr) 330px auto!important}
  .cc-offer-v22 .cc-feature-list{min-height:300px!important;height:300px!important}
  .cc-offer-v22 .cc-feature-list li{min-height:59px!important}
}
@media(max-width:640px){
  .cc-ethan-original{font-size:16px!important;line-height:1.55!important}
}


/* Coach Caillet — correctif mobile v2.7 */

/* 1. Bannière d'information : cachée par défaut et réellement fermable. */
body .cc-cookie {
  display: none !important;
  pointer-events: auto !important;
  z-index: 2147483000 !important;
}
body .cc-cookie.is-visible {
  display: flex !important;
}
body .cc-cookie button {
  position: relative !important;
  z-index: 2 !important;
  pointer-events: auto !important;
  touch-action: manipulation !important;
}

/* 2. Confirmation du formulaire : un simple texte blanc, sans cadre vert. */
body .cc-form-success,
body .wpforms-confirmation-container,
body .wpforms-confirmation-container-full {
  display: block !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  font-family: "Barlow", Arial, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
}
body .cc-form-success::before,
body .cc-form-success::after,
body .wpforms-confirmation-container::before,
body .wpforms-confirmation-container::after,
body .wpforms-confirmation-container-full::before,
body .wpforms-confirmation-container-full::after {
  content: none !important;
  display: none !important;
}
body .wpforms-confirmation-container p,
body .wpforms-confirmation-container-full p {
  margin: 0 !important;
  color: #fff !important;
}
body .wpforms-confirmation-container svg,
body .wpforms-confirmation-container-full svg,
body .wpforms-confirmation-container img,
body .wpforms-confirmation-container-full img {
  display: none !important;
}

/* 3. Aucun titre ne doit être coupé au milieu d'un mot. */
.cc-page-heading h1,
.cc-section-heading h2,
.cc-cta-copy h2,
.cc-service-card h3,
.cc-offer h2,
.cc-video-copy h2 {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  text-wrap: balance;
}

/* CTA ajouté dans le menu mobile par le script. */
.cc-mobile-header-cta {
  display: none !important;
}

@media (max-width: 980px) {
  /* Le CTA de bureau ne doit plus être comprimé dans la barre mobile. */
  .cc-site-header > .cc-header-cta {
    display: none !important;
  }
  .cc-main-nav .cc-mobile-header-cta {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 52px !important;
    margin: 14px 0 4px !important;
    padding: 15px 18px !important;
    align-items: center !important;
    justify-content: center !important;
    background: #A81A24 !important;
    color: #fff !important;
    border: 0 !important;
    white-space: normal !important;
    text-align: center !important;
    font-family: "Barlow", Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
    box-sizing: border-box !important;
  }

  .cc-page-heading,
  .cc-section-heading,
  .cc-cta-copy {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 640px) {
  /* Titre de la page Prestations : pas de PRESTATIO / NS. */
  .cc-page-heading h1 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    font-size: clamp(29px, 9vw, 39px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.055em !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  /* Titre de l'accueil : pas de ACCOMPAGN / EMENT. */
  .cc-section-heading h2,
  .cc-cta-copy h2 {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    font-size: clamp(22px, 7vw, 29px) !important;
    line-height: 1.18 !important;
    letter-spacing: -.035em !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .cc-page-hero .et_pb_row,
  .cc-services-teaser .et_pb_row,
  .cc-final-cta .et_pb_row {
    width: calc(100% - 36px) !important;
    max-width: none !important;
  }

  /* Cartes et offres : largeur utile maximale sans débordement horizontal. */
  .cc-three-cards,
  .cc-offer-columns-v22,
  .cc-about-row-v22,
  .cc-payment-row-v22,
  .cc-contact-section .et_pb_row {
    width: calc(100% - 28px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .cc-three-cards > .et_pb_column,
  .cc-offer-columns-v22 > .et_pb_column,
  .cc-about-row-v22 > .et_pb_column,
  .cc-payment-row-v22 > .et_pb_column,
  .cc-contact-section .et_pb_column {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .cc-service-card h3,
  .cc-offer h2 {
    font-size: clamp(24px, 8vw, 34px) !important;
    line-height: 1.12 !important;
    letter-spacing: -.035em !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  /* Bannière cookies mobile : bouton toujours accessible. */
  body .cc-cookie {
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100vh - 20px) !important;
    overflow-y: auto !important;
    padding: 16px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    box-sizing: border-box !important;
  }
  body .cc-cookie.is-visible {
    display: flex !important;
  }
  body .cc-cookie p {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }
  body .cc-cookie button {
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 13px 16px !important;
    font-size: 15px !important;
  }

  body .cc-form-success,
  body .wpforms-confirmation-container,
  body .wpforms-confirmation-container-full {
    font-size: 16px !important;
  }
}

@media (max-width: 380px) {
  .cc-page-heading h1 {
    font-size: 28px !important;
    letter-spacing: -.06em !important;
  }
  .cc-section-heading h2,
  .cc-cta-copy h2 {
    font-size: 22px !important;
  }
}




/* v3.0 — structure Divi globale et entièrement modifiable */
#main-header,#main-footer{display:none!important}
#page-container{padding-top:0!important}

/* En-tête global Divi */
.cc-site-header.et_pb_section{display:block!important;position:fixed!important;z-index:9999!important;top:0!important;left:0!important;right:0!important;height:76px!important;padding:0 4vw!important;background:rgba(0,0,0,.28)!important}
body.admin-bar .cc-site-header.et_pb_section{top:32px!important}
.cc-header-row{width:100%!important;max-width:none!important;height:76px!important;display:flex!important;align-items:center!important;gap:30px!important;padding:0!important}
.cc-header-row>.et_pb_column{margin:0!important;min-width:0!important}
.cc-header-brand-col{display:flex!important;align-items:center!important;gap:12px!important;flex:1 1 28%!important;width:auto!important}
.cc-header-logo{width:48px!important;margin:0!important;flex:0 0 48px!important}
.cc-header-logo img{width:48px!important;height:50px!important;object-fit:contain!important}
.cc-header-brand-name{margin:0!important}
.cc-header-brand-name p{margin:0!important}
.cc-header-brand-name a{color:#fff!important;text-decoration:none!important;font-weight:800!important;letter-spacing:.08em!important;white-space:nowrap!important}
.cc-header-nav-col{flex:1 1 48%!important;width:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important}
.cc-main-nav{margin:0!important}
.cc-main-nav .et_pb_text_inner nav{display:flex!important;gap:28px!important;align-items:center!important;justify-content:flex-end!important}
.cc-main-nav a{color:#fff!important;text-transform:uppercase!important;font-size:14px!important;font-weight:700!important;letter-spacing:.05em!important;white-space:nowrap!important}
.cc-header-cta-col{flex:0 0 auto!important;width:auto!important;display:flex!important;justify-content:flex-end!important}
.cc-header-cta{margin:0!important}
.cc-header-cta .et_pb_button{display:inline-flex!important;justify-content:center!important;align-items:center!important;background:#A81A24!important;color:#fff!important;text-transform:uppercase!important;font-weight:800!important;letter-spacing:.05em!important;border:0!important;border-radius:0!important;padding:14px 20px!important;min-width:232px!important;min-height:50px!important;font-size:14px!important;white-space:nowrap!important}
.cc-nav-toggle{display:none!important;margin:0!important}

/* Logo central de l'accueil : module Image séparé et modifiable */
.cc-hero-logo-module{width:110px!important;margin:0 auto 20px!important}
.cc-hero-logo-module img{width:110px!important;max-height:135px!important;object-fit:contain!important}

/* Module vidéo Divi modifiable */
.cc-video-col-v22{position:relative!important;overflow:hidden!important}
.cc-editable-video{height:390px!important;min-height:390px!important;margin:0!important;background:#070707!important;overflow:hidden!important}
.cc-editable-video .et_pb_video_box,.cc-editable-video video{width:100%!important;height:100%!important;display:block!important}
.cc-editable-video video{object-fit:cover!important;object-position:center!important;background:#070707!important}
.cc-editable-video .et_pb_video_overlay,.cc-editable-video .et_pb_video_play{display:none!important}
.cc-sound-toggle-module{position:absolute!important;left:18px!important;bottom:18px!important;z-index:10!important;margin:0!important}
.cc-sound-toggle-module .et_pb_button{background:#A81A24!important;color:#fff!important;border:0!important;border-radius:0!important;padding:12px 15px!important;font-family:"Barlow",Arial,sans-serif!important;font-weight:800!important;font-size:13px!important;line-height:1!important;box-shadow:0 8px 24px rgba(0,0,0,.35)!important}
.cc-sound-toggle-module.is-on .et_pb_button{background:#fff!important;color:#000!important}

/* Pied de page global Divi */
.cc-site-footer.et_pb_section{display:block!important;padding:70px 5vw!important;background:#070707!important;border-top:1px solid rgba(255,255,255,.1)!important}
.cc-footer-row{width:100%!important;max-width:none!important;display:grid!important;grid-template-columns:1.05fr 1fr 1.15fr .9fr!important;gap:34px!important;padding:0!important}
.cc-footer-row>.et_pb_column{width:auto!important;margin:0!important;min-width:0!important}
.cc-footer-logo{width:72px!important;margin:0 0 12px!important}
.cc-footer-logo img{width:72px!important;height:auto!important}
.cc-site-footer .et_pb_text,.cc-site-footer .et_pb_button_module_wrapper{margin-bottom:0!important}
.cc-site-footer h2,.cc-site-footer h3{font-family:"Horizon","Syncopate",Arial,sans-serif!important;color:#fff!important}
.cc-site-footer h2{font-size:24px!important;margin:0 0 8px!important}
.cc-site-footer h3{font-size:17px!important;margin:0 0 12px!important}
.cc-site-footer p{line-height:1.65!important;color:#fff!important}
.cc-site-footer a{color:#fff!important}
.cc-footer-instagram .et_pb_button{font-size:13px!important;padding:12px 14px!important;background:#A81A24!important;color:#fff!important;border:0!important;border-radius:0!important;text-transform:uppercase!important;font-weight:800!important}

/* Bannière d'information cookies globale Divi */
.cc-cookie.et_pb_section{position:fixed!important;z-index:2147483000!important;left:20px!important;right:20px!important;bottom:20px!important;width:auto!important;max-width:780px!important;margin:auto!important;padding:0!important;background:transparent!important;display:none!important}
.cc-cookie.is-visible{display:block!important}
.cc-cookie-row{width:100%!important;max-width:none!important;margin:0!important;padding:18px 20px!important;background:#111!important;border:1px solid #A81A24!important;box-shadow:0 20px 60px rgba(0,0,0,.55)!important;display:flex!important;align-items:center!important;gap:20px!important}
.cc-cookie-row>.et_pb_column{margin:0!important}
.cc-cookie-row>.et_pb_column:first-child{flex:1 1 auto!important;width:auto!important}
.cc-cookie-row>.et_pb_column:last-child{flex:0 0 auto!important;width:auto!important}
.cc-cookie-copy p{margin:0!important;color:#fff!important}
.cc-cookie-copy a{color:#fff!important;text-decoration:underline!important}
.cc-cookie-ack{margin:0!important}
.cc-cookie-ack .et_pb_button{background:#A81A24!important;color:#fff!important;border:0!important;border-radius:0!important;padding:11px 16px!important;font-weight:800!important}

/* Formulaire de contact natif Divi */
.cc-divi-contact-form{background:#101010!important;border:1px solid rgba(168,26,36,.58)!important;padding:38px!important}
.cc-divi-contact-form .et_pb_contact_field{margin-bottom:18px!important}
.cc-divi-contact-form input.input,.cc-divi-contact-form textarea,.cc-divi-contact-form select{width:100%!important;background:#000!important;color:#fff!important;border:1px solid #555!important;border-radius:0!important;padding:13px!important;font-family:"Barlow",Arial,sans-serif!important;font-size:16px!important}
.cc-divi-contact-form textarea{min-height:170px!important}
.cc-divi-contact-form input:focus,.cc-divi-contact-form textarea:focus,.cc-divi-contact-form select:focus{outline:2px solid #A81A24!important;border-color:#A81A24!important}
.cc-divi-contact-form .et_pb_contact_submit{background:#A81A24!important;color:#fff!important;border:0!important;border-radius:0!important;text-transform:uppercase!important;font-weight:800!important;padding:14px 20px!important}
.cc-divi-contact-form .et-pb-contact-message{margin:0 0 20px!important;padding:0!important;background:transparent!important;border:0!important;color:#fff!important;font-weight:700!important}
.cc-divi-contact-form .et-pb-contact-message p{color:#fff!important;margin:0!important}
.cc-contact-instagram .et_pb_button{width:100%!important;background:#A81A24!important;color:#fff!important;border:0!important;border-radius:0!important;text-transform:uppercase!important;font-weight:800!important}

/* Les sections globales restent visibles et modifiables dans le Visual Builder. */
.et-fb .cc-site-header.et_pb_section{position:relative!important;top:auto!important}
.et-fb .cc-cookie.et_pb_section{position:relative!important;display:block!important;left:auto!important;right:auto!important;bottom:auto!important;max-width:none!important;margin:20px!important}

@media(max-width:980px){
  body.admin-bar .cc-site-header.et_pb_section{top:46px!important}
  .cc-site-header.et_pb_section{height:68px!important;padding:0 18px!important}
  .cc-header-row{height:68px!important;gap:10px!important;flex-wrap:nowrap!important}
  .cc-header-brand-col{flex:1 1 auto!important}
  .cc-header-brand-name{display:none!important}
  .cc-header-logo,.cc-header-logo img{width:42px!important;height:44px!important}
  .cc-header-nav-col{flex:0 0 auto!important;position:static!important}
  .cc-nav-toggle{display:block!important}
  .cc-nav-toggle .et_pb_button{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.4)!important;padding:9px 12px!important;font-size:14px!important}
  .cc-main-nav{position:absolute!important;top:68px!important;left:-18px!important;right:-18px!important;background:#000!important;display:none!important;padding:12px 5vw!important;margin:0!important}
  .cc-main-nav.is-open{display:block!important}
  .cc-main-nav .et_pb_text_inner nav{display:flex!important;flex-direction:column!important;gap:0!important;align-items:stretch!important}
  .cc-main-nav a{padding:14px 0!important;border-bottom:1px solid #222!important;width:100%!important}
  .cc-main-nav .cc-mobile-header-cta{display:flex!important;width:100%!important;min-height:52px!important;margin:14px 0 4px!important;padding:15px 18px!important;align-items:center!important;justify-content:center!important;background:#A81A24!important;border-bottom:0!important;text-align:center!important;white-space:normal!important}
  .cc-header-cta-col{display:none!important}
  .cc-editable-video{height:340px!important;min-height:340px!important}
  .cc-footer-row{grid-template-columns:1fr 1fr!important}
}

@media(max-width:640px){
  .cc-hero-logo-module{width:88px!important}
  .cc-hero-logo-module img{width:88px!important;max-height:110px!important}
  .cc-editable-video{height:230px!important;min-height:230px!important}
  .cc-sound-toggle-module{left:12px!important;bottom:12px!important}
  .cc-sound-toggle-module .et_pb_button{font-size:11px!important;padding:10px 12px!important}
  .cc-footer-row{grid-template-columns:1fr!important;gap:30px!important}
  .cc-site-footer.et_pb_section{padding:46px 24px!important}
  .cc-cookie.et_pb_section{left:10px!important;right:10px!important;bottom:10px!important;max-height:calc(100vh - 20px)!important;overflow-y:auto!important}
  .cc-cookie-row{padding:16px!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important}
  .cc-cookie-row>.et_pb_column{width:100%!important}
  .cc-cookie-ack .et_pb_button{width:100%!important;min-height:48px!important}
  .cc-divi-contact-form{padding:26px!important}
}
