/* ============================================
   FITPILATE — Feuille de style principale
   Charte : #1B3C53 · #456882 · #D2C186 · #F9F3EF
   ============================================ */

/* ---------- PHOTOS PRODUITS (remplacent les dégradés placeholder) ----------
   Les classes .ph-xxx ne posent qu'une variable CSS ; les conteneurs qui
   portent aussi .ph appliquent réellement l'image. Cela évite qu'un futur
   raccourci "background:" sur .equip-media / .gallery-main / .thumb
   n'écrase la photo par simple ordre d'apparition dans la feuille. */
.ph-diamond-reformer-1{--ph-img:url('images/diamond-reformer-1.jpg');}
.ph-diamond-cadillac-1{--ph-img:url('images/diamond-cadillac-1.jpg');}
.ph-diamond-cadillac-2{--ph-img:url('images/diamond-cadillac-2.jpg');}
.ph-diamond-tower-1{--ph-img:url('images/diamond-tower-1.jpg');}
.ph-diamond-tower-2{--ph-img:url('images/diamond-tower-2.jpg');}
.ph-premium-cadillac-1{--ph-img:url('images/premium-cadillac-1.jpg');}
.ph-premium-cadillac-2{--ph-img:url('images/premium-cadillac-2.jpg');}
.ph-premium-tower-1{--ph-img:url('images/premium-tower-1.jpg');}
.ph-premium-tower-2{--ph-img:url('images/premium-tower-2.jpg');}
.ph-premium-reformer-1{--ph-img:url('images/premium-reformer-1.jpg');}
.ph-nafas-1{--ph-img:url('images/nafas-pilates-1.jpg');}
.ph-nafas-2{--ph-img:url('images/nafas-pilates-2.jpg');}
.ph-hero-reformer{--ph-img:url('images/hero-reformer.jpg');}
.ph-hero-cadillac{--ph-img:url('images/hero-cadillac.jpg');}
.ph-hero-tower{--ph-img:url('images/hero-tower.jpg');}
.ph-nafas-3{--ph-img:url('images/nafas-pilates-3.jpg');}
.ph-tendance-1{--ph-img:url('images/tendance-pilates-1.jpg');}
.ph-tendance-2{--ph-img:url('images/tendance-pilates-2.jpg');}
.ph-tendance-logo{--ph-img:url('images/tendance-pilates-logo.jpg');}
.ph-founder-soumaya{--ph-img:url('images/founder-soumaya.jpg');}

