/* Content must shrink within grid and flex columns, including at text zoom. */
h1,h2,h3,h4,h5{ text-wrap:balance;hyphens:none;word-break:normal }
:is(h1,h2,h3,h4,h5):not(.pricing-screen-count)>:is(span,em){white-space:normal;text-wrap:balance}
.home-hero h1>span,.home-hero h1>em,.footer-lead h2>span{display:inline;white-space:normal}
body[data-page="home"] .section-heading h2>em{display:inline;vertical-align:baseline}
.home-hero h1{font-size:clamp(36px,4.2vw,62px);line-height:1.13}
@media(max-width:580px){.home-hero h1{font-size:clamp(30px,8.5vw,44px);letter-spacing:-.04em}.pricing-card .pricing-screen-count>span{font-size:20px}}
main,main section,main article,main aside,main nav,main figure,
.header-inner>* ,.footer-top>*,.hero-grid>*,.contact-layout>*,.plan-detail>*{min-width:0}
:is(h1,h2,h3,p,li,dt,dd,figcaption,.breadcrumb,.inline-link){overflow-wrap:break-word}
:is(.button,.inline-link,.reader-download-link,.reader-source-link){max-width:100%}
.button{white-space:normal;overflow-wrap:break-word;text-align:center}
.button>.icon,.inline-link>.icon{flex-shrink:0}
.breadcrumb>span[aria-current]{min-width:0;overflow-wrap:anywhere}
.contact-builder input,.contact-builder select,.contact-builder textarea{min-width:0;width:100%;box-sizing:border-box}
.preferences-dialog{box-sizing:border-box;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
.dialog-heading{gap:16px}.dialog-heading h2{min-width:0}.close-dialog{flex-shrink:0;min-width:44px;min-height:44px}
.article-cover,.article-card img{display:block}
.article-table-wrap,.table-scroll{min-width:0;max-width:100%;-webkit-overflow-scrolling:touch}
@media(max-width:1100px){
    .menu-toggle{min-width:44px;min-height:44px}
    .mobile-nav>a{min-height:48px;overflow-wrap:break-word;line-height:1.5;padding-block:10px}
}
@media(max-width:800px){
    .footer-lead h2>span{white-space:normal;text-wrap:balance}
    .request-preview{padding:20px 16px}
    .contact-builder :is(input,select,textarea){font-size:16px}
    .preferences-dialog{padding:22px 20px}
    .dialog-actions{flex-wrap:wrap}.dialog-actions>*{min-width:0;max-width:100%}
    .reader-grid .compact-reader :is(.reader-download-link,.copy-install,.reader-guide-link,.reader-details>summary){min-height:44px}
    .reader-grid .compact-reader .reader-install-value{min-width:0;flex-wrap:wrap;row-gap:8px}
    .reader-grid .compact-reader .reader-downloader{grid-template-columns:minmax(0,1fr);gap:6px}
    .compact-reader .reader-download-label{max-width:none}
    .contact-builder .button{min-height:48px}
}
@media(max-width:580px){
    .home-hero :is(h1>span,h1>em){white-space:normal;text-wrap:balance}
    .header-inner{gap:8px}.brand{min-width:0}.brand-copy{min-width:0}
    .header-cta{min-width:44px;min-height:44px}
    .sales-resource-links a,.resource-links a{min-width:0;white-space:normal;overflow-wrap:anywhere}
    .dialog-actions{display:grid;grid-template-columns:minmax(0,1fr)}
    .dialog-actions .button{width:100%}
    .whatsapp-float{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* Leave enough room for the full navigation, including Qui sommes-nous. */
@media(min-width:1281px){.main-nav{gap:14px}.main-nav a{font-size:13px}.header-inner{gap:18px}.brand-copy strong{font-size:20px}}
@media(min-width:1101px) and (max-width:1280px){.main-nav{display:none}.menu-toggle{display:block;flex-shrink:0;min-width:44px;min-height:44px}.header-cta{margin-left:auto}.js .mobile-nav{display:none}.js .mobile-nav.is-open{display:grid}.mobile-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;padding:0 28px 20px}.mobile-nav>a{font-size:14px;line-height:1.5;min-height:48px;display:flex;align-items:center;text-decoration:none}}
