/* Harmonisation approuvée le 17 octobre 2026. Valeurs conservées. */
:root{--type-body:1rem;--type-lead:1.125rem;--type-secondary:.875rem;--type-label:.75rem;--control-line:#77877c}
html{font-size:100%}
body{font-size:var(--type-body);line-height:1.65}
h1,h2,h3{font-weight:600}
.hero h1{font-size:clamp(2.75rem,5vw,4rem);line-height:1.10;letter-spacing:-.04em}
.section-head h2,h2{font-size:clamp(2.125rem,3.6vw,2.875rem);line-height:1.16;letter-spacing:-.035em}
.hero .intro{font-size:var(--type-lead);line-height:1.7}
.section-head>p,.pricing-head>p:last-child,.example-intro>p:last-of-type{font-size:1.0625rem;line-height:1.7}
.section-head>p{max-width:25rem}
.eyebrow{font-size:var(--type-label);font-weight:700;line-height:1.5;letter-spacing:.09em}
.nav a{font-size:.875rem;line-height:1.5}
.language{font-size:.875rem;line-height:1.5}
.btn,.btn.small,.hero-actions .btn{font-size:.875rem;line-height:1.5;font-weight:650}
.btn.small{padding:12px 15px}
.btn.outline,.example-chooser button,.menu-toggle{border-color:var(--control-line)}
.example-chooser button[aria-pressed=true]{border-color:var(--accent)}
.trial,.hero-note,.diagram-caption,.example-note,.pricing-footnote,.footer p,.footer-links,.footer-bottom,.product-shot figcaption{font-size:var(--type-secondary);line-height:1.65}
.trial{max-width:30rem}
.hero-note{margin-top:28px}
.journey-head{font-size:var(--type-label);line-height:1.5;letter-spacing:.04em}
.journey-node strong{font-size:1rem;line-height:1.5}
.journey-node p{font-size:.875rem;line-height:1.6}
.journey-focus .focus-label{font-size:.75rem;line-height:1.5;font-weight:700;letter-spacing:.05em}
.journey-focus strong{font-size:1.5rem;line-height:1.25}
.strip div{font-size:.875rem;line-height:1.5}
.benefit h3,.product-card h3,.price-card h3{font-size:1.375rem;line-height:1.25;letter-spacing:-.02em}
.step h3,.trust-item h3{font-size:1.25rem;line-height:1.3;letter-spacing:-.02em}
.benefit p,.step p,.product-card p:not(.surface),.trust-item p,.contact-box p{font-size:1rem;line-height:1.65}
.benefit-number,.tag,.product-card .surface,.step-top span{font-size:.75rem;line-height:1.5}
.tag,.product-card .surface{font-weight:600;letter-spacing:.06em}
.benefit{min-height:0}
.benefit-number{margin-bottom:28px}
.tag{padding-top:22px}
.step-top{margin-bottom:20px}
.example-chooser button{font-size:.875rem;line-height:1.5}
.example-row{grid-template-columns:8.5rem 1fr;gap:20px}
.example-row dt{font-size:.875rem;line-height:1.5;font-weight:600}
.example-row dd{font-size:1rem;line-height:1.65}
.example-row:first-child dd{font-size:1.25rem;line-height:1.4}
.plan-description{font-size:1rem;line-height:1.65;min-height:3.3em}
.amount{font-size:3rem;line-height:1.05;letter-spacing:-.045em}
.price small{font-size:.875rem;line-height:1.5}
.plan-label{font-size:.75rem;line-height:1.5;font-weight:600;top:-14px}
.plan-features li{font-size:.9375rem;line-height:1.65;margin-bottom:14px}
.common strong,.common p{font-size:1rem;line-height:1.65}
.comparison summary{font-size:1rem;line-height:1.5}
.comparison table{font-size:.9375rem;line-height:1.6}
.faq-item summary{font-size:1.0625rem;line-height:1.5;font-weight:600;padding:23px 0}
.faq-item p{font-size:1rem;line-height:1.7;padding-bottom:24px}
.contact-box h2{font-size:1.75rem;line-height:1.2}
.contact-link{font-size:1rem;line-height:1.5}
.final h2{font-size:clamp(2.375rem,4.2vw,3.375rem);line-height:1.15}
.final>div>p:not(.eyebrow){font-size:1.0625rem;line-height:1.7;max-width:36rem}
.final>div>p.trial{font-size:.875rem;line-height:1.65}
.footer-bottom{flex-wrap:wrap}
.legal-content h1{font-size:2.875rem;line-height:1.15}
.legal-content h2{font-size:1.75rem;line-height:1.25}
.legal-content h3{font-size:1.375rem;line-height:1.3}
.legal-content p:not(.eyebrow),.legal-content ul,.policy-source p{font-size:1rem;line-height:1.75}
.policy-source h1{font-size:2rem;line-height:1.2}
.policy-source h2{font-size:1.5rem;line-height:1.25}
.draft-notice{font-size:.9375rem;line-height:1.7}
/* Hero V3 validé. La capture de l'app n'est pas retouchée. */
.hero-v3 .hero h1{font-size:clamp(2.75rem,4.7vw,3.75rem);line-height:1.12}
.hero-v3 .hero .intro{font-size:1.125rem;line-height:1.7}
.hero-v3 .demo-heading{font-size:.875rem;line-height:1.5}
.hero-v3 .demo-badge{font-size:.75rem;line-height:1.5}
.hero-v3 .reading-guide span{font-size:.875rem;line-height:1.5}
.hero-v3 .reading-guide b{font-size:.75rem;width:28px;height:28px}
.hero-v3 .real-demo figcaption{font-size:.875rem;line-height:1.65}
@media(max-width:1050px){
 .hero h1{font-size:clamp(2.75rem,5vw,3.25rem)}
 .hero-grid{gap:36px}
 .example-layout,.trust-layout,.faq-layout{gap:44px}
 .example-row{grid-template-columns:7rem 1fr;gap:14px}
 .product-grid{gap:35px 40px}
 .common{align-items:flex-start;flex-wrap:wrap;gap:12px}
}
@media(max-width:760px){
 .hero h1{font-size:clamp(2.5rem,7.6vw,3.375rem);line-height:1.12}
 .section-head h2,h2{font-size:2rem;line-height:1.18}
 .hero .intro{font-size:1.0625rem;line-height:1.7}
 .section-head>p,.pricing-head>p:last-child,.example-intro>p:last-of-type{font-size:1rem;line-height:1.7}
 .nav a{font-size:1rem}
 .language{font-size:.875rem}
 .benefit h3,.product-card h3,.price-card h3{font-size:1.375rem}
 .benefit p,.step p,.product-card p:not(.surface){font-size:1rem}
 .benefit{min-height:0}
 .faq-item summary{font-size:1.0625rem;line-height:1.5}
 .hero-actions .btn{font-size:.875rem;gap:14px}
 .strip div{font-size:.875rem}
 .step-top{gap:12px}
 .example-row{grid-template-columns:7rem 1fr;gap:14px}
 .plan-description{min-height:0}
 .common strong,.common p{font-size:1rem}
 .final h2{font-size:2.25rem}
 .legal-content h1{font-size:2.25rem}
 .footer-links{gap:16px 20px}
 .footer-bottom{line-height:1.65}
 .hero-v3 .hero h1{font-size:clamp(2.5rem,7.6vw,3.375rem);line-height:1.12}
 .hero-v3 .hero .intro{font-size:1.0625rem}
 .hero-v3 .reading-guide{grid-template-columns:1fr;gap:8px}
 .hero-v3 .demo-heading{flex-wrap:wrap}
}
@media(max-width:390px){
 .hero h1{font-size:2.5rem}
 .steps,.product-grid{grid-template-columns:1fr}
 .benefit h3{font-size:1.375rem}
 .example-row{grid-template-columns:1fr;gap:7px}
 .example-row:first-child dd{font-size:1.25rem}
 .journey-head{font-size:.75rem}
 .journey-focus strong{font-size:1.5rem}
 .language{font-size:.875rem}
 .hero-v3 .hero h1{font-size:2.5rem}
}
/* Les cartes grandissent avec leur contenu ; aucun texte n'est tronqué. */
p,li,dd,dt,h1,h2,h3,summary,a{overflow-wrap:break-word}
body{overflow-wrap:anywhere}
.hero-grid>*,.strip>*,.example-layout>*,.trust-layout>*,.faq-layout>*,.benefit-grid>*,.steps>*,.product-grid>*,.pricing-grid>*{min-width:0}
.price{flex-wrap:wrap}
.contact-link{white-space:normal}
.footer-links a{min-width:0;max-width:100%;overflow-wrap:anywhere}
.benefit>*{min-width:0;max-width:100%}
.btn,.faq-item summary,.example-row dt,.example-row dd,.journey strong{overflow-wrap:anywhere}
.journey-head>span:first-child{min-width:0;flex:1}
.journey-head .orbit{flex-shrink:0}

@media(max-width:600px){.benefit-grid,.steps,.product-grid{grid-template-columns:1fr}}