.gallery-main.ph,.thumb.ph,
.founder-media.ph,.about-media.ph,.split-media.ph,.proj-media.ph,.quote-card-media.ph,
.project-hero-photo.ph,.gallery-tile.ph,.hero-slide.ph,.partner-media.ph,.equip-photo-img.ph{
  background-image:var(--ph-img);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.gallery-tile{height:200px;border:1px solid var(--line);overflow:hidden;transition:transform .6s cubic-bezier(.22,.61,.36,1);}
.gallery-tile.ph:hover{transform:scale(1.04);}
.project-hero-photo.ph{overflow:hidden;transition:transform .6s cubic-bezier(.22,.61,.36,1);}
[data-lightbox]{cursor:zoom-in;}
.lightbox-overlay{position:fixed;inset:0;background:rgba(10,15,20,.94);display:flex;align-items:center;justify-content:center;z-index:9999;padding:40px;opacity:0;pointer-events:none;transition:opacity .25s ease;}
.lightbox-overlay.active{opacity:1;pointer-events:auto;}
.lightbox-overlay .lightbox-img{max-width:90vw;max-height:90vh;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.lightbox-close{position:absolute;top:22px;right:26px;background:none;border:none;color:#fff;font-size:36px;line-height:1;cursor:pointer;padding:4px 10px;}
.lightbox-close:hover{opacity:.7;}

/* équipement : l'image vit sur un ::before (les badges Diamond/Premium restent
   des enfants normaux) afin que le zoom au survol n'affecte que la photo */
.equip-media.ph{overflow:hidden;}
.equip-media.ph::before{
  content:"";position:absolute;inset:0;z-index:0;
  background-image:var(--ph-img);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  transition:transform .6s cubic-bezier(.22,.61,.36,1);
}
.equip-card:hover .equip-media.ph::before{transform:scale(1.08);}
.equip-media .badge{position:relative;z-index:1;}

/* zoom léger au survol sur les photos produits */
.gallery-main.ph,.thumb.ph,.quote-card-media.ph{
  overflow:hidden;transition:transform .6s cubic-bezier(.22,.61,.36,1);
}
.gallery-main.ph:hover,.quote-card-media.ph:hover{transform:scale(1.06);}
.gallery-thumbs .thumb.ph:hover{transform:scale(1.1);}

.ph-soon{
  text-align:center;
  font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;
  letter-spacing:0.08em;text-transform:uppercase;color:var(--navy);
}
.equip-media.ph-soon,.gallery-main.ph-soon,.thumb.ph-soon{
  display:flex;align-items:center;justify-content:center;padding:16px;
  background:linear-gradient(150deg,#DCE5EB 0%,#B8CAD6 55%,#8FA9BC 100%);
}
[data-range="premium"] .equip-media.ph-soon,
[data-range="premium"] .gallery-main.ph-soon,
[data-range="premium"] .thumb.ph-soon{
  background:linear-gradient(150deg,#F0E9DC 0%,#DFD2B4 55%,#C8B583 100%);
}

.brand-mark{height:40px;width:auto;display:block;filter:drop-shadow(0 2px 10px rgba(0,0,0,0.25));}
.footer-brandrow{display:flex;align-items:center;gap:14px;margin-bottom:16px;}

:root{
  --navy:#1B3C53;
  --navy-deep:#12293A;
  --steel:#456882;
  --steel-soft:#6A8AA3;
  --sand:#D2C186;
  --sand-deep:#B9A469;
  --cream:#F9F3EF;
  --cream-alt:#F1E9E2;
  --white:#FFFFFF;
  --ink:#16242E;
  --ink-soft:#546773;
  --line:#E2D9D2;
  --line-dark:rgba(249,243,239,0.15);
  --shadow:0 24px 70px -38px rgba(27,60,83,0.45);
  --radius:3px;
  --nav-h:76px;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:90px;}
body{
  background:var(--cream);
  color:var(--ink);
  font-family:'Manrope',sans-serif;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{
  font-family:'Cormorant Garamond',serif;
  font-weight:600;
  line-height:1.12;
  letter-spacing:0.005em;
  color:var(--navy);
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
ul{list-style:none;}

.container{max-width:1240px;margin:0 auto;padding:0 40px;}
.container-narrow{max-width:900px;margin:0 auto;padding:0 40px;}

.eyebrow{
  display:block;
  text-transform:uppercase;
  letter-spacing:0.2em;
  font-size:11.5px;
  font-weight:800;
  color:var(--sand-deep);
}
.eyebrow-light{color:var(--sand);}

section{padding:118px 0;}
.alt-bg{background:var(--cream-alt);}
.dark-bg{background:var(--navy);color:rgba(249,243,239,0.82);}
.dark-bg h1,.dark-bg h2,.dark-bg h3,.dark-bg h4{color:var(--cream);}

.section-head{max-width:660px;margin-bottom:62px;}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center;}
.section-head .eyebrow{margin-bottom:16px;}
.section-head h2{font-size:clamp(32px,4.2vw,48px);margin-bottom:18px;}
.section-head p{color:var(--ink-soft);font-size:16.5px;max-width:560px;}
.section-head.center p{margin:0 auto;}
.dark-bg .section-head p{color:rgba(249,243,239,0.65);}

/* ---------- BOUTONS ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:15px 30px;
  font-family:'Manrope',sans-serif;
  font-size:12.5px;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;
  border-radius:var(--radius);cursor:pointer;border:1px solid transparent;
  transition:all .25s ease;white-space:nowrap;
}
.btn-primary{background:var(--navy);color:var(--cream);}
.btn-primary:hover{background:var(--steel);transform:translateY(-1px);}
.btn-gold{background:var(--sand);color:var(--navy);}
.btn-gold:hover{background:var(--sand-deep);}
.btn-outline{background:transparent;color:var(--navy);border:1px solid var(--navy);}
.btn-outline:hover{background:var(--navy);color:var(--cream);}
.btn-light{background:var(--cream);color:var(--navy);border:1px solid var(--sand-deep);}
.btn-light:hover{background:var(--white);border-color:var(--navy);}
.btn-outline-light{background:transparent;color:var(--cream);border:1px solid rgba(249,243,239,0.55);}
.btn-outline-light:hover{background:rgba(249,243,239,0.12);border-color:var(--cream);}
.btn-sm{padding:11px 22px;font-size:11.5px;}
.btn-wide{width:100%;}

/* ---------- BILINGUE ---------- */
[data-i18n]{display:none;}
html[data-lang="fr"] [data-i18n="fr"]{display:revert;}
html[data-lang="en"] [data-i18n="en"]{display:revert;}
html[data-lang="fr"] span[data-i18n="fr"],
html[data-lang="en"] span[data-i18n="en"],
html[data-lang="fr"] em[data-i18n="fr"],
html[data-lang="en"] em[data-i18n="en"]{display:inline;}

/* ---------- NAVIGATION ---------- */
header{
  position:fixed;top:0;left:0;right:0;z-index:200;
  padding:20px 0;
  transition:background .3s ease,padding .3s ease,border-color .3s ease,box-shadow .3s ease;
  border-bottom:1px solid transparent;
}
header.scrolled,
header.solid{
  background:rgba(249,243,239,0.94);
  backdrop-filter:blur(12px);
  padding:12px 0;
  border-bottom:1px solid var(--line);
}
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:24px;}
.logo{
  font-family:'Cormorant Garamond',serif;
  font-size:25px;font-weight:700;letter-spacing:0.03em;
  color:var(--cream);transition:color .3s ease;
}
header.scrolled .logo,header.solid .logo{color:var(--navy);}
.logo em{font-style:normal;color:var(--sand);}
header.scrolled .logo em,header.solid .logo em{color:var(--steel);}

.nav-links{display:flex;gap:26px;align-items:center;}
.nav-links a{
  font-size:13px;font-weight:600;letter-spacing:0.02em;
  color:rgba(249,243,239,0.88);transition:color .25s ease;
}
.nav-links a:hover{color:var(--sand);}
header.scrolled .nav-links a,header.solid .nav-links a{color:var(--ink-soft);}
header.scrolled .nav-links a:hover,header.solid .nav-links a:hover{color:var(--navy);}

.nav-right{display:flex;align-items:center;gap:16px;}
.lang-switch{
  display:flex;border:1px solid rgba(249,243,239,0.45);
  border-radius:20px;overflow:hidden;
}
header.scrolled .lang-switch,header.solid .lang-switch{border-color:var(--line);}
.lang-switch button{
  padding:6px 12px;background:transparent;color:rgba(249,243,239,0.9);
  border:none;cursor:pointer;font-family:'Manrope',sans-serif;
  font-size:11px;font-weight:800;letter-spacing:0.05em;transition:all .2s ease;
}
header.scrolled .lang-switch button,header.solid .lang-switch button{color:var(--ink-soft);}
.lang-switch button.active{background:var(--cream);color:var(--navy);}
header.scrolled .lang-switch button.active,
header.solid .lang-switch button.active{background:var(--navy);color:var(--cream);}

.burger{display:none;background:none;border:none;cursor:pointer;padding:8px;}
.burger span{display:block;width:22px;height:2px;background:var(--cream);margin:4px 0;transition:.3s;}
header.scrolled .burger span,header.solid .burger span{background:var(--navy);}
.mobile-menu{
  position:fixed;inset:0;background:var(--navy);z-index:199;
  display:flex;flex-direction:column;justify-content:center;gap:6px;padding:40px;
  transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);
}
.mobile-menu.open{transform:translateX(0);}
.mobile-menu a{
  font-family:'Cormorant Garamond',serif;font-size:30px;color:var(--cream);
  padding:11px 0;border-bottom:1px solid var(--line-dark);
}
.mobile-menu .btn{margin-top:26px;}

/* ---------- HERO ---------- */
.hero{
  position:relative;min-height:100vh;display:flex;align-items:center;
  background:
    linear-gradient(180deg,rgba(18,41,58,0.82) 0%,rgba(18,41,58,0.62) 45%,rgba(18,41,58,0.92) 100%),
    url('images/hero-bg-studio.jpg') center bottom/cover no-repeat,
    radial-gradient(ellipse at 25% 15%,#2E5A78 0%,#1B3C53 50%,#12293A 100%);
  color:var(--cream);overflow:hidden;
}
.hero::before{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(112deg,rgba(210,193,134,0.05) 0 1px,transparent 1px 96px);
}

/* Hero : version WebP (≈ -40 % de poids) quand le navigateur sait la lire */
@supports (background-image:image-set(url('images/hero-bg-studio.webp') type('image/webp'))){
  .hero{
    background:
      linear-gradient(180deg,rgba(18,41,58,0.82) 0%,rgba(18,41,58,0.62) 45%,rgba(18,41,58,0.92) 100%),
      image-set(url('images/hero-bg-studio.webp') type('image/webp'),url('images/hero-bg-studio.jpg') type('image/jpeg')) center bottom/cover no-repeat,
      radial-gradient(ellipse at 25% 15%,#2E5A78 0%,#1B3C53 50%,#12293A 100%);
  }
}

.hero-content{
  position:relative;z-index:2;width:100%;padding-top:70px;
  display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;
}
.hero-text{max-width:640px;}
.hero .eyebrow{margin-bottom:22px;color:var(--sand);}
.hero h1{font-size:clamp(38px,5.4vw,66px);margin-bottom:24px;color:var(--cream);}
.hero p.lead{
  font-size:17.5px;color:rgba(249,243,239,0.82);
  max-width:540px;margin-bottom:38px;
}
.hero-actions{display:flex;gap:15px;flex-wrap:wrap;}
.hero-note{
  margin-top:34px;font-size:12.5px;letter-spacing:0.05em;
  color:rgba(249,243,239,0.6);display:flex;gap:26px;flex-wrap:wrap;
}
.hero-note > span{display:flex;flex-direction:column;gap:3px;}
.hero-note b{
  color:var(--sand);font-weight:700;font-family:'Cormorant Garamond',serif;
  font-size:27px;line-height:1;
}

/* ---------- SIGNATURE : la machine, en bois, dans son atelier ---------- */
.hero-visual{position:relative;}
.hero-visual::before{
  content:"";position:absolute;top:-18px;right:-18px;bottom:34px;left:34px;
  border:1px solid rgba(210,193,134,0.3);z-index:0;pointer-events:none;
}
.hero-photo{
  position:relative;z-index:1;height:540px;overflow:hidden;
  background:var(--cream);
  border:1px solid rgba(210,193,134,0.35);
  box-shadow:0 46px 90px -34px rgba(0,0,0,0.6);
}
.hero-slide{
  position:absolute;inset:0;opacity:0;cursor:pointer;pointer-events:none;
  transition:opacity 1.1s cubic-bezier(.4,0,.2,1);
}
.hero-slide.active{opacity:1;pointer-events:auto;}
.hero-slide-caption{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:16px 22px;display:flex;justify-content:space-between;align-items:center;
  background:linear-gradient(0deg,rgba(18,41,58,0.72) 0%,rgba(18,41,58,0) 100%);
  opacity:0;transition:opacity 1.1s ease;
}
.hero-slide.active .hero-slide-caption{opacity:1;}
.hero-slide-caption span{
  font-size:11px;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;color:var(--cream);
}
.hero-slide-dots{position:absolute;right:16px;bottom:16px;z-index:2;display:flex;gap:7px;}
.hero-slide-dots i{
  width:6px;height:6px;border-radius:50%;background:rgba(249,243,239,0.4);
  transition:background .3s ease,transform .3s ease;
}
.hero-slide-dots i.active{background:var(--sand);transform:scale(1.3);}
@media (prefers-reduced-motion:reduce){
  .hero-slide{transition:none;}
  .hero-slide-caption{transition:none;}
}
.hero-emblem{
  position:absolute;left:-30px;bottom:-30px;z-index:3;
  width:120px;height:120px;border-radius:50%;
  background:var(--cream);border:1px solid var(--sand-deep);
  box-shadow:0 20px 44px -16px rgba(18,41,58,0.55);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;gap:2px;
}
.hero-emblem::before{
  content:"";position:absolute;inset:7px;border-radius:50%;
  border:1px dashed rgba(185,164,105,0.6);
}
.hero-emblem-word{font-family:'Cormorant Garamond',serif;font-size:23px;color:var(--navy);line-height:1;}
.hero-emblem-cap{
  font-size:8.5px;font-weight:800;letter-spacing:0.09em;text-transform:uppercase;
  color:var(--steel);max-width:76px;line-height:1.3;
}

/* page hero (pages produit) */
.page-hero{
  background:linear-gradient(140deg,var(--navy) 0%,var(--navy-deep) 100%);
  color:var(--cream);padding:calc(var(--nav-h) + 70px) 0 70px;
}
.page-hero h1{color:var(--cream);font-size:clamp(34px,5vw,58px);margin:14px 0 16px;}
.page-hero p{color:rgba(249,243,239,0.75);max-width:560px;font-size:16.5px;}
.breadcrumb{font-size:12px;color:rgba(249,243,239,0.5);letter-spacing:0.04em;}
.breadcrumb a:hover{color:var(--sand);}

/* ---------- PAGES PROJET (études de cas studios) ---------- */
.project-tag{
  display:inline-block;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;
  font-weight:800;color:var(--sand);background:rgba(210,193,134,0.12);
  border:1px solid rgba(210,193,134,0.35);padding:6px 14px;border-radius:20px;margin-bottom:18px;
}
.project-meta-band{display:flex;gap:44px;flex-wrap:wrap;margin-top:32px;}
.project-meta-band div{display:flex;flex-direction:column;gap:5px;}
.project-meta-band b{font-family:'Cormorant Garamond',serif;font-size:19px;color:var(--cream);font-weight:600;}
.project-meta-band span{font-size:11px;letter-spacing:0.09em;text-transform:uppercase;color:rgba(249,243,239,0.55);}

.placeholder-block{
  border:1.5px dashed var(--line);
  background:repeating-linear-gradient(45deg,rgba(27,60,83,0.035) 0 10px,transparent 10px 20px);
  display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;
  color:var(--ink-soft);text-align:center;padding:20px;
}
.placeholder-block .ph-icon{
  width:38px;height:38px;border-radius:50%;border:1.5px dashed var(--steel-soft);
  display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--steel-soft);font-weight:300;
}
.placeholder-block span{font-size:11px;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;}

.project-hero-photo{height:440px;margin-top:0;}
.project-hero-logo{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;
  background:linear-gradient(150deg,#F3ECE2 0%,#E8DCC8 100%);border:1px solid var(--line);
}
.project-hero-logo img{max-height:190px;width:auto;}
.project-hero-logo span{font-size:11px;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;color:var(--ink-soft);}
.project-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.project-gallery-grid .placeholder-block{height:200px;}

.project-story p{font-size:16px;color:var(--ink-soft);margin-bottom:18px;max-width:680px;}
.project-story .draft-note{
  display:inline-block;font-size:11px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;
  color:var(--steel);background:rgba(69,104,130,0.1);border:1px solid rgba(69,104,130,0.25);
  padding:4px 10px;border-radius:12px;margin-bottom:14px;
}

.project-scope{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:32px;}
.scope-item{border-left:2px solid var(--sand);padding-left:16px;}
.scope-item b{font-size:13px;color:var(--navy);font-weight:800;letter-spacing:0.03em;}
.scope-item p{font-size:13.5px;color:var(--ink-soft);margin-top:6px;}

.testimonial-block{
  max-width:720px;margin:0 auto;text-align:center;padding:56px 40px;
  background:var(--white);border:1px solid var(--line);
}
.testimonial-block .quote-mark{font-family:'Cormorant Garamond',serif;font-size:64px;color:var(--sand);line-height:1;margin-bottom:6px;}
.testimonial-block p.quote{font-family:'Cormorant Garamond',serif;font-size:23px;font-style:italic;color:var(--navy);margin-bottom:18px;}
.testimonial-block .attribution{font-size:12.5px;color:var(--ink-soft);font-weight:700;}

.project-final-cta{text-align:center;}
.project-final-cta .promise{
  display:inline-block;margin-top:22px;font-size:13px;color:var(--sand);
  border-top:1px solid rgba(249,243,239,0.2);padding-top:18px;max-width:480px;
}

/* ---------- SIMULATEUR DE DEVIS ---------- */
.quote-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:44px;align-items:start;}
.quote-card{
  background:var(--white);border:1px solid var(--line);padding:26px;
  display:grid;grid-template-columns:auto 1fr auto auto;gap:18px;align-items:center;margin-bottom:18px;
}
.quote-card-media{width:118px;height:82px;flex:none;border:1px solid var(--line);background-color:var(--white);}
.quote-card-info h3{font-size:19px;margin-bottom:4px;}
.quote-card-info p{font-size:12.5px;color:var(--ink-soft);}
.qc-material{
  display:inline-flex;align-items:center;gap:7px;margin-top:6px;
  font-size:11.5px;font-weight:700;letter-spacing:0.02em;color:var(--navy);
}
.qc-material::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sand-deep);}
.quote-card[data-selected-range="premium"] .qc-material::before{background:var(--steel);}
.quote-range-toggle{display:inline-flex;border:1px solid var(--line);border-radius:20px;overflow:hidden;}
.quote-range-toggle button{
  padding:8px 14px;border:none;background:var(--white);cursor:pointer;
  font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;letter-spacing:0.04em;
  color:var(--ink-soft);transition:all .2s ease;
}
.quote-range-toggle button.active{background:var(--navy);color:var(--cream);}
.qty-stepper{display:inline-flex;align-items:center;border:1px solid var(--line);}
.qty-stepper button{
  width:34px;height:34px;border:none;background:var(--cream-alt);cursor:pointer;
  font-size:16px;color:var(--navy);font-family:'Manrope',sans-serif;
}
.qty-stepper button:hover{background:var(--line);}
.qty-stepper span{width:34px;text-align:center;font-weight:700;font-size:14px;color:var(--navy);}

.quote-summary{
  position:sticky;top:100px;background:var(--navy);color:var(--cream);padding:32px;
}
.quote-summary h3{color:var(--cream);font-size:24px;margin-bottom:18px;}
.quote-line{
  display:flex;justify-content:space-between;gap:10px;font-size:13.5px;
  color:rgba(249,243,239,0.8);padding:9px 0;border-bottom:1px solid rgba(249,243,239,0.12);
}
.quote-line.empty{color:rgba(249,243,239,0.45);font-style:italic;}
.quote-totals{margin-top:16px;padding-top:14px;border-top:1px solid rgba(249,243,239,0.25);}
.quote-totals .row{display:flex;justify-content:space-between;font-size:13.5px;color:rgba(249,243,239,0.75);padding:5px 0;}
.quote-totals .row.discount{color:var(--sand);}
.quote-totals .row.total{
  font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--cream);
  padding-top:10px;margin-top:6px;border-top:1px solid rgba(249,243,239,0.25);
}
.quote-totals .row.total b{font-weight:700;}
.quote-vat-note{font-size:11px;color:rgba(249,243,239,0.5);margin-top:8px;}

.quote-form{margin-top:22px;display:grid;gap:12px;}
.quote-form label{font-size:11px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:rgba(249,243,239,0.6);display:block;margin-bottom:5px;}
.quote-form input,.quote-form textarea{
  width:100%;background:rgba(249,243,239,0.08);border:1px solid rgba(249,243,239,0.25);
  color:var(--cream);padding:11px 13px;font-family:'Manrope',sans-serif;font-size:14px;border-radius:2px;
}
.quote-form input::placeholder,.quote-form textarea::placeholder{color:rgba(249,243,239,0.4);}
.quote-form input:focus,.quote-form textarea:focus{outline:none;border-color:var(--sand);}
.quote-form textarea{resize:vertical;min-height:70px;}
.quote-submit-note{font-size:11.5px;color:rgba(249,243,239,0.55);margin-top:10px;}
.quote-success{display:none;text-align:center;padding:20px 0;}
.quote-success .check{
  width:52px;height:52px;border-radius:50%;background:var(--sand);color:var(--navy);
  display:flex;align-items:center;justify-content:center;font-size:26px;margin:0 auto 16px;
}
.quote-success h4{color:var(--cream);font-size:22px;margin-bottom:8px;}
.quote-success p{color:rgba(249,243,239,0.75);font-size:14px;}
.quote-error{display:none;color:#E8A0A0;font-size:12.5px;margin-top:10px;}

/* ---------- PAGE CONTACT ---------- */
.contact-methods{display:grid;gap:16px;margin:28px 0 36px;}
.contact-method{
  display:flex;gap:18px;align-items:flex-start;padding:22px;
  border:1px solid var(--line);background:var(--white);
  transition:border-color .2s ease,box-shadow .2s ease;
}
.contact-method:hover{border-color:var(--steel-soft);box-shadow:var(--shadow);}
.contact-method-icon{
  flex:none;width:44px;height:44px;border-radius:50%;background:var(--cream);
  display:flex;align-items:center;justify-content:center;color:var(--navy);
}
.contact-method-icon svg{width:20px;height:20px;fill:currentColor;}
.contact-method b{display:block;font-size:15.5px;color:var(--navy);margin-bottom:3px;}
.contact-method p{font-size:13.5px;color:var(--ink-soft);margin-bottom:6px;}
.contact-method a.cm-link{font-size:13.5px;font-weight:700;color:var(--steel);}
.contact-method a.cm-link:hover{color:var(--navy);}

/* Noms de studio cliquables : couleur "visitée" */
.proj-name-link{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease;}
.proj-name-link:hover{color:var(--sand);border-color:rgba(210,193,134,0.5);}
.proj-name-link.visited,.proj-name-link:visited{color:var(--sand);}
.trusted-logos a.visited,.trusted-logos a:visited{color:var(--sand);}

/* ---------- BANDEAU CONFIANCE ---------- */
.trusted{background:var(--navy-deep);color:var(--cream);padding:38px 0;}
.trusted-inner{display:flex;align-items:center;gap:36px;flex-wrap:wrap;justify-content:space-between;}
.trusted-label{
  font-size:11.5px;letter-spacing:0.16em;text-transform:uppercase;
  color:rgba(249,243,239,0.5);white-space:nowrap;
}
.trusted-logos{display:flex;gap:40px;flex-wrap:wrap;align-items:center;}
.trusted-logos a{
  font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:600;
  color:rgba(249,243,239,0.72);transition:color .25s ease;
}
.trusted-logos a:hover{color:var(--sand);}

/* ---------- POURQUOI NOUS ---------- */
.why-grid{
  display:grid;grid-template-columns:repeat(5,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);
}
.why-card{background:var(--cream);padding:40px 26px;display:flex;flex-direction:column;gap:13px;}
.why-tag{
  display:inline-block;font-family:'Manrope',sans-serif;font-size:10.5px;font-weight:800;
  letter-spacing:0.1em;text-transform:uppercase;color:var(--sand-deep);
  padding-bottom:9px;border-bottom:1px solid rgba(185,164,105,0.4);width:fit-content;
}
.why-card h3{font-size:20px;}
.why-card p{font-size:14px;color:var(--ink-soft);}

/* ---------- ÉQUIPEMENT (accueil) : vitrine gammes Diamond / Premium ---------- */
.equip-showcase{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start;}
.equip-showcase-intro{padding-top:6px;}
.equip-showcase-intro .eyebrow{margin-bottom:16px;}
.equip-showcase-intro h2{font-size:clamp(28px,3.2vw,38px);margin-bottom:18px;color:var(--navy);}
.equip-showcase-intro p{color:var(--ink-soft);font-size:16px;line-height:1.75;}
.equip-showcase-intro p b{color:var(--navy);}

.equip-showcase-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;}
.equip-showcase-links a{
  font-family:'Manrope',sans-serif;font-size:12.5px;font-weight:700;letter-spacing:0.04em;
  color:var(--navy);padding:10px 20px;background:#E4ECF1;border:1px solid #CFDDE6;border-radius:40px;
  transition:background .25s ease,border-color .25s ease,color .25s ease;
}
.equip-showcase-links a:hover{background:var(--navy);border-color:var(--navy);color:var(--cream);}

.equip-showcase-visual{position:relative;}
.equip-tabs{
  position:absolute;top:0;left:0;right:0;z-index:3;display:flex;
  background:rgba(249,243,239,0.94);
}
.equip-tab{
  flex:1;padding:17px 12px;font-family:'Manrope',sans-serif;font-size:12.5px;font-weight:800;
  letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-soft);
  background:transparent;border:none;cursor:pointer;transition:color .25s ease,background .25s ease;
}
.equip-tab:hover{color:var(--navy);}
.equip-tab.active{color:var(--navy);background:var(--white);box-shadow:inset 0 -2px 0 var(--sand-deep);}

.equip-photo{position:relative;height:560px;overflow:hidden;background:var(--cream-alt);}
.equip-photo-img{position:absolute;inset:0;opacity:0;transition:opacity .5s ease;}
.equip-photo-img.active{opacity:1;}

.equip-photo-caption{
  position:absolute;left:18px;right:18px;bottom:18px;z-index:2;
  background:rgba(18,41,58,0.85);color:var(--cream);padding:22px 26px;border-radius:var(--radius);
  opacity:0;pointer-events:none;transform:translateY(8px);
  transition:opacity .4s ease,transform .4s ease;
}
.equip-photo-caption.active{opacity:1;pointer-events:auto;transform:translateY(0);}
.equip-photo-caption p{font-size:14.5px;line-height:1.65;color:rgba(249,243,239,0.94);}

/* ---------- GAMMES / PRIX (fiches produit) ---------- */
.range-toggle{
  display:inline-flex;background:var(--white);border:1px solid var(--line);
  border-radius:40px;padding:5px;margin-bottom:44px;
}
.range-toggle button{
  padding:11px 30px;border:none;background:transparent;border-radius:40px;
  font-family:'Manrope',sans-serif;font-size:12.5px;font-weight:800;
  letter-spacing:0.06em;text-transform:uppercase;color:var(--ink-soft);
  cursor:pointer;transition:all .25s ease;
}
.range-toggle button.active{background:var(--navy);color:var(--cream);}

.equip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.equip-card{
  background:var(--white);border:1px solid var(--line);overflow:hidden;
  display:flex;flex-direction:column;
  transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease;
}
.equip-card:hover{box-shadow:var(--shadow);transform:translateY(-4px);border-color:var(--steel-soft);}
.equip-media{
  height:230px;position:relative;display:flex;align-items:flex-start;
  justify-content:space-between;padding:16px;
  background:linear-gradient(150deg,#DCE5EB 0%,#B8CAD6 55%,#8FA9BC 100%);
}
.equip-card[data-range="premium"] .equip-media{
  background:linear-gradient(150deg,#F0E9DC 0%,#DFD2B4 55%,#C8B583 100%);
}
.badge{
  font-size:10.5px;letter-spacing:0.12em;text-transform:uppercase;font-weight:800;
  padding:6px 11px;border-radius:2px;
}
.badge-diamond{background:var(--navy);color:var(--sand);}
.badge-premium{background:var(--sand);color:var(--navy);}
.equip-body{padding:26px;display:flex;flex-direction:column;flex:1;}
.equip-body h3{font-size:24px;margin-bottom:9px;}
.equip-body>p{font-size:14px;color:var(--ink-soft);margin-bottom:18px;}
.equip-specs{margin-bottom:20px;}
.equip-specs li{
  font-size:13px;color:var(--ink-soft);padding:6px 0 6px 20px;position:relative;
  border-bottom:1px solid var(--line);
}
.equip-specs li:last-child{border-bottom:none;}
.equip-specs li::before{
  content:"";position:absolute;left:0;top:14px;width:8px;height:1.5px;background:var(--sand-deep);
}
.equip-foot{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);}
.price-row{display:flex;align-items:baseline;gap:9px;margin-bottom:16px;}
.price{font-family:'Cormorant Garamond',serif;font-size:34px;font-weight:700;color:var(--navy);}
.price-unit{font-size:12px;font-weight:700;letter-spacing:0.08em;color:var(--ink-soft);text-transform:uppercase;}

/* ---------- REMISES VOLUME ---------- */
.volume-band{
  margin-top:56px;background:var(--navy);color:var(--cream);
  padding:44px;display:grid;grid-template-columns:1.1fr 2fr;gap:44px;align-items:center;
}
.volume-band h3{color:var(--cream);font-size:30px;margin:12px 0 8px;}
.volume-band>div>p{color:rgba(249,243,239,0.7);font-size:14.5px;}
.volume-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-dark);}
.tier{background:var(--navy);padding:26px 20px;text-align:center;}
.tier b{
  display:block;font-family:'Cormorant Garamond',serif;font-size:46px;
  color:var(--sand);font-weight:700;line-height:1;margin-bottom:8px;
}
.tier span{font-size:12.5px;color:rgba(249,243,239,0.75);letter-spacing:0.04em;}

