.elementor-5575 .elementor-element.elementor-element-25260ec{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-19388c0 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-ab3e855{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:1;}.elementor-5575 .elementor-element.elementor-element-ab3e855::before, .elementor-5575 .elementor-element.elementor-element-ab3e855 > .elementor-background-video-container::before, .elementor-5575 .elementor-element.elementor-element-ab3e855 > .e-con-inner > .elementor-background-video-container::before, .elementor-5575 .elementor-element.elementor-element-ab3e855 > .elementor-background-slideshow::before, .elementor-5575 .elementor-element.elementor-element-ab3e855 > .e-con-inner > .elementor-background-slideshow::before, .elementor-5575 .elementor-element.elementor-element-ab3e855 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-5575 .elementor-element.elementor-element-50baa34{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:8px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-0dfce1e{text-align:center;}.elementor-5575 .elementor-element.elementor-element-0dfce1e .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:400;text-transform:uppercase;letter-spacing:4.7px;color:var( --e-global-color-4dcccda );}.elementor-5575 .elementor-element.elementor-element-f128df5{--spacer-size:11px;}.elementor-5575 .elementor-element.elementor-element-8ff06ae > .elementor-widget-container{margin:0% 0% 0% 0%;padding:0px 0px 22px 0px;}.elementor-5575 .elementor-element.elementor-element-8ff06ae{text-align:center;}.elementor-5575 .elementor-element.elementor-element-8ff06ae .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:49px;font-weight:bold;text-transform:uppercase;line-height:1.07em;color:var( --e-global-color-4dcccda );}.elementor-5575 .elementor-element.elementor-element-22b1799{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-12136a7 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-a8d947d{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-f83d389 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-72ed9b2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:1;}.elementor-5575 .elementor-element.elementor-element-72ed9b2::before, .elementor-5575 .elementor-element.elementor-element-72ed9b2 > .elementor-background-video-container::before, .elementor-5575 .elementor-element.elementor-element-72ed9b2 > .e-con-inner > .elementor-background-video-container::before, .elementor-5575 .elementor-element.elementor-element-72ed9b2 > .elementor-background-slideshow::before, .elementor-5575 .elementor-element.elementor-element-72ed9b2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-5575 .elementor-element.elementor-element-72ed9b2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-5575 .elementor-element.elementor-element-e34ff94{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:8px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-31cf8f5{--spacer-size:11px;}.elementor-5575 .elementor-element.elementor-element-5915e42 > .elementor-widget-container{margin:0% 0% 0% 0%;padding:0px 0px 22px 0px;}.elementor-5575 .elementor-element.elementor-element-5915e42{text-align:center;}.elementor-5575 .elementor-element.elementor-element-5915e42 .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:49px;font-weight:bold;text-transform:uppercase;line-height:1.07em;color:#730020;}.elementor-5575 .elementor-element.elementor-element-59acf5e{--display:flex;--min-height:70vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:stretch;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-5575 .elementor-element.elementor-element-59acf5e:not(.elementor-motion-effects-element-type-background), .elementor-5575 .elementor-element.elementor-element-59acf5e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7;}.elementor-5575 .elementor-element.elementor-element-9510c2e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:35px 35px;--row-gap:35px;--column-gap:35px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-5575 .elementor-element.elementor-element-9510c2e.e-con{--align-self:flex-start;}.elementor-5575 .elementor-element.elementor-element-4f38d90 > .elementor-widget-container{margin:0% 6% 0% 6%;padding:0% 0% 0% 0%;}.elementor-5575 .elementor-element.elementor-element-4f38d90{text-align:justify;font-family:"Montserrat", Sans-serif;font-size:19px;font-weight:400;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;word-spacing:0em;color:var( --e-global-color-4dcccda );}.elementor-5575 .elementor-element.elementor-element-5885170 .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-5575 .elementor-element.elementor-element-5885170 .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:#00000038;}.elementor-5575 .elementor-element.elementor-element-5885170{width:var( --container-widget-width, 55% );max-width:55%;--container-widget-width:55%;--container-widget-flex-grow:0;--image-transition-duration:1000ms;--overlay-transition-duration:1500ms;--content-text-align:center;--content-padding:24px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-5575 .elementor-element.elementor-element-fe0da37 .elementor-repeater-item-0b0a661.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-5575 .elementor-element.elementor-element-5e05fd8 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-bottom:0px;}.elementor-5575 .elementor-element.elementor-element-5e05fd8 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-35b4591 .elementor-repeater-item-5f830f3.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-5575 .elementor-element.elementor-element-f7bb3a3{text-align:left;}.elementor-5575 .elementor-element.elementor-element-f7bb3a3 .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:49px;font-weight:500;text-transform:uppercase;color:#730020;}.elementor-5575 .elementor-element.elementor-element-f7bb3a3 .elementor-heading-title a:hover, .elementor-5575 .elementor-element.elementor-element-f7bb3a3 .elementor-heading-title a:focus{color:#730020;}.elementor-5575 .elementor-element.elementor-element-627eb29{--spacer-size:51px;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle{background-color:rgba(0,0,0,0);padding:0px 0px 0px 0px;margin:0px 0px 22px 0px;border-style:solid;border-width:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control{background-color:#ffffff;justify-content:flex-start;padding:11px 20px 12px 22px;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control:hover{background-color:#730020;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle.active-toggle > .jet-toggle__control{background-color:#730020;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__content{background-color:rgba(0,0,0,0);margin:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-6d314bf > .elementor-widget-container{margin:0% 0% 0% 0%;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion{border-radius:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control .jet-toggle__label-icon{margin:0px 20px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-toggle__label-text{text-align:left;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control .jet-toggle__label-text{color:#730020;font-family:"Oswald", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control .jet-toggle__label-icon .icon-normal{color:#888888;background-color:rgba(0,0,0,0);}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control:hover .jet-toggle__label-text{color:#ffffff;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control:hover .jet-toggle__label-icon .icon-normal{color:#ffffff;background-color:rgba(0,0,0,0);}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle.active-toggle > .jet-toggle__control .jet-toggle__label-text{color:#FFFFFF;}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle.active-toggle .jet-toggle__label-icon .icon-active{color:#ffffff;background-color:rgba(0,0,0,0);}.elementor-5575 .elementor-element.elementor-element-6d314bf .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__content > .jet-toggle__content-inner{padding:22px 15px 13px 26px;}.elementor-5575 .elementor-element.elementor-element-35b4591{padding:96px 0px 104px 0px;}.elementor-5575 .elementor-element.elementor-element-ca95ced{--display:flex;}.elementor-5575 .elementor-element.elementor-element-4b7def2{--divider-border-style:solid;--divider-color:var( --e-global-color-4dcccda );--divider-border-width:4.7px;}.elementor-5575 .elementor-element.elementor-element-4b7def2 .elementor-divider-separator{width:100%;}.elementor-5575 .elementor-element.elementor-element-4b7def2 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}@media(min-width:768px){.elementor-5575 .elementor-element.elementor-element-ab3e855{--content-width:1200px;}.elementor-5575 .elementor-element.elementor-element-72ed9b2{--content-width:1200px;}.elementor-5575 .elementor-element.elementor-element-9510c2e{--width:53%;}}@media(max-width:1024px) and (min-width:768px){.elementor-5575 .elementor-element.elementor-element-9510c2e{--width:100%;}}@media(max-width:1024px){.elementor-5575 .elementor-element.elementor-element-50baa34{--padding-top:68px;--padding-bottom:0px;--padding-left:54px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-8ff06ae .elementor-heading-title{font-size:43px;}.elementor-5575 .elementor-element.elementor-element-e34ff94{--padding-top:68px;--padding-bottom:0px;--padding-left:54px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-5915e42 .elementor-heading-title{font-size:43px;}.elementor-5575 .elementor-element.elementor-element-59acf5e{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:10%;--padding-bottom:10%;--padding-left:5%;--padding-right:5%;}.elementor-5575 .elementor-element.elementor-element-9510c2e{--padding-top:0%;--padding-bottom:0%;--padding-left:10%;--padding-right:10%;}.elementor-5575 .elementor-element.elementor-element-4f38d90{text-align:center;font-size:18px;line-height:1.5em;}.elementor-5575 .elementor-element.elementor-element-5885170{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-5575 .elementor-element.elementor-element-627eb29{--spacer-size:25px;}.elementor-5575 .elementor-element.elementor-element-6d314bf > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-35b4591{padding:40px 0px 40px 0px;}}@media(max-width:767px){.elementor-5575 .elementor-element.elementor-element-50baa34{--width:100%;--padding-top:15px;--padding-bottom:15px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-0dfce1e .elementor-heading-title{font-size:16px;}.elementor-5575 .elementor-element.elementor-element-8ff06ae > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-12136a7 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 5px 0px 5px;}.elementor-5575 .elementor-element.elementor-element-a8d947d{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:5px;--padding-right:5px;}.elementor-5575 .elementor-element.elementor-element-72ed9b2{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-e34ff94{--width:100%;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-5915e42 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5575 .elementor-element.elementor-element-59acf5e{--padding-top:5%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-5575 .elementor-element.elementor-element-9510c2e{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5575 .elementor-element.elementor-element-4f38d90{text-align:left;font-size:16px;}.elementor-5575 .elementor-element.elementor-element-f7bb3a3 .elementor-heading-title{font-size:36px;}.elementor-5575 .elementor-element.elementor-element-627eb29{--spacer-size:20px;}.elementor-5575 .elementor-element.elementor-element-35b4591{padding:30px 0px 30px 0px;}}/* Start custom CSS for html, class: .elementor-element-19388c0 *//* =========================
   HERO — Nutrition (full bg + overlay noir + thème #730020)
   ========================= */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{
  --xi-bordeaux:#730020;
  --xi-white:#fff;
  --xi-ink:#2E333A;
}

/* Header au-dessus (WP/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }

/* Wrapper (image de fond + overlay noir) */
.spt-hero{
  position:relative;
  min-height:100vh;
  color:#fff;
  background: var(--spt-hero-img) center/cover no-repeat; /* lit l'image desktop depuis le HTML inline */
  display:flex; align-items:center;
  overflow:hidden;
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
.spt-hero::before{
  content:''; position:absolute; inset:0;
  background: rgba(0,0,0, var(--overlay-alpha, .72)); /* overlay noir basé sur la variable inline */
  z-index:1; pointer-events:none;
}

/* Layout */
.spt-hero__container{
  position:relative; z-index:2;
  width:100%; max-width:1400px; margin:0 auto; padding:0 22px;
}
.spt-hero__content{
  min-height:100vh;
  display:flex;
  align-items:flex-start;
  padding-top: clamp(120px, 18vh, 200px); /* descend TOUT le bloc (titre + texte + CTA + badges) */
}
.spt-hero__left{ max-width:1200px; }

/* Badge */
.spt-hero__badge{
  position:absolute; top: clamp(10px, 2vh, 18px); left:22px; z-index:3;
  display:inline-flex; align-items:center;
  background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(10px);
  border-radius:999px; padding:8px 14px;
  font-size:13px; font-weight:600; color:#fff;
}

/* Titre + sous-titre */
.spt-hero__title{
  font-size:clamp(40px,5vw,62px);
  line-height:1.08; font-weight:900;
  margin: 0 0 12px;
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}
.spt-hero__subtitle{
  margin-top: clamp(28px, 4vh, 60px);
  margin-bottom: 18px;
  max-width: 760px;
  font-size:20px; line-height:1.45; font-weight:500;
  color: rgba(255,255,255,.95);
}

/* Puces (✓) bordeaux */
.spt-hero__features{
  list-style:none; padding:0; margin: clamp(10px, 2vh, 20px) 0 0;
  display:grid; gap:12px;
}
.spt-hero__features li{
  position:relative; padding-left:32px; font-size:17px; font-weight:500; color:#fff;
}
.dot{
  position:absolute; left:0; top:.35em; width:18px; height:18px; border-radius:50%;
  background:var(--xi-bordeaux);
  box-shadow:0 0 0 3px rgba(255,255,255,.22);
}
.dot::after{
  content:'✓'; position:absolute; inset:0; display:grid; place-items:center;
  font-size:12px; font-weight:800; color:#fff;
}

/* CTA – 2 boutons */
.spt-hero__ctaRow{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  margin-top: clamp(26px, 5.5vh, 60px);
}
.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  height: 52px; padding: 0 28px;
  border-radius:12px; font-weight:800; font-size:16px; line-height:1;
  text-decoration:none; border:2px solid transparent; cursor:pointer;
  transition:transform .2s, box-shadow .25s, background .25s, color .25s, border-color .25s;
}
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background:#730020;
  color:#fff;
  border-color:#730020;
  box-shadow:0 8px 28px rgba(0,0,0,.30);
}
.spt-btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 36px rgba(0,0,0,.50);
}

/* Badges en bas */
.spt-hero__badges{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 16px; }
.spt-badge{
  color:#730020; background:#fff; border:1px solid rgba(115,0,32,.25);
  padding:8px 12px; border-radius: 999px; font-size:.88rem; line-height:1;
  backdrop-filter: blur(6px);
}

/* Particules (facultatif) */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:1; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background:rgba(255,255,255,.18); filter:blur(1px); animation:float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:10%; top:18%; animation-duration:9s; }
.spt-hero__particles span:nth-child(2){ left:24%; top:72%; animation-duration:11s; }
.spt-hero__particles span:nth-child(3){ right:14%; top:22%; animation-duration:10s; }
.spt-hero__particles span:nth-child(4){ right:6%; bottom:12%; animation-duration:12s; }
.spt-hero__particles span:nth-child(5){ left:46%; top:8%; animation-duration:13s; }
@keyframes float{ 0%{ transform:translateY(0); opacity:.8; } 50%{ transform:translateY(-8px); opacity:1; } 100%{ transform:translateY(0); opacity:.8; } }

