.elementor-11527 .elementor-element.elementor-element-1b963b0{--display:flex;--justify-content:space-around;--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-11527 .elementor-element.elementor-element-b2f2cb7 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-fc0da3f{--display:flex;}.elementor-11527 .elementor-element.elementor-element-8368d59{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-11527 .elementor-element.elementor-element-8368d59 .elementor-divider-separator{width:100%;}.elementor-11527 .elementor-element.elementor-element-8368d59 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-11527 .elementor-element.elementor-element-8cc6e53{--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-11527 .elementor-element.elementor-element-8cc6e53::before, .elementor-11527 .elementor-element.elementor-element-8cc6e53 > .elementor-background-video-container::before, .elementor-11527 .elementor-element.elementor-element-8cc6e53 > .e-con-inner > .elementor-background-video-container::before, .elementor-11527 .elementor-element.elementor-element-8cc6e53 > .elementor-background-slideshow::before, .elementor-11527 .elementor-element.elementor-element-8cc6e53 > .e-con-inner > .elementor-background-slideshow::before, .elementor-11527 .elementor-element.elementor-element-8cc6e53 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-11527 .elementor-element.elementor-element-d294364{--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-11527 .elementor-element.elementor-element-9459559{text-align:center;}.elementor-11527 .elementor-element.elementor-element-9459559 .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-11527 .elementor-element.elementor-element-6a33045{--spacer-size:11px;}.elementor-11527 .elementor-element.elementor-element-1b26dbc > .elementor-widget-container{margin:0% 0% 0% 0%;padding:0px 0px 22px 0px;}.elementor-11527 .elementor-element.elementor-element-1b26dbc{text-align:center;}.elementor-11527 .elementor-element.elementor-element-1b26dbc .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-11527 .elementor-element.elementor-element-8efa599{--display:flex;}.elementor-11527 .elementor-element.elementor-element-7b435d5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-9320742{--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-11527 .elementor-element.elementor-element-2ac35ae > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-f79e8ff{--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-11527 .elementor-element.elementor-element-c5ef673 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-6907aae{--display:flex;}.elementor-11527 .elementor-element.elementor-element-2394e0b{width:var( --container-widget-width, 99.038% );max-width:99.038%;--container-widget-width:99.038%;--container-widget-flex-grow:0;text-align:left;}.elementor-11527 .elementor-element.elementor-element-2394e0b > .elementor-widget-container{margin:0% 0% 0% 0%;padding:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-2394e0b.elementor-element{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-11527 .elementor-element.elementor-element-2394e0b .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:3.2vw;font-weight:500;text-transform:none;font-style:normal;text-decoration:none;line-height:1.1em;letter-spacing:-2px;word-spacing:0em;color:var( --e-global-color-4dcccda );}.elementor-11527 .elementor-element.elementor-element-1373142{--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-11527 .elementor-element.elementor-element-1373142:not(.elementor-motion-effects-element-type-background), .elementor-11527 .elementor-element.elementor-element-1373142 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7;}.elementor-11527 .elementor-element.elementor-element-3871c61{--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-11527 .elementor-element.elementor-element-3871c61.e-con{--align-self:flex-start;}.elementor-11527 .elementor-element.elementor-element-f553bfb > .elementor-widget-container{margin:0% 6% 0% 2%;padding:0% 0% 0% 0%;}.elementor-11527 .elementor-element.elementor-element-f553bfb{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-11527 .elementor-element.elementor-element-0d0d4f8 .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-11527 .elementor-element.elementor-element-0d0d4f8 .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:#00000038;}.elementor-11527 .elementor-element.elementor-element-0d0d4f8{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-11527 .elementor-element.elementor-element-1b5ed80 .elementor-repeater-item-0b0a661.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-11527 .elementor-element.elementor-element-1707df6 > .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-11527 .elementor-element.elementor-element-1707df6 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-018604f .elementor-repeater-item-5f830f3.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-11527 .elementor-element.elementor-element-dc33635{text-align:left;}.elementor-11527 .elementor-element.elementor-element-dc33635 .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:60px;font-weight:500;text-transform:uppercase;color:#730020;}.elementor-11527 .elementor-element.elementor-element-dc33635 .elementor-heading-title a:hover, .elementor-11527 .elementor-element.elementor-element-dc33635 .elementor-heading-title a:focus{color:#730020;}.elementor-11527 .elementor-element.elementor-element-49b6a3c{--spacer-size:51px;}.elementor-11527 .elementor-element.elementor-element-7636c7c .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-11527 .elementor-element.elementor-element-7636c7c .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control{background-color:#ffffff;justify-content:flex-start;padding:11px 20px 12px 22px;}.elementor-11527 .elementor-element.elementor-element-7636c7c .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control:hover{background-color:#730020;}.elementor-11527 .elementor-element.elementor-element-7636c7c .jet-accordion > .jet-accordion__inner > .jet-toggle.active-toggle > .jet-toggle__control{background-color:#730020;}.elementor-11527 .elementor-element.elementor-element-7636c7c .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__content{background-color:rgba(0,0,0,0);margin:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-7636c7c > .elementor-widget-container{margin:0% 0% 0% 0%;}.elementor-11527 .elementor-element.elementor-element-7636c7c .jet-accordion{border-radius:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-7636c7c .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control .jet-toggle__label-icon{margin:0px 20px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-7636c7c .jet-toggle__label-text{text-align:left;}.elementor-11527 .elementor-element.elementor-element-7636c7c .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-11527 .elementor-element.elementor-element-7636c7c .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-11527 .elementor-element.elementor-element-7636c7c .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__control:hover .jet-toggle__label-text{color:#ffffff;}.elementor-11527 .elementor-element.elementor-element-7636c7c .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-11527 .elementor-element.elementor-element-7636c7c .jet-accordion > .jet-accordion__inner > .jet-toggle.active-toggle > .jet-toggle__control .jet-toggle__label-text{color:#FFFFFF;}.elementor-11527 .elementor-element.elementor-element-7636c7c .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-11527 .elementor-element.elementor-element-7636c7c .jet-accordion > .jet-accordion__inner > .jet-toggle > .jet-toggle__content > .jet-toggle__content-inner{padding:22px 15px 13px 26px;}.elementor-11527 .elementor-element.elementor-element-018604f{margin-top:0px;margin-bottom:0px;padding:96px 0px 104px 0px;}.elementor-11527 .elementor-element.elementor-element-cc82405{--display:flex;}.elementor-11527 .elementor-element.elementor-element-cf0128c{--divider-border-style:solid;--divider-color:var( --e-global-color-4dcccda );--divider-border-width:4.7px;}.elementor-11527 .elementor-element.elementor-element-cf0128c .elementor-divider-separator{width:100%;}.elementor-11527 .elementor-element.elementor-element-cf0128c .elementor-divider{padding-block-start:15px;padding-block-end:15px;}@media(min-width:768px){.elementor-11527 .elementor-element.elementor-element-8cc6e53{--content-width:1200px;}.elementor-11527 .elementor-element.elementor-element-3871c61{--width:53%;}}@media(max-width:1024px) and (min-width:768px){.elementor-11527 .elementor-element.elementor-element-3871c61{--width:100%;}}@media(max-width:1024px){.elementor-11527 .elementor-element.elementor-element-d294364{--padding-top:68px;--padding-bottom:0px;--padding-left:54px;--padding-right:0px;}.elementor-11527 .elementor-element.elementor-element-1b26dbc .elementor-heading-title{font-size:43px;}.elementor-11527 .elementor-element.elementor-element-2394e0b{text-align:center;}.elementor-11527 .elementor-element.elementor-element-2394e0b .elementor-heading-title{font-size:50px;}.elementor-11527 .elementor-element.elementor-element-1373142{--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-11527 .elementor-element.elementor-element-3871c61{--padding-top:0%;--padding-bottom:0%;--padding-left:10%;--padding-right:10%;}.elementor-11527 .elementor-element.elementor-element-f553bfb{text-align:center;font-size:18px;line-height:1.5em;}.elementor-11527 .elementor-element.elementor-element-0d0d4f8{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-11527 .elementor-element.elementor-element-49b6a3c{--spacer-size:25px;}.elementor-11527 .elementor-element.elementor-element-7636c7c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-018604f{padding:40px 0px 40px 0px;}}@media(max-width:767px){.elementor-11527 .elementor-element.elementor-element-d294364{--width:100%;--padding-top:15px;--padding-bottom:15px;--padding-left:0px;--padding-right:0px;}.elementor-11527 .elementor-element.elementor-element-9459559 .elementor-heading-title{font-size:16px;}.elementor-11527 .elementor-element.elementor-element-1b26dbc > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-11527 .elementor-element.elementor-element-f79e8ff{--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-11527 .elementor-element.elementor-element-2394e0b .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-11527 .elementor-element.elementor-element-1373142{--padding-top:15%;--padding-bottom:15%;--padding-left:5%;--padding-right:5%;}.elementor-11527 .elementor-element.elementor-element-3871c61{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11527 .elementor-element.elementor-element-f553bfb{text-align:left;font-size:16px;}.elementor-11527 .elementor-element.elementor-element-dc33635 .elementor-heading-title{font-size:36px;}.elementor-11527 .elementor-element.elementor-element-49b6a3c{--spacer-size:20px;}.elementor-11527 .elementor-element.elementor-element-018604f{padding:30px 0px 30px 0px;}}/* Start custom CSS for html, class: .elementor-element-b2f2cb7 *//* =========================================================
   HERO — FULL BACKGROUND + OVERLAY NOIR + THEME #730020
   (Aligné GAUCHE sur toutes tailles)
   ========================================================= */

/* Police + utilitaire */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
.nowrap{ white-space: nowrap; }

/* Header au-dessus du hero (WordPress/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }
body.admin-bar .elementor-location-header.elementor-sticky--active{ top:32px; }

/* === VARIABLES SCOPÉES AU HERO === */
.spt-hero{
  --spt-bg: #730020;
  --spt-overlay: rgba(0,0,0,.45); /* desktop par défaut */
  --spt-primary: #730020;
  --spt-text: #ffffff;
  --spt-muted: rgba(255,255,255,.88);
  --spt-card: rgba(255,255,255,.06);
  --spt-ring: rgba(255,255,255,.38);
  --spt-radius: 18px;
  --spt-shadow: 0 10px 30px rgba(0,0,0,.35);
  --spt-container: 1400px;
}

/* === WRAPPER === */
.spt-hero{
  position: relative;
  isolation: isolate;
  color: var(--spt-text);
  min-height: 100vh;
  display: flex; align-items: center;
  padding: clamp(48px, 6vw, 92px) 24px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* === BACKGROUND FULL COVER + OVERLAY NOIR === */
.spt-hero__bg{
  position: absolute; inset: 0;
  z-index: -2; pointer-events: none;
  background:
    url('https://swiss-personal-training.ch/wp-content/uploads/2024/09/swiss-personal-training-mobile-1.webp')
    center center / cover no-repeat;
}
.spt-hero::before{
  content:""; position:absolute; inset:0;
  background: var(--spt-overlay);
  z-index:-1; pointer-events:none;
}

/* === LAYOUT === */
.spt-hero__container{
  position: relative; z-index: 1;
  width: 100%; max-width: var(--spt-container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  min-height: 80vh;
  padding-top: 6vh;
  text-align: left;                  /* ← alignement GAUCHE par défaut */
}

/* Sur mobile: 1 colonne mais on RESTE à gauche */
@media (max-width: 1024px){
  .spt-hero__container{
    grid-template-columns: 1fr;
    gap: 56px;
    text-align: left !important;     /* ← empêche le centrage */
    min-height: auto;
    padding-top: 0;
  }
}

/* === COLONNE TEXTE (gauche) === */
.spt-hero__content{ animation: spt-slide-left .9s ease-out both; }

.spt-hero__eyebrow{
  display:inline-flex; align-items:center;
  font-size:14px; font-weight:600; letter-spacing:.02em;
  background: rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
  color:#fff; padding:8px 16px; border-radius:999px;
  margin-bottom:20px;
}

.spt-hero__title{
  margin: 0 0 18px;
  font-size: clamp(42px, 5vw, 64px);
  line-height: 1.1; font-weight: 900;
  text-shadow: 0 3px 14px rgba(0,0,0,.35);
  color:#fff;
}

.spt-hero__subtitle{
  color: var(--spt-muted);
  font-size: 20px; line-height: 1.5;
  max-width: 560px; margin: 0 0 24px 0;
}
.spt-hero__subtitle strong{ font-weight:800; }

/* === PUCES (✓) en #730020 — alignées à gauche === */
.spt-hero__bullets{
  list-style: none; padding:0; margin: 0 0 32px 0;
  display:flex; flex-direction:column; gap:12px;
  align-items: flex-start;                /* ← clé */
}
.spt-hero__bullets li{
  position: relative; padding-left: 30px;
  font-size: 18px; font-weight: 500; color:#fff;
  text-align: left; align-items: flex-start;
}
.spt-hero__bullets li::before{
  content:'✓';
  position:absolute; left:0; top:.14em;
  width:22px; height:22px; border-radius:50%;
  display:grid; place-items:center;
  background: var(--spt-primary); color:#fff;
  font-size:13px; font-weight:700;
  box-shadow: 0 0 0 2px rgba(255,255,255,.85), 0 2px 6px rgba(0,0,0,.18);
}

/* === CTAs — à gauche === */
.spt-hero__cta{
  display:flex; flex-wrap:wrap; gap:12px; margin: 6px 0 28px;
  justify-content: flex-start;            /* ← clé */
}

.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 14px 26px;
  border-radius: 12px;
  font-weight: 700; font-size: 16px;
  text-decoration: none; cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, color .25s, background .25s, border-color .25s ease;
  border: 2px solid transparent;
}
.spt-btn::before{ content:none; }

/* Bouton principal — #730020 plein */
.spt-btn--primary{
  background: var(--spt-primary);
  color:#fff;
  border-color: var(--spt-primary);
  box-shadow: 0 8px 30px rgba(0,0,0,.35);
}
.spt-btn--primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 38px rgba(0,0,0,.5);
}

/* Bouton secondaire (ghost) — fond blanc + texte #730020 */
.spt-btn--ghost{
  background:#fff;
  color: var(--spt-primary);
  border-color:#fff;
}
.spt-btn--ghost:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
}

/* === BADGES — à gauche === */
.spt-hero__badges{
  display:flex; flex-wrap:wrap; gap:10px;
  justify-content: flex-start;            /* ← clé */
}
.spt-badge{
  color: var(--spt-primary);
  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);
}

/* === COLONNE VISUEL — masquée === */
.spt-hero__visual{ display:none; }
.spt-hero__card, .spt-hero__img, .spt-hero__tag{ display:none; }

/* === PARTICULES === */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:0; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background: rgba(255,255,255,.28); filter: blur(1px); opacity:.8;
  animation: float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:12%; top:18%; animation-duration: 9s; }
.spt-hero__particles span:nth-child(2){ left:26%; 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; }

/* === Animations === */
@keyframes spt-slide-left{ from{opacity:0; transform:translateX(-50px)} to{opacity:1; transform:translateX(0)} }
@keyframes float{
  0%{ transform: translateY(0); opacity:.85; }
  50%{ transform: translateY(-8px); opacity:1; }
  100%{ transform: translateY(0); opacity:.85; }
}

/* === Responsive affinement === */
@media (max-width: 1200px){
  .spt-hero__container{ gap:64px; }
  .spt-hero__subtitle{ max-width:520px; }
}
@media (max-width: 1024px){
  .spt-hero__subtitle{ max-width:none; }
  .spt-hero__bullets{ align-items: flex-start !important; } /* ← puces gauche */
}

/* === Mobile : min-height 100svh et overlay plus clair === */
@supports (height: 100svh){
  .spt-hero{ min-height: 100svh; }
}

@media (max-width: 768px){
  /* baisse l’opacité de l’overlay sur mobile */
  .spt-hero{ --spt-overlay: rgba(0,0,0,.30); }

  .spt-hero__title{ font-size: 36px; }
  .spt-hero__subtitle{ font-size: 18px; }
  .spt-btn{ font-size:16px; padding: 13px 22px; }

  /* Particules un peu adoucies */
  .spt-hero__particles{ opacity:.18; }
}

@media (max-width: 480px){
  .spt-hero__bullets li{ font-size:16px; }
  .spt-hero__eyebrow{ font-size:13px; }
}

/* Très petits téléphones : encore un peu plus clair */
@media (max-width: 390px){
  .spt-hero{ --spt-overlay: rgba(0,0,0,.42); }
}

/* === Fix marges Elementor (si nécessaire) === */
.elementor .spt-hero{ padding-left: min(24px, 4vw); padding-right: min(24px, 4vw); }

/* === CTA "Commencer une séance" : texte blanc, aucun overlay === */
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* texte BLANC */
  border-color: var(--spt-primary, #730020) !important;
  text-shadow: none !important;
}

/* supprime toute lueur/shine éventuellement héritée */
.spt-btn--primary::before{ display: none !important; }

/* pas de changement de couleur au hover/focus/active */
.spt-btn--primary:hover,
.spt-btn--primary:focus,
.spt-btn--primary:active{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* reste BLANC */
  border-color: var(--spt-primary, #730020) !important;
  transform: none !important;             /* optionnel : pas d’élévation */
  box-shadow: 0 8px 30px rgba(0,0,0,.35); /* garde une ombre discrète */
}

/* accessibilité : halo de focus discret (peut être retiré si non souhaité) */
.spt-btn--primary:focus-visible{
  outline: 2px solid #fff;
  outline-offset: 2px;
}

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

/* (Option : utiliser aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero .spt-hero__bg{
    background-image: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_99-1__MOBILE_1024x1536.webp') !important;
  }
}
*//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7b435d5 *//* ===== 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-2ac35ae *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;
  --bg-chip:rgba(115,0,32,.08);
  --bd-chip:rgba(115,0,32,.18);
  --bg-quote:rgba(115,0,32,.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:.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:.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 */
.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 bordeaux + texte blanc (tous états) */
.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); }

/* 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-c5ef673 *//* ===== 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-b2f2cb7 *//* =========================================================
   HERO — FULL BACKGROUND + OVERLAY NOIR + THEME #730020
   (Aligné GAUCHE sur toutes tailles)
   ========================================================= */

/* Police + utilitaire */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
.nowrap{ white-space: nowrap; }

/* Header au-dessus du hero (WordPress/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }
body.admin-bar .elementor-location-header.elementor-sticky--active{ top:32px; }

/* === VARIABLES SCOPÉES AU HERO === */
.spt-hero{
  --spt-bg: #730020;
  --spt-overlay: rgba(0,0,0,.45); /* desktop par défaut */
  --spt-primary: #730020;
  --spt-text: #ffffff;
  --spt-muted: rgba(255,255,255,.88);
  --spt-card: rgba(255,255,255,.06);
  --spt-ring: rgba(255,255,255,.38);
  --spt-radius: 18px;
  --spt-shadow: 0 10px 30px rgba(0,0,0,.35);
  --spt-container: 1400px;
}

/* === WRAPPER === */
.spt-hero{
  position: relative;
  isolation: isolate;
  color: var(--spt-text);
  min-height: 100vh;
  display: flex; align-items: center;
  padding: clamp(48px, 6vw, 92px) 24px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* === BACKGROUND FULL COVER + OVERLAY NOIR === */
.spt-hero__bg{
  position: absolute; inset: 0;
  z-index: -2; pointer-events: none;
  background:
    url('https://swiss-personal-training.ch/wp-content/uploads/2024/09/swiss-personal-training-mobile-1.webp')
    center center / cover no-repeat;
}
.spt-hero::before{
  content:""; position:absolute; inset:0;
  background: var(--spt-overlay);
  z-index:-1; pointer-events:none;
}

/* === LAYOUT === */
.spt-hero__container{
  position: relative; z-index: 1;
  width: 100%; max-width: var(--spt-container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  min-height: 80vh;
  padding-top: 6vh;
  text-align: left;                  /* ← alignement GAUCHE par défaut */
}

/* Sur mobile: 1 colonne mais on RESTE à gauche */
@media (max-width: 1024px){
  .spt-hero__container{
    grid-template-columns: 1fr;
    gap: 56px;
    text-align: left !important;     /* ← empêche le centrage */
    min-height: auto;
    padding-top: 0;
  }
}

/* === COLONNE TEXTE (gauche) === */
.spt-hero__content{ animation: spt-slide-left .9s ease-out both; }

.spt-hero__eyebrow{
  display:inline-flex; align-items:center;
  font-size:14px; font-weight:600; letter-spacing:.02em;
  background: rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
  color:#fff; padding:8px 16px; border-radius:999px;
  margin-bottom:20px;
}

.spt-hero__title{
  margin: 0 0 18px;
  font-size: clamp(42px, 5vw, 64px);
  line-height: 1.1; font-weight: 900;
  text-shadow: 0 3px 14px rgba(0,0,0,.35);
  color:#fff;
}

.spt-hero__subtitle{
  color: var(--spt-muted);
  font-size: 20px; line-height: 1.5;
  max-width: 560px; margin: 0 0 24px 0;
}
.spt-hero__subtitle strong{ font-weight:800; }

/* === PUCES (✓) en #730020 — alignées à gauche === */
.spt-hero__bullets{
  list-style: none; padding:0; margin: 0 0 32px 0;
  display:flex; flex-direction:column; gap:12px;
  align-items: flex-start;                /* ← clé */
}
.spt-hero__bullets li{
  position: relative; padding-left: 30px;
  font-size: 18px; font-weight: 500; color:#fff;
  text-align: left; align-items: flex-start;
}
.spt-hero__bullets li::before{
  content:'✓';
  position:absolute; left:0; top:.14em;
  width:22px; height:22px; border-radius:50%;
  display:grid; place-items:center;
  background: var(--spt-primary); color:#fff;
  font-size:13px; font-weight:700;
  box-shadow: 0 0 0 2px rgba(255,255,255,.85), 0 2px 6px rgba(0,0,0,.18);
}

/* === CTAs — à gauche === */
.spt-hero__cta{
  display:flex; flex-wrap:wrap; gap:12px; margin: 6px 0 28px;
  justify-content: flex-start;            /* ← clé */
}

.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 14px 26px;
  border-radius: 12px;
  font-weight: 700; font-size: 16px;
  text-decoration: none; cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, color .25s, background .25s, border-color .25s ease;
  border: 2px solid transparent;
}
.spt-btn::before{ content:none; }

/* Bouton principal — #730020 plein */
.spt-btn--primary{
  background: var(--spt-primary);
  color:#fff;
  border-color: var(--spt-primary);
  box-shadow: 0 8px 30px rgba(0,0,0,.35);
}
.spt-btn--primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 38px rgba(0,0,0,.5);
}

/* Bouton secondaire (ghost) — fond blanc + texte #730020 */
.spt-btn--ghost{
  background:#fff;
  color: var(--spt-primary);
  border-color:#fff;
}
.spt-btn--ghost:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
}

/* === BADGES — à gauche === */
.spt-hero__badges{
  display:flex; flex-wrap:wrap; gap:10px;
  justify-content: flex-start;            /* ← clé */
}
.spt-badge{
  color: var(--spt-primary);
  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);
}

/* === COLONNE VISUEL — masquée === */
.spt-hero__visual{ display:none; }
.spt-hero__card, .spt-hero__img, .spt-hero__tag{ display:none; }

/* === PARTICULES === */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:0; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background: rgba(255,255,255,.28); filter: blur(1px); opacity:.8;
  animation: float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:12%; top:18%; animation-duration: 9s; }
.spt-hero__particles span:nth-child(2){ left:26%; 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; }

/* === Animations === */
@keyframes spt-slide-left{ from{opacity:0; transform:translateX(-50px)} to{opacity:1; transform:translateX(0)} }
@keyframes float{
  0%{ transform: translateY(0); opacity:.85; }
  50%{ transform: translateY(-8px); opacity:1; }
  100%{ transform: translateY(0); opacity:.85; }
}

/* === Responsive affinement === */
@media (max-width: 1200px){
  .spt-hero__container{ gap:64px; }
  .spt-hero__subtitle{ max-width:520px; }
}
@media (max-width: 1024px){
  .spt-hero__subtitle{ max-width:none; }
  .spt-hero__bullets{ align-items: flex-start !important; } /* ← puces gauche */
}

/* === Mobile : min-height 100svh et overlay plus clair === */
@supports (height: 100svh){
  .spt-hero{ min-height: 100svh; }
}

@media (max-width: 768px){
  /* baisse l’opacité de l’overlay sur mobile */
  .spt-hero{ --spt-overlay: rgba(0,0,0,.30); }

  .spt-hero__title{ font-size: 36px; }
  .spt-hero__subtitle{ font-size: 18px; }
  .spt-btn{ font-size:16px; padding: 13px 22px; }

  /* Particules un peu adoucies */
  .spt-hero__particles{ opacity:.18; }
}

@media (max-width: 480px){
  .spt-hero__bullets li{ font-size:16px; }
  .spt-hero__eyebrow{ font-size:13px; }
}

/* Très petits téléphones : encore un peu plus clair */
@media (max-width: 390px){
  .spt-hero{ --spt-overlay: rgba(0,0,0,.42); }
}

/* === Fix marges Elementor (si nécessaire) === */
.elementor .spt-hero{ padding-left: min(24px, 4vw); padding-right: min(24px, 4vw); }

/* === CTA "Commencer une séance" : texte blanc, aucun overlay === */
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* texte BLANC */
  border-color: var(--spt-primary, #730020) !important;
  text-shadow: none !important;
}

/* supprime toute lueur/shine éventuellement héritée */
.spt-btn--primary::before{ display: none !important; }

/* pas de changement de couleur au hover/focus/active */
.spt-btn--primary:hover,
.spt-btn--primary:focus,
.spt-btn--primary:active{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* reste BLANC */
  border-color: var(--spt-primary, #730020) !important;
  transform: none !important;             /* optionnel : pas d’élévation */
  box-shadow: 0 8px 30px rgba(0,0,0,.35); /* garde une ombre discrète */
}

/* accessibilité : halo de focus discret (peut être retiré si non souhaité) */
.spt-btn--primary:focus-visible{
  outline: 2px solid #fff;
  outline-offset: 2px;
}

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

/* (Option : utiliser aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero .spt-hero__bg{
    background-image: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_99-1__MOBILE_1024x1536.webp') !important;
  }
}
*//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7b435d5 *//* ===== 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-2ac35ae *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;
  --bg-chip:rgba(115,0,32,.08);
  --bd-chip:rgba(115,0,32,.18);
  --bg-quote:rgba(115,0,32,.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:.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:.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 */
.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 bordeaux + texte blanc (tous états) */
.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); }

/* 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-c5ef673 *//* ===== 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-b2f2cb7 *//* =========================================================
   HERO — FULL BACKGROUND + OVERLAY NOIR + THEME #730020
   (Aligné GAUCHE sur toutes tailles)
   ========================================================= */

/* Police + utilitaire */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
.nowrap{ white-space: nowrap; }

/* Header au-dessus du hero (WordPress/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }
body.admin-bar .elementor-location-header.elementor-sticky--active{ top:32px; }

/* === VARIABLES SCOPÉES AU HERO === */
.spt-hero{
  --spt-bg: #730020;
  --spt-overlay: rgba(0,0,0,.45); /* desktop par défaut */
  --spt-primary: #730020;
  --spt-text: #ffffff;
  --spt-muted: rgba(255,255,255,.88);
  --spt-card: rgba(255,255,255,.06);
  --spt-ring: rgba(255,255,255,.38);
  --spt-radius: 18px;
  --spt-shadow: 0 10px 30px rgba(0,0,0,.35);
  --spt-container: 1400px;
}

/* === WRAPPER === */
.spt-hero{
  position: relative;
  isolation: isolate;
  color: var(--spt-text);
  min-height: 100vh;
  display: flex; align-items: center;
  padding: clamp(48px, 6vw, 92px) 24px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* === BACKGROUND FULL COVER + OVERLAY NOIR === */
.spt-hero__bg{
  position: absolute; inset: 0;
  z-index: -2; pointer-events: none;
  background:
    url('https://swiss-personal-training.ch/wp-content/uploads/2024/09/swiss-personal-training-mobile-1.webp')
    center center / cover no-repeat;
}
.spt-hero::before{
  content:""; position:absolute; inset:0;
  background: var(--spt-overlay);
  z-index:-1; pointer-events:none;
}

/* === LAYOUT === */
.spt-hero__container{
  position: relative; z-index: 1;
  width: 100%; max-width: var(--spt-container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  min-height: 80vh;
  padding-top: 6vh;
  text-align: left;                  /* ← alignement GAUCHE par défaut */
}

/* Sur mobile: 1 colonne mais on RESTE à gauche */
@media (max-width: 1024px){
  .spt-hero__container{
    grid-template-columns: 1fr;
    gap: 56px;
    text-align: left !important;     /* ← empêche le centrage */
    min-height: auto;
    padding-top: 0;
  }
}

/* === COLONNE TEXTE (gauche) === */
.spt-hero__content{ animation: spt-slide-left .9s ease-out both; }

.spt-hero__eyebrow{
  display:inline-flex; align-items:center;
  font-size:14px; font-weight:600; letter-spacing:.02em;
  background: rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
  color:#fff; padding:8px 16px; border-radius:999px;
  margin-bottom:20px;
}

.spt-hero__title{
  margin: 0 0 18px;
  font-size: clamp(42px, 5vw, 64px);
  line-height: 1.1; font-weight: 900;
  text-shadow: 0 3px 14px rgba(0,0,0,.35);
  color:#fff;
}

.spt-hero__subtitle{
  color: var(--spt-muted);
  font-size: 20px; line-height: 1.5;
  max-width: 560px; margin: 0 0 24px 0;
}
.spt-hero__subtitle strong{ font-weight:800; }

/* === PUCES (✓) en #730020 — alignées à gauche === */
.spt-hero__bullets{
  list-style: none; padding:0; margin: 0 0 32px 0;
  display:flex; flex-direction:column; gap:12px;
  align-items: flex-start;                /* ← clé */
}
.spt-hero__bullets li{
  position: relative; padding-left: 30px;
  font-size: 18px; font-weight: 500; color:#fff;
  text-align: left; align-items: flex-start;
}
.spt-hero__bullets li::before{
  content:'✓';
  position:absolute; left:0; top:.14em;
  width:22px; height:22px; border-radius:50%;
  display:grid; place-items:center;
  background: var(--spt-primary); color:#fff;
  font-size:13px; font-weight:700;
  box-shadow: 0 0 0 2px rgba(255,255,255,.85), 0 2px 6px rgba(0,0,0,.18);
}

/* === CTAs — à gauche === */
.spt-hero__cta{
  display:flex; flex-wrap:wrap; gap:12px; margin: 6px 0 28px;
  justify-content: flex-start;            /* ← clé */
}

.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 14px 26px;
  border-radius: 12px;
  font-weight: 700; font-size: 16px;
  text-decoration: none; cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, color .25s, background .25s, border-color .25s ease;
  border: 2px solid transparent;
}
.spt-btn::before{ content:none; }

/* Bouton principal — #730020 plein */
.spt-btn--primary{
  background: var(--spt-primary);
  color:#fff;
  border-color: var(--spt-primary);
  box-shadow: 0 8px 30px rgba(0,0,0,.35);
}
.spt-btn--primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 38px rgba(0,0,0,.5);
}

/* Bouton secondaire (ghost) — fond blanc + texte #730020 */
.spt-btn--ghost{
  background:#fff;
  color: var(--spt-primary);
  border-color:#fff;
}
.spt-btn--ghost:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
}

/* === BADGES — à gauche === */
.spt-hero__badges{
  display:flex; flex-wrap:wrap; gap:10px;
  justify-content: flex-start;            /* ← clé */
}
.spt-badge{
  color: var(--spt-primary);
  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);
}

/* === COLONNE VISUEL — masquée === */
.spt-hero__visual{ display:none; }
.spt-hero__card, .spt-hero__img, .spt-hero__tag{ display:none; }

/* === PARTICULES === */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:0; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background: rgba(255,255,255,.28); filter: blur(1px); opacity:.8;
  animation: float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:12%; top:18%; animation-duration: 9s; }