/* ---------- CONSEIL ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:78px;align-items:center;}
.split-media{height:520px;background:linear-gradient(155deg,var(--steel) 0%,var(--navy-deep) 100%);position:relative;overflow:hidden;}
.split-media::after{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(58deg,rgba(210,193,134,0.07) 0 2px,transparent 2px 64px);
}
.split-media.sand{background:linear-gradient(200deg,#EDE4D2 0%,#D2C186 60%,#B9A469 100%);}
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:34px 0 38px;}
.pillar{border-left:2px solid var(--sand);padding-left:16px;}
.pillar b{font-size:12.5px;color:var(--navy);font-weight:800;letter-spacing:0.05em;text-transform:uppercase;}
.pillar p{font-size:13.5px;color:var(--ink-soft);margin-top:5px;}

/* ---------- HISTOIRE / FONDATEURS ---------- */
.story p{font-size:16.5px;color:var(--ink-soft);margin-bottom:20px;max-width:640px;}
.story p.highlight{
  font-family:'Cormorant Garamond',serif;font-size:24px;font-style:italic;
  color:var(--navy);border-left:2px solid var(--sand);padding-left:22px;margin:32px 0;
}
.founders{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:56px;}
.founder{background:var(--white);border:1px solid var(--line);padding:0;overflow:hidden;}
.founder-media{height:260px;background:linear-gradient(150deg,var(--steel) 0%,var(--navy) 100%);}
.founder:nth-child(2) .founder-media:not(.ph){background:linear-gradient(150deg,#E4D9BF 0%,#B9A469 100%);}
.founder-body{padding:28px;}
.founder-body h3{font-size:24px;margin-bottom:4px;}
.founder-role{
  font-size:11.5px;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--sand-deep);font-weight:800;margin-bottom:14px;display:block;
}
.founder-body p{font-size:14px;color:var(--ink-soft);}
.stats{display:flex;gap:48px;margin-top:38px;flex-wrap:wrap;}
.stat b{
  display:block;font-family:'Cormorant Garamond',serif;font-size:42px;
  color:var(--steel);font-weight:700;line-height:1;margin-bottom:6px;
}
.stat span{font-size:12px;text-transform:uppercase;letter-spacing:0.07em;color:var(--ink-soft);}

/* ---------- PROJETS ---------- */
.partners-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:8px;}
.partner-card{
  display:flex;align-items:center;gap:16px;padding:16px;
  background:var(--white);border:1px solid var(--line);border-radius:var(--radius);
  transition:box-shadow .3s ease,transform .3s ease;
}
.partner-card:hover{box-shadow:var(--shadow);transform:translateY(-3px);}
.partner-media{width:56px;height:56px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--cream);}
.partner-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;}
.partner-body b{font-size:15.5px;color:var(--navy);}
.partner-body span{font-size:13px;color:var(--ink-soft);}
.partner-ig{width:20px;height:20px;flex-shrink:0;color:var(--sand-deep);}