/* Responsive */
@media (max-width: 720px){
  .spt-hero__badge{ left:18px; }
  .spt-hero__subtitle{ margin-top: 22px; }
  .spt-hero__ctaRow .spt-btn{ width:100%; }
}

/* ===== IMAGE MOBILE — Nutrition : on ne change que l'image ===== */
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
    background-position: center top; /* cadrage portrait recommandé */
  }
}

/* (Option : appliquer aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
  }
}
*/

/* ===== OVERLAY BEAUCOUP PLUS CLAIR — override l'inline avec !important =====
   (le HTML de la section nutrition met souvent --overlay-alpha:.72 ; on écrase ici) */
.spt-hero.spt-hero--nutrition{
  --overlay-alpha: .18 !important;   /* desktop très clair */
}
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .24 !important; /* tablette */
  }
}
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .50 !important; /* mobile */
  }
}

/* (Option : zéro overlay si besoin)
.spt-hero.spt-hero--nutrition{ --overlay-alpha: 0 !important; }
*/

/* =========================================================
   AJOUT : léger espace en bas sous les CTA (desktop + mobile)
   ========================================================= */

/* On décale très légèrement le bas du bloc (sans changer les tailles existantes) */
.spt-hero__content{
  padding-bottom: clamp(12px, 2vh, 20px);
}

@media (max-width: 767px){
  .spt-hero__content{
    padding-bottom: clamp(14px, 3vh, 22px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-12136a7 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide {
  --brand: #730020;
  --bg-chip: rgba(115, 0, 32, 0.08);
  --bd-chip: rgba(115, 0, 32, 0.18);
  --bg-quote: rgba(115, 0, 32, 0.06);
  margin: 28px 0;
  color: var(--brand);
  font-size: 16px;
  line-height: 1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn) {
  color: var(--brand);
  text-decoration: none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr 1fr;
  gap: 24px;
  align-items: start;
}

/* Colonne image : compacte */
.spt-coachwide__media {
  margin: 0;
  padding: 0;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 4/5;
  max-height: 460px;
}
.spt-coachwide__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Colonnes de contenu */
.spt-coachwide__content {
  display: grid;
  align-content: start;
  gap: 16px;
}
.spt-coachwide__header { display: grid; gap: 6px; }
.spt-coachwide__eyebrow {
  margin: 0;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.9;
}
.spt-coachwide__title {
  margin: 0;
  font-size: clamp(1.55rem, 2vw, 1.95rem);
  line-height: 1.1;
}
.spt-coachwide__role { margin: 0; opacity: 0.95; }

/* Chips */
.spt-coachwide__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.spt-coachwide .chip {
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.9rem;
  background: var(--bg-chip);
  border: 1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.95;
}
.spt-coachwide__list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 6px;
}
.spt-coachwide__list li::marker { color: var(--brand); }
.spt-coachwide__langs { margin: 0; }

/* Citation */
.spt-coachwide__quote {
  margin: 0;
  padding: 12px 14px;
  border-left: 3px solid var(--brand);
  border-radius: 8px;
  background: var(--bg-quote);
  font-style: italic;
  font-size: 0.98rem;
}

/* ===== BOUTON — compact, même taille de texte ===== */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited {
  /* compact mais texte inchangé */
  display: inline-flex;                 /* évite toute largeur forcée */
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: fit-content;                   /* shrink-to-fit, pas pleine largeur */
  max-width: 100%;
  white-space: nowrap;                  /* pas de retour à la ligne */
  padding: 8px 16px;                    /* ↓ hauteur du bouton */
  line-height: 1.1;                     /* ne change pas la taille de police */
  font-size: 1rem;                      /* même taille que le texte global */
  font-weight: 700;                     /* conserve le poids initial */
  border-radius: 12px;
  background: var(--brand);
  color: #fff !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
  transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
  align-self: start;                    /* empêche l’étirement en grid */
}
.spt-coachwide__btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
  color: #fff !important;
}
.spt-coachwide__btn:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(115, 0, 32, 0.35);
  color: #fff !important;
}
.spt-coachwide__btn:active { transform: translateY(0); }

/* Métadonnées */
.spt-coachwide__meta { display: grid; gap: 16px; }