.spt-hero__particles span:nth-child(2){ left:26%; 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; }

/* === Animations === */
@keyframes spt-slide-left{ from{opacity:0; transform:translateX(-50px)} to{opacity:1; transform:translateX(0)} }
@keyframes float{
  0%{ transform: translateY(0); opacity:.85; }
  50%{ transform: translateY(-8px); opacity:1; }
  100%{ transform: translateY(0); opacity:.85; }
}

/* === Responsive affinement === */
@media (max-width: 1200px){
  .spt-hero__container{ gap:64px; }
  .spt-hero__subtitle{ max-width:520px; }
}
@media (max-width: 1024px){
  .spt-hero__subtitle{ max-width:none; }
  .spt-hero__bullets{ align-items: flex-start !important; } /* ← puces gauche */
}

/* === Mobile : min-height 100svh et overlay plus clair === */
@supports (height: 100svh){
  .spt-hero{ min-height: 100svh; }
}

@media (max-width: 768px){
  /* baisse l’opacité de l’overlay sur mobile */
  .spt-hero{ --spt-overlay: rgba(0,0,0,.30); }

  .spt-hero__title{ font-size: 36px; }
  .spt-hero__subtitle{ font-size: 18px; }
  .spt-btn{ font-size:16px; padding: 13px 22px; }

  /* Particules un peu adoucies */
  .spt-hero__particles{ opacity:.18; }
}