.proj-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:26px;}
.proj-card{position:relative;height:360px;overflow:hidden;display:block;}
.proj-media-link{position:absolute;inset:0;z-index:1;display:block;}
.proj-media{
  position:absolute;inset:0;transition:transform .5s ease;
  background:linear-gradient(180deg,transparent 38%,rgba(18,41,58,0.94) 100%),
             linear-gradient(140deg,var(--steel) 0%,var(--navy-deep) 100%);
}
.proj-card:nth-child(2) .proj-media{
  background:linear-gradient(180deg,transparent 38%,rgba(18,41,58,0.94) 100%),
             linear-gradient(140deg,#C8B583 0%,#7A6A40 100%);
}
.proj-card:nth-child(3) .proj-media{
  background:linear-gradient(180deg,transparent 38%,rgba(18,41,58,0.94) 100%),
             linear-gradient(140deg,#2E5A78 0%,#12293A 100%);
}
.proj-card:nth-child(4) .proj-media{
  background:linear-gradient(180deg,transparent 38%,rgba(18,41,58,0.94) 100%),
             linear-gradient(140deg,#8FA9BC 0%,#1B3C53 100%);
}
.proj-card:hover .proj-media{transform:scale(1.05);}
.proj-body{position:absolute;bottom:0;left:0;right:0;padding:28px;color:var(--cream);z-index:2;}
.proj-tag{font-size:10.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--sand);font-weight:800;margin-bottom:8px;display:block;}
.proj-body h3{color:var(--cream);font-size:25px;margin-bottom:7px;}
.proj-body h3 .proj-name-link{font-family:inherit;font-size:inherit;font-weight:inherit;}
.proj-body p{font-size:13px;color:rgba(249,243,239,0.75);}
.proj-link{font-size:12px;color:var(--sand);margin-top:12px;display:inline-block;font-weight:700;position:relative;z-index:2;}
.proj-link:hover{text-decoration:underline;}

/* ---------- BANDEAU ÉCOLE ---------- */
.academy-band{
  display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;
  background:linear-gradient(120deg,var(--steel) 0%,var(--navy) 100%);
  color:var(--cream);padding:56px;
}
.academy-band h2{color:var(--cream);font-size:34px;max-width:520px;margin-top:12px;}
.academy-band p{color:rgba(249,243,239,0.82);margin-top:12px;max-width:440px;font-size:15px;}

/* ---------- FAQ ---------- */
.faq-list{max-width:860px;margin:0 auto;border-top:1px solid var(--line);}
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{
  width:100%;background:none;border:none;cursor:pointer;text-align:left;
  padding:26px 44px 26px 0;position:relative;
  font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:600;color:var(--navy);
}
.faq-q::after{
  content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);
  font-family:'Manrope',sans-serif;font-size:22px;font-weight:400;color:var(--sand-deep);
  transition:transform .3s ease;
}
.faq-item.open .faq-q::after{content:"–";}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s ease;}
.faq-item.open .faq-a{max-height:520px;padding-bottom:26px;}
.faq-a p{font-size:15px;color:var(--ink-soft);max-width:700px;}
.faq-a strong{color:var(--navy);}