/* Responsive */
@media (max-width: 1024px) {
  .spt-coachwide__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .spt-coachwide__grid { grid-template-columns: 1fr; gap: 18px; }
  .spt-coachwide__media { aspect-ratio: 1/1; max-height: 420px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f83d389 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;                 /* couleur principale */
  --bg-chip:rgba(115,0,32,.08);    /* fond des chips */
  --bd-chip:rgba(115,0,32,.18);    /* bord des chips */
  --bg-quote:rgba(115,0,32,.06);   /* fond des citations */
  margin:28px 0;
  color:var(--brand);              /* texte par défaut en #730020 */
  font-size:16px;
  line-height:1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn){
  color:var(--brand);
  text-decoration:none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr 1fr; /* image légèrement plus étroite */
  gap:24px;
  align-items:start;
}

/* Colonne image : compacte pour limiter le scroll */
.spt-coachwide__media{
  margin:0; padding:0;
  border-radius:16px; overflow:hidden;
  aspect-ratio:4/5;      /* plus court que 3/4 */
  max-height:460px;      /* borne la hauteur globale */
}
.spt-coachwide__media img{
  width:100%; height:100%;
  object-fit:cover; object-position:center top; display:block;
}

/* Colonnes de contenu : alignement et rythme vertical */
.spt-coachwide__content{ display:grid; align-content:start; gap:16px; }
.spt-coachwide__header{ display:grid; gap:6px; }
.spt-coachwide__eyebrow{
  margin:0; font-size:.78rem; letter-spacing:.08em;
  text-transform:uppercase; opacity:.9;
}
.spt-coachwide__title{
  margin:0; font-size:clamp(1.55rem,2vw,1.95rem); line-height:1.1;
}
.spt-coachwide__role{ margin:0; opacity:.95; }

/* Chips (mots-clés) */
.spt-coachwide__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.spt-coachwide .chip{
  display:inline-block;
  padding:6px 10px; border-radius:999px; font-size:.9rem;
  background:var(--bg-chip); border:1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3{
  margin:0 0 6px; font-size:1rem;
  text-transform:uppercase; letter-spacing:.04em; opacity:.95;
}
.spt-coachwide__list{ margin:0; padding-left:18px; display:grid; gap:6px; }
.spt-coachwide__list li::marker{ color:var(--brand); }
.spt-coachwide__langs{ margin:0; }

/* Citation */
.spt-coachwide__quote{
  margin:0; padding:12px 14px;
  border-left:3px solid var(--brand); border-radius:8px;
  background:var(--bg-quote); font-style:italic; font-size:.98rem;
}

/* Bouton : fond bordeaux + texte blanc (corrigé) */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited{
  display:inline-block; padding:12px 16px; border-radius:12px;
  font-weight:700; background:var(--brand);
  color:#fff !important; box-shadow:0 1px 0 rgba(0,0,0,.05);
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease;
}
.spt-coachwide__btn:hover{
  transform:translateY(-1px); filter:brightness(1.03);
  color:#fff !important;
}
.spt-coachwide__btn:focus-visible{
  outline:2px solid #fff; outline-offset:2px;
  box-shadow:0 0 0 3px rgba(115,0,32,.35);
  color:#fff !important;
}
.spt-coachwide__btn:active{ transform:translateY(0); }

/* Bloc diplômes/langues */
.spt-coachwide__meta{ display:grid; gap:16px; }

/* ===== Responsive ===== */
@media (max-width:1024px){
  .spt-coachwide__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
  .spt-coachwide__grid{ grid-template-columns:1fr; gap:18px; }
  .spt-coachwide__media{ aspect-ratio:1/1; max-height:420px; } /* portrait carré en mobile */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-19388c0 *//* =========================
   HERO — Nutrition (full bg + overlay noir + thème #730020)
   ========================= */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{
  --xi-bordeaux:#730020;
  --xi-white:#fff;
  --xi-ink:#2E333A;
}

/* Header au-dessus (WP/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }

/* Wrapper (image de fond + overlay noir) */
.spt-hero{
  position:relative;
  min-height:100vh;
  color:#fff;
  background: var(--spt-hero-img) center/cover no-repeat; /* lit l'image desktop depuis le HTML inline */
  display:flex; align-items:center;
  overflow:hidden;
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
.spt-hero::before{
  content:''; position:absolute; inset:0;
  background: rgba(0,0,0, var(--overlay-alpha, .72)); /* overlay noir basé sur la variable inline */
  z-index:1; pointer-events:none;
}

/* Layout */
.spt-hero__container{
  position:relative; z-index:2;
  width:100%; max-width:1400px; margin:0 auto; padding:0 22px;
}
.spt-hero__content{
  min-height:100vh;
  display:flex;
  align-items:flex-start;
  padding-top: clamp(120px, 18vh, 200px); /* descend TOUT le bloc (titre + texte + CTA + badges) */
}
.spt-hero__left{ max-width:1200px; }

/* Badge */
.spt-hero__badge{
  position:absolute; top: clamp(10px, 2vh, 18px); left:22px; z-index:3;
  display:inline-flex; align-items:center;
  background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(10px);
  border-radius:999px; padding:8px 14px;
  font-size:13px; font-weight:600; color:#fff;
}

/* Titre + sous-titre */
.spt-hero__title{
  font-size:clamp(40px,5vw,62px);
  line-height:1.08; font-weight:900;
  margin: 0 0 12px;
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}
.spt-hero__subtitle{
  margin-top: clamp(28px, 4vh, 60px);
  margin-bottom: 18px;
  max-width: 760px;
  font-size:20px; line-height:1.45; font-weight:500;
  color: rgba(255,255,255,.95);
}

/* Puces (✓) bordeaux */
.spt-hero__features{
  list-style:none; padding:0; margin: clamp(10px, 2vh, 20px) 0 0;
  display:grid; gap:12px;
}
.spt-hero__features li{
  position:relative; padding-left:32px; font-size:17px; font-weight:500; color:#fff;
}
.dot{
  position:absolute; left:0; top:.35em; width:18px; height:18px; border-radius:50%;
  background:var(--xi-bordeaux);
  box-shadow:0 0 0 3px rgba(255,255,255,.22);
}
.dot::after{
  content:'✓'; position:absolute; inset:0; display:grid; place-items:center;
  font-size:12px; font-weight:800; color:#fff;
}

/* CTA – 2 boutons */
.spt-hero__ctaRow{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  margin-top: clamp(26px, 5.5vh, 60px);
}
.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  height: 52px; padding: 0 28px;
  border-radius:12px; font-weight:800; font-size:16px; line-height:1;
  text-decoration:none; border:2px solid transparent; cursor:pointer;
  transition:transform .2s, box-shadow .25s, background .25s, color .25s, border-color .25s;
}
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background:#730020;
  color:#fff;
  border-color:#730020;
  box-shadow:0 8px 28px rgba(0,0,0,.30);
}
.spt-btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 36px rgba(0,0,0,.50);
}

/* Badges en bas */
.spt-hero__badges{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 16px; }
.spt-badge{
  color:#730020; background:#fff; border:1px solid rgba(115,0,32,.25);
  padding:8px 12px; border-radius: 999px; font-size:.88rem; line-height:1;
  backdrop-filter: blur(6px);
}

/* Particules (facultatif) */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:1; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background:rgba(255,255,255,.18); filter:blur(1px); animation:float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:10%; top:18%; animation-duration:9s; }
.spt-hero__particles span:nth-child(2){ left:24%; top:72%; animation-duration:11s; }
.spt-hero__particles span:nth-child(3){ right:14%; top:22%; animation-duration:10s; }
.spt-hero__particles span:nth-child(4){ right:6%; bottom:12%; animation-duration:12s; }
.spt-hero__particles span:nth-child(5){ left:46%; top:8%; animation-duration:13s; }
@keyframes float{ 0%{ transform:translateY(0); opacity:.8; } 50%{ transform:translateY(-8px); opacity:1; } 100%{ transform:translateY(0); opacity:.8; } }

/* Responsive */
@media (max-width: 720px){
  .spt-hero__badge{ left:18px; }
  .spt-hero__subtitle{ margin-top: 22px; }
  .spt-hero__ctaRow .spt-btn{ width:100%; }
}

/* ===== IMAGE MOBILE — Nutrition : on ne change que l'image ===== */
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
    background-position: center top; /* cadrage portrait recommandé */
  }
}

/* (Option : appliquer aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
  }
}
*/

/* ===== OVERLAY BEAUCOUP PLUS CLAIR — override l'inline avec !important =====
   (le HTML de la section nutrition met souvent --overlay-alpha:.72 ; on écrase ici) */
.spt-hero.spt-hero--nutrition{
  --overlay-alpha: .18 !important;   /* desktop très clair */
}
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .24 !important; /* tablette */
  }
}
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .50 !important; /* mobile */
  }
}

/* (Option : zéro overlay si besoin)
.spt-hero.spt-hero--nutrition{ --overlay-alpha: 0 !important; }
*/

/* =========================================================
   AJOUT : léger espace en bas sous les CTA (desktop + mobile)
   ========================================================= */

/* On décale très légèrement le bas du bloc (sans changer les tailles existantes) */
.spt-hero__content{
  padding-bottom: clamp(12px, 2vh, 20px);
}

@media (max-width: 767px){
  .spt-hero__content{
    padding-bottom: clamp(14px, 3vh, 22px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-12136a7 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide {
  --brand: #730020;
  --bg-chip: rgba(115, 0, 32, 0.08);
  --bd-chip: rgba(115, 0, 32, 0.18);
  --bg-quote: rgba(115, 0, 32, 0.06);
  margin: 28px 0;
  color: var(--brand);
  font-size: 16px;
  line-height: 1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn) {
  color: var(--brand);
  text-decoration: none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr 1fr;
  gap: 24px;
  align-items: start;
}

/* Colonne image : compacte */
.spt-coachwide__media {
  margin: 0;
  padding: 0;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 4/5;
  max-height: 460px;
}
.spt-coachwide__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Colonnes de contenu */
.spt-coachwide__content {
  display: grid;
  align-content: start;
  gap: 16px;
}
.spt-coachwide__header { display: grid; gap: 6px; }
.spt-coachwide__eyebrow {
  margin: 0;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.9;
}
.spt-coachwide__title {
  margin: 0;
  font-size: clamp(1.55rem, 2vw, 1.95rem);
  line-height: 1.1;
}
.spt-coachwide__role { margin: 0; opacity: 0.95; }

/* Chips */
.spt-coachwide__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.spt-coachwide .chip {
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.9rem;
  background: var(--bg-chip);
  border: 1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.95;
}
.spt-coachwide__list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 6px;
}
.spt-coachwide__list li::marker { color: var(--brand); }
.spt-coachwide__langs { margin: 0; }

/* Citation */
.spt-coachwide__quote {
  margin: 0;
  padding: 12px 14px;
  border-left: 3px solid var(--brand);
  border-radius: 8px;
  background: var(--bg-quote);
  font-style: italic;
  font-size: 0.98rem;
}

/* ===== BOUTON — compact, même taille de texte ===== */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited {
  /* compact mais texte inchangé */
  display: inline-flex;                 /* évite toute largeur forcée */
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: fit-content;                   /* shrink-to-fit, pas pleine largeur */
  max-width: 100%;
  white-space: nowrap;                  /* pas de retour à la ligne */
  padding: 8px 16px;                    /* ↓ hauteur du bouton */
  line-height: 1.1;                     /* ne change pas la taille de police */
  font-size: 1rem;                      /* même taille que le texte global */
  font-weight: 700;                     /* conserve le poids initial */
  border-radius: 12px;
  background: var(--brand);
  color: #fff !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
  transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
  align-self: start;                    /* empêche l’étirement en grid */
}
.spt-coachwide__btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
  color: #fff !important;
}
.spt-coachwide__btn:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(115, 0, 32, 0.35);
  color: #fff !important;
}
.spt-coachwide__btn:active { transform: translateY(0); }

/* Métadonnées */
.spt-coachwide__meta { display: grid; gap: 16px; }