@media (max-width: 480px){
  .spt-hero__bullets li{ font-size:16px; }
  .spt-hero__eyebrow{ font-size:13px; }
}

/* Très petits téléphones : encore un peu plus clair */
@media (max-width: 390px){
  .spt-hero{ --spt-overlay: rgba(0,0,0,.42); }
}

/* === Fix marges Elementor (si nécessaire) === */
.elementor .spt-hero{ padding-left: min(24px, 4vw); padding-right: min(24px, 4vw); }

/* === CTA "Commencer une séance" : texte blanc, aucun overlay === */
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* texte BLANC */
  border-color: var(--spt-primary, #730020) !important;
  text-shadow: none !important;
}

/* supprime toute lueur/shine éventuellement héritée */
.spt-btn--primary::before{ display: none !important; }

/* pas de changement de couleur au hover/focus/active */
.spt-btn--primary:hover,
.spt-btn--primary:focus,
.spt-btn--primary:active{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* reste BLANC */
  border-color: var(--spt-primary, #730020) !important;
  transform: none !important;             /* optionnel : pas d’élévation */
  box-shadow: 0 8px 30px rgba(0,0,0,.35); /* garde une ombre discrète */
}

/* accessibilité : halo de focus discret (peut être retiré si non souhaité) */
.spt-btn--primary:focus-visible{
  outline: 2px solid #fff;
  outline-offset: 2px;
}

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

/* (Option : utiliser aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero .spt-hero__bg{
    background-image: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_99-1__MOBILE_1024x1536.webp') !important;
  }
}
*//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7b435d5 *//* ===== 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-2ac35ae *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;
  --bg-chip:rgba(115,0,32,.08);
  --bd-chip:rgba(115,0,32,.18);
  --bg-quote:rgba(115,0,32,.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:.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:.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 */
.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 bordeaux + texte blanc (tous états) */
.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); }

