/* Page « Le cabinet » — autonome, scopée sous .atc-main. Reprend le design de la maquette Auditec. */
.atc-main{
  --atc-bg:#FFFFFF;--atc-alt:#F5F4F1;--atc-ink:#122943;--atc-dim:#4C4D50;--atc-faint:#8A8B8E;
  --atc-navy:#1B3A5C;--atc-deep:#122943;--atc-gold:#8A6F45;--atc-gold-soft:#D8C29A;--atc-border:#ECECEA;
  font-family:'Hanken Grotesk','Helvetica Neue',Arial,sans-serif;color:var(--atc-ink);background:var(--atc-bg);
  overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
/* Neutralise le conteneur / la colonne latérale de GeneratePress sur cette page */
body.atc-page .site-content{display:block;}
body.atc-page .content-area{width:100%;float:none;}
body.atc-page #right-sidebar,body.atc-page #left-sidebar,body.atc-page .sidebar{display:none;}
body.atc-page .grid-container,body.atc-page .site-content,body.atc-page .inside-article{max-width:none;padding:0;margin:0;}
body.atc-page .site-main>*{margin-bottom:0;}
body.atc-page .entry-header,body.atc-page .page-header{display:none;}

.atc-main *,.atc-main *::before,.atc-main *::after{box-sizing:border-box;}
.atc-main h1,.atc-main h2,.atc-main h3{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-weight:500;letter-spacing:-.005em;color:var(--atc-ink);margin:0;}
.atc-main em{font-style:italic;color:var(--atc-gold);}
.atc-wrap{max-width:1200px;margin:0 auto;padding:0 48px;}
.atc-eyebrow{display:inline-block;font-size:12px;font-weight:600;color:var(--atc-gold);letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px;}

/* Boutons */
.atc-btn{display:inline-block;padding:16px 30px;border-radius:999px;font-size:14px;font-weight:500;letter-spacing:.02em;text-decoration:none;cursor:pointer;transition:background .25s,border-color .25s,color .25s,transform .2s;}
.atc-btn-primary{background:var(--atc-deep);color:#fff;border:1px solid var(--atc-deep);}
.atc-btn-primary:hover{background:var(--atc-gold);border-color:var(--atc-gold);color:var(--atc-deep);transform:translateY(-2px);}
.atc-btn-ghost{background:transparent;color:var(--atc-ink);border:1px solid var(--atc-ink);}
.atc-btn-ghost:hover{border-color:var(--atc-gold);color:var(--atc-gold);transform:translateY(-2px);}
.atc-actions{margin-top:28px;display:flex;gap:16px;flex-wrap:wrap;}
.atc-actions.atc-center{justify-content:center;margin-top:36px;}

/* Hero */
.atc-hero{padding:150px 0 90px;}
.atc-hero h1{font-size:clamp(38px,5.2vw,64px);line-height:1.08;max-width:820px;}
.atc-lead{margin-top:22px;max-width:640px;color:var(--atc-dim);font-size:17px;line-height:1.75;}
.atc-lead p{margin:0 0 1em;}

/* Chiffres clés */
.atc-stats{background:#fff;border-top:1px solid var(--atc-border);border-bottom:1px solid var(--atc-border);padding:64px 0;}
.atc-stats-grid{display:flex;flex-wrap:wrap;justify-content:center;}
.atc-stat{flex:1 1 200px;text-align:center;padding:0 20px;border-left:1px solid var(--atc-border);}
.atc-stat:first-child{border-left:none;}
.atc-stat-num{font-family:'Cormorant Garamond',Garamond,'Times New Roman',serif;font-size:56px;font-weight:500;color:var(--atc-deep);
  display:inline-flex;justify-content:center;overflow:hidden;height:1.4em;line-height:1.4em;}
.atc-stat-num .digit{display:inline-block;height:1.4em;overflow:hidden;}
.atc-stat-num .digit-strip{display:flex;flex-direction:column;transition:transform 2.2s cubic-bezier(.16,1,.3,1);}
.atc-stat-num .digit-strip span{display:block;height:1.4em;line-height:1.4em;}
.atc-stat-num .sym{display:inline-block;line-height:1.4em;}
.atc-stat-label{font-size:11.5px;color:var(--atc-dim);margin-top:8px;letter-spacing:.04em;text-transform:uppercase;}

/* Sections et en-têtes */
.atc-section{padding:110px 0;}
.atc-alt{background:var(--atc-alt);}
.atc-head{max-width:780px;margin-bottom:48px;}
.atc-head h2{font-size:clamp(32px,3.6vw,46px);line-height:1.12;}
.atc-head p{color:var(--atc-dim);margin:16px 0 0;font-size:16px;line-height:1.75;max-width:680px;}

/* Frise */
.atc-hx-scroll{overflow-x:auto;padding-bottom:10px;margin-top:20px;}
.atc-hx-line{list-style:none;margin:0;padding:30px 0 0;display:grid;grid-template-columns:repeat(var(--n,6),minmax(170px,1fr));position:relative;min-width:calc(var(--n,6) * 170px);}
.atc-hx-line::before{content:'';position:absolute;top:36px;left:0;right:0;height:1px;background:var(--atc-border);}
.atc-hx-line::after{content:'';position:absolute;top:36px;left:0;height:1px;width:0;background:var(--atc-gold);transition:width 2.4s cubic-bezier(.22,1,.36,1);}
.atc-hist.in-view .atc-hx-line::after{width:100%;}
.atc-hx-item{position:relative;padding:34px 22px 0 0;transition-delay:calc(var(--i) * .12s);}
.atc-hx-dot{position:absolute;top:0;left:0;width:13px;height:13px;border-radius:50%;background:#fff;border:2px solid var(--atc-gold);}
.atc-hx-year{display:block;font-family:'Cormorant Garamond',Garamond,serif;font-size:34px;color:var(--atc-navy);line-height:1;margin-bottom:10px;}
.atc-hx-item h3{font-family:'Hanken Grotesk',sans-serif;font-size:17px;font-weight:600;color:var(--atc-ink);margin-bottom:6px;}
.atc-hx-item p{margin:0;font-size:14px;line-height:1.65;color:var(--atc-dim);}

/* Équipe */
.atc-team-grid{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(220px,280px));justify-content:center;gap:28px;}
.atc-team-card{text-align:center;}
.atc-team-photo{aspect-ratio:3/3.6;border-radius:6px 90px 6px 6px;overflow:hidden;background-size:cover;background-position:center;margin-bottom:18px;}
.atc-initials{display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--atc-deep),var(--atc-navy));}
.atc-initials span{font-family:'Cormorant Garamond',Garamond,serif;font-size:64px;font-weight:500;letter-spacing:.06em;color:var(--atc-gold-soft);}
.atc-team-name{font-family:'Cormorant Garamond',Garamond,serif;font-size:21px;color:var(--atc-navy);margin-top:4px;}
.atc-team-title{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--atc-gold);margin-top:6px;}
.atc-team-role{font-size:13.5px;color:var(--atc-dim);margin-top:6px;line-height:1.5;}

