/*
 * TENUTO — Landing copropriété
 * Version 18
 *
 * Organisation de cette feuille :
 * 1. Tokens / reset
 * 2. Layout global
 * 3. Header & navigation
 * 4. Sections / composants
 * 5. Formulaire
 * 6. Footer
 * 7. Responsive
 *
 * Conseil maintenance :
 * - modifier d'abord les variables :root pour les couleurs / largeurs ;
 * - éviter les styles inline dans le HTML ;
 * - ajouter les variantes d'un composant à côté de son bloc principal ;
 * - conserver les breakpoints 900 / 760 / 430 px sauf besoin réel.
 */

/* ---------- 1. Tokens & reset ---------- */
:root {
  --ink: #17332D;
  --ink-2: #23443B;
  --paper: #F5F1E8;
  --white: #FFFDF8;
  --terra: #B6654B;
  --brass: #B79A70;
  --line: #D9D2C5;
  --muted: #68716E;
  --max: 1180px;
  --header-offset: 92px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--header-offset); }
body {
  margin: 0;
  overflow-x: hidden;
  color: var(--ink);
  background: var(--paper);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
img, svg { max-width: 100%; height: auto; }
h1, h2, h3, p { overflow-wrap: break-word; }

/* ---------- 2. Layout global ---------- */
.wrap { width: min(var(--max), calc(100% - 48px)); margin-inline: auto; }
section { padding: 88px 0; }
.white { background: var(--white); }
.soft { background: #EFE9DE; }
#partager, #contact { scroll-margin-top: var(--header-offset); }
h1, h2, h3 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  letter-spacing: -.025em;
}
h1 { margin: 0 0 24px; font-size: clamp(3rem, 6.5vw, 6rem); line-height: .96; }
h2 { margin: 0 0 18px; font-size: clamp(2.1rem, 4vw, 3.5rem); line-height: 1.06; }
h3 { margin: 0 0 11px; font-size: 1.45rem; }
.eyebrow, .kicker {
  margin-bottom: 18px;
  color: var(--terra);
  font-size: .73rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.sectionhead { max-width: 760px; margin-bottom: 42px; }
.sectionhead p, .copy, .lead { color: var(--muted); line-height: 1.7; }

/* ---------- 3. Header & navigation ---------- */
.sitehead { background: var(--ink); color: var(--white); padding: 18px 0; }
.sitehead nav { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.logo { display: flex; align-items: center; gap: 11px; font-weight: 800; letter-spacing: .18em; }
.brand-mark { width:40px; height:40px; display:block; border-radius:10px; object-fit:cover; }
.nav-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-shrink:0; }
.top-cta {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:40px; padding:10px 13px; border-radius:2px;
  font-size:.7rem; font-weight:900; line-height:1.15; text-align:center;
  transition: transform .15s ease, opacity .15s ease;
}
.top-cta:hover { transform: translateY(-1px); }
.top-cta-share { border:1px solid rgba(255,255,255,.5); color:var(--white); }
.top-cta-contact { border:1px solid var(--terra); background:var(--terra); color:#fff; }

/* ---------- 4. Sections & composants ---------- */
.hero { position:relative; overflow:hidden; color:var(--white); background:linear-gradient(110deg,#17332D 0%,#17332D 54%,#31554B 100%); }
.hero::after { content:""; position:absolute; right:-10vw; top:-20vw; width:58vw; height:58vw; border:1px solid rgba(255,255,255,.08); transform:rotate(22deg); }
.hero .wrap { position:relative; z-index:2; padding:90px 0 95px; }
.hero .eyebrow { color:#E2B7A7; }
.hero h1 { max-width:850px; }
.hero p { margin:0; max-width:800px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.35rem,2.5vw,2.1rem); line-height:1.3; }
.hero .small { margin-top:24px; max-width:680px; color:rgba(255,255,255,.72); font-family:inherit; font-size:1rem; line-height:1.65; }
.launch-cta { display:inline-block; margin-top:30px; padding:13px 17px; border:1px solid rgba(255,255,255,.55); font-size:.78rem; font-weight:800; }

.cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.card { min-width:0; min-height:250px; padding:31px; background:var(--white); border:1px solid var(--line); transition:.22s; }
.card:hover { transform:translateY(-4px); box-shadow:0 18px 42px rgba(23,51,45,.09); }
.card p { color:var(--muted); font-size:.92rem; line-height:1.55; }

.pains { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:35px; }
.pain { min-width:0; min-height:165px; padding:25px; background:var(--paper); border-top:3px solid var(--terra); }
.pain b { display:block; margin-bottom:10px; font-family:Georgia,serif; font-size:1.1rem; }
.pain span { color:var(--muted); font-size:.87rem; line-height:1.5; }

.quote { margin-top:28px; padding:22px 24px; border-left:3px solid var(--terra); background:rgba(183,154,112,.10); font-family:Georgia,serif; font-size:1.2rem; line-height:1.45; }
.speedline { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px; margin:30px 0; }
.speedline span { padding:10px 14px; border:1px solid var(--line); background:var(--white); font-size:.72rem; font-weight:900; letter-spacing:.08em; }
.speedline i { color:var(--terra); font-style:normal; }

.split { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:70px; align-items:start; }
.steps { display:grid; }
.step { display:grid; grid-template-columns:1fr; gap:7px; padding:19px 0; border-top:1px solid var(--line); }
.step b { display:block; margin-bottom:5px; }
.step span { color:var(--muted); font-size:.9rem; line-height:1.55; }

.conversion-bridge { padding:0 0 26px; }
.bridgebox { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px 28px; background:var(--ink); color:var(--paper); }
.bridgebox > div { display:flex; flex-direction:column; gap:5px; }
.bridgebox strong { font-family:Georgia,serif; font-size:1.22rem; font-weight:400; }
.bridgebox span { color:rgba(245,241,232,.78); font-size:.75rem; }
.bridgebox > a {
  flex-shrink: 0;
  padding: 12px 16px;
  border: 1px solid var(--terra);
  background: var(--terra);
  color: #fff;
  font-size: .72rem;
  font-weight: 900;
}

.proofbox { display:grid; grid-template-columns:minmax(180px,.35fr) minmax(0,1fr); gap:40px; align-items:center; padding:38px; border:1px solid var(--line); }
.proofnumber { font-family:Georgia,serif; font-size:clamp(4rem,9vw,7rem); line-height:.9; color:var(--terra); }
.proofbox p { color:var(--muted); line-height:1.6; }
.proofbox small { color:var(--muted); }

.faq details { border-top:1px solid var(--line); padding:18px 0; }
.faq summary { cursor:pointer; font-weight:800; }
.faq details p { max-width:850px; color:var(--muted); line-height:1.65; }

/* Bloc de partage : contraste volontairement explicite pour éviter les héritages CSS. */
.share-public { background:var(--paper); }
.share-public-box { padding:34px; }
.strong-share { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr); gap:34px; align-items:center; background:var(--ink); color:var(--paper); }
#partager .strong-share h2, #partager .strong-share p, #partager .strong-share p strong { color:var(--paper); opacity:1; }
#partager .strong-share .eyebrow { color:#D9C5A3; }
.share-public-actions { display:grid; grid-template-columns:1fr 1fr; gap:9px; align-items:center; }
.share-public-actions a, .share-public-actions button {
  width:100%; min-height:42px; padding:11px 12px;
  border:1px solid var(--paper); background:var(--paper); color:var(--ink);
  font:inherit; font-size:.72rem; font-weight:900; cursor:pointer;
}
#copy-status { grid-column:1/-1; color:var(--paper); font-size:.72rem; }

/* ---------- 5. Formulaire ---------- */
.cta-form-wrap { background:var(--white); }
.leadbox { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:64px; align-items:start; }
.leadintro p { color:var(--muted); line-height:1.7; }
.leadform { padding:30px; border:1px solid var(--line); background:var(--paper); }
.formgrid { display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:start; }
.field { min-width:0; }
.field.full { grid-column:1/-1; }
.field label { display:block; margin-bottom:7px; font-size:.74rem; font-weight:800; }
.optional { color:var(--muted); font-weight:400; }
.field input, .field textarea, .field select {
  width:100%; min-width:0; padding:12px 13px; border:1px solid var(--line);
  background:var(--white); color:var(--ink); font:inherit;
}
.field textarea { min-height:110px; resize:vertical; }
.optional-details { border:1px solid var(--line); background:var(--white); }
.optional-details summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:15px; cursor:pointer; }
.optional-details summary span { display:flex; flex-direction:column; gap:3px; }
.optional-details summary small { color:var(--muted); font-weight:400; }
.optional-inner { padding:4px 15px 16px; }
.consent { display:flex; gap:9px; align-items:flex-start; margin:18px 0; color:var(--muted); font-size:.76rem; line-height:1.45; }
.submit { width:100%; padding:14px 18px; border:0; background:var(--terra); color:#fff; font:inherit; font-size:.8rem; font-weight:900; cursor:pointer; }
.form-reassurance { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
.form-reassurance span { color:var(--muted); font-size:.66rem; }
.form-status { display:none; margin:14px 0 0; color:var(--ink); font-size:.82rem; line-height:1.5; }
.sharebox { display:none; margin-top:18px; padding:18px; border:1px solid var(--line); background:var(--white); }
.sharebox span { display:block; margin:6px 0 12px; color:var(--muted); font-size:.78rem; }
.share-actions { display:flex; flex-wrap:wrap; gap:8px; }
.share-actions a { padding:8px 10px; border:1px solid var(--line); font-size:.7rem; font-weight:800; }
.privacy { margin-top:16px; color:var(--muted); font-size:.7rem; line-height:1.5; }
.privacy a { text-decoration:underline; }

/* ---------- 6. Footer ---------- */
footer { padding:28px 0; background:var(--ink); color:rgba(255,255,255,.72); font-size:.72rem; }
footer .wrap { display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.social-placeholder { opacity:.72; }
.social-link { opacity:.82; transition:opacity .15s ease; }
.social-link:hover { opacity:1; text-decoration:underline; text-underline-offset:3px; }
.mobile-sticky-cta { display:none; }

/* ---------- 7. Responsive ---------- */
@media (max-width: 900px) {
  .wrap { width:min(var(--max), calc(100% - 32px)); }
  .split, .leadbox, .strong-share, .proofbox { grid-template-columns:1fr; }
  .pains { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  :root { --header-offset: 78px; }
  .wrap { width:calc(100% - 28px); }
  section { padding:62px 0; }
  .sitehead { padding:12px 0; }
  .sitehead nav { gap:8px; }
  .logo { gap:7px; font-size:.8rem; letter-spacing:.12em; }
  .brand-mark { width:32px; height:32px; border-radius:8px; }
  .nav-actions { gap:5px; }
  .top-cta { min-height:36px; max-width:116px; padding:7px 8px; font-size:.56rem; white-space:normal; }
  .hero .wrap { padding:66px 0 70px; }
  h1 { font-size:clamp(2.45rem,12vw,4rem); }
  h2 { font-size:clamp(1.85rem,8vw,2.65rem); }
  .cards, .pains, .formgrid { grid-template-columns:1fr; }
  .field.full { grid-column:auto; }
  .card, .pain { min-height:0; }
  .bridgebox { flex-direction:column; align-items:flex-start; }
  .bridgebox > a { width:100%; text-align:center; }
  .share-public-box, .leadform { padding:22px 18px; }
  .share-public-actions { grid-template-columns:1fr 1fr; }
  .mobile-sticky-cta {
    display:block; position:fixed; z-index:100; left:14px; right:14px; bottom:10px;
    padding:14px 16px; background:var(--terra); color:#fff; text-align:center;
    font-size:.76rem; font-weight:900; box-shadow:0 8px 24px rgba(0,0,0,.2);
  }
  body { padding-bottom:62px; }
}

@media (max-width: 430px) {
  .wrap { width:calc(100% - 22px); }
  .logo > span:last-child { font-size:.72rem; }
  .top-cta { max-width:100px; padding:7px 6px; font-size:.51rem; }
  .top-cta-contact { max-width:112px; }
  .share-public-actions { grid-template-columns:1fr; }
  #copy-status { grid-column:auto; }
  footer .wrap { align-items:flex-start; }
}

.quote-spaced { margin-top: 26px; }


/* ==========================================================
   V17 — Design refinement
   Objectifs : fluidité, hiérarchie, respiration, conversion.
   Aucun framework : ces règles complètent les composants V16.
   ========================================================== */

:root{
  --radius-sm: 8px;
  --radius-md: 14px;
  --shadow-soft: 0 16px 46px rgba(23,51,45,.07);
  --shadow-lift: 0 20px 54px rgba(23,51,45,.11);
}
body{line-height:1.45}
section{padding:clamp(68px,7.5vw,104px) 0}
.sectionhead{margin-bottom:clamp(30px,4vw,48px)}
.sectionhead p{font-size:1.02rem;max-width:700px}
.hero .wrap{padding:clamp(72px,9vw,116px) 0}
.hero h1{max-width:900px}
.hero-pill{
  display:inline-flex;align-items:center;margin:4px 0 24px;padding:8px 12px;
  border:1px solid rgba(255,255,255,.22);border-radius:999px;
  background:rgba(255,255,255,.06);color:rgba(255,255,255,.88);
  font-size:.7rem;font-weight:800;letter-spacing:.03em
}
.launch-cta,.top-cta,.submit,.bridgebox>a{
  border-radius:var(--radius-sm);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease
}
.launch-cta:hover,.top-cta:hover,.submit:hover,.bridgebox>a:hover{transform:translateY(-2px)}
.top-cta-contact,.submit,.bridgebox>a{box-shadow:0 8px 22px rgba(182,101,75,.18)}
.card,.pain,.proofbox,.leadform,.optional-details{border-radius:var(--radius-md)}
.card{box-shadow:0 8px 28px rgba(23,51,45,.035)}
.card:hover{box-shadow:var(--shadow-lift)}
.pain{border-top-width:2px}
.quote{border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.bridgebox{border-radius:var(--radius-md);box-shadow:var(--shadow-soft);padding:28px 30px}
.proofbox{box-shadow:var(--shadow-soft)}
.leadbox{gap:clamp(38px,6vw,72px)}
.leadform{box-shadow:var(--shadow-soft)}
.field input,.field textarea,.field select{
  border-radius:var(--radius-sm);transition:border-color .18s ease,box-shadow .18s ease
}
.field input:focus,.field textarea:focus,.field select:focus{
  outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(23,51,45,.08)
}
.submit{min-height:50px;font-size:.84rem}

/* Partage : trois actions élégantes, lisibles et équilibrées. */
.share-public-box{border-radius:18px;padding:clamp(28px,4vw,46px)}
.strong-share{gap:clamp(28px,5vw,58px)}
.share-public-actions{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px
}
.share-public-actions a,.share-public-actions button{
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  gap:7px;min-height:92px;padding:15px 16px;border-radius:12px;
  border:1px solid rgba(245,241,232,.28)!important;
  background:rgba(245,241,232,.08)!important;color:var(--paper)!important;
  text-align:left;transition:background .18s ease,transform .18s ease,border-color .18s ease
}
.share-public-actions a:hover,.share-public-actions button:hover{
  transform:translateY(-2px);background:rgba(245,241,232,.15)!important;
  border-color:rgba(245,241,232,.58)!important
}
.share-glyph{
  display:grid;place-items:center;width:30px;height:30px;border-radius:9px;
  background:var(--paper);color:var(--ink);font-family:Georgia,serif;
  font-size:.9rem;font-weight:700
}
.share-public-actions a>span:last-child,.share-public-actions button>span:last-child{
  font-size:.7rem;font-weight:850;letter-spacing:.01em
}
#copy-status{grid-column:1/-1;margin-top:2px;min-height:1em;opacity:.75}

/* Les longues sections restent scannables. */
.step{padding:22px 0}
.faq details{padding:21px 0}
.faq summary{font-size:.95rem}
.speedline span{border-radius:999px}

/* Tablet */
@media(max-width:900px){
  .share-public-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Mobile */
@media(max-width:760px){
  section{padding:58px 0}
  .hero .wrap{padding:66px 0 76px}
  .hero-pill{margin-bottom:20px}
  .sectionhead p{font-size:.96rem}
  .bridgebox{padding:23px 20px}
  .proofbox{padding:26px 21px}
  .leadform{padding:23px 18px}
  .share-public-box{padding:25px 20px}
  .share-public-actions{grid-template-columns:1fr}
  .share-public-actions a,.share-public-actions button{
    min-height:58px;flex-direction:row;align-items:center;justify-content:flex-start;
    padding:12px 13px
  }
  .share-glyph{width:32px;height:32px;flex:0 0 32px}
  #copy-status{grid-column:auto}
  .form-reassurance{display:grid;grid-template-columns:1fr;gap:5px}
}

/* Très petit mobile : header compact mais les deux choix restent compréhensibles. */
@media(max-width:430px){
  .top-cta{font-size:.49rem;line-height:1.05}
  .top-cta-share{max-width:94px}
  .top-cta-contact{max-width:108px}
}


/* V21 — même langage graphique pour tous les boutons de partage. */
.share-icon{width:18px;height:18px;display:block}
.share-public-actions .share-icon{width:18px;height:18px}
.sharebox .share-public-actions{margin-top:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
.sharebox .share-public-actions a,.sharebox .share-public-actions button{
  min-height:82px;background:var(--ink)!important;color:var(--paper)!important;
  border-color:var(--ink)!important
}
.sharebox .share-public-actions a:hover,.sharebox .share-public-actions button:hover{opacity:.92}
.sharebox .share-public-actions .share-icon{color:var(--paper)}
.copy-status{grid-column:1/-1;min-height:1em;font-size:.72rem;opacity:.78}
@media(max-width:760px){.sharebox .share-public-actions{grid-template-columns:1fr}.sharebox .share-public-actions a,.sharebox .share-public-actions button{min-height:58px;flex-direction:row;align-items:center;justify-content:flex-start}}

/* V22 — plus visuelle, plus directe, méthode TENUTO */
.orchestra-section{background:var(--ink);color:var(--paper)}
.orchestra-section h2,.orchestra-section .lead{color:var(--paper)}
.orchestra-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.human-proof{margin-top:28px;padding:20px;border-left:3px solid var(--terra);display:grid;gap:7px;background:rgba(255,255,255,.05)}
.human-proof span{font-size:.88rem;opacity:.8}
.orbit{min-height:390px;position:relative;border:1px solid rgba(245,241,232,.18);border-radius:50%;display:grid;place-items:center}
.orbit:before{content:"";position:absolute;inset:20%;border:1px dashed rgba(183,154,112,.45);border-radius:50%}
.orbit-core{position:relative;z-index:2;width:155px;height:155px;border-radius:50%;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;box-shadow:0 18px 45px rgba(0,0,0,.2)}
.orbit-core b{font-family:Georgia,serif;font-size:1.05rem}.orbit-core small{margin-top:6px;opacity:.65}
.orbit>span{position:absolute;background:var(--brass);color:var(--ink);padding:8px 12px;border-radius:999px;font-size:.68rem;font-weight:800}
.orbit>span:nth-of-type(1){top:9%;left:42%}.orbit>span:nth-of-type(2){top:26%;right:4%}.orbit>span:nth-of-type(3){bottom:25%;right:4%}.orbit>span:nth-of-type(4){bottom:8%;left:39%}.orbit>span:nth-of-type(5){bottom:25%;left:3%}.orbit>span:nth-of-type(6){top:26%;left:4%}
.method-section{background:var(--paper)}
.method-grid{display:grid;grid-template-columns:1.45fr .55fr;gap:18px;margin-top:34px}
.kanban,.weather{background:#fff;border:1px solid rgba(23,51,45,.12);border-radius:18px;padding:20px;box-shadow:0 14px 40px rgba(23,51,45,.06)}
.kanban-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:16px}.kanban-head span{font-size:.68rem;opacity:.6}
.kanban-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.kanban-cols>div>b{font-size:.58rem;letter-spacing:.08em;color:var(--terra)}
.kanban article{margin-top:8px;padding:11px;border-radius:10px;background:var(--paper);display:grid;gap:4px}.kanban article strong{font-size:.75rem}.kanban article small{font-size:.62rem;opacity:.65}
.weather{background:var(--ink);color:var(--paper)}.weather-tag{font-size:.57rem;letter-spacing:.09em;color:var(--brass);font-weight:850}.weather h3{font-family:Georgia,serif;font-size:1.4rem;margin:12px 0 20px}.weather-row{display:grid;grid-template-columns:48px 1fr;gap:8px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:.75rem}.weather-row b{color:var(--brass)}.weather p{font-size:.72rem;opacity:.76;margin-top:18px}
.method-promises{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.method-promises>div{padding:17px;border-top:2px solid var(--terra);background:#fff}.method-promises b,.method-promises span{display:block}.method-promises b{font-size:.76rem}.method-promises span{font-size:.67rem;opacity:.65;margin-top:5px}
.tech-human{background:#fff}.tech-human-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.tech-human-grid p{font-size:1rem;line-height:1.7}.tech-line{padding:18px 20px;background:var(--paper);border-radius:12px;font-weight:700;color:var(--ink)}
@media(max-width:760px){.orchestra-grid,.method-grid,.tech-human-grid{grid-template-columns:1fr;gap:28px}.orbit{min-height:330px}.kanban-cols{grid-template-columns:1fr 1fr}.method-promises{grid-template-columns:1fr 1fr}.kanban-head{align-items:flex-start;flex-direction:column}}
@media(max-width:430px){.kanban-cols,.method-promises{grid-template-columns:1fr}.orbit{min-height:300px}.orbit-core{width:130px;height:130px}}

/* V23 — Ressources éditoriales */
.resources{padding:88px 0;background:#fffdf8}.resources-head{display:grid;grid-template-columns:1.6fr .7fr;gap:42px;align-items:end;margin-bottom:32px}.resources h2{margin:.35rem 0 .7rem}.stat-card{background:#17332D;color:#fff;padding:26px;border-radius:18px}.stat-card strong{display:block;font-size:2.5rem;line-height:1;color:#F5F1E8}.stat-card span{display:block;margin-top:8px;font-weight:700}.stat-card small{display:block;margin-top:10px;opacity:.72;line-height:1.4}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.resource-card{display:flex;flex-direction:column;min-height:245px;padding:26px;border:1px solid rgba(23,51,45,.14);border-radius:18px;background:#F5F1E8;color:#17332D;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.resource-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(23,51,45,.10)}.resource-card.featured{grid-column:span 2;background:#17332D;color:#fff}.resource-kicker{font-size:.74rem;letter-spacing:.12em;font-weight:800;color:#B6654B}.featured .resource-kicker{color:#D8BE99}.resource-card h3{font-size:1.35rem;margin:14px 0 10px}.resource-card p{line-height:1.55;margin:0 0 18px}.readmore{margin-top:auto;font-weight:800}.article-page{background:#fffdf8;color:#17332D}.article-shell{max-width:850px;margin:0 auto;padding:70px 24px 100px}.article-shell h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.03;margin:.35em 0}.article-shell h2{margin-top:2.2em}.article-shell p,.article-shell li{font-size:1.08rem;line-height:1.75}.article-intro{font-size:1.28rem!important}.article-note{padding:20px 22px;background:#F5F1E8;border-left:4px solid #B6654B;border-radius:8px}.article-source{font-size:.92rem!important;opacity:.75}.article-cta{margin-top:48px;padding:28px;background:#17332D;color:white;border-radius:18px}.article-cta a{color:white;font-weight:800}.article-nav{padding:18px 24px;border-bottom:1px solid rgba(23,51,45,.12)}.article-nav a{color:#17332D;text-decoration:none;font-weight:900;letter-spacing:.16em}@media(max-width:760px){.resources{padding:60px 0}.resources-head,.resource-grid{grid-template-columns:1fr}.resource-card.featured{grid-column:auto}.resource-card{min-height:0}.stat-card{margin-top:4px}}

/* V25 — humain d'abord, cockpit d'orchestration, management visuel */
.orchestrator-board{background:#fff;color:var(--ink);border:1px solid rgba(245,241,232,.18);border-radius:20px;padding:22px;box-shadow:0 22px 60px rgba(0,0,0,.20)}
.board-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;border-bottom:1px solid rgba(23,51,45,.12)}
.board-top>div{display:grid;gap:4px}.board-kicker{font-size:.58rem;letter-spacing:.14em;color:var(--terra);font-weight:900}.board-top strong{font-family:Georgia,serif;font-size:1.25rem}.board-top small{font-size:.67rem;opacity:.62}.board-live{white-space:nowrap;font-size:.62rem;font-weight:850;padding:7px 9px;border-radius:999px;background:#eef4ef;color:var(--ink)}
.board-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0}.board-item{padding:14px;border:1px solid rgba(23,51,45,.10);border-radius:12px;background:var(--paper);display:grid;gap:4px}.board-item span{font-size:.58rem;letter-spacing:.09em;text-transform:uppercase;color:var(--terra);font-weight:850}.board-item b{font-size:.8rem}.board-item small{font-size:.61rem;opacity:.62}
.board-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-top:12px;font-size:.52rem;font-weight:900;letter-spacing:.07em;color:var(--ink)}.board-footer i{font-style:normal;color:var(--brass)}
/* Kanban: chaque état a son propre signal visuel, dans la palette TENUTO */
.kanban-cols>div{padding:10px;border-radius:12px;border-top:4px solid transparent;background:rgba(245,241,232,.48)}
.kanban-cols>div:nth-child(1){border-top-color:var(--terra);background:rgba(182,101,75,.08)}
.kanban-cols>div:nth-child(2){border-top-color:var(--brass);background:rgba(183,154,112,.12)}
.kanban-cols>div:nth-child(3){border-top-color:var(--ink);background:rgba(23,51,45,.07)}
.kanban-cols>div:nth-child(4){border-top-color:#6f8c78;background:rgba(111,140,120,.10)}
.kanban-cols>div:nth-child(1)>b{color:var(--terra)}.kanban-cols>div:nth-child(2)>b{color:#8b704b}.kanban-cols>div:nth-child(3)>b{color:var(--ink)}.kanban-cols>div:nth-child(4)>b{color:#526d5b}
.kanban-cols>div:nth-child(1) article{border-left:3px solid var(--terra)}.kanban-cols>div:nth-child(2) article{border-left:3px solid var(--brass)}.kanban-cols>div:nth-child(3) article{border-left:3px solid var(--ink)}.kanban-cols>div:nth-child(4) article{border-left:3px solid #6f8c78}
@media(max-width:760px){.orchestrator-board{padding:17px}.board-grid{grid-template-columns:1fr 1fr}.board-footer{flex-wrap:wrap;justify-content:flex-start}.board-footer i{margin:0 2px}.orchestra-section{padding-top:58px;padding-bottom:58px}}
@media(max-width:430px){.board-top{display:grid}.board-live{justify-self:start}.board-grid{grid-template-columns:1fr}.board-item{padding:12px}.orchestrator-board{border-radius:16px}.orchestra-grid{gap:22px}.orchestra-section .lead{font-size:.96rem}.human-proof{margin-top:20px;padding:16px}.method-section{padding-top:60px;padding-bottom:60px}}

/* V26 — landing plus courte, lisibilité mobile, détails à la demande */
.v26-more{max-width:1120px;margin:0 auto 22px;padding:0 24px}
.v26-more>summary{cursor:pointer;list-style:none;background:#fff;border:1px solid rgba(23,51,45,.14);border-radius:14px;padding:18px 52px 18px 20px;font-weight:850;color:var(--ink);position:relative}
.v26-more>summary::-webkit-details-marker{display:none}.v26-more>summary:after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--terra)}.v26-more[open]>summary:after{content:'–'}
.v26-more-body{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:16px 0 4px}.v26-more-block{background:#fff;padding:20px;border-radius:14px;border:1px solid rgba(23,51,45,.10)}.v26-more-block h3{font-size:1rem;margin:0 0 10px}.v26-more-block p{font-size:.9rem;line-height:1.55;margin:.5em 0}
/* Une idée par écran : rythme plus court sans sacrifier le contenu utile. */
.orchestra-section,.method-section,.tech-human,.resources{padding-top:68px;padding-bottom:68px}
.resources{padding-bottom:72px}.resource-card{min-height:210px;padding:22px}.method-promises>div{padding:14px}
@media(max-width:760px){
  body{font-size:16px}.wrap{padding-left:20px;padding-right:20px}
  p,.lead,.tech-human-grid p{font-size:1rem;line-height:1.62}
  small,.board-item small,.kanban article small{font-size:.76rem;line-height:1.4}
  .eyebrow,.resource-kicker{font-size:.72rem}
  h2{font-size:clamp(1.75rem,8vw,2.35rem);line-height:1.08}
  section{padding-top:56px;padding-bottom:56px}
  .orchestra-section,.method-section,.tech-human,.resources{padding-top:54px;padding-bottom:54px}
  .v26-more{padding:0 20px;margin-bottom:10px}.v26-more-body{grid-template-columns:1fr}.v26-more>summary{font-size:1rem}
  .board-grid{grid-template-columns:1fr 1fr}.board-item b{font-size:.88rem}
  .kanban article strong{font-size:.86rem}.weather-row{font-size:.86rem}.weather p{font-size:.84rem}
  .method-promises b{font-size:.86rem}.method-promises span{font-size:.8rem}
  .resource-card p{font-size:.96rem}.resource-card h3{font-size:1.25rem}
}
@media(max-width:430px){
  .wrap{padding-left:17px;padding-right:17px}.board-grid{grid-template-columns:1fr}
  .hero{padding-top:44px;padding-bottom:48px}.hero p{font-size:1rem}
  .resource-card,.stat-card,.leadform{border-radius:14px}
}


/* V26.1 — correctif mobile */
@media (max-width:760px){
  :root{--header-offset:62px}
  .sitehead{padding:9px 0}
  .sitehead nav{gap:10px}
  .nav-actions{margin-left:auto}
  .top-cta-share{display:none}
  .top-cta-contact{max-width:148px;min-height:38px;padding:8px 11px;font-size:.65rem;line-height:1.15}
  .hero .wrap{padding:42px 0 48px}
  .hero h1{font-size:clamp(2.25rem,10.8vw,3.25rem);line-height:.98;margin-bottom:18px}
  .hero .eyebrow{margin-bottom:18px}
  .hero-pill{margin-top:18px}
  .hero .small{margin-top:26px;font-size:.94rem;line-height:1.55}
}
@media (max-width:430px){
  .sitehead .wrap{padding-left:12px;padding-right:12px}
  .logo{flex-shrink:0}
  .top-cta-contact{max-width:132px;font-size:.61rem}
  .hero .wrap{padding:34px 0 42px}
  .hero h1{font-size:clamp(2.15rem,11.2vw,2.85rem)}
}

/* V26.2 — header mobile : conserver les deux CTA */
@media (max-width:760px){
  .top-cta-share{display:flex;max-width:112px;min-height:38px;padding:7px 9px;font-size:.61rem;line-height:1.12;text-align:center;align-items:center;justify-content:center}
  .top-cta-contact{max-width:142px;min-height:38px;padding:7px 9px;font-size:.61rem;line-height:1.12}
  .nav-actions{gap:7px}
}
@media (max-width:430px){
  .logo > span{display:none}
  .brand-mark{width:38px;height:38px}
  .sitehead nav{gap:7px}
  .nav-actions{gap:6px}
  .top-cta-share{max-width:98px;padding:6px 7px;font-size:.57rem}
  .top-cta-contact{max-width:126px;padding:6px 7px;font-size:.57rem}
}

/* V26.3 — navigation compacte + cockpit visuel */
.page-jump{position:sticky;top:0;z-index:18;background:rgba(245,241,232,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(23,51,45,.10)}
.page-jump .wrap{display:flex;justify-content:center;gap:8px;padding-top:10px;padding-bottom:10px}
.page-jump a{font-size:.76rem;font-weight:800;color:var(--ink);text-decoration:none;padding:9px 13px;border-radius:999px;white-space:nowrap}.page-jump a:hover{background:#fff}.page-jump .jump-cta{background:var(--terra);color:#fff}
.compact-problems{padding-top:58px;padding-bottom:58px}.pains-compact{grid-template-columns:repeat(3,1fr)}
.method-title{display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:end;margin-bottom:24px}.dashboard-legend{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;font-size:.72rem}.dashboard-legend span{display:flex;align-items:center;gap:6px}.dot{display:inline-block;width:9px;height:9px;border-radius:50%}.dot.ok{background:#668777}.dot.watch{background:var(--brass)}.dot.decide{background:var(--terra)}
.cockpit{background:#fff;border:1px solid rgba(23,51,45,.14);border-radius:24px;box-shadow:0 24px 70px rgba(23,51,45,.12);overflow:hidden}.cockpit-top{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;background:var(--ink);color:#fff}.cockpit-top>div{display:grid;gap:4px}.cockpit-label{font-size:.62rem;letter-spacing:.12em;color:var(--brass);font-weight:850}.cockpit-top strong{font-size:1.08rem}.cockpit-update{font-size:.68rem;padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px}.cockpit-kpis{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid rgba(23,51,45,.10)}.cockpit-kpis>div{padding:17px 20px;display:grid;gap:3px;border-right:1px solid rgba(23,51,45,.08)}.cockpit-kpis>div:last-child{border-right:0}.cockpit-kpis span{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;opacity:.62}.cockpit-kpis strong{font-family:Georgia,serif;font-size:1.7rem;color:var(--ink)}.cockpit-kpis small{font-size:.68rem;opacity:.62}
.visual-kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:18px;background:#f8f5ee}.vk-col{border-radius:15px;padding:10px;min-width:0}.vk-col>header{display:flex;align-items:center;justify-content:space-between;padding:2px 3px 9px;font-size:.64rem;font-weight:900;letter-spacing:.06em}.vk-col>header b{font-size:.66rem;border-radius:999px;padding:3px 7px;background:rgba(255,255,255,.8)}.vk-col.decide{background:rgba(182,101,75,.10);border-top:4px solid var(--terra)}.vk-col.launch{background:rgba(183,154,112,.14);border-top:4px solid var(--brass)}.vk-col.doing{background:rgba(23,51,45,.08);border-top:4px solid var(--ink)}.vk-col.done{background:rgba(102,135,119,.12);border-top:4px solid #668777}.vk-col article{background:#fff;border-radius:11px;padding:11px;margin-top:8px;box-shadow:0 5px 14px rgba(23,51,45,.07);display:grid;gap:5px}.vk-col article strong{font-size:.82rem}.vk-col article small{font-size:.69rem;line-height:1.35;opacity:.68}.card-status{font-size:.58rem;text-transform:uppercase;letter-spacing:.06em;font-weight:850;color:var(--terra)}.vk-col article footer{display:flex;justify-content:space-between;align-items:center;margin-top:4px;padding-top:7px;border-top:1px solid rgba(23,51,45,.08);font-size:.6rem;opacity:.72}.vk-col article footer b{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:var(--paper);font-size:.58rem}.cockpit-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 20px;border-top:1px solid rgba(23,51,45,.10)}.cockpit-bottom p{font-size:.7rem;opacity:.65;margin:0;text-align:right}.weather-mini{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.68rem}.weather-mini strong{margin-right:4px}.weather-mini span{display:flex;align-items:center;gap:5px}
@media(max-width:760px){.page-jump .wrap{justify-content:flex-start;overflow-x:auto;scrollbar-width:none;padding-left:18px;padding-right:18px}.page-jump .wrap::-webkit-scrollbar{display:none}.method-title{grid-template-columns:1fr;gap:14px}.dashboard-legend{justify-content:flex-start}.cockpit-kpis{grid-template-columns:1fr 1fr}.cockpit-kpis>div:nth-child(2){border-right:0}.visual-kanban{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:14px;gap:10px}.vk-col{flex:0 0 78%;scroll-snap-align:start}.cockpit-bottom{align-items:flex-start;flex-direction:column}.cockpit-bottom p{text-align:left}.pains-compact{grid-template-columns:1fr}.compact-problems{padding-top:46px;padding-bottom:46px}}
@media(max-width:430px){.page-jump a{font-size:.72rem;padding:8px 11px}.cockpit{border-radius:18px}.cockpit-top{padding:16px}.cockpit-update{display:none}.cockpit-kpis>div{padding:14px}.cockpit-kpis strong{font-size:1.45rem}.vk-col{flex-basis:84%}.method-section{padding-top:48px;padding-bottom:48px}}


/* =========================================================
   TENUTO V31 — Identité visuelle 2026
   Mise à jour graphique uniquement.
   Palette officielle fournie :
   Bleu nuit #172A3A · Sauge #52796F · Terracotta #C86F52
   Ivoire #F7F5EF · Ardoise #66747D
   ========================================================= */

:root{
  --ink:#172A3A;
  --ink-2:#2F4F4F;
  --paper:#F7F5EF;
  --white:#FFFEFA;
  --terra:#C86F52;
  --brass:#52796F;
  --line:#D9DEE1;
  --muted:#66747D;
}

/* Fond général plus clair et plus éditorial */
body{background:var(--paper);color:var(--ink)}
.white,.cta-form-wrap{background:var(--white)}
.soft{background:#FAEEE8}

/* Header : ivoire, fin, premium */
.sitehead{
  background:rgba(247,245,239,.97);
  color:var(--ink);
  border-bottom:1px solid rgba(23,42,58,.10);
  position:relative;
  z-index:20;
}
.logo{color:var(--ink)}
.brand-mark{
  width:46px;height:46px;
  border-radius:12px;
  object-fit:cover;
  box-shadow:0 5px 18px rgba(23,42,58,.08);
}
.top-cta-share{
  border-color:rgba(23,42,58,.24);
  color:var(--ink);
  background:transparent;
}
.top-cta-contact{
  border-color:var(--terra);
  background:var(--terra);
  color:#fff;
}

/* Hero : nouvelle signature TENUTO */
.hero{
  color:var(--ink);
  background:
    radial-gradient(circle at 88% 28%, rgba(82,121,111,.15) 0 13%, transparent 13.3%),
    radial-gradient(circle at 82% 70%, rgba(200,111,82,.12) 0 11%, transparent 11.3%),
    linear-gradient(118deg,#F7F5EF 0%,#F7F5EF 61%,#EEF2EF 100%);
  border-bottom:1px solid rgba(23,42,58,.08);
}
.hero::before{
  content:"";
  position:absolute;
  width:290px;height:430px;
  right:8vw;bottom:-215px;
  border:1px solid rgba(23,42,58,.10);
  border-radius:150px 150px 0 0;
}
.hero::after{
  right:5vw;top:-12vw;
  width:48vw;height:48vw;
  border-color:rgba(82,121,111,.13);
  border-radius:50%;
  transform:none;
}
.hero .eyebrow{color:var(--terra)}
.hero p{color:#2F4655}
.hero .small{color:var(--muted)}
.hero-pill{
  display:inline-flex;
  margin-top:28px;
  padding:9px 13px;
  border:1px solid rgba(82,121,111,.28);
  border-radius:999px;
  background:rgba(82,121,111,.08);
  color:#2F4F4F;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.02em;
}

/* Formulaire */
.cta-form-wrap{
  background:linear-gradient(180deg,#FFFEFA 0%,#F7F5EF 100%);
}
.leadform{
  background:#FFFEFA;
  border:1px solid rgba(23,42,58,.13);
  border-radius:18px;
  box-shadow:0 22px 60px rgba(23,42,58,.07);
}
.field input,.field textarea,.field select{
  background:#F7F5EF;
  border-color:rgba(23,42,58,.16);
  border-radius:8px;
}
.field input:focus,.field textarea:focus,.field select:focus{
  outline:2px solid rgba(82,121,111,.24);
  border-color:#52796F;
}
.optional-details{
  border-color:rgba(23,42,58,.13);
  border-radius:10px;
  overflow:hidden;
}
.submit{
  background:var(--terra);
  border-radius:8px;
  transition:transform .15s ease, box-shadow .15s ease;
}
.submit:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(200,111,82,.20);
}

/* Partage */
.share-public{background:#F7F5EF}
.strong-share{
  background:var(--ink);
  border-radius:18px;
  box-shadow:0 22px 60px rgba(23,42,58,.12);
}
#partager .strong-share .eyebrow{color:#E3B29E}
.share-public-actions a,.share-public-actions button{
  border-color:#F7F5EF;
  background:#F7F5EF;
  color:var(--ink);
  border-radius:7px;
}

/* Footer */
footer{
  background:#172A3A;
  color:rgba(247,245,239,.76);
  border-top:1px solid rgba(247,245,239,.08);
}

/* Détails d'interface */
.eyebrow,.kicker{color:var(--terra)}
a:focus-visible,button:focus-visible,summary:focus-visible,
input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(82,121,111,.35);
  outline-offset:3px;
}

@media(max-width:760px){
  .brand-mark{width:38px;height:38px;border-radius:10px}
  .hero::before{width:180px;height:290px;right:-55px;bottom:-165px}
  .hero-pill{font-size:.66rem;line-height:1.35}
  .leadform,.strong-share{border-radius:14px}
}


/* =========================================================
   TENUTO V31.1 — PALETTE OFFICIELLE
   Couleurs strictement conformes à la charte fournie.
   Aucun changement fonctionnel.
   ========================================================= */
:root{
  --tenuto-bleu-nuit:#172A3A;
  --tenuto-sauge:#52796F;
  --tenuto-terracotta:#C86F52;
  --tenuto-ivoire:#F7F5EF;
  --tenuto-ardoise:#66747D;

  --tenuto-foret:#2F4F4F;
  --tenuto-sauge-clair:#8FA9A1;
  --tenuto-brume:#BDCEC9;
  --tenuto-terracotta-clair:#D08A73;
  --tenuto-peche:#E3B29E;
  --tenuto-gris-perle:#A7B0B6;
  --tenuto-gris-brume:#D9DEE1;
  --tenuto-sable:#FAEEE8;

  /* Compatibilité avec les variables historiques du site */
  --ink:#172A3A;
  --paper:#F7F5EF;
  --white:#FFFEFA;
  --terra:#C86F52;
  --brass:#52796F;
  --muted:#66747D;
  --line:#D9DEE1;
}

/* Bleu nuit = hiérarchie, titres, navigation, blocs forts */
body{background:#F7F5EF;color:#172A3A}
h1,h2,h3,h4,.logo{color:#172A3A}
.sitehead{
  background:#F7F5EF;
  color:#172A3A;
  border-bottom-color:rgba(23,42,58,.12);
}
footer,.strong-share{
  background:#172A3A;
}

/* Ivoire = fond principal */
.hero,.share-public{
  background-color:#F7F5EF;
}
.cta-form-wrap{
  background:linear-gradient(180deg,#FFFEFA 0%,#F7F5EF 100%);
}

/* Sauge = accents et interface secondaire */
.hero{
  background:
    radial-gradient(circle at 88% 28%, rgba(82,121,111,.17) 0 13%, transparent 13.3%),
    radial-gradient(circle at 82% 70%, rgba(200,111,82,.13) 0 11%, transparent 11.3%),
    linear-gradient(118deg,#F7F5EF 0%,#F7F5EF 61%,#BDCEC9 155%);
}
.hero-pill{
  border-color:rgba(82,121,111,.32);
  background:rgba(82,121,111,.10);
  color:#2F4F4F;
}
.field input:focus,.field textarea:focus,.field select:focus{
  border-color:#52796F;
  outline-color:rgba(82,121,111,.25);
}

/* Terracotta = actions et mises en avant */
.eyebrow,.kicker{color:#C86F52}
.top-cta-contact,.submit{
  background:#C86F52;
  border-color:#C86F52;
  color:#FFFFFF;
}
.submit:hover{
  box-shadow:0 10px 24px rgba(200,111,82,.22);
}

/* Ardoise = textes secondaires / éléments discrets */
.hero .small,.field small,.muted{color:#66747D}
.field input,.field textarea,.field select{
  background:#F7F5EF;
  border-color:rgba(102,116,125,.25);
}

/* Secondaires : uniquement en soutien */
.soft{background:#FAEEE8}
.optional-details{border-color:#D9DEE1}
.share-public-actions a,.share-public-actions button{
  background:#F7F5EF;
  color:#172A3A;
  border-color:#D9DEE1;
}


/* TENUTO V31.2 — CTA HEADER "Faire connaître TENUTO" uniquement */
.sitehead .top-cta-share{
  background:#172A3A;
  border-color:#172A3A;
  color:#FFFFFF;
}
.sitehead .top-cta-share:hover{
  background:#2F4F4F;
  border-color:#2F4F4F;
  color:#FFFFFF;
}

:root{--navy:#172A3A;--sage:#52796F;--terra:#C86F52;--ivory:#F7F5EF;--slate:#66747D;--forest:#2F4F4F;--mist:#BDCEC9;--peach:#E3B29E;--pearl:#A7B0B6;--grey-mist:#D9DEE1;--sand:#FAEEE8}
.section-white{background:#fff}.section-ivory{background:var(--ivory)}.section-sand{background:var(--sand)}
.v33-frictions,.v33-system,.v33-legal,.v33-compare,.v33-fit,.v33-faq{padding:96px 0;overflow:hidden}.v33-promise{padding:104px 0;overflow:hidden}
.v33-heading{max-width:820px;margin-bottom:52px}.v33-heading.compact{margin-bottom:0}.v33-kicker{display:inline-block;margin-bottom:16px;color:var(--sage);font-size:.72rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.v33-kicker.light{color:var(--mist)}
.v33-heading h2,.v33-promise h2{font-size:clamp(2rem,4vw,4rem);line-height:1.03;letter-spacing:-.045em;margin:0;color:var(--navy)}.v33-heading h2 em,.v33-promise h2 em{font-style:normal;color:var(--terra)}.v33-heading>p{max-width:650px;margin-top:20px;color:var(--slate);font-size:1.05rem;line-height:1.65}
.v33-friction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--grey-mist);border:1px solid var(--grey-mist)}.v33-friction-grid article{background:#fff;padding:32px;display:grid;grid-template-columns:48px 1fr;gap:20px}.v33-friction-grid h3,.v33-system h3,.v33-compare h3{margin:0 0 8px;color:var(--navy);font-size:1.1rem}.v33-friction-grid p,.v33-system p,.v33-compare p{margin:0;color:var(--slate);line-height:1.6}
.v33-icon,.v33-feature-icon{width:44px;height:44px;border-radius:14px;background:var(--sand);display:grid;place-items:center;color:var(--terra)}.v33-icon svg,.v33-feature-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v33-promise{background:var(--navy);color:#fff}.v33-promise-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:center}.v33-promise h2{color:#fff}.v33-promise-copy>p{max-width:650px;color:var(--grey-mist);line-height:1.7;font-size:1.06rem;margin:24px 0 30px}.v33-light-btn{background:#fff!important;color:var(--navy)!important;border-color:#fff!important}
.v33-flow{border:1px solid rgba(255,255,255,.18);padding:34px;background:rgba(255,255,255,.04)}.v33-flow-row{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:center}.v33-flow-row>span{font-size:.72rem;font-weight:900;color:var(--peach);letter-spacing:.12em}.v33-flow-row b{display:block;font-size:1.06rem}.v33-flow-row small{display:block;margin-top:4px;color:var(--mist);font-size:.88rem}.v33-flow-line{height:32px;border-left:1px solid rgba(255,255,255,.25);margin-left:25px}
.v33-system-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:18px}.v33-feature{background:#fff;border:1px solid var(--grey-mist);padding:34px;min-height:280px}.v33-feature.featured{background:var(--sage);border-color:var(--sage);color:#fff}.v33-feature.featured h3,.v33-feature.featured p{color:#fff}.v33-feature.featured .v33-feature-icon{background:rgba(255,255,255,.14);color:#fff}.v33-feature-icon{margin-bottom:48px}.v33-tech-note{margin:20px 0 0;padding:16px 20px;border-left:3px solid #8FA9A1;color:var(--slate);font-size:.86rem}
.v33-legal-grid,.v33-fit-grid,.v33-faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.v33-checklist{border-top:1px solid var(--grey-mist)}.v33-checklist>div{display:grid;grid-template-columns:36px 1fr;gap:10px;padding:20px 0;border-bottom:1px solid var(--grey-mist)}.v33-checklist span{color:var(--sage);font-weight:900}.v33-checklist p{margin:0;color:var(--navy);font-weight:700}
.v33-compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.v33-compare-grid article{background:#fff;border:1px solid #EADBD4;padding:30px;min-height:230px}.v33-compare-grid article.is-tenuto{background:var(--navy);border-color:var(--navy);transform:translateY(-8px)}.v33-compare-grid .is-tenuto h3,.v33-compare-grid .is-tenuto p{color:#fff}.v33-label{display:inline-block;margin-bottom:42px;color:var(--slate);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.is-tenuto .v33-label{color:var(--peach)}
.v33-fit-cards{display:grid;gap:12px}.v33-fit-cards>div{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:22px;background:var(--ivory);border-left:3px solid var(--sage)}.v33-fit-cards span{font-size:.7rem;font-weight:900;color:var(--terra);letter-spacing:.12em}.v33-fit-cards p{margin:0;color:var(--slate);line-height:1.55}.v33-fit-cards b{color:var(--navy)}
.v33-accordion details{border-top:1px solid var(--pearl);padding:0}.v33-accordion details:last-child{border-bottom:1px solid var(--pearl)}.v33-accordion summary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;cursor:pointer;color:var(--navy);font-weight:850;list-style:none}.v33-accordion summary::-webkit-details-marker{display:none}.v33-accordion summary span{font-size:1.5rem;font-weight:300;color:var(--terra)}.v33-accordion details[open] summary span{transform:rotate(45deg)}.v33-accordion details p{margin:-5px 36px 22px 0;color:var(--slate);line-height:1.65}
@media(max-width:900px){.v33-friction-grid,.v33-system-grid,.v33-compare-grid{grid-template-columns:1fr}.v33-promise-grid,.v33-legal-grid,.v33-fit-grid,.v33-faq-grid{grid-template-columns:1fr;gap:44px}.v33-compare-grid article.is-tenuto{transform:none}}
@media(max-width:640px){.v33-frictions,.v33-system,.v33-legal,.v33-compare,.v33-fit,.v33-faq,.v33-promise{padding:68px 0}.v33-friction-grid article{padding:24px;grid-template-columns:42px 1fr}.v33-feature{min-height:0;padding:26px}.v33-feature-icon{margin-bottom:28px}.v33-flow{padding:24px}}

/* TENUTO V33.1 */
.v331-friction-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--grey-mist);border:1px solid var(--grey-mist)}
.v331-friction-grid article{background:#fff;padding:28px;display:grid;grid-template-columns:46px 1fr;gap:16px}
.v331-friction-grid h3{margin:0 0 7px;color:var(--navy);font-size:1.05rem}.v331-friction-grid p{margin:0;color:var(--slate);line-height:1.55}
.v331-proof{background:var(--forest);color:#fff;padding:70px 0}
.v331-proof-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:end}
.v331-proof h2{font-size:clamp(1.8rem,3vw,3rem);margin:0 0 14px;letter-spacing:-.04em}.v331-proof p{color:var(--mist);line-height:1.6;margin:0}
.v331-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.v331-stats>div{border-top:1px solid rgba(255,255,255,.25);padding-top:18px}
.v331-stats strong{display:block;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1;color:var(--peach);letter-spacing:-.05em}.v331-stats span{display:block;margin-top:8px;font-size:.8rem;color:#fff}
.v331-source{grid-column:2;font-size:.72rem!important;color:var(--mist)!important}
.v331-agents{padding:100px 0;overflow:hidden}.v331-agents .v33-heading em{font-style:normal;color:var(--terra)}
.v331-orchestra{display:grid;grid-template-columns:.72fr 1.28fr;gap:18px;align-items:stretch}
.v331-orchestrator{background:var(--navy);color:#fff;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;min-height:410px}
.v331-human-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--sage);margin-bottom:auto}.v331-human-icon svg{width:26px;fill:none;stroke:#fff;stroke-width:1.7}
.v331-role{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--peach);font-weight:900;margin-bottom:10px}.v331-orchestrator h3{color:#fff;font-size:1.5rem;margin:0 0 10px}.v331-orchestrator p{color:var(--mist);margin:0;line-height:1.6}
.v331-agents-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v331-agents-grid article{background:#fff;border:1px solid var(--grey-mist);padding:22px;display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:center}
.v331-agents-grid article.v331-expert{background:var(--sand)}.v331-agent-icon{width:40px;height:40px;border-radius:12px;background:var(--mist);color:var(--forest);display:grid;place-items:center;font-weight:900}.v331-agent-icon svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.v331-agents-grid b{display:block;color:var(--navy);font-size:.92rem}.v331-agents-grid small{display:block;color:var(--slate);margin-top:4px;line-height:1.35}
.v331-human-proof{margin-top:22px;padding:24px 28px;background:#fff;border:1px solid var(--grey-mist);display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center}
.v331-human-proof strong{font-size:2.8rem;color:var(--sage);letter-spacing:-.05em}.v331-human-proof p{margin:0;color:var(--navy);line-height:1.45}.v331-human-proof span{font-size:.68rem;color:var(--slate);max-width:150px}
.v331-principle{margin-top:12px;background:var(--sage);color:#fff;padding:20px 26px;display:flex;justify-content:space-between;gap:24px;align-items:center}.v331-principle span{font-size:.68rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900}.v331-principle p{margin:0;color:#fff}

@media(max-width:980px){.v331-friction-grid{grid-template-columns:1fr 1fr}.v331-proof-grid,.v331-orchestra{grid-template-columns:1fr}.v331-source{grid-column:1}.v331-human-proof{grid-template-columns:auto 1fr}.v331-human-proof span{grid-column:2;max-width:none}}
@media(max-width:640px){.v331-friction-grid,.v331-agents-grid,.v331-stats{grid-template-columns:1fr}.v331-proof{padding:56px 0}.v331-stats{margin-top:10px}.v331-orchestrator{min-height:330px}.v331-human-proof{grid-template-columns:1fr}.v331-human-proof span{grid-column:1}.v331-principle{align-items:flex-start;flex-direction:column}}

/* V33.2.3 — CTA intermédiaire mobile */
@media (max-width:640px){
  .v33-promise .btn[href="#contact"],
  .v33-promise a[href="#contact"].btn{
    width:100%;
    max-width:none;
    min-height:58px;
    padding:16px 20px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    white-space:nowrap;
  }
}


/* V33.2.5 — clone exact du CTA hero, positionné en sticker mobile */
.tenuto-sticky-contact{display:none!important}
@media (max-width:640px){
  .tenuto-sticky-contact{
    display:flex!important;
    position:fixed!important;
    z-index:9999;
    left:16px;
    right:16px;
    bottom:16px;
    width:auto!important;
    max-width:none!important;
    min-height:58px;
    align-items:center;
    justify-content:center;
    text-align:center;
    white-space:nowrap;
    box-shadow:0 10px 30px rgba(23,42,58,.24);
  }
}

/* V33.2.6 — sticker strictement mobile + typo renforcée */
@media (min-width:641px){
  a.tenuto-sticky-contact{
    display:none!important;
  }
}
@media (max-width:640px){
  a.tenuto-sticky-contact{
    display:flex!important;
    position:fixed!important;
    z-index:9999;
    left:20px!important;
    right:20px!important;
    bottom:16px!important;
    width:auto!important;
    max-width:none!important;
    min-height:60px!important;
    padding:14px 20px!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:nowrap!important;
    font-size:18px!important;
    font-weight:800!important;
    line-height:1.15!important;
    letter-spacing:-0.01em!important;
    box-shadow:0 10px 30px rgba(23,42,58,.24);
  }
}


/* ==========================================================
   V34 — Accès tarifs depuis la landing + page tarifs dédiée
   ========================================================== */
.v33-pricing-gateway{padding:72px 0}
.v33-pricing-gateway-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:64px;align-items:center}
.v33-pricing-gateway h2{margin:0;color:var(--navy);font-size:clamp(2rem,4vw,3.7rem);line-height:1.04;letter-spacing:-.045em}
.v33-pricing-gateway h2 em{font-style:normal;color:var(--terra)}
.v33-pricing-gateway p{max-width:680px;margin:20px 0 0;color:var(--slate);font-size:1.02rem;line-height:1.65}
.v33-pricing-link{min-height:150px;padding:28px;background:var(--navy);color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-radius:18px;box-shadow:0 18px 45px rgba(23,42,58,.12);transition:transform .18s ease}
.v33-pricing-link:hover{transform:translateY(-3px)}
.v33-pricing-link span{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;line-height:1.08}
.v33-pricing-link b{width:46px;height:46px;flex:0 0 46px;border-radius:50%;display:grid;place-items:center;background:var(--terra);font-size:1.25rem}
.v33-inline-link{color:var(--terra);font-weight:850;text-decoration:underline;text-underline-offset:3px}

/* Pricing page */
.pricing-page{background:var(--ivory);color:var(--navy)}
.pricing-page .sitehead{background:var(--navy)}
.pricing-hero{padding:84px 0 64px;background:linear-gradient(115deg,var(--ivory) 0%,#fff 68%,var(--sand) 100%)}
.pricing-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:end}
.pricing-hero h1{max-width:900px;margin:0;color:var(--navy);font-size:clamp(3rem,6.3vw,5.8rem);line-height:.96;letter-spacing:-.05em}
.pricing-hero h1 em{font-style:normal;color:var(--terra)}
.pricing-hero p{max-width:720px;margin:26px 0 0;color:var(--slate);font-size:1.12rem;line-height:1.65}
.pricing-principle{padding:28px;border-left:3px solid var(--sage);background:rgba(82,121,111,.08)}
.pricing-principle span{display:block;margin-bottom:10px;color:var(--sage);font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.pricing-principle strong{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;line-height:1.35;font-weight:400}
.pricing-plans{padding:38px 0 92px;background:#fff}
.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pricing-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:650px;padding:30px;border:1px solid var(--grey-mist);border-radius:22px}
.pricing-essential{background:linear-gradient(160deg,#F1F7F4 0%,#fff 68%)}
.pricing-collective{background:linear-gradient(160deg,#EEF4F6 0%,#fff 68%)}
.pricing-patrimony{background:linear-gradient(160deg,var(--sand) 0%,#fff 68%);border-color:#EADBD4}
.pricing-card-top{display:flex;align-items:flex-start;justify-content:space-between;min-height:118px}
.pricing-number{color:var(--slate);font-size:.68rem;font-weight:900;letter-spacing:.14em}
.pricing-building{position:relative;width:142px;height:104px;border-bottom:5px solid rgba(23,42,58,.10)}
.pricing-building:before,.pricing-building:after{content:"";position:absolute;bottom:0;background:var(--sage);border-radius:24px 24px 3px 3px}
.pricing-building:before{right:10px;width:86px;height:88px}
.pricing-building:after{right:72px;width:55px;height:64px;background:var(--mist)}
.pricing-building i{position:relative;z-index:2;display:inline-block;width:12px;height:16px;margin:35px 4px 0;background:var(--ivory);border:2px solid var(--navy);opacity:.75}
.pricing-building i:first-child{margin-left:38px}
.building-collective:before{width:96px;height:94px;background:var(--navy)}
.building-collective:after{width:62px;height:72px;background:var(--sage)}
.building-patrimony:before{width:108px;height:100px;background:var(--navy)}
.building-patrimony:after{width:70px;height:82px;background:var(--terra)}
.pricing-card h2{margin:4px 0 8px;color:var(--navy);font-size:2.35rem;line-height:1}
.pricing-desc{min-height:58px;margin:0;color:var(--slate);line-height:1.45}
.pricing-card ul{list-style:none;margin:22px 0 26px;padding:0;display:grid;gap:10px}
.pricing-card li{position:relative;padding-left:27px;color:var(--navy);font-size:.9rem;line-height:1.35}
.pricing-card li:before{content:"✓";position:absolute;left:0;top:-1px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--sage);color:#fff;font-size:.68rem;font-weight:900}
.pricing-patrimony li:before{background:var(--terra)}
.pricing-split{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-top:1px solid var(--grey-mist);font-size:.78rem}
.pricing-split span{color:var(--slate)}.pricing-split b{color:var(--navy);white-space:nowrap}
.pricing-total{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:auto;padding-top:22px;border-top:2px solid var(--navy)}
.pricing-total span{font-size:.76rem;font-weight:850}.pricing-total strong{font-family:Georgia,"Times New Roman",serif;font-size:2.45rem;font-weight:400;white-space:nowrap}
.pricing-works{padding:84px 0;background:var(--ivory)}
.pricing-works-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:34px}
.pricing-works h2{margin:0;color:var(--navy);font-size:clamp(2.1rem,4vw,3.7rem);line-height:1.04}.pricing-works h2 em{font-style:normal;color:var(--terra)}
.pricing-works-head p{margin:0;color:var(--slate);line-height:1.65}
.works-scale{display:grid;grid-template-columns:repeat(4,1fr) 1.25fr;gap:10px}
.works-scale>div{min-height:145px;padding:22px;background:#fff;border:1px solid var(--grey-mist);border-radius:16px;display:flex;flex-direction:column;justify-content:center}
.works-scale strong{font-family:Georgia,"Times New Roman",serif;color:var(--navy);font-size:2rem;font-weight:400}.works-scale span{margin-top:8px;color:var(--slate);font-size:.78rem;line-height:1.35}
.works-scale .works-min{background:var(--navy);border-color:var(--navy)}.works-min small{color:var(--mist);font-size:.67rem;text-transform:uppercase;letter-spacing:.1em}.works-scale .works-min strong,.works-scale .works-min span{color:#fff}
.pricing-cta{padding:72px 0;background:var(--forest)}
.pricing-cta-box{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;color:#fff}
.pricing-cta h2{margin:0;color:#fff;font-size:clamp(2rem,4vw,3.5rem)}.pricing-cta p{margin:14px 0 0;color:var(--mist)}
.pricing-main-cta{min-height:54px;padding:15px 20px;font-size:.78rem}
@media(max-width:900px){
  .v33-pricing-gateway-grid,.pricing-hero-grid,.pricing-works-head,.pricing-cta-box{grid-template-columns:1fr;gap:34px}
  .pricing-grid{grid-template-columns:1fr}
  .pricing-card{min-height:0}
  .works-scale{grid-template-columns:repeat(2,1fr)}
  .works-scale .works-min{grid-column:1/-1}
}
@media(max-width:640px){
  .v33-pricing-gateway{padding:58px 0}
  .v33-pricing-link{min-height:110px}
  .pricing-hero{padding:58px 0 44px}
  .pricing-hero h1{font-size:clamp(2.55rem,12vw,4rem)}
  .pricing-plans{padding:26px 0 64px}
  .pricing-card{padding:24px}
  .pricing-card-top{min-height:100px}
  .pricing-building{transform:scale(.88);transform-origin:top right}
  .pricing-total strong{font-size:2.1rem}
  .works-scale{grid-template-columns:1fr}
  .works-scale .works-min{grid-column:auto}
  .pricing-works{padding:64px 0}
  .pricing-cta{padding:58px 0 96px}
  .pricing-main-cta{width:100%;max-width:none}
}