/* 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-c5ef673 *//* ===== 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-b2f2cb7 *//* =========================================================
   HERO — FULL BACKGROUND + OVERLAY NOIR + THEME #730020
   (Aligné GAUCHE sur toutes tailles)
   ========================================================= */

/* Police + utilitaire */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
.nowrap{ white-space: nowrap; }

/* Header au-dessus du hero (WordPress/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }
body.admin-bar .elementor-location-header.elementor-sticky--active{ top:32px; }

/* === VARIABLES SCOPÉES AU HERO === */
.spt-hero{
  --spt-bg: #730020;
  --spt-overlay: rgba(0,0,0,.45); /* desktop par défaut */
  --spt-primary: #730020;
  --spt-text: #ffffff;
  --spt-muted: rgba(255,255,255,.88);
  --spt-card: rgba(255,255,255,.06);
  --spt-ring: rgba(255,255,255,.38);
  --spt-radius: 18px;
  --spt-shadow: 0 10px 30px rgba(0,0,0,.35);
  --spt-container: 1400px;
}

/* === WRAPPER === */
.spt-hero{
  position: relative;
  isolation: isolate;
  color: var(--spt-text);
  min-height: 100vh;
  display: flex; align-items: center;
  padding: clamp(48px, 6vw, 92px) 24px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* === BACKGROUND FULL COVER + OVERLAY NOIR === */
.spt-hero__bg{
  position: absolute; inset: 0;
  z-index: -2; pointer-events: none;
  background:
    url('https://swiss-personal-training.ch/wp-content/uploads/2024/09/swiss-personal-training-mobile-1.webp')
    center center / cover no-repeat;
}
.spt-hero::before{
  content:""; position:absolute; inset:0;
  background: var(--spt-overlay);
  z-index:-1; pointer-events:none;
}

/* === LAYOUT === */
.spt-hero__container{
  position: relative; z-index: 1;
  width: 100%; max-width: var(--spt-container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  min-height: 80vh;
  padding-top: 6vh;
  text-align: left;                  /* ← alignement GAUCHE par défaut */
}

/* Sur mobile: 1 colonne mais on RESTE à gauche */
@media (max-width: 1024px){
  .spt-hero__container{
    grid-template-columns: 1fr;
    gap: 56px;
    text-align: left !important;     /* ← empêche le centrage */
    min-height: auto;
    padding-top: 0;
  }
}

/* === COLONNE TEXTE (gauche) === */
.spt-hero__content{ animation: spt-slide-left .9s ease-out both; }

.spt-hero__eyebrow{
  display:inline-flex; align-items:center;
  font-size:14px; font-weight:600; letter-spacing:.02em;
  background: rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
  color:#fff; padding:8px 16px; border-radius:999px;
  margin-bottom:20px;
}

.spt-hero__title{
  margin: 0 0 18px;
  font-size: clamp(42px, 5vw, 64px);
  line-height: 1.1; font-weight: 900;
  text-shadow: 0 3px 14px rgba(0,0,0,.35);
  color:#fff;
}

.spt-hero__subtitle{
  color: var(--spt-muted);
  font-size: 20px; line-height: 1.5;
  max-width: 560px; margin: 0 0 24px 0;
}
.spt-hero__subtitle strong{ font-weight:800; }

/* === PUCES (✓) en #730020 — alignées à gauche === */
.spt-hero__bullets{
  list-style: none; padding:0; margin: 0 0 32px 0;
  display:flex; flex-direction:column; gap:12px;
  align-items: flex-start;                /* ← clé */
}
.spt-hero__bullets li{
  position: relative; padding-left: 30px;
  font-size: 18px; font-weight: 500; color:#fff;
  text-align: left; align-items: flex-start;
}
.spt-hero__bullets li::before{
  content:'✓';
  position:absolute; left:0; top:.14em;
  width:22px; height:22px; border-radius:50%;
  display:grid; place-items:center;
  background: var(--spt-primary); color:#fff;
  font-size:13px; font-weight:700;
  box-shadow: 0 0 0 2px rgba(255,255,255,.85), 0 2px 6px rgba(0,0,0,.18);
}

/* === CTAs — à gauche === */
.spt-hero__cta{
  display:flex; flex-wrap:wrap; gap:12px; margin: 6px 0 28px;
  justify-content: flex-start;            /* ← clé */
}

.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 14px 26px;
  border-radius: 12px;
  font-weight: 700; font-size: 16px;
  text-decoration: none; cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, color .25s, background .25s, border-color .25s ease;
  border: 2px solid transparent;
}
.spt-btn::before{ content:none; }

/* Bouton principal — #730020 plein */
.spt-btn--primary{
  background: var(--spt-primary);
  color:#fff;
  border-color: var(--spt-primary);
  box-shadow: 0 8px 30px rgba(0,0,0,.35);
}
.spt-btn--primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 38px rgba(0,0,0,.5);
}