/* ---------- TÉMOIGNAGES ---------- */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.testi-card{background:var(--white);border:1px solid var(--line);padding:34px;display:flex;flex-direction:column;gap:18px;}
.testi-quote{font-family:'Cormorant Garamond',serif;font-size:20px;font-style:italic;color:var(--navy);}
.testi-name{font-size:13px;font-weight:800;color:var(--steel);}
.testi-role{font-size:12px;color:var(--ink-soft);}

/* ---------- CTA FINAL ---------- */
.final-cta{
  background:linear-gradient(180deg,rgba(18,41,58,0.9) 0%,rgba(18,41,58,0.97) 100%),
             radial-gradient(ellipse at 70% 25%,#2E5A78 0%,#12293A 70%);
  color:var(--cream);text-align:center;padding:140px 0;
}
.final-cta h2{color:var(--cream);font-size:clamp(32px,5vw,54px);margin:16px 0 18px;}
.final-cta p{color:rgba(249,243,239,0.75);max-width:500px;margin:0 auto 38px;}
.final-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;}

/* ---------- FOOTER ---------- */
footer{background:var(--navy-deep);color:rgba(249,243,239,0.7);padding:70px 0 28px;}
.footer-grid{
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;
  padding-bottom:48px;border-bottom:1px solid var(--line-dark);
}
.footer-grid h4{color:var(--cream);font-size:24px;margin-bottom:14px;}
.footer-grid h4 em{font-style:normal;color:var(--sand);}
.footer-grid>div>p{font-size:13.5px;line-height:1.7;color:rgba(249,243,239,0.5);max-width:290px;}
.footer-col>span:first-child{
  display:block;font-size:11px;letter-spacing:0.13em;text-transform:uppercase;
  color:rgba(249,243,239,0.4);margin-bottom:16px;font-weight:800;
}
.footer-col a{display:block;font-size:14px;color:rgba(249,243,239,0.75);margin-bottom:10px;transition:color .2s;}
.footer-col a:hover{color:var(--sand);}
.footer-static{display:block;font-size:14px;color:rgba(249,243,239,0.55);margin-bottom:10px;}
.footer-bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:24px;font-size:12px;color:rgba(249,243,239,0.4);flex-wrap:wrap;gap:12px;
}