/* Responsive */
@media (max-width: 1024px) {
  .spt-coachwide__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .spt-coachwide__grid { grid-template-columns: 1fr; gap: 18px; }
  .spt-coachwide__media { aspect-ratio: 1/1; max-height: 420px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f83d389 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;                 /* couleur principale */
  --bg-chip:rgba(115,0,32,.08);    /* fond des chips */
  --bd-chip:rgba(115,0,32,.18);    /* bord des chips */
  --bg-quote:rgba(115,0,32,.06);   /* fond des citations */
  margin:28px 0;
  color:var(--brand);              /* texte par défaut en #730020 */
  font-size:16px;
  line-height:1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn){
  color:var(--brand);
  text-decoration:none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr 1fr; /* image légèrement plus étroite */
  gap:24px;
  align-items:start;
}

/* Colonne image : compacte pour limiter le scroll */
.spt-coachwide__media{
  margin:0; padding:0;
  border-radius:16px; overflow:hidden;
  aspect-ratio:4/5;      /* plus court que 3/4 */
  max-height:460px;      /* borne la hauteur globale */
}
.spt-coachwide__media img{
  width:100%; height:100%;
  object-fit:cover; object-position:center top; display:block;
}

/* Colonnes de contenu : alignement et rythme vertical */
.spt-coachwide__content{ display:grid; align-content:start; gap:16px; }
.spt-coachwide__header{ display:grid; gap:6px; }
.spt-coachwide__eyebrow{
  margin:0; font-size:.78rem; letter-spacing:.08em;
  text-transform:uppercase; opacity:.9;
}
.spt-coachwide__title{
  margin:0; font-size:clamp(1.55rem,2vw,1.95rem); line-height:1.1;
}
.spt-coachwide__role{ margin:0; opacity:.95; }

/* Chips (mots-clés) */
.spt-coachwide__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.spt-coachwide .chip{
  display:inline-block;
  padding:6px 10px; border-radius:999px; font-size:.9rem;
  background:var(--bg-chip); border:1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3{
  margin:0 0 6px; font-size:1rem;
  text-transform:uppercase; letter-spacing:.04em; opacity:.95;
}
.spt-coachwide__list{ margin:0; padding-left:18px; display:grid; gap:6px; }
.spt-coachwide__list li::marker{ color:var(--brand); }
.spt-coachwide__langs{ margin:0; }

/* Citation */
.spt-coachwide__quote{
  margin:0; padding:12px 14px;
  border-left:3px solid var(--brand); border-radius:8px;
  background:var(--bg-quote); font-style:italic; font-size:.98rem;
}

/* Bouton : fond bordeaux + texte blanc (corrigé) */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited{
  display:inline-block; padding:12px 16px; border-radius:12px;
  font-weight:700; background:var(--brand);
  color:#fff !important; box-shadow:0 1px 0 rgba(0,0,0,.05);
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease;
}
.spt-coachwide__btn:hover{
  transform:translateY(-1px); filter:brightness(1.03);
  color:#fff !important;
}
.spt-coachwide__btn:focus-visible{
  outline:2px solid #fff; outline-offset:2px;
  box-shadow:0 0 0 3px rgba(115,0,32,.35);
  color:#fff !important;
}
.spt-coachwide__btn:active{ transform:translateY(0); }

/* Bloc diplômes/langues */
.spt-coachwide__meta{ display:grid; gap:16px; }

/* ===== Responsive ===== */
@media (max-width:1024px){
  .spt-coachwide__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
  .spt-coachwide__grid{ grid-template-columns:1fr; gap:18px; }
  .spt-coachwide__media{ aspect-ratio:1/1; max-height:420px; } /* portrait carré en mobile */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-19388c0 *//* =========================
   HERO — Nutrition (full bg + overlay noir + thème #730020)
   ========================= */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{
  --xi-bordeaux:#730020;
  --xi-white:#fff;
  --xi-ink:#2E333A;
}

/* Header au-dessus (WP/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }

/* Wrapper (image de fond + overlay noir) */
.spt-hero{
  position:relative;
  min-height:100vh;
  color:#fff;
  background: var(--spt-hero-img) center/cover no-repeat; /* lit l'image desktop depuis le HTML inline */
  display:flex; align-items:center;
  overflow:hidden;
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
.spt-hero::before{
  content:''; position:absolute; inset:0;
  background: rgba(0,0,0, var(--overlay-alpha, .72)); /* overlay noir basé sur la variable inline */
  z-index:1; pointer-events:none;
}

/* Layout */
.spt-hero__container{
  position:relative; z-index:2;
  width:100%; max-width:1400px; margin:0 auto; padding:0 22px;
}
.spt-hero__content{
  min-height:100vh;
  display:flex;
  align-items:flex-start;
  padding-top: clamp(120px, 18vh, 200px); /* descend TOUT le bloc (titre + texte + CTA + badges) */
}
.spt-hero__left{ max-width:1200px; }

/* Badge */
.spt-hero__badge{
  position:absolute; top: clamp(10px, 2vh, 18px); left:22px; z-index:3;
  display:inline-flex; align-items:center;
  background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(10px);
  border-radius:999px; padding:8px 14px;
  font-size:13px; font-weight:600; color:#fff;
}

/* Titre + sous-titre */
.spt-hero__title{
  font-size:clamp(40px,5vw,62px);
  line-height:1.08; font-weight:900;
  margin: 0 0 12px;
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}
.spt-hero__subtitle{
  margin-top: clamp(28px, 4vh, 60px);
  margin-bottom: 18px;
  max-width: 760px;
  font-size:20px; line-height:1.45; font-weight:500;
  color: rgba(255,255,255,.95);
}

/* Puces (✓) bordeaux */
.spt-hero__features{
  list-style:none; padding:0; margin: clamp(10px, 2vh, 20px) 0 0;
  display:grid; gap:12px;
}
.spt-hero__features li{
  position:relative; padding-left:32px; font-size:17px; font-weight:500; color:#fff;
}
.dot{
  position:absolute; left:0; top:.35em; width:18px; height:18px; border-radius:50%;
  background:var(--xi-bordeaux);
  box-shadow:0 0 0 3px rgba(255,255,255,.22);
}
.dot::after{
  content:'✓'; position:absolute; inset:0; display:grid; place-items:center;
  font-size:12px; font-weight:800; color:#fff;
}

/* CTA – 2 boutons */
.spt-hero__ctaRow{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  margin-top: clamp(26px, 5.5vh, 60px);
}
.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  height: 52px; padding: 0 28px;
  border-radius:12px; font-weight:800; font-size:16px; line-height:1;
  text-decoration:none; border:2px solid transparent; cursor:pointer;
  transition:transform .2s, box-shadow .25s, background .25s, color .25s, border-color .25s;
}
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background:#730020;
  color:#fff;
  border-color:#730020;
  box-shadow:0 8px 28px rgba(0,0,0,.30);
}
.spt-btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 36px rgba(0,0,0,.50);
}

/* Badges en bas */
.spt-hero__badges{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 16px; }
.spt-badge{
  color:#730020; background:#fff; border:1px solid rgba(115,0,32,.25);
  padding:8px 12px; border-radius: 999px; font-size:.88rem; line-height:1;
  backdrop-filter: blur(6px);
}

/* Particules (facultatif) */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:1; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background:rgba(255,255,255,.18); filter:blur(1px); animation:float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:10%; top:18%; animation-duration:9s; }
.spt-hero__particles span:nth-child(2){ left:24%; top:72%; animation-duration:11s; }
.spt-hero__particles span:nth-child(3){ right:14%; top:22%; animation-duration:10s; }
.spt-hero__particles span:nth-child(4){ right:6%; bottom:12%; animation-duration:12s; }
.spt-hero__particles span:nth-child(5){ left:46%; top:8%; animation-duration:13s; }
@keyframes float{ 0%{ transform:translateY(0); opacity:.8; } 50%{ transform:translateY(-8px); opacity:1; } 100%{ transform:translateY(0); opacity:.8; } }

/* Responsive */
@media (max-width: 720px){
  .spt-hero__badge{ left:18px; }
  .spt-hero__subtitle{ margin-top: 22px; }
  .spt-hero__ctaRow .spt-btn{ width:100%; }
}

/* ===== IMAGE MOBILE — Nutrition : on ne change que l'image ===== */
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
    background-position: center top; /* cadrage portrait recommandé */
  }
}

/* (Option : appliquer aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
  }
}
*/

/* ===== OVERLAY BEAUCOUP PLUS CLAIR — override l'inline avec !important =====
   (le HTML de la section nutrition met souvent --overlay-alpha:.72 ; on écrase ici) */
.spt-hero.spt-hero--nutrition{
  --overlay-alpha: .18 !important;   /* desktop très clair */
}
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .24 !important; /* tablette */
  }
}
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .50 !important; /* mobile */
  }
}

/* (Option : zéro overlay si besoin)
.spt-hero.spt-hero--nutrition{ --overlay-alpha: 0 !important; }
*/

/* =========================================================
   AJOUT : léger espace en bas sous les CTA (desktop + mobile)
   ========================================================= */

/* On décale très légèrement le bas du bloc (sans changer les tailles existantes) */
.spt-hero__content{
  padding-bottom: clamp(12px, 2vh, 20px);
}

@media (max-width: 767px){
  .spt-hero__content{
    padding-bottom: clamp(14px, 3vh, 22px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-12136a7 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide {
  --brand: #730020;
  --bg-chip: rgba(115, 0, 32, 0.08);
  --bd-chip: rgba(115, 0, 32, 0.18);
  --bg-quote: rgba(115, 0, 32, 0.06);
  margin: 28px 0;
  color: var(--brand);
  font-size: 16px;
  line-height: 1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn) {
  color: var(--brand);
  text-decoration: none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr 1fr;
  gap: 24px;
  align-items: start;
}

/* Colonne image : compacte */
.spt-coachwide__media {
  margin: 0;
  padding: 0;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 4/5;
  max-height: 460px;
}
.spt-coachwide__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Colonnes de contenu */
.spt-coachwide__content {
  display: grid;
  align-content: start;
  gap: 16px;
}
.spt-coachwide__header { display: grid; gap: 6px; }
.spt-coachwide__eyebrow {
  margin: 0;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.9;
}
.spt-coachwide__title {
  margin: 0;
  font-size: clamp(1.55rem, 2vw, 1.95rem);
  line-height: 1.1;
}
.spt-coachwide__role { margin: 0; opacity: 0.95; }

/* Chips */
.spt-coachwide__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.spt-coachwide .chip {
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.9rem;
  background: var(--bg-chip);
  border: 1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.95;
}
.spt-coachwide__list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 6px;
}
.spt-coachwide__list li::marker { color: var(--brand); }
.spt-coachwide__langs { margin: 0; }

/* Citation */
.spt-coachwide__quote {
  margin: 0;
  padding: 12px 14px;
  border-left: 3px solid var(--brand);
  border-radius: 8px;
  background: var(--bg-quote);
  font-style: italic;
  font-size: 0.98rem;
}

/* ===== BOUTON — compact, même taille de texte ===== */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited {
  /* compact mais texte inchangé */
  display: inline-flex;                 /* évite toute largeur forcée */
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: fit-content;                   /* shrink-to-fit, pas pleine largeur */
  max-width: 100%;
  white-space: nowrap;                  /* pas de retour à la ligne */
  padding: 8px 16px;                    /* ↓ hauteur du bouton */
  line-height: 1.1;                     /* ne change pas la taille de police */
  font-size: 1rem;                      /* même taille que le texte global */
  font-weight: 700;                     /* conserve le poids initial */
  border-radius: 12px;
  background: var(--brand);
  color: #fff !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
  transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
  align-self: start;                    /* empêche l’étirement en grid */
}
.spt-coachwide__btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
  color: #fff !important;
}
.spt-coachwide__btn:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(115, 0, 32, 0.35);
  color: #fff !important;
}
.spt-coachwide__btn:active { transform: translateY(0); }

