/* HIBANAS — À propos : page autonome, simple et premium */
body.page-about{
  --about-ink:#20372e;
  --about-text:#65766f;
  --about-muted:#87978f;
  --about-green:#17865a;
  --about-green-deep:#0e704b;
  --about-soft:#f4f9f6;
  --about-line:#dce8e1;
  --about-shadow:0 22px 60px rgba(25,68,52,.10);
}

body.page-about .about-inline-icon,body.page-about .about-icon svg,body.page-about .about-check svg,body.page-about .about-process__icon svg{
  width:1em;
  height:1em;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body.page-about .about-inline-icon{width:17px;height:17px;flex:0 0 auto}

body.page-about .about-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(4rem,7vw,6.5rem) 0 clamp(3.8rem,6.5vw,5.7rem);
  background:
    radial-gradient(circle at 92% 6%,rgba(23,134,90,.08),transparent 29%),
    linear-gradient(135deg,#fff 0%,#f8fbf9 60%,#f0f8f4 100%);
  border-bottom:1px solid var(--about-line);
}
body.page-about .about-hero::before{
  content:"";
  position:absolute;
  left:-120px;
  bottom:-175px;
  width:390px;
  height:390px;
  border:1px solid rgba(23,134,90,.08);
  border-radius:50%;
  pointer-events:none;
}


body.page-about .about-hero h1{
  max-width:11.5ch;
  margin:0;
  color:var(--about-ink);
  font-size:clamp(3.05rem,5.3vw,5.15rem);
  line-height:.99;
  letter-spacing:-.055em;
}
body.page-about .about-hero h1 em,
body.page-about .about-story h2 em,
body.page-about .about-section-head h2 em{font-style:normal;color:var(--about-green)}



















body.page-about .about-expertise{background:#fff;border-bottom:1px solid var(--about-line)}
body.page-about .about-expertise__grid{display:grid;grid-template-columns:repeat(3,1fr)}
body.page-about .about-expertise__item{
  display:flex;
  align-items:center;
  gap:.95rem;
  padding:1.35rem clamp(1rem,2.2vw,1.8rem);
  border-right:1px solid var(--about-line);
}
body.page-about .about-expertise__item:first-child{padding-left:0}
body.page-about .about-expertise__item:last-child{padding-right:0;border-right:0}
body.page-about .about-icon img,body.page-about .about-check img,body.page-about .about-process__icon img{display:block;width:100%;height:100%;object-fit:contain}
body.page-about .about-icon{
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  flex:0 0 50px;
  border:1px solid #d7e9df;
  border-radius:15px;
  background:linear-gradient(145deg,#f6fbf8,#edf7f1);
  color:var(--about-green);
  font-size:22px;
  box-shadow:0 8px 20px rgba(24,112,76,.07);
  padding:8px;
}
body.page-about .about-expertise__item>span:last-child{display:grid;gap:.14rem}
body.page-about .about-expertise__item strong{color:var(--about-ink);font-size:.92rem}
body.page-about .about-expertise__item small{color:var(--about-text);font-size:.76rem;line-height:1.35}

body.page-about .about-story{background:#fff}
body.page-about .about-story__grid{
  display:grid;
  grid-template-columns:minmax(340px,.76fr) minmax(0,1fr);
  gap:clamp(3rem,7vw,6.7rem);
  align-items:center;
}
body.page-about .about-story__visual{
  position:relative;
  height:570px;
  margin:0;
  overflow:hidden;
  border-radius:24px 24px 66px 24px;
  background:#e9f3ed;
}
body.page-about .about-story__visual img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
body.page-about .about-story__visual::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:32%;
  background:linear-gradient(to top,rgba(10,39,28,.58),transparent);
  pointer-events:none;
}
body.page-about .about-story__visual figcaption{
  position:absolute;
  z-index:2;
  left:1.3rem;
  bottom:1.25rem;
  display:flex;
  align-items:center;
  gap:.7rem;
  color:#fff;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}
body.page-about .about-story__visual figcaption span{width:4px;height:4px;border-radius:50%;background:#8dd6b4}
body.page-about .about-story__content h2{
  max-width:13ch;
  margin:0;
  color:var(--about-ink);
  font-size:clamp(2.4rem,4.15vw,3.95rem);
  line-height:1.03;
  letter-spacing:-.047em;
}
body.page-about .about-story__lead{
  max-width:650px;
  margin:1.2rem 0 0;
  color:var(--about-text);
  line-height:1.78;
}
body.page-about .about-story__checks{display:grid;gap:0;margin-top:1.65rem;border-top:1px solid var(--about-line)}
body.page-about .about-story__checks>p{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:1rem;
  margin:0;
  padding:1rem 0;
  border-bottom:1px solid var(--about-line);
}
body.page-about .about-check{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  margin-top:.08rem;
  border:1px solid #d8eade;
  border-radius:12px;
  background:linear-gradient(145deg,#f7fcf9,#edf7f1);
  color:var(--about-green);
  font-size:17px;
  padding:6px;
}
body.page-about .about-story__checks p>span:last-child{display:grid;gap:.18rem}
body.page-about .about-story__checks strong{color:var(--about-ink);font-size:.94rem}
body.page-about .about-story__checks small{max-width:560px;color:var(--about-text);font-size:.81rem;line-height:1.55}

body.page-about .about-process{
  background:var(--about-soft);
  border-block:1px solid var(--about-line);
}
body.page-about .about-section-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.58fr);
  gap:2.6rem;
  align-items:end;
  margin-bottom:2.25rem;
}
body.page-about .about-section-head--compact{grid-template-columns:1fr;margin-bottom:1.8rem}
body.page-about .about-section-head h2{
  max-width:13ch;
  margin:0;
  color:var(--about-ink);
  font-size:clamp(2.3rem,3.9vw,3.7rem);
  line-height:1.04;
  letter-spacing:-.043em;
}
body.page-about .about-section-head>p{max-width:470px;margin:0 .1rem .15rem 0;color:var(--about-text);line-height:1.7}
body.page-about .about-process__grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--about-line)}
body.page-about .about-process__step{
  position:relative;
  min-height:245px;
  padding:1.55rem 2rem 1.2rem 0;
  border-right:1px solid var(--about-line);
}
body.page-about .about-process__step:not(:first-child){padding-left:2rem}
body.page-about .about-process__step:last-child{border-right:0;padding-right:0}
body.page-about .about-process__number{
  position:absolute;
  right:1.4rem;
  top:1.35rem;
  color:#bfd3c7;
  font-size:.73rem;
  font-weight:900;
  letter-spacing:.1em;
}
body.page-about .about-process__step:last-child .about-process__number{right:0}
body.page-about .about-process__icon{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  margin-bottom:2.1rem;
  border:1px solid #d6e7dd;
  border-radius:16px;
  background:linear-gradient(145deg,#ffffff,#f1f8f4);
  color:var(--about-green);
  font-size:23px;
  box-shadow:0 10px 26px rgba(27,75,56,.06);
  padding:8px;
}
body.page-about .about-process__step h3{margin:0 0 .55rem;color:var(--about-ink);font-size:1.12rem}
body.page-about .about-process__step p{max-width:310px;margin:0;color:var(--about-text);font-size:.86rem;line-height:1.65}

body.page-about .about-cta{padding-top:clamp(3.4rem,6vw,5.5rem);background:#fff}
body.page-about .about-cta__panel{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2.5rem;
  padding:clamp(2.1rem,4vw,3.45rem);
  border:1px solid #cfe3d7;
  border-radius:24px;
  background:linear-gradient(135deg,#edf8f2 0%,#f8fbf9 100%);
}
body.page-about .about-cta__panel::after{
  content:"";
  position:absolute;
  right:-80px;
  bottom:-125px;
  width:270px;
  height:270px;
  border:1px solid rgba(23,134,90,.13);
  border-radius:50%;
  pointer-events:none;
}
body.page-about .about-cta__panel>div{position:relative;z-index:1;max-width:730px}
body.page-about .about-cta__panel h2{
  max-width:18ch;
  margin:0;
  color:var(--about-ink);
  font-size:clamp(2rem,3.25vw,3.15rem);
  line-height:1.07;
  letter-spacing:-.04em;
}
body.page-about .about-cta__panel p{max-width:620px;margin:1rem 0 0;color:var(--about-text);line-height:1.67}
body.page-about .about-cta__panel>.btn{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.55rem;flex:0 0 auto}

@media (min-width:821px) and (hover:hover){body.page-about .about-story__visual:hover img{transform:scale(1.025)}}

@media (max-width:1000px){
  
  
  body.page-about .about-story__grid{grid-template-columns:minmax(290px,.7fr) minmax(0,1fr);gap:3rem}
  body.page-about .about-story__visual{height:500px}
}

@media (max-width:820px){
  body.page-about .about-story__grid,body.page-about .about-section-head{grid-template-columns:1fr}
  
  
  body.page-about .about-expertise__grid{grid-template-columns:1fr}
  body.page-about .about-expertise__item{padding:1rem 0;border-right:0;border-bottom:1px solid var(--about-line)}
  body.page-about .about-expertise__item:last-child{border-bottom:0}
  body.page-about .about-story__visual{height:430px;max-width:720px}
  body.page-about .about-section-head{gap:1rem}
  body.page-about .about-process__grid{grid-template-columns:1fr}
  body.page-about .about-process__step,
  body.page-about .about-process__step:not(:first-child),
  body.page-about .about-process__step:last-child{min-height:0;padding:1.25rem 0;border-right:0;border-bottom:1px solid var(--about-line)}
  body.page-about .about-process__step:last-child{border-bottom:0}
  body.page-about .about-process__number,
  body.page-about .about-process__step:last-child .about-process__number{right:0;top:1.3rem}
  body.page-about .about-process__icon{margin-bottom:1rem}
  body.page-about .about-cta__panel{align-items:flex-start;flex-direction:column}
}

@media (max-width:560px){
  body.page-about .about-hero{padding-top:3rem}
  body.page-about .about-hero h1{font-size:clamp(2.55rem,12vw,3.65rem)}
  
  
  
  
  
  
  
  
  body.page-about .about-story__visual{height:360px;border-radius:20px 20px 48px 20px}
  body.page-about .about-story__visual figcaption{font-size:.64rem;gap:.5rem}
  body.page-about .about-story__checks>p{grid-template-columns:34px minmax(0,1fr);gap:.72rem}
  body.page-about .about-cta__panel{border-radius:19px}
}

@media (prefers-reduced-motion:reduce){body.page-about .about-story__visual img{transition:none!important}}


/* v51 — structure compacte de la page À propos, cohérente avec Produits et Services */
body.page-about .about-hero.about-hero--compact{
  padding:clamp(1.65rem,3vw,2.35rem) 0 clamp(1.2rem,2vw,1.6rem)!important;
  background:linear-gradient(180deg,#fff 0%,#f8fbf9 100%)!important;
  border-bottom:1px solid var(--about-line)!important;
}
body.page-about .about-hero.about-hero--compact::before,
body.page-about .about-hero.about-hero--compact::after{display:none!important}
body.page-about .about-hero__compact{display:block;max-width:none}
body.page-about .about-intro{
  display:grid;
  grid-template-columns:clamp(158px,12vw,194px) minmax(0,1fr) clamp(158px,12vw,194px);
  column-gap:clamp(1rem,3vw,2.5rem);
  row-gap:.55rem;
  align-items:center;
}
body.page-about .about-intro::before{
  content:"";
  grid-column:1;
  grid-row:1/3;
}
body.page-about .about-intro .eyebrow{
  grid-column:2;
  justify-self:center;
  align-self:end;
  margin-bottom:0!important;
  text-align:center;
}
body.page-about .about-intro h1{
  grid-column:2;
  justify-self:center;
  max-width:780px!important;
  margin:0!important;
  color:var(--about-ink)!important;
  font-size:clamp(2.05rem,3.45vw,3.15rem)!important;
  line-height:1.06!important;
  letter-spacing:-.043em!important;
  text-align:center;
}
body.page-about .about-since-badge{
  grid-column:3;
  grid-row:1/3;
  align-self:center;
  justify-self:end;
  width:clamp(158px,12vw,194px);
  aspect-ratio:640/629;
  margin:0!important;
  background:url('../../img/content/depuis-2009-badge.webp') center/contain no-repeat;
  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:none;
  -webkit-touch-callout:none;
  cursor:default;
}
body.page-about .about-expertise{border-bottom:1px solid var(--about-line)!important}
body.page-about .about-expertise__grid{min-height:0}
body.page-about .about-expertise__item{padding:1rem clamp(.8rem,1.7vw,1.35rem)!important}
body.page-about .about-icon{
  width:44px!important;
  height:44px!important;
  flex-basis:44px!important;
  padding:7px!important;
  border-radius:13px!important;
}
body.page-about .about-expertise__item strong{font-size:.88rem!important}
body.page-about .about-expertise__item small{font-size:.72rem!important}
body.page-about .about-story{padding-top:clamp(2.4rem,4vw,3.5rem)!important}
@media (max-width:880px){
  body.page-about .about-intro{
    grid-template-columns:142px minmax(0,1fr) 142px;
    column-gap:1rem;
  }
  body.page-about .about-since-badge{width:142px}
}
@media (max-width:700px){
  body.page-about .about-expertise__grid{grid-template-columns:1fr!important}
  body.page-about .about-expertise__item{
    padding:.82rem 0!important;
    border-right:0!important;
    border-bottom:1px solid var(--about-line);
  }
  body.page-about .about-expertise__item:last-child{border-bottom:0}
}
@media (max-width:620px){
  body.page-about .about-intro{grid-template-columns:1fr;row-gap:.55rem}
  body.page-about .about-intro::before{display:none}
  body.page-about .about-intro .eyebrow{grid-column:1;justify-self:center}
  body.page-about .about-intro h1{grid-column:1;justify-self:center;text-align:center}
  body.page-about .about-since-badge{
    grid-column:1;
    grid-row:auto;
    justify-self:center;
    width:136px;
    margin-top:.45rem!important;
  }
}
@media (max-width:480px){
  body.page-about .about-hero.about-hero--compact{padding:1.35rem 0 1rem!important}
  body.page-about .about-intro h1{font-size:1.78rem!important}
  body.page-about .about-since-badge{width:124px}
}