/* Implantations */
.atc-impl{padding-bottom:40px;}
.atc-block{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start;}
.atc-block.atc-no-image{grid-template-columns:minmax(0,1fr);max-width:760px;}
.atc-block h2{font-size:clamp(32px,3.6vw,46px);line-height:1.12;}
.atc-text{color:var(--atc-dim);font-size:15.5px;line-height:1.8;margin-top:16px;}
.atc-text p{margin:0 0 14px;}
.atc-media{position:relative;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background-size:cover;background-position:center;background-color:var(--atc-alt);
  clip-path:inset(12% 12% 12% 12% round 8px);transition:clip-path 1.4s cubic-bezier(.22,1,.36,1);}
.atc-media.in{clip-path:inset(0 0 0 0 round 8px);}
.atc-kb{position:absolute;inset:-8%;background-image:inherit;background-size:cover;background-position:center;animation:atcKb 20s ease-in-out infinite alternate;}
.atc-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,41,67,0) 55%,rgba(18,41,67,.18));}
@keyframes atcKb{0%{transform:scale(1) translate(0,0);}100%{transform:scale(1.1) translate(-2%,-2%);}}

/* Engagements */
.atc-eng{padding-top:40px;}
.atc-info-grid{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:24px;}
.atc-info{background:var(--atc-alt);border-radius:6px;padding:30px 26px;}
.atc-info svg{width:26px;height:26px;color:var(--atc-gold);margin-bottom:18px;display:block;}
.atc-info h3{font-size:22px;font-weight:600;margin-bottom:8px;}
.atc-info-body{font-size:14.5px;line-height:1.7;color:var(--atc-dim);}
.atc-info-body p{margin:0 0 8px;}
.atc-info-body a{color:var(--atc-navy);}

/* Appel à l'action final */
.atc-final{background:var(--atc-alt);padding:120px 0;text-align:center;}
.atc-final h2{font-size:clamp(32px,4vw,52px);line-height:1.12;max-width:680px;margin:0 auto;}
.atc-final p{color:var(--atc-dim);margin:18px 0 0;font-size:15.5px;}

/* Apparition */
.atc-reveal{opacity:0;transform:translateY(32px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);}
.atc-reveal.in{opacity:1;transform:none;}
.atc-media.atc-reveal{opacity:1;transform:none;}
.atc-main:not(.atc-js) .atc-reveal{opacity:1;transform:none;}
.atc-main:not(.atc-js) .atc-media{clip-path:none;}
.atc-main:not(.atc-js) .atc-hist .atc-hx-line::after{width:100%;}

@media(max-width:960px){
  .atc-wrap{padding:0 24px;}
  .atc-hero{padding:120px 0 60px;}
  .atc-section{padding:70px 0;}
  .atc-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);row-gap:28px;}
  .atc-stat:nth-child(odd){border-left:none;}
  .atc-stat-num{font-size:44px;}
  .atc-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .atc-block{grid-template-columns:minmax(0,1fr);gap:28px;}
  .atc-info-grid{grid-template-columns:minmax(0,1fr);}
  .atc-final{padding:80px 0;}
  .atc-impl{padding-bottom:20px;} .atc-eng{padding-top:20px;}
}
@media(max-width:520px){.atc-team-grid{grid-template-columns:minmax(0,280px);}}
@media(prefers-reduced-motion:reduce){
  .atc-reveal{opacity:1;transform:none;transition:none;}
  .atc-media{clip-path:none;transition:none;}
  .atc-kb{animation:none;}
  .atc-hx-line::after{width:100%;transition:none;}
}