/* Métadonnées */
.spt-coachwide__meta { display: grid; gap: 16px; }

/* Responsive */
@media (max-width: 1024px) {
  .spt-coachwide__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .spt-coachwide__grid { grid-template-columns: 1fr; gap: 18px; }
  .spt-coachwide__media { aspect-ratio: 1/1; max-height: 420px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f83d389 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;                 /* couleur principale */
  --bg-chip:rgba(115,0,32,.08);    /* fond des chips */
  --bd-chip:rgba(115,0,32,.18);    /* bord des chips */
  --bg-quote:rgba(115,0,32,.06);   /* fond des citations */
  margin:28px 0;
  color:var(--brand);              /* texte par défaut en #730020 */
  font-size:16px;
  line-height:1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn){
  color:var(--brand);
  text-decoration:none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr 1fr; /* image légèrement plus étroite */
  gap:24px;
  align-items:start;
}

/* Colonne image : compacte pour limiter le scroll */
.spt-coachwide__media{
  margin:0; padding:0;
  border-radius:16px; overflow:hidden;
  aspect-ratio:4/5;      /* plus court que 3/4 */
  max-height:460px;      /* borne la hauteur globale */
}
.spt-coachwide__media img{
  width:100%; height:100%;
  object-fit:cover; object-position:center top; display:block;
}

/* Colonnes de contenu : alignement et rythme vertical */
.spt-coachwide__content{ display:grid; align-content:start; gap:16px; }
.spt-coachwide__header{ display:grid; gap:6px; }
.spt-coachwide__eyebrow{
  margin:0; font-size:.78rem; letter-spacing:.08em;
  text-transform:uppercase; opacity:.9;
}
.spt-coachwide__title{
  margin:0; font-size:clamp(1.55rem,2vw,1.95rem); line-height:1.1;
}
.spt-coachwide__role{ margin:0; opacity:.95; }

/* Chips (mots-clés) */
.spt-coachwide__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.spt-coachwide .chip{
  display:inline-block;
  padding:6px 10px; border-radius:999px; font-size:.9rem;
  background:var(--bg-chip); border:1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3{
  margin:0 0 6px; font-size:1rem;
  text-transform:uppercase; letter-spacing:.04em; opacity:.95;
}
.spt-coachwide__list{ margin:0; padding-left:18px; display:grid; gap:6px; }
.spt-coachwide__list li::marker{ color:var(--brand); }
.spt-coachwide__langs{ margin:0; }

/* Citation */
.spt-coachwide__quote{
  margin:0; padding:12px 14px;
  border-left:3px solid var(--brand); border-radius:8px;
  background:var(--bg-quote); font-style:italic; font-size:.98rem;
}

/* Bouton : fond bordeaux + texte blanc (corrigé) */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited{
  display:inline-block; padding:12px 16px; border-radius:12px;
  font-weight:700; background:var(--brand);
  color:#fff !important; box-shadow:0 1px 0 rgba(0,0,0,.05);
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease;
}
.spt-coachwide__btn:hover{
  transform:translateY(-1px); filter:brightness(1.03);
  color:#fff !important;
}
.spt-coachwide__btn:focus-visible{
  outline:2px solid #fff; outline-offset:2px;
  box-shadow:0 0 0 3px rgba(115,0,32,.35);
  color:#fff !important;
}
.spt-coachwide__btn:active{ transform:translateY(0); }

/* Bloc diplômes/langues */
.spt-coachwide__meta{ display:grid; gap:16px; }

/* ===== Responsive ===== */
@media (max-width:1024px){
  .spt-coachwide__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
  .spt-coachwide__grid{ grid-template-columns:1fr; gap:18px; }
  .spt-coachwide__media{ aspect-ratio:1/1; max-height:420px; } /* portrait carré en mobile */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-19388c0 *//* =========================
   HERO — Nutrition (full bg + overlay noir + thème #730020)
   ========================= */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{
  --xi-bordeaux:#730020;
  --xi-white:#fff;
  --xi-ink:#2E333A;
}

/* Header au-dessus (WP/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }

/* Wrapper (image de fond + overlay noir) */
.spt-hero{
  position:relative;
  min-height:100vh;
  color:#fff;
  background: var(--spt-hero-img) center/cover no-repeat; /* lit l'image desktop depuis le HTML inline */
  display:flex; align-items:center;
  overflow:hidden;
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
.spt-hero::before{
  content:''; position:absolute; inset:0;
  background: rgba(0,0,0, var(--overlay-alpha, .72)); /* overlay noir basé sur la variable inline */
  z-index:1; pointer-events:none;
}

/* Layout */
.spt-hero__container{
  position:relative; z-index:2;
  width:100%; max-width:1400px; margin:0 auto; padding:0 22px;
}
.spt-hero__content{
  min-height:100vh;
  display:flex;
  align-items:flex-start;
  padding-top: clamp(120px, 18vh, 200px); /* descend TOUT le bloc (titre + texte + CTA + badges) */
}
.spt-hero__left{ max-width:1200px; }

/* Badge */
.spt-hero__badge{
  position:absolute; top: clamp(10px, 2vh, 18px); left:22px; z-index:3;
  display:inline-flex; align-items:center;
  background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(10px);
  border-radius:999px; padding:8px 14px;
  font-size:13px; font-weight:600; color:#fff;
}

/* Titre + sous-titre */
.spt-hero__title{
  font-size:clamp(40px,5vw,62px);
  line-height:1.08; font-weight:900;
  margin: 0 0 12px;
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}
.spt-hero__subtitle{
  margin-top: clamp(28px, 4vh, 60px);
  margin-bottom: 18px;
  max-width: 760px;
  font-size:20px; line-height:1.45; font-weight:500;
  color: rgba(255,255,255,.95);
}

/* Puces (✓) bordeaux */
.spt-hero__features{
  list-style:none; padding:0; margin: clamp(10px, 2vh, 20px) 0 0;
  display:grid; gap:12px;
}
.spt-hero__features li{
  position:relative; padding-left:32px; font-size:17px; font-weight:500; color:#fff;
}
.dot{
  position:absolute; left:0; top:.35em; width:18px; height:18px; border-radius:50%;
  background:var(--xi-bordeaux);
  box-shadow:0 0 0 3px rgba(255,255,255,.22);
}
.dot::after{
  content:'✓'; position:absolute; inset:0; display:grid; place-items:center;
  font-size:12px; font-weight:800; color:#fff;
}

/* CTA – 2 boutons */
.spt-hero__ctaRow{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  margin-top: clamp(26px, 5.5vh, 60px);
}
.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  height: 52px; padding: 0 28px;
  border-radius:12px; font-weight:800; font-size:16px; line-height:1;
  text-decoration:none; border:2px solid transparent; cursor:pointer;
  transition:transform .2s, box-shadow .25s, background .25s, color .25s, border-color .25s;
}
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background:#730020;
  color:#fff;
  border-color:#730020;
  box-shadow:0 8px 28px rgba(0,0,0,.30);
}
.spt-btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 36px rgba(0,0,0,.50);
}

/* Badges en bas */
.spt-hero__badges{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 16px; }
.spt-badge{
  color:#730020; background:#fff; border:1px solid rgba(115,0,32,.25);
  padding:8px 12px; border-radius: 999px; font-size:.88rem; line-height:1;
  backdrop-filter: blur(6px);
}

/* Particules (facultatif) */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:1; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background:rgba(255,255,255,.18); filter:blur(1px); animation:float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:10%; top:18%; animation-duration:9s; }
.spt-hero__particles span:nth-child(2){ left:24%; top:72%; animation-duration:11s; }
.spt-hero__particles span:nth-child(3){ right:14%; top:22%; animation-duration:10s; }
.spt-hero__particles span:nth-child(4){ right:6%; bottom:12%; animation-duration:12s; }
.spt-hero__particles span:nth-child(5){ left:46%; top:8%; animation-duration:13s; }
@keyframes float{ 0%{ transform:translateY(0); opacity:.8; } 50%{ transform:translateY(-8px); opacity:1; } 100%{ transform:translateY(0); opacity:.8; } }

/* Responsive */
@media (max-width: 720px){
  .spt-hero__badge{ left:18px; }
  .spt-hero__subtitle{ margin-top: 22px; }
  .spt-hero__ctaRow .spt-btn{ width:100%; }
}

/* ===== IMAGE MOBILE — Nutrition : on ne change que l'image ===== */
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
    background-position: center top; /* cadrage portrait recommandé */
  }
}

/* (Option : appliquer aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
  }
}
*/

/* ===== OVERLAY BEAUCOUP PLUS CLAIR — override l'inline avec !important =====
   (le HTML de la section nutrition met souvent --overlay-alpha:.72 ; on écrase ici) */
.spt-hero.spt-hero--nutrition{
  --overlay-alpha: .18 !important;   /* desktop très clair */
}
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .24 !important; /* tablette */
  }
}
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .50 !important; /* mobile */
  }
}

/* (Option : zéro overlay si besoin)
.spt-hero.spt-hero--nutrition{ --overlay-alpha: 0 !important; }
*/

/* =========================================================
   AJOUT : léger espace en bas sous les CTA (desktop + mobile)
   ========================================================= */

/* On décale très légèrement le bas du bloc (sans changer les tailles existantes) */
.spt-hero__content{
  padding-bottom: clamp(12px, 2vh, 20px);
}