/* Bouton secondaire (ghost) — fond blanc + texte #730020 */
.spt-btn--ghost{
  background:#fff;
  color: var(--spt-primary);
  border-color:#fff;
}
.spt-btn--ghost:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
}

/* === BADGES — à gauche === */
.spt-hero__badges{
  display:flex; flex-wrap:wrap; gap:10px;
  justify-content: flex-start;            /* ← clé */
}
.spt-badge{
  color: var(--spt-primary);
  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);
}

/* === COLONNE VISUEL — masquée === */
.spt-hero__visual{ display:none; }
.spt-hero__card, .spt-hero__img, .spt-hero__tag{ display:none; }

/* === PARTICULES === */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:0; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background: rgba(255,255,255,.28); filter: blur(1px); opacity:.8;
  animation: float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:12%; top:18%; animation-duration: 9s; }
.spt-hero__particles span:nth-child(2){ left:26%; 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; }

/* === Animations === */
@keyframes spt-slide-left{ from{opacity:0; transform:translateX(-50px)} to{opacity:1; transform:translateX(0)} }
@keyframes float{
  0%{ transform: translateY(0); opacity:.85; }
  50%{ transform: translateY(-8px); opacity:1; }
  100%{ transform: translateY(0); opacity:.85; }
}

/* === Responsive affinement === */
@media (max-width: 1200px){
  .spt-hero__container{ gap:64px; }
  .spt-hero__subtitle{ max-width:520px; }
}
@media (max-width: 1024px){
  .spt-hero__subtitle{ max-width:none; }
  .spt-hero__bullets{ align-items: flex-start !important; } /* ← puces gauche */
}