/* ---------- WHATSAPP FLOTTANT ---------- */
.wa-float{
  position:fixed;right:22px;bottom:22px;z-index:150;
  width:56px;height:56px;border-radius:50%;
  background:#25D366;display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 30px -8px rgba(0,0,0,0.35);transition:transform .25s ease;
}
.wa-float:hover{transform:scale(1.07);}
.wa-float svg{width:29px;height:29px;fill:#fff;}

/* ---------- PAGES PRODUIT ---------- */
.product-top{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:start;}
.gallery-main{
  height:460px;background:linear-gradient(150deg,#DCE5EB 0%,#B8CAD6 55%,#8FA9BC 100%);
  display:flex;align-items:center;justify-content:center;
  font-family:'Cormorant Garamond',serif;font-size:19px;color:var(--navy);
  border:1px solid var(--line);
}
.gallery-thumbs{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:12px;margin-top:12px;}
.thumb{
  height:88px;border:1.5px solid var(--line);
  background:linear-gradient(150deg,#E8EEF2 0%,#C6D5DF 100%);
  display:flex;align-items:center;justify-content:center;
  font-size:10.5px;color:var(--steel);letter-spacing:0.06em;text-transform:uppercase;
  cursor:pointer;transition:border-color .2s;
}
.thumb:hover{border-color:var(--steel);}
.thumb.active{border-color:var(--navy);}

.range-picker{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:26px 0 22px;}
.range-option{
  border:1.5px solid var(--line);background:var(--white);padding:20px;cursor:pointer;
  transition:border-color .2s ease,background .2s ease;
}
.range-option.selected{border-color:var(--navy);background:var(--cream);}
.range-option b{display:block;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--navy);margin-bottom:6px;}
.range-option .ro-price{font-family:'Cormorant Garamond',serif;font-size:29px;color:var(--navy);font-weight:700;}
.range-option small{display:block;font-size:12px;color:var(--ink-soft);margin-top:4px;}

.material-note{
  display:flex;align-items:flex-start;gap:11px;padding:14px 16px;margin-bottom:22px;
  background:var(--cream);border-left:3px solid var(--sand-deep);
  font-size:13.5px;line-height:1.5;color:var(--navy);
}
.material-note[data-material="premium"]{background:#EEF2EF;border-left-color:var(--steel);}
.material-note-icon{
  flex:none;width:9px;height:9px;border-radius:50%;margin-top:5px;
  background:var(--sand-deep);
}
.material-note[data-material="premium"] .material-note-icon{background:var(--steel);}
.material-note b{color:var(--navy);}

.product-meta{margin:24px 0;border-top:1px solid var(--line);}
.product-meta div{display:flex;gap:18px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px;}
.product-meta div b{min-width:170px;color:var(--navy);font-weight:700;}
.product-meta div span{color:var(--ink-soft);}

.box-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 44px;}
.box-grid li{
  padding:14px 0 14px 30px;border-bottom:1px solid var(--line);
  font-size:14.5px;color:var(--ink-soft);position:relative;
}
.box-grid li::before{
  content:"";position:absolute;left:0;top:20px;width:12px;height:5px;
  border-left:1.5px solid var(--sand-deep);border-bottom:1.5px solid var(--sand-deep);
  transform:rotate(-45deg);
}
.box-grid li b{color:var(--navy);font-weight:700;}

.compare-table{width:100%;border-collapse:collapse;background:var(--white);border:1px solid var(--line);}
.compare-table th,.compare-table td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--line);font-size:14.5px;}
.compare-table th{
  background:var(--navy);color:var(--cream);font-family:'Manrope',sans-serif;
  font-size:11.5px;letter-spacing:0.1em;text-transform:uppercase;font-weight:800;
}
.compare-table td:first-child{font-weight:700;color:var(--navy);width:34%;}
.compare-table td{color:var(--ink-soft);}
.compare-table tr:last-child td{border-bottom:none;}