@media (max-width: 767px){
  .spt-hero__content{
    padding-bottom: clamp(14px, 3vh, 22px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-12136a7 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide {
  --brand: #730020;
  --bg-chip: rgba(115, 0, 32, 0.08);
  --bd-chip: rgba(115, 0, 32, 0.18);
  --bg-quote: rgba(115, 0, 32, 0.06);
  margin: 28px 0;
  color: var(--brand);
  font-size: 16px;
  line-height: 1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn) {
  color: var(--brand);
  text-decoration: none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr 1fr;
  gap: 24px;
  align-items: start;
}

/* Colonne image : compacte */
.spt-coachwide__media {
  margin: 0;
  padding: 0;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 4/5;
  max-height: 460px;
}
.spt-coachwide__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Colonnes de contenu */
.spt-coachwide__content {
  display: grid;
  align-content: start;
  gap: 16px;
}
.spt-coachwide__header { display: grid; gap: 6px; }
.spt-coachwide__eyebrow {
  margin: 0;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.9;
}
.spt-coachwide__title {
  margin: 0;
  font-size: clamp(1.55rem, 2vw, 1.95rem);
  line-height: 1.1;
}
.spt-coachwide__role { margin: 0; opacity: 0.95; }

/* Chips */
.spt-coachwide__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.spt-coachwide .chip {
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.9rem;
  background: var(--bg-chip);
  border: 1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.95;
}
.spt-coachwide__list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 6px;
}
.spt-coachwide__list li::marker { color: var(--brand); }
.spt-coachwide__langs { margin: 0; }

/* Citation */
.spt-coachwide__quote {
  margin: 0;
  padding: 12px 14px;
  border-left: 3px solid var(--brand);
  border-radius: 8px;
  background: var(--bg-quote);
  font-style: italic;
  font-size: 0.98rem;
}

/* ===== BOUTON — compact, même taille de texte ===== */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited {
  /* compact mais texte inchangé */
  display: inline-flex;                 /* évite toute largeur forcée */
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: fit-content;                   /* shrink-to-fit, pas pleine largeur */
  max-width: 100%;
  white-space: nowrap;                  /* pas de retour à la ligne */
  padding: 8px 16px;                    /* ↓ hauteur du bouton */
  line-height: 1.1;                     /* ne change pas la taille de police */
  font-size: 1rem;                      /* même taille que le texte global */
  font-weight: 700;                     /* conserve le poids initial */
  border-radius: 12px;
  background: var(--brand);
  color: #fff !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
  transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
  align-self: start;                    /* empêche l’étirement en grid */
}
.spt-coachwide__btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
  color: #fff !important;
}
.spt-coachwide__btn:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(115, 0, 32, 0.35);
  color: #fff !important;
}
.spt-coachwide__btn:active { transform: translateY(0); }

/* Métadonnées */
.spt-coachwide__meta { display: grid; gap: 16px; }

/* Responsive */
@media (max-width: 1024px) {
  .spt-coachwide__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .spt-coachwide__grid { grid-template-columns: 1fr; gap: 18px; }
  .spt-coachwide__media { aspect-ratio: 1/1; max-height: 420px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f83d389 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;                 /* couleur principale */
  --bg-chip:rgba(115,0,32,.08);    /* fond des chips */
  --bd-chip:rgba(115,0,32,.18);    /* bord des chips */
  --bg-quote:rgba(115,0,32,.06);   /* fond des citations */
  margin:28px 0;
  color:var(--brand);              /* texte par défaut en #730020 */
  font-size:16px;
  line-height:1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn){
  color:var(--brand);
  text-decoration:none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr 1fr; /* image légèrement plus étroite */
  gap:24px;
  align-items:start;
}

/* Colonne image : compacte pour limiter le scroll */
.spt-coachwide__media{
  margin:0; padding:0;
  border-radius:16px; overflow:hidden;
  aspect-ratio:4/5;      /* plus court que 3/4 */
  max-height:460px;      /* borne la hauteur globale */
}
.spt-coachwide__media img{
  width:100%; height:100%;
  object-fit:cover; object-position:center top; display:block;
}

/* Colonnes de contenu : alignement et rythme vertical */
.spt-coachwide__content{ display:grid; align-content:start; gap:16px; }
.spt-coachwide__header{ display:grid; gap:6px; }
.spt-coachwide__eyebrow{
  margin:0; font-size:.78rem; letter-spacing:.08em;
  text-transform:uppercase; opacity:.9;
}
.spt-coachwide__title{
  margin:0; font-size:clamp(1.55rem,2vw,1.95rem); line-height:1.1;
}
.spt-coachwide__role{ margin:0; opacity:.95; }

/* Chips (mots-clés) */
.spt-coachwide__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.spt-coachwide .chip{
  display:inline-block;
  padding:6px 10px; border-radius:999px; font-size:.9rem;
  background:var(--bg-chip); border:1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3{
  margin:0 0 6px; font-size:1rem;
  text-transform:uppercase; letter-spacing:.04em; opacity:.95;
}
.spt-coachwide__list{ margin:0; padding-left:18px; display:grid; gap:6px; }
.spt-coachwide__list li::marker{ color:var(--brand); }
.spt-coachwide__langs{ margin:0; }

/* Citation */
.spt-coachwide__quote{
  margin:0; padding:12px 14px;
  border-left:3px solid var(--brand); border-radius:8px;
  background:var(--bg-quote); font-style:italic; font-size:.98rem;
}

/* Bouton : fond bordeaux + texte blanc (corrigé) */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited{
  display:inline-block; padding:12px 16px; border-radius:12px;
  font-weight:700; background:var(--brand);
  color:#fff !important; box-shadow:0 1px 0 rgba(0,0,0,.05);
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease;
}
.spt-coachwide__btn:hover{
  transform:translateY(-1px); filter:brightness(1.03);
  color:#fff !important;
}
.spt-coachwide__btn:focus-visible{
  outline:2px solid #fff; outline-offset:2px;
  box-shadow:0 0 0 3px rgba(115,0,32,.35);
  color:#fff !important;
}
.spt-coachwide__btn:active{ transform:translateY(0); }

/* Bloc diplômes/langues */
.spt-coachwide__meta{ display:grid; gap:16px; }

/* ===== Responsive ===== */
@media (max-width:1024px){
  .spt-coachwide__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
  .spt-coachwide__grid{ grid-template-columns:1fr; gap:18px; }
  .spt-coachwide__media{ aspect-ratio:1/1; max-height:420px; } /* portrait carré en mobile */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-19388c0 *//* =========================
   HERO — Nutrition (full bg + overlay noir + thème #730020)
   ========================= */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{
  --xi-bordeaux:#730020;
  --xi-white:#fff;
  --xi-ink:#2E333A;
}

/* Header au-dessus (WP/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }

/* Wrapper (image de fond + overlay noir) */
.spt-hero{
  position:relative;
  min-height:100vh;
  color:#fff;
  background: var(--spt-hero-img) center/cover no-repeat; /* lit l'image desktop depuis le HTML inline */
  display:flex; align-items:center;
  overflow:hidden;
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
.spt-hero::before{
  content:''; position:absolute; inset:0;
  background: rgba(0,0,0, var(--overlay-alpha, .72)); /* overlay noir basé sur la variable inline */
  z-index:1; pointer-events:none;
}

/* Layout */
.spt-hero__container{
  position:relative; z-index:2;
  width:100%; max-width:1400px; margin:0 auto; padding:0 22px;
}
.spt-hero__content{
  min-height:100vh;
  display:flex;
  align-items:flex-start;
  padding-top: clamp(120px, 18vh, 200px); /* descend TOUT le bloc (titre + texte + CTA + badges) */
}
.spt-hero__left{ max-width:1200px; }

/* Badge */
.spt-hero__badge{
  position:absolute; top: clamp(10px, 2vh, 18px); left:22px; z-index:3;
  display:inline-flex; align-items:center;
  background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(10px);
  border-radius:999px; padding:8px 14px;
  font-size:13px; font-weight:600; color:#fff;
}

/* Titre + sous-titre */
.spt-hero__title{
  font-size:clamp(40px,5vw,62px);
  line-height:1.08; font-weight:900;
  margin: 0 0 12px;
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}
.spt-hero__subtitle{
  margin-top: clamp(28px, 4vh, 60px);
  margin-bottom: 18px;
  max-width: 760px;
  font-size:20px; line-height:1.45; font-weight:500;
  color: rgba(255,255,255,.95);
}

/* Puces (✓) bordeaux */
.spt-hero__features{
  list-style:none; padding:0; margin: clamp(10px, 2vh, 20px) 0 0;
  display:grid; gap:12px;
}
.spt-hero__features li{
  position:relative; padding-left:32px; font-size:17px; font-weight:500; color:#fff;
}
.dot{
  position:absolute; left:0; top:.35em; width:18px; height:18px; border-radius:50%;
  background:var(--xi-bordeaux);
  box-shadow:0 0 0 3px rgba(255,255,255,.22);
}
.dot::after{
  content:'✓'; position:absolute; inset:0; display:grid; place-items:center;
  font-size:12px; font-weight:800; color:#fff;
}

/* CTA – 2 boutons */
.spt-hero__ctaRow{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  margin-top: clamp(26px, 5.5vh, 60px);
}
.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  height: 52px; padding: 0 28px;
  border-radius:12px; font-weight:800; font-size:16px; line-height:1;
  text-decoration:none; border:2px solid transparent; cursor:pointer;
  transition:transform .2s, box-shadow .25s, background .25s, color .25s, border-color .25s;
}
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background:#730020;
  color:#fff;
  border-color:#730020;
  box-shadow:0 8px 28px rgba(0,0,0,.30);
}
.spt-btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 36px rgba(0,0,0,.50);
}

/* Badges en bas */
.spt-hero__badges{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 16px; }
.spt-badge{
  color:#730020; background:#fff; border:1px solid rgba(115,0,32,.25);
  padding:8px 12px; border-radius: 999px; font-size:.88rem; line-height:1;
  backdrop-filter: blur(6px);
}

/* Particules (facultatif) */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:1; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background:rgba(255,255,255,.18); filter:blur(1px); animation:float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:10%; top:18%; animation-duration:9s; }
.spt-hero__particles span:nth-child(2){ left:24%; top:72%; animation-duration:11s; }
.spt-hero__particles span:nth-child(3){ right:14%; top:22%; animation-duration:10s; }
.spt-hero__particles span:nth-child(4){ right:6%; bottom:12%; animation-duration:12s; }
.spt-hero__particles span:nth-child(5){ left:46%; top:8%; animation-duration:13s; }
@keyframes float{ 0%{ transform:translateY(0); opacity:.8; } 50%{ transform:translateY(-8px); opacity:1; } 100%{ transform:translateY(0); opacity:.8; } }

/* Responsive */
@media (max-width: 720px){
  .spt-hero__badge{ left:18px; }
  .spt-hero__subtitle{ margin-top: 22px; }
  .spt-hero__ctaRow .spt-btn{ width:100%; }
}

/* ===== IMAGE MOBILE — Nutrition : on ne change que l'image ===== */
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
    background-position: center top; /* cadrage portrait recommandé */
  }
}