/* === Mobile : min-height 100svh et overlay plus clair === */
@supports (height: 100svh){
  .spt-hero{ min-height: 100svh; }
}

@media (max-width: 768px){
  /* baisse l’opacité de l’overlay sur mobile */
  .spt-hero{ --spt-overlay: rgba(0,0,0,.30); }

  .spt-hero__title{ font-size: 36px; }
  .spt-hero__subtitle{ font-size: 18px; }
  .spt-btn{ font-size:16px; padding: 13px 22px; }

  /* Particules un peu adoucies */
  .spt-hero__particles{ opacity:.18; }
}

@media (max-width: 480px){
  .spt-hero__bullets li{ font-size:16px; }
  .spt-hero__eyebrow{ font-size:13px; }
}

/* Très petits téléphones : encore un peu plus clair */
@media (max-width: 390px){
  .spt-hero{ --spt-overlay: rgba(0,0,0,.42); }
}

/* === Fix marges Elementor (si nécessaire) === */
.elementor .spt-hero{ padding-left: min(24px, 4vw); padding-right: min(24px, 4vw); }

/* === CTA "Commencer une séance" : texte blanc, aucun overlay === */
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* texte BLANC */
  border-color: var(--spt-primary, #730020) !important;
  text-shadow: none !important;
}

/* supprime toute lueur/shine éventuellement héritée */
.spt-btn--primary::before{ display: none !important; }

/* pas de changement de couleur au hover/focus/active */
.spt-btn--primary:hover,
.spt-btn--primary:focus,
.spt-btn--primary:active{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* reste BLANC */
  border-color: var(--spt-primary, #730020) !important;
  transform: none !important;             /* optionnel : pas d’élévation */
  box-shadow: 0 8px 30px rgba(0,0,0,.35); /* garde une ombre discrète */
}

/* accessibilité : halo de focus discret (peut être retiré si non souhaité) */
.spt-btn--primary:focus-visible{
  outline: 2px solid #fff;
  outline-offset: 2px;
}

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

/* (Option : utiliser aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero .spt-hero__bg{
    background-image: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_99-1__MOBILE_1024x1536.webp') !important;
  }
}
*//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7b435d5 *//* ===== 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-2ac35ae *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;
  --bg-chip:rgba(115,0,32,.08);
  --bd-chip:rgba(115,0,32,.18);
  --bg-quote:rgba(115,0,32,.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:.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:.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 */
.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 bordeaux + texte blanc (tous états) */
.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); }

/* 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-c5ef673 *//* ===== 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-b2f2cb7 *//* =========================================================
   HERO — FULL BACKGROUND + OVERLAY NOIR + THEME #730020
   (Aligné GAUCHE sur toutes tailles)
   ========================================================= */

/* Police + utilitaire */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
.nowrap{ white-space: nowrap; }

/* Header au-dessus du hero (WordPress/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }
body.admin-bar .elementor-location-header.elementor-sticky--active{ top:32px; }

/* === VARIABLES SCOPÉES AU HERO === */
.spt-hero{
  --spt-bg: #730020;
  --spt-overlay: rgba(0,0,0,.45); /* desktop par défaut */
  --spt-primary: #730020;
  --spt-text: #ffffff;
  --spt-muted: rgba(255,255,255,.88);
  --spt-card: rgba(255,255,255,.06);
  --spt-ring: rgba(255,255,255,.38);
  --spt-radius: 18px;
  --spt-shadow: 0 10px 30px rgba(0,0,0,.35);
  --spt-container: 1400px;
}