.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}

/* ---------- ANIMATIONS ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:translateY(0);}

/* Paragraphes qui s'affichent un à un au scroll */
.reveal-stagger p{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease;}
.reveal-stagger.in p{opacity:1;transform:translateY(0);}
.reveal-stagger.in p:nth-of-type(1){transition-delay:.05s;}
.reveal-stagger.in p:nth-of-type(2){transition-delay:.2s;}
.reveal-stagger.in p:nth-of-type(3){transition-delay:.35s;}
.reveal-stagger.in p:nth-of-type(4){transition-delay:.5s;}
.reveal-stagger.in p:nth-of-type(5){transition-delay:.65s;}
.reveal-stagger.in p:nth-of-type(6){transition-delay:.8s;}
.reveal-stagger.in p:nth-of-type(7){transition-delay:.95s;}
.reveal-stagger.in p:nth-of-type(8){transition-delay:1.1s;}
.reveal-stagger.in p:nth-of-type(9){transition-delay:1.25s;}
.reveal-stagger.in p:nth-of-type(10){transition-delay:1.4s;}

/* Compteurs animés (hero-note) */
.hero-note b[data-count]{display:inline-block;font-variant-numeric:tabular-nums;}

@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
  .reveal-stagger p{opacity:1;transform:none;transition:none;}
  html{scroll-behavior:auto;}
}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1024px){
  .why-grid{grid-template-columns:repeat(2,1fr);}
  .why-grid .why-card:last-child{grid-column:1 / -1;}
  .equip-grid,.proj-grid,.testi-grid,.related-grid{grid-template-columns:repeat(2,1fr);}
  .equip-showcase{grid-template-columns:1fr;gap:36px;}
  .equip-photo{height:440px;}
  .split,.product-top,.founders{grid-template-columns:1fr;gap:44px;}
  .split-media{height:340px;}
  .hero{min-height:0;padding:calc(var(--nav-h) + 50px) 0 60px;}
  .hero-content{grid-template-columns:1fr;gap:48px;}
  .hero-text{max-width:none;}
  .hero-photo{height:360px;}
  .hero-visual::before{top:-14px;right:-14px;bottom:26px;left:26px;}
  .hero-emblem{width:96px;height:96px;left:-18px;bottom:-18px;}
  .hero-emblem-word{font-size:19px;}
  .volume-band{grid-template-columns:1fr;gap:32px;padding:36px;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .nav-links{display:none;}
  .burger{display:block;}
}
@media (max-width:640px){
  .container,.container-narrow{padding:0 20px;}
  section{padding:74px 0;}
  .why-grid,.equip-grid,.proj-grid,.testi-grid,.related-grid,
  .pillars,.box-grid,.range-picker{grid-template-columns:1fr;}
  .volume-tiers{grid-template-columns:1fr;}
  .equip-photo{height:340px;}
  .equip-tab{font-size:11px;padding:14px 8px;}
  .equip-photo-caption{padding:18px 20px;}
  .equip-photo-caption p{font-size:13.5px;}
  .hero-actions{width:100%;flex-direction:column;}
  .hero-actions .btn{width:100%;}
  .hero-photo{height:260px;}
  .hero-visual::before{display:none;}
  .hero-emblem{width:82px;height:82px;left:-10px;bottom:-16px;}
  .hero-emblem b{font-size:16px;}
  .hero-emblem span{font-size:7.5px;max-width:60px;}
  .academy-band{padding:34px;}
  .footer-grid{grid-template-columns:1fr;}
  .stats{gap:30px;}
  .gallery-main{height:280px;}
  .product-meta div{flex-direction:column;gap:4px;}
  .product-meta div b{min-width:auto;}
  .faq-q{font-size:19px;}
  .wa-float{width:50px;height:50px;right:16px;bottom:16px;}
}

/* ---------- BLOG : CONSEILS & EXPERTISE ---------- */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.blog-card{
  display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;
}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.blog-card-media{height:190px;background-size:cover;background-position:center;background-color:var(--cream-alt);}
.blog-card-body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1;}
.blog-tag{
  font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--sand-deep);margin-bottom:12px;
}
.blog-card h2,.blog-card h3{font-size:23px;line-height:1.25;color:var(--navy);margin-bottom:12px;}
.blog-card p{font-size:14.5px;color:var(--ink-soft);margin-bottom:18px;flex:1;}
.blog-card .read-more{font-size:13px;font-weight:800;color:var(--navy);letter-spacing:0.03em;}
.blog-card .read-more::after{content:" →";}