/* (Option : appliquer aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
  }
}
*/

/* ===== OVERLAY BEAUCOUP PLUS CLAIR — override l'inline avec !important =====
   (le HTML de la section nutrition met souvent --overlay-alpha:.72 ; on écrase ici) */
.spt-hero.spt-hero--nutrition{
  --overlay-alpha: .18 !important;   /* desktop très clair */
}
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .24 !important; /* tablette */
  }
}
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .50 !important; /* mobile */
  }
}

/* (Option : zéro overlay si besoin)
.spt-hero.spt-hero--nutrition{ --overlay-alpha: 0 !important; }
*/

/* =========================================================
   AJOUT : léger espace en bas sous les CTA (desktop + mobile)
   ========================================================= */

/* On décale très légèrement le bas du bloc (sans changer les tailles existantes) */
.spt-hero__content{
  padding-bottom: clamp(12px, 2vh, 20px);
}

@media (max-width: 767px){
  .spt-hero__content{
    padding-bottom: clamp(14px, 3vh, 22px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-12136a7 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide {
  --brand: #730020;
  --bg-chip: rgba(115, 0, 32, 0.08);
  --bd-chip: rgba(115, 0, 32, 0.18);
  --bg-quote: rgba(115, 0, 32, 0.06);
  margin: 28px 0;
  color: var(--brand);
  font-size: 16px;
  line-height: 1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn) {
  color: var(--brand);
  text-decoration: none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr 1fr;
  gap: 24px;
  align-items: start;
}

/* Colonne image : compacte */
.spt-coachwide__media {
  margin: 0;
  padding: 0;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 4/5;
  max-height: 460px;
}
.spt-coachwide__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Colonnes de contenu */
.spt-coachwide__content {
  display: grid;
  align-content: start;
  gap: 16px;
}
.spt-coachwide__header { display: grid; gap: 6px; }
.spt-coachwide__eyebrow {
  margin: 0;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.9;
}
.spt-coachwide__title {
  margin: 0;
  font-size: clamp(1.55rem, 2vw, 1.95rem);
  line-height: 1.1;
}
.spt-coachwide__role { margin: 0; opacity: 0.95; }

/* Chips */
.spt-coachwide__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.spt-coachwide .chip {
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.9rem;
  background: var(--bg-chip);
  border: 1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.95;
}
.spt-coachwide__list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 6px;
}
.spt-coachwide__list li::marker { color: var(--brand); }
.spt-coachwide__langs { margin: 0; }

/* Citation */
.spt-coachwide__quote {
  margin: 0;
  padding: 12px 14px;
  border-left: 3px solid var(--brand);
  border-radius: 8px;
  background: var(--bg-quote);
  font-style: italic;
  font-size: 0.98rem;
}

/* ===== BOUTON — compact, même taille de texte ===== */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited {
  /* compact mais texte inchangé */
  display: inline-flex;                 /* évite toute largeur forcée */
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: fit-content;                   /* shrink-to-fit, pas pleine largeur */
  max-width: 100%;
  white-space: nowrap;                  /* pas de retour à la ligne */
  padding: 8px 16px;                    /* ↓ hauteur du bouton */
  line-height: 1.1;                     /* ne change pas la taille de police */
  font-size: 1rem;                      /* même taille que le texte global */
  font-weight: 700;                     /* conserve le poids initial */
  border-radius: 12px;
  background: var(--brand);
  color: #fff !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
  transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
  align-self: start;                    /* empêche l’étirement en grid */
}
.spt-coachwide__btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
  color: #fff !important;
}
.spt-coachwide__btn:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(115, 0, 32, 0.35);
  color: #fff !important;
}
.spt-coachwide__btn:active { transform: translateY(0); }

/* Métadonnées */
.spt-coachwide__meta { display: grid; gap: 16px; }

/* Responsive */
@media (max-width: 1024px) {
  .spt-coachwide__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .spt-coachwide__grid { grid-template-columns: 1fr; gap: 18px; }
  .spt-coachwide__media { aspect-ratio: 1/1; max-height: 420px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f83d389 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;                 /* couleur principale */
  --bg-chip:rgba(115,0,32,.08);    /* fond des chips */
  --bd-chip:rgba(115,0,32,.18);    /* bord des chips */
  --bg-quote:rgba(115,0,32,.06);   /* fond des citations */
  margin:28px 0;
  color:var(--brand);              /* texte par défaut en #730020 */
  font-size:16px;
  line-height:1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn){
  color:var(--brand);
  text-decoration:none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr 1fr; /* image légèrement plus étroite */
  gap:24px;
  align-items:start;
}

/* Colonne image : compacte pour limiter le scroll */
.spt-coachwide__media{
  margin:0; padding:0;
  border-radius:16px; overflow:hidden;
  aspect-ratio:4/5;      /* plus court que 3/4 */
  max-height:460px;      /* borne la hauteur globale */
}
.spt-coachwide__media img{
  width:100%; height:100%;
  object-fit:cover; object-position:center top; display:block;
}

/* Colonnes de contenu : alignement et rythme vertical */
.spt-coachwide__content{ display:grid; align-content:start; gap:16px; }
.spt-coachwide__header{ display:grid; gap:6px; }
.spt-coachwide__eyebrow{
  margin:0; font-size:.78rem; letter-spacing:.08em;
  text-transform:uppercase; opacity:.9;
}
.spt-coachwide__title{
  margin:0; font-size:clamp(1.55rem,2vw,1.95rem); line-height:1.1;
}
.spt-coachwide__role{ margin:0; opacity:.95; }

/* Chips (mots-clés) */
.spt-coachwide__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.spt-coachwide .chip{
  display:inline-block;
  padding:6px 10px; border-radius:999px; font-size:.9rem;
  background:var(--bg-chip); border:1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3{
  margin:0 0 6px; font-size:1rem;
  text-transform:uppercase; letter-spacing:.04em; opacity:.95;
}
.spt-coachwide__list{ margin:0; padding-left:18px; display:grid; gap:6px; }
.spt-coachwide__list li::marker{ color:var(--brand); }
.spt-coachwide__langs{ margin:0; }

/* Citation */
.spt-coachwide__quote{
  margin:0; padding:12px 14px;
  border-left:3px solid var(--brand); border-radius:8px;
  background:var(--bg-quote); font-style:italic; font-size:.98rem;
}

/* Bouton : fond bordeaux + texte blanc (corrigé) */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited{
  display:inline-block; padding:12px 16px; border-radius:12px;
  font-weight:700; background:var(--brand);
  color:#fff !important; box-shadow:0 1px 0 rgba(0,0,0,.05);
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease;
}
.spt-coachwide__btn:hover{
  transform:translateY(-1px); filter:brightness(1.03);
  color:#fff !important;
}
.spt-coachwide__btn:focus-visible{
  outline:2px solid #fff; outline-offset:2px;
  box-shadow:0 0 0 3px rgba(115,0,32,.35);
  color:#fff !important;
}
.spt-coachwide__btn:active{ transform:translateY(0); }

/* Bloc diplômes/langues */
.spt-coachwide__meta{ display:grid; gap:16px; }

/* ===== Responsive ===== */
@media (max-width:1024px){
  .spt-coachwide__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
  .spt-coachwide__grid{ grid-template-columns:1fr; gap:18px; }
  .spt-coachwide__media{ aspect-ratio:1/1; max-height:420px; } /* portrait carré en mobile */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-19388c0 *//* =========================
   HERO — Nutrition (full bg + overlay noir + thème #730020)
   ========================= */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{
  --xi-bordeaux:#730020;
  --xi-white:#fff;
  --xi-ink:#2E333A;
}

/* Header au-dessus (WP/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }

/* Wrapper (image de fond + overlay noir) */
.spt-hero{
  position:relative;
  min-height:100vh;
  color:#fff;
  background: var(--spt-hero-img) center/cover no-repeat; /* lit l'image desktop depuis le HTML inline */
  display:flex; align-items:center;
  overflow:hidden;
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
.spt-hero::before{
  content:''; position:absolute; inset:0;
  background: rgba(0,0,0, var(--overlay-alpha, .72)); /* overlay noir basé sur la variable inline */
  z-index:1; pointer-events:none;
}

/* Layout */
.spt-hero__container{
  position:relative; z-index:2;
  width:100%; max-width:1400px; margin:0 auto; padding:0 22px;
}
.spt-hero__content{
  min-height:100vh;
  display:flex;
  align-items:flex-start;
  padding-top: clamp(120px, 18vh, 200px); /* descend TOUT le bloc (titre + texte + CTA + badges) */
}
.spt-hero__left{ max-width:1200px; }

/* Badge */
.spt-hero__badge{
  position:absolute; top: clamp(10px, 2vh, 18px); left:22px; z-index:3;
  display:inline-flex; align-items:center;
  background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(10px);
  border-radius:999px; padding:8px 14px;
  font-size:13px; font-weight:600; color:#fff;
}

/* Titre + sous-titre */
.spt-hero__title{
  font-size:clamp(40px,5vw,62px);
  line-height:1.08; font-weight:900;
  margin: 0 0 12px;
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}
.spt-hero__subtitle{
  margin-top: clamp(28px, 4vh, 60px);
  margin-bottom: 18px;
  max-width: 760px;
  font-size:20px; line-height:1.45; font-weight:500;
  color: rgba(255,255,255,.95);
}

/* Puces (✓) bordeaux */
.spt-hero__features{
  list-style:none; padding:0; margin: clamp(10px, 2vh, 20px) 0 0;
  display:grid; gap:12px;
}
.spt-hero__features li{
  position:relative; padding-left:32px; font-size:17px; font-weight:500; color:#fff;
}
.dot{
  position:absolute; left:0; top:.35em; width:18px; height:18px; border-radius:50%;
  background:var(--xi-bordeaux);
  box-shadow:0 0 0 3px rgba(255,255,255,.22);
}
.dot::after{
  content:'✓'; position:absolute; inset:0; display:grid; place-items:center;
  font-size:12px; font-weight:800; color:#fff;
}

/* CTA – 2 boutons */
.spt-hero__ctaRow{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  margin-top: clamp(26px, 5.5vh, 60px);
}
.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  height: 52px; padding: 0 28px;
  border-radius:12px; font-weight:800; font-size:16px; line-height:1;
  text-decoration:none; border:2px solid transparent; cursor:pointer;
  transition:transform .2s, box-shadow .25s, background .25s, color .25s, border-color .25s;
}
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background:#730020;
  color:#fff;
  border-color:#730020;
  box-shadow:0 8px 28px rgba(0,0,0,.30);
}
.spt-btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 36px rgba(0,0,0,.50);
}

/* Badges en bas */
.spt-hero__badges{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 16px; }
.spt-badge{
  color:#730020; background:#fff; border:1px solid rgba(115,0,32,.25);
  padding:8px 12px; border-radius: 999px; font-size:.88rem; line-height:1;
  backdrop-filter: blur(6px);
}

/* Particules (facultatif) */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:1; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background:rgba(255,255,255,.18); filter:blur(1px); animation:float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:10%; top:18%; animation-duration:9s; }
.spt-hero__particles span:nth-child(2){ left:24%; top:72%; animation-duration:11s; }
.spt-hero__particles span:nth-child(3){ right:14%; top:22%; animation-duration:10s; }
.spt-hero__particles span:nth-child(4){ right:6%; bottom:12%; animation-duration:12s; }
.spt-hero__particles span:nth-child(5){ left:46%; top:8%; animation-duration:13s; }
@keyframes float{ 0%{ transform:translateY(0); opacity:.8; } 50%{ transform:translateY(-8px); opacity:1; } 100%{ transform:translateY(0); opacity:.8; } }

/* Responsive */
@media (max-width: 720px){
  .spt-hero__badge{ left:18px; }
  .spt-hero__subtitle{ margin-top: 22px; }
  .spt-hero__ctaRow .spt-btn{ width:100%; }
}

/* ===== IMAGE MOBILE — Nutrition : on ne change que l'image ===== */
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
    background-position: center top; /* cadrage portrait recommandé */
  }
}