/* === WRAPPER === */
.spt-hero{
  position: relative;
  isolation: isolate;
  color: var(--spt-text);
  min-height: 100vh;
  display: flex; align-items: center;
  padding: clamp(48px, 6vw, 92px) 24px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* === BACKGROUND FULL COVER + OVERLAY NOIR === */
.spt-hero__bg{
  position: absolute; inset: 0;
  z-index: -2; pointer-events: none;
  background:
    url('https://swiss-personal-training.ch/wp-content/uploads/2024/09/swiss-personal-training-mobile-1.webp')
    center center / cover no-repeat;
}
.spt-hero::before{
  content:""; position:absolute; inset:0;
  background: var(--spt-overlay);
  z-index:-1; pointer-events:none;
}

/* === LAYOUT === */
.spt-hero__container{
  position: relative; z-index: 1;
  width: 100%; max-width: var(--spt-container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  min-height: 80vh;
  padding-top: 6vh;
  text-align: left;                  /* ← alignement GAUCHE par défaut */
}

/* Sur mobile: 1 colonne mais on RESTE à gauche */
@media (max-width: 1024px){
  .spt-hero__container{
    grid-template-columns: 1fr;
    gap: 56px;
    text-align: left !important;     /* ← empêche le centrage */
    min-height: auto;
    padding-top: 0;
  }
}

/* === COLONNE TEXTE (gauche) === */
.spt-hero__content{ animation: spt-slide-left .9s ease-out both; }

.spt-hero__eyebrow{
  display:inline-flex; align-items:center;
  font-size:14px; font-weight:600; letter-spacing:.02em;
  background: rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
  color:#fff; padding:8px 16px; border-radius:999px;
  margin-bottom:20px;
}

.spt-hero__title{
  margin: 0 0 18px;
  font-size: clamp(42px, 5vw, 64px);
  line-height: 1.1; font-weight: 900;
  text-shadow: 0 3px 14px rgba(0,0,0,.35);
  color:#fff;
}

.spt-hero__subtitle{
  color: var(--spt-muted);
  font-size: 20px; line-height: 1.5;
  max-width: 560px; margin: 0 0 24px 0;
}
.spt-hero__subtitle strong{ font-weight:800; }

/* === PUCES (✓) en #730020 — alignées à gauche === */
.spt-hero__bullets{
  list-style: none; padding:0; margin: 0 0 32px 0;
  display:flex; flex-direction:column; gap:12px;
  align-items: flex-start;                /* ← clé */
}
.spt-hero__bullets li{
  position: relative; padding-left: 30px;
  font-size: 18px; font-weight: 500; color:#fff;
  text-align: left; align-items: flex-start;
}
.spt-hero__bullets li::before{
  content:'✓';
  position:absolute; left:0; top:.14em;
  width:22px; height:22px; border-radius:50%;
  display:grid; place-items:center;
  background: var(--spt-primary); color:#fff;
  font-size:13px; font-weight:700;
  box-shadow: 0 0 0 2px rgba(255,255,255,.85), 0 2px 6px rgba(0,0,0,.18);
}

/* === CTAs — à gauche === */
.spt-hero__cta{
  display:flex; flex-wrap:wrap; gap:12px; margin: 6px 0 28px;
  justify-content: flex-start;            /* ← clé */
}

.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 14px 26px;
  border-radius: 12px;
  font-weight: 700; font-size: 16px;
  text-decoration: none; cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, color .25s, background .25s, border-color .25s ease;
  border: 2px solid transparent;
}
.spt-btn::before{ content:none; }

/* Bouton principal — #730020 plein */
.spt-btn--primary{
  background: var(--spt-primary);
  color:#fff;
  border-color: var(--spt-primary);
  box-shadow: 0 8px 30px rgba(0,0,0,.35);
}
.spt-btn--primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 38px rgba(0,0,0,.5);
}

/* Bouton secondaire (ghost) — fond blanc + texte #730020 */
.spt-btn--ghost{
  background:#fff;
  color: var(--spt-primary);
  border-color:#fff;
}
.spt-btn--ghost:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
}

/* === BADGES — à gauche === */
.spt-hero__badges{
  display:flex; flex-wrap:wrap; gap:10px;
  justify-content: flex-start;            /* ← clé */
}
.spt-badge{
  color: var(--spt-primary);
  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);
}

/* === COLONNE VISUEL — masquée === */
.spt-hero__visual{ display:none; }
.spt-hero__card, .spt-hero__img, .spt-hero__tag{ display:none; }

/* === PARTICULES === */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:0; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background: rgba(255,255,255,.28); filter: blur(1px); opacity:.8;
  animation: float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:12%; top:18%; animation-duration: 9s; }
.spt-hero__particles span:nth-child(2){ left:26%; 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; }

/* === Animations === */
@keyframes spt-slide-left{ from{opacity:0; transform:translateX(-50px)} to{opacity:1; transform:translateX(0)} }
@keyframes float{
  0%{ transform: translateY(0); opacity:.85; }
  50%{ transform: translateY(-8px); opacity:1; }
  100%{ transform: translateY(0); opacity:.85; }
}

/* === Responsive affinement === */
@media (max-width: 1200px){
  .spt-hero__container{ gap:64px; }
  .spt-hero__subtitle{ max-width:520px; }
}
@media (max-width: 1024px){
  .spt-hero__subtitle{ max-width:none; }
  .spt-hero__bullets{ align-items: flex-start !important; } /* ← puces gauche */
}

/* === Mobile : min-height 100svh et overlay plus clair === */
@supports (height: 100svh){
  .spt-hero{ min-height: 100svh; }
}

@media (max-width: 768px){
  /* baisse l’opacité de l’overlay sur mobile */
  .spt-hero{ --spt-overlay: rgba(0,0,0,.30); }

  .spt-hero__title{ font-size: 36px; }
  .spt-hero__subtitle{ font-size: 18px; }
  .spt-btn{ font-size:16px; padding: 13px 22px; }

  /* Particules un peu adoucies */
  .spt-hero__particles{ opacity:.18; }
}

@media (max-width: 480px){
  .spt-hero__bullets li{ font-size:16px; }
  .spt-hero__eyebrow{ font-size:13px; }
}

/* Très petits téléphones : encore un peu plus clair */
@media (max-width: 390px){
  .spt-hero{ --spt-overlay: rgba(0,0,0,.42); }
}

/* === Fix marges Elementor (si nécessaire) === */
.elementor .spt-hero{ padding-left: min(24px, 4vw); padding-right: min(24px, 4vw); }

/* === CTA "Commencer une séance" : texte blanc, aucun overlay === */
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* texte BLANC */
  border-color: var(--spt-primary, #730020) !important;
  text-shadow: none !important;
}

/* supprime toute lueur/shine éventuellement héritée */
.spt-btn--primary::before{ display: none !important; }

/* pas de changement de couleur au hover/focus/active */
.spt-btn--primary:hover,
.spt-btn--primary:focus,
.spt-btn--primary:active{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* reste BLANC */
  border-color: var(--spt-primary, #730020) !important;
  transform: none !important;             /* optionnel : pas d’élévation */
  box-shadow: 0 8px 30px rgba(0,0,0,.35); /* garde une ombre discrète */
}

/* accessibilité : halo de focus discret (peut être retiré si non souhaité) */
.spt-btn--primary:focus-visible{
  outline: 2px solid #fff;
  outline-offset: 2px;
}

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

/* (Option : utiliser aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero .spt-hero__bg{
    background-image: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_99-1__MOBILE_1024x1536.webp') !important;
  }
}
*//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7b435d5 *//* ===== 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-2ac35ae *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;
  --bg-chip:rgba(115,0,32,.08);
  --bd-chip:rgba(115,0,32,.18);
  --bg-quote:rgba(115,0,32,.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:.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:.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 */
.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 bordeaux + texte blanc (tous états) */
.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); }

/* 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-c5ef673 *//* ===== 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-b2f2cb7 *//* =========================================================
   HERO — FULL BACKGROUND + OVERLAY NOIR + THEME #730020
   (Aligné GAUCHE sur toutes tailles)
   ========================================================= */

/* Police + utilitaire */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
.nowrap{ white-space: nowrap; }

/* Header au-dessus du hero (WordPress/Elementor) */
header, .site-header, .elementor-location-header{ position:relative; z-index:1000; }
body.admin-bar .elementor-location-header.elementor-sticky--active{ top:32px; }

/* === VARIABLES SCOPÉES AU HERO === */
.spt-hero{
  --spt-bg: #730020;
  --spt-overlay: rgba(0,0,0,.45); /* desktop par défaut */
  --spt-primary: #730020;
  --spt-text: #ffffff;
  --spt-muted: rgba(255,255,255,.88);
  --spt-card: rgba(255,255,255,.06);
  --spt-ring: rgba(255,255,255,.38);
  --spt-radius: 18px;
  --spt-shadow: 0 10px 30px rgba(0,0,0,.35);
  --spt-container: 1400px;
}