.article-wrap{max-width:820px;margin:0 auto;padding:64px 28px 40px;}
.article-meta{
  display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--ink-soft);
  padding-bottom:22px;margin-bottom:34px;border-bottom:1px solid var(--line);
}
.article-meta b{color:var(--navy);font-weight:700;}
.article-answer{
  background:var(--white);border-left:4px solid var(--sand-deep);padding:22px 26px;
  margin:0 0 38px;border-radius:0 var(--radius) var(--radius) 0;box-shadow:var(--shadow);
}
.article-answer .label{
  display:block;font-family:'Manrope',sans-serif;font-size:11px;font-weight:800;
  letter-spacing:0.12em;text-transform:uppercase;color:var(--sand-deep);margin-bottom:8px;
}
.article-answer p{font-size:16.5px;color:var(--ink);margin:0;}
.article-body h2{font-size:clamp(26px,3.2vw,34px);color:var(--navy);margin:50px 0 16px;line-height:1.2;}
.article-body h3{font-size:22px;color:var(--navy);margin:30px 0 10px;line-height:1.3;}
.article-body p{font-size:16.5px;color:var(--ink);margin-bottom:18px;line-height:1.8;}
.article-body ul,.article-body ol{margin:0 0 22px 22px;}
.article-body li{font-size:16.5px;color:var(--ink);margin-bottom:8px;line-height:1.7;}
.article-body a{color:var(--steel);border-bottom:1px solid var(--sand);}
.article-body a:hover{color:var(--navy);}
.article-body strong{color:var(--navy);}
.table-scroll{overflow-x:auto;margin:6px 0 10px;-webkit-overflow-scrolling:touch;}
.article-body .compare-table{min-width:560px;}
.article-body .compare-table td:first-child{width:auto;}
.compare-table td.num,.compare-table th.num{text-align:right;white-space:nowrap;}
.compare-table tr.total td{background:var(--cream-alt);font-weight:800;color:var(--navy);}
.table-note{font-size:13px;color:var(--ink-soft);margin:6px 0 26px;font-style:italic;}
.hypo-note{
  background:var(--cream-alt);border:1px dashed var(--sand-deep);padding:16px 20px;margin:22px 0;
  font-size:14.5px;color:var(--ink-soft);border-radius:var(--radius);
}
.hypo-note b{color:var(--navy);}
.formula{
  background:var(--navy);color:var(--cream);padding:20px 24px;margin:22px 0;border-radius:var(--radius);
  font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;line-height:1.7;
}
.formula em{font-style:normal;color:var(--sand);}
.article-faq{margin-top:10px;}
.article-faq h3{margin-top:26px;}
.article-cta{
  background:var(--navy);color:var(--cream);padding:38px 36px;margin:50px 0 10px;border-radius:var(--radius);
}
.article-cta h2{color:var(--cream);margin:0 0 12px;font-size:clamp(24px,3vw,30px);}
.article-cta p{color:rgba(249,243,239,0.85);margin-bottom:22px;font-size:16px;}
.article-cta .btn{margin:0 12px 10px 0;}
.article-related{margin-top:46px;padding-top:30px;border-top:1px solid var(--line);}
.article-related h2{font-size:22px;margin:0 0 14px;}
.article-related ul{margin:0 0 0 20px;}
.article-sources{font-size:13.5px;color:var(--ink-soft);}
@media (max-width:1024px){
  .blog-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:640px){
  .blog-grid{grid-template-columns:1fr;}
  .article-wrap{padding:44px 20px 30px;}
  .article-cta{padding:28px 22px;}
  .article-cta .btn{display:flex;width:100%;margin-right:0;justify-content:center;}
}

/* Navigation : 7 liens (Conseils ajouté) -> on resserre, puis menu burger sous 1200 px */
@media (max-width:1320px){
  .nav-links{gap:18px;}
  .nav-links a{font-size:12.5px;}
  .nav-right{gap:12px;}
}
@media (max-width:1199px){
  .nav-links{display:none;}
  .burger{display:block;}
}
@media (max-width:640px){
  .article-body .compare-table{min-width:480px;}
  .article-body .compare-table th,.article-body .compare-table td{padding:11px 12px;font-size:13px;}
  .article-body .compare-table th{font-size:10.5px;letter-spacing:0.06em;}
  .article-body .compare-table td:first-child{min-width:150px;}
}