/* (Option : appliquer aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --spt-hero-img: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_166-400x400__MOBILE_1024x1536.webp') !important;
  }
}
*/

/* ===== OVERLAY BEAUCOUP PLUS CLAIR — override l'inline avec !important =====
   (le HTML de la section nutrition met souvent --overlay-alpha:.72 ; on écrase ici) */
.spt-hero.spt-hero--nutrition{
  --overlay-alpha: .18 !important;   /* desktop très clair */
}
@media (max-width: 1024px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .24 !important; /* tablette */
  }
}
@media (max-width: 767px){
  .spt-hero.spt-hero--nutrition{
    --overlay-alpha: .50 !important; /* mobile */
  }
}

/* (Option : zéro overlay si besoin)
.spt-hero.spt-hero--nutrition{ --overlay-alpha: 0 !important; }
*/

/* =========================================================
   AJOUT : léger espace en bas sous les CTA (desktop + mobile)
   ========================================================= */

/* On décale très légèrement le bas du bloc (sans changer les tailles existantes) */
.spt-hero__content{
  padding-bottom: clamp(12px, 2vh, 20px);
}

@media (max-width: 767px){
  .spt-hero__content{
    padding-bottom: clamp(14px, 3vh, 22px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-12136a7 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide {
  --brand: #730020;
  --bg-chip: rgba(115, 0, 32, 0.08);
  --bd-chip: rgba(115, 0, 32, 0.18);
  --bg-quote: rgba(115, 0, 32, 0.06);
  margin: 28px 0;
  color: var(--brand);
  font-size: 16px;
  line-height: 1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn) {
  color: var(--brand);
  text-decoration: none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr 1fr;
  gap: 24px;
  align-items: start;
}

/* Colonne image : compacte */
.spt-coachwide__media {
  margin: 0;
  padding: 0;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 4/5;
  max-height: 460px;
}
.spt-coachwide__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* Colonnes de contenu */
.spt-coachwide__content {
  display: grid;
  align-content: start;
  gap: 16px;
}
.spt-coachwide__header { display: grid; gap: 6px; }
.spt-coachwide__eyebrow {
  margin: 0;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.9;
}
.spt-coachwide__title {
  margin: 0;
  font-size: clamp(1.55rem, 2vw, 1.95rem);
  line-height: 1.1;
}
.spt-coachwide__role { margin: 0; opacity: 0.95; }

/* Chips */
.spt-coachwide__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.spt-coachwide .chip {
  display: inline-block;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.9rem;
  background: var(--bg-chip);
  border: 1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.95;
}
.spt-coachwide__list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 6px;
}
.spt-coachwide__list li::marker { color: var(--brand); }
.spt-coachwide__langs { margin: 0; }

/* Citation */
.spt-coachwide__quote {
  margin: 0;
  padding: 12px 14px;
  border-left: 3px solid var(--brand);
  border-radius: 8px;
  background: var(--bg-quote);
  font-style: italic;
  font-size: 0.98rem;
}

/* ===== BOUTON — compact, même taille de texte ===== */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited {
  /* compact mais texte inchangé */
  display: inline-flex;                 /* évite toute largeur forcée */
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: fit-content;                   /* shrink-to-fit, pas pleine largeur */
  max-width: 100%;
  white-space: nowrap;                  /* pas de retour à la ligne */
  padding: 8px 16px;                    /* ↓ hauteur du bouton */
  line-height: 1.1;                     /* ne change pas la taille de police */
  font-size: 1rem;                      /* même taille que le texte global */
  font-weight: 700;                     /* conserve le poids initial */
  border-radius: 12px;
  background: var(--brand);
  color: #fff !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
  transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;
  align-self: start;                    /* empêche l’étirement en grid */
}
.spt-coachwide__btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
  color: #fff !important;
}
.spt-coachwide__btn:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(115, 0, 32, 0.35);
  color: #fff !important;
}
.spt-coachwide__btn:active { transform: translateY(0); }

/* Métadonnées */
.spt-coachwide__meta { display: grid; gap: 16px; }

/* Responsive */
@media (max-width: 1024px) {
  .spt-coachwide__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .spt-coachwide__grid { grid-template-columns: 1fr; gap: 18px; }
  .spt-coachwide__media { aspect-ratio: 1/1; max-height: 420px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f83d389 *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;                 /* couleur principale */
  --bg-chip:rgba(115,0,32,.08);    /* fond des chips */
  --bd-chip:rgba(115,0,32,.18);    /* bord des chips */
  --bg-quote:rgba(115,0,32,.06);   /* fond des citations */
  margin:28px 0;
  color:var(--brand);              /* texte par défaut en #730020 */
  font-size:16px;
  line-height:1.5;
}

/* Liens standards (pas le bouton) */
.spt-coachwide a:not(.spt-coachwide__btn){
  color:var(--brand);
  text-decoration:none;
}

/* Grille 3 colonnes (image | contenu | meta) */
.spt-coachwide__grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr 1fr; /* image légèrement plus étroite */
  gap:24px;
  align-items:start;
}

/* Colonne image : compacte pour limiter le scroll */
.spt-coachwide__media{
  margin:0; padding:0;
  border-radius:16px; overflow:hidden;
  aspect-ratio:4/5;      /* plus court que 3/4 */
  max-height:460px;      /* borne la hauteur globale */
}
.spt-coachwide__media img{
  width:100%; height:100%;
  object-fit:cover; object-position:center top; display:block;
}

/* Colonnes de contenu : alignement et rythme vertical */
.spt-coachwide__content{ display:grid; align-content:start; gap:16px; }
.spt-coachwide__header{ display:grid; gap:6px; }
.spt-coachwide__eyebrow{
  margin:0; font-size:.78rem; letter-spacing:.08em;
  text-transform:uppercase; opacity:.9;
}
.spt-coachwide__title{
  margin:0; font-size:clamp(1.55rem,2vw,1.95rem); line-height:1.1;
}
.spt-coachwide__role{ margin:0; opacity:.95; }

/* Chips (mots-clés) */
.spt-coachwide__chips{ display:flex; flex-wrap:wrap; gap:8px; }
.spt-coachwide .chip{
  display:inline-block;
  padding:6px 10px; border-radius:999px; font-size:.9rem;
  background:var(--bg-chip); border:1px solid var(--bd-chip);
}

/* Sous-titres & listes */
.spt-coachwide__h3{
  margin:0 0 6px; font-size:1rem;
  text-transform:uppercase; letter-spacing:.04em; opacity:.95;
}
.spt-coachwide__list{ margin:0; padding-left:18px; display:grid; gap:6px; }
.spt-coachwide__list li::marker{ color:var(--brand); }
.spt-coachwide__langs{ margin:0; }

/* Citation */
.spt-coachwide__quote{
  margin:0; padding:12px 14px;
  border-left:3px solid var(--brand); border-radius:8px;
  background:var(--bg-quote); font-style:italic; font-size:.98rem;
}

/* Bouton : fond bordeaux + texte blanc (corrigé) */
.spt-coachwide__btn,
.spt-coachwide__btn:link,
.spt-coachwide__btn:visited{
  display:inline-block; padding:12px 16px; border-radius:12px;
  font-weight:700; background:var(--brand);
  color:#fff !important; box-shadow:0 1px 0 rgba(0,0,0,.05);
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease;
}
.spt-coachwide__btn:hover{
  transform:translateY(-1px); filter:brightness(1.03);
  color:#fff !important;
}
.spt-coachwide__btn:focus-visible{
  outline:2px solid #fff; outline-offset:2px;
  box-shadow:0 0 0 3px rgba(115,0,32,.35);
  color:#fff !important;
}
.spt-coachwide__btn:active{ transform:translateY(0); }

/* Bloc diplômes/langues */
.spt-coachwide__meta{ display:grid; gap:16px; }

/* ===== Responsive ===== */
@media (max-width:1024px){
  .spt-coachwide__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
  .spt-coachwide__grid{ grid-template-columns:1fr; gap:18px; }
  .spt-coachwide__media{ aspect-ratio:1/1; max-height:420px; } /* portrait carré en mobile */
}/* End custom CSS */