/* === WRAPPER === */
.spt-hero{
  position: relative;
  isolation: isolate;
  color: var(--spt-text);
  min-height: 100vh;
  display: flex; align-items: center;
  padding: clamp(48px, 6vw, 92px) 24px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* === BACKGROUND FULL COVER + OVERLAY NOIR === */
.spt-hero__bg{
  position: absolute; inset: 0;
  z-index: -2; pointer-events: none;
  background:
    url('https://swiss-personal-training.ch/wp-content/uploads/2024/09/swiss-personal-training-mobile-1.webp')
    center center / cover no-repeat;
}
.spt-hero::before{
  content:""; position:absolute; inset:0;
  background: var(--spt-overlay);
  z-index:-1; pointer-events:none;
}

/* === LAYOUT === */
.spt-hero__container{
  position: relative; z-index: 1;
  width: 100%; max-width: var(--spt-container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  min-height: 80vh;
  padding-top: 6vh;
  text-align: left;                  /* ← alignement GAUCHE par défaut */
}

/* Sur mobile: 1 colonne mais on RESTE à gauche */
@media (max-width: 1024px){
  .spt-hero__container{
    grid-template-columns: 1fr;
    gap: 56px;
    text-align: left !important;     /* ← empêche le centrage */
    min-height: auto;
    padding-top: 0;
  }
}

/* === COLONNE TEXTE (gauche) === */
.spt-hero__content{ animation: spt-slide-left .9s ease-out both; }

.spt-hero__eyebrow{
  display:inline-flex; align-items:center;
  font-size:14px; font-weight:600; letter-spacing:.02em;
  background: rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
  color:#fff; padding:8px 16px; border-radius:999px;
  margin-bottom:20px;
}

.spt-hero__title{
  margin: 0 0 18px;
  font-size: clamp(42px, 5vw, 64px);
  line-height: 1.1; font-weight: 900;
  text-shadow: 0 3px 14px rgba(0,0,0,.35);
  color:#fff;
}

.spt-hero__subtitle{
  color: var(--spt-muted);
  font-size: 20px; line-height: 1.5;
  max-width: 560px; margin: 0 0 24px 0;
}
.spt-hero__subtitle strong{ font-weight:800; }

/* === PUCES (✓) en #730020 — alignées à gauche === */
.spt-hero__bullets{
  list-style: none; padding:0; margin: 0 0 32px 0;
  display:flex; flex-direction:column; gap:12px;
  align-items: flex-start;                /* ← clé */
}
.spt-hero__bullets li{
  position: relative; padding-left: 30px;
  font-size: 18px; font-weight: 500; color:#fff;
  text-align: left; align-items: flex-start;
}
.spt-hero__bullets li::before{
  content:'✓';
  position:absolute; left:0; top:.14em;
  width:22px; height:22px; border-radius:50%;
  display:grid; place-items:center;
  background: var(--spt-primary); color:#fff;
  font-size:13px; font-weight:700;
  box-shadow: 0 0 0 2px rgba(255,255,255,.85), 0 2px 6px rgba(0,0,0,.18);
}

/* === CTAs — à gauche === */
.spt-hero__cta{
  display:flex; flex-wrap:wrap; gap:12px; margin: 6px 0 28px;
  justify-content: flex-start;            /* ← clé */
}

.spt-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 14px 26px;
  border-radius: 12px;
  font-weight: 700; font-size: 16px;
  text-decoration: none; cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, color .25s, background .25s, border-color .25s ease;
  border: 2px solid transparent;
}
.spt-btn::before{ content:none; }

/* Bouton principal — #730020 plein */
.spt-btn--primary{
  background: var(--spt-primary);
  color:#fff;
  border-color: var(--spt-primary);
  box-shadow: 0 8px 30px rgba(0,0,0,.35);
}
.spt-btn--primary:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 38px rgba(0,0,0,.5);
}

/* Bouton secondaire (ghost) — fond blanc + texte #730020 */
.spt-btn--ghost{
  background:#fff;
  color: var(--spt-primary);
  border-color:#fff;
}
.spt-btn--ghost:hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
}

/* === BADGES — à gauche === */
.spt-hero__badges{
  display:flex; flex-wrap:wrap; gap:10px;
  justify-content: flex-start;            /* ← clé */
}
.spt-badge{
  color: var(--spt-primary);
  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);
}

/* === COLONNE VISUEL — masquée === */
.spt-hero__visual{ display:none; }
.spt-hero__card, .spt-hero__img, .spt-hero__tag{ display:none; }

/* === PARTICULES === */
.spt-hero__particles{ position:absolute; inset:0; pointer-events:none; z-index:0; }
.spt-hero__particles span{
  position:absolute; width:6px; height:6px; border-radius:50%;
  background: rgba(255,255,255,.28); filter: blur(1px); opacity:.8;
  animation: float 8s linear infinite;
}
.spt-hero__particles span:nth-child(1){ left:12%; top:18%; animation-duration: 9s; }
.spt-hero__particles span:nth-child(2){ left:26%; 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; }

/* === Animations === */
@keyframes spt-slide-left{ from{opacity:0; transform:translateX(-50px)} to{opacity:1; transform:translateX(0)} }
@keyframes float{
  0%{ transform: translateY(0); opacity:.85; }
  50%{ transform: translateY(-8px); opacity:1; }
  100%{ transform: translateY(0); opacity:.85; }
}

/* === Responsive affinement === */
@media (max-width: 1200px){
  .spt-hero__container{ gap:64px; }
  .spt-hero__subtitle{ max-width:520px; }
}
@media (max-width: 1024px){
  .spt-hero__subtitle{ max-width:none; }
  .spt-hero__bullets{ align-items: flex-start !important; } /* ← puces gauche */
}

/* === Mobile : min-height 100svh et overlay plus clair === */
@supports (height: 100svh){
  .spt-hero{ min-height: 100svh; }
}

@media (max-width: 768px){
  /* baisse l’opacité de l’overlay sur mobile */
  .spt-hero{ --spt-overlay: rgba(0,0,0,.30); }

  .spt-hero__title{ font-size: 36px; }
  .spt-hero__subtitle{ font-size: 18px; }
  .spt-btn{ font-size:16px; padding: 13px 22px; }

  /* Particules un peu adoucies */
  .spt-hero__particles{ opacity:.18; }
}

@media (max-width: 480px){
  .spt-hero__bullets li{ font-size:16px; }
  .spt-hero__eyebrow{ font-size:13px; }
}

/* Très petits téléphones : encore un peu plus clair */
@media (max-width: 390px){
  .spt-hero{ --spt-overlay: rgba(0,0,0,.42); }
}

/* === Fix marges Elementor (si nécessaire) === */
.elementor .spt-hero{ padding-left: min(24px, 4vw); padding-right: min(24px, 4vw); }

/* === CTA "Commencer une séance" : texte blanc, aucun overlay === */
.spt-btn--primary,
.spt-btn--primary:link,
.spt-btn--primary:visited{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* texte BLANC */
  border-color: var(--spt-primary, #730020) !important;
  text-shadow: none !important;
}

/* supprime toute lueur/shine éventuellement héritée */
.spt-btn--primary::before{ display: none !important; }

/* pas de changement de couleur au hover/focus/active */
.spt-btn--primary:hover,
.spt-btn--primary:focus,
.spt-btn--primary:active{
  background: var(--spt-primary, #730020) !important;
  color: #fff !important;                 /* reste BLANC */
  border-color: var(--spt-primary, #730020) !important;
  transform: none !important;             /* optionnel : pas d’élévation */
  box-shadow: 0 8px 30px rgba(0,0,0,.35); /* garde une ombre discrète */
}

/* accessibilité : halo de focus discret (peut être retiré si non souhaité) */
.spt-btn--primary:focus-visible{
  outline: 2px solid #fff;
  outline-offset: 2px;
}

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

/* (Option : utiliser aussi l'image mobile jusqu’à 1024px)
@media (max-width: 1024px){
  .spt-hero .spt-hero__bg{
    background-image: url('https://swiss-personal-training.ch/wp-content/uploads/2025/10/coaching-sportif-%E2%80%93-personal-training_99-1__MOBILE_1024x1536.webp') !important;
  }
}
*//* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7b435d5 *//* ===== 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-2ac35ae *//* ===== Coach Wide 3-Cols — thème bordeaux #730020 ===== */
.spt-coachwide{
  --brand:#730020;
  --bg-chip:rgba(115,0,32,.08);
  --bd-chip:rgba(115,0,32,.18);
  --bg-quote:rgba(115,0,32,.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:.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:.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 */
.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 bordeaux + texte blanc (tous états) */
.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); }

/* 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-c5ef673 *//* ===== 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 */