/* Une typographie de lecture, partagée par toutes les pages. */
body{font-size:16px;line-height:1.7}
.announcement{font-size:10px;letter-spacing:1px;height:34px}
.header{height:94px}
.desktop-nav{gap:28px}
.desktop-nav a,.language{font-size:14px}
.button,.text-button,.header-project{font-size:14px}
.button{padding:17px 22px;gap:24px}
.eyebrow,.section-label,.project-kicker{font-size:11px;letter-spacing:1.5px}
.hero .eyebrow{font-size:11px}
.hero p{font-size:17px;line-height:1.75}
.hero-content{max-width:760px}
.hero-actions{gap:30px}
.hero-hotspot{font-size:12px}
.hotspot-label small{font-size:11px}
.hero-caption{font-size:10px;letter-spacing:1px}
.hero-caption span{font-size:12px}
.scroll-cue{font-size:10px}
.benefits>div{font-size:13px;gap:13px}
.section-intro{gap:50px}
.section-intro>div,.section-intro>p{max-width:430px}
.section-intro p{font-size:16px;line-height:1.8;max-width:430px}
.section-intro .text-button{font-size:14px}
.toolbar-note{font-size:10px}
.range-link{font-size:14px;padding:9px 20px}
.product-tag,.product-number{font-size:10px;letter-spacing:.8px}
.visual-caption{font-size:12px;line-height:1.5}
.product-description{align-items:flex-start;gap:12px}
.product-description p{font-size:14px;line-height:1.65;max-width:225px;margin-top:9px}
.round-button{margin-top:5px}
.collection-footer{font-size:14px;gap:30px;line-height:1.7}
.collection-footer .text-button{flex-shrink:0;font-size:14px}
.philosophy{min-height:810px}
.philosophy-copy{padding:64px 10%}
.philosophy-copy>p{font-size:16px;line-height:1.8;max-width:430px}
.philosophy-details summary{font-size:14px;gap:12px;line-height:1.5}
.philosophy-details details p{font-size:14px;line-height:1.8;padding-left:25px;max-width:420px}
.philosophy-copy .text-button{font-size:14px}
.photo-footnote,.accessory-photo-caption{font-size:10px;letter-spacing:1px}
.accessory-copy>p,.accessory-topics{font-size:15px;line-height:1.8}
.accessory-copy .eyebrow{font-size:11px}
.accessory-copy .button{font-size:14px}
.detail-content>p{font-size:16px;line-height:1.8}
.detail-values{font-size:14px}
.detail-values span{font-size:11px}
.detail-content>.text-button{font-size:14px}
.project-main p{font-size:16px;line-height:1.8}
.project-main>div{max-width:440px}
.project-main .button{font-size:14px}
.project-bottom,.project-bottom .text-button{font-size:14px}
.faq{gap:60px}
.faq-intro .eyebrow{font-size:11px}
.faq-items summary{font-size:16px;line-height:1.6;padding:24px 0}
.faq-items details p{font-size:15px;line-height:1.85;padding-bottom:24px}
.footer-top{grid-template-columns:1.2fr 1fr 1fr 1fr;gap:40px}
.footer-top>div:first-child p{font-size:13px;line-height:1.8}
.footer-column,.footer-column button{font-size:14px;line-height:1.7}
.footer-column>span{font-size:11px;letter-spacing:1px}
.footer-bottom{font-size:11px}
.footer-bottom>a{font-size:10px}
.modal{padding:44px;max-height:calc(100svh - 32px)}
.modal .eyebrow{font-size:11px}
.modal-note,.guide-description,.guide-result-note{font-size:14px;line-height:1.8}
.product-modal{padding:0;width:960px}
.product-modal-copy{padding:48px 35px 36px}
.product-modal-copy>p{font-size:15px;line-height:1.8}
.product-modal-copy>.product-install-note{font-size:12px;line-height:1.8}
.spec-list li{font-size:13px;line-height:1.7;align-items:flex-start}
.spec-list svg{margin-top:3px}
.product-modal-copy>.text-button{font-size:13px}
.guide-modal{width:740px}
.choice-option>span{font-size:16px}
.choice-option small,.guide-range small{font-size:13px;line-height:1.6}
.guide-back{font-size:13px}
.guide-range strong{font-size:24px}
.selection-empty{font-size:15px}
.selection-item p,.selection-remove{font-size:13px}
.brief-modal{width:650px}
.brief-modal label{font-size:14px}
.brief-modal input,.brief-modal select,.brief-modal textarea{font-size:16px;line-height:1.6;padding:13px 15px}
.brief-output{font-size:14px;line-height:1.8}
.toast{font-size:14px}
@media(max-width:1100px){.desktop-nav{gap:18px}.desktop-nav a,.header-project{font-size:13px}.header-actions{gap:17px}.brand{font-size:15px}.hero h1{font-size:72px}.philosophy-copy{padding:52px 8%}.philosophy-copy h2{font-size:49px}.product-grid{gap:16px}.product-tag{font-size:9px;left:14px;right:25px}.visual-caption{font-size:11px;left:14px}.footer-top{grid-template-columns:1.15fr 1fr 1fr;gap:32px}.footer-note{display:none}}
@media(max-width:850px){.header{height:80px}.announcement{height:32px}.mobile-nav:not([hidden]){top:80px}.mobile-nav a,.mobile-nav button{font-size:17px}.hero h1{font-size:65px}.hero .eyebrow{font-size:10px}.benefits>div{font-size:13px}.product-description p{font-size:14px;max-width:245px}.philosophy{grid-template-columns:42% 58%}.philosophy-copy>p{font-size:15px}.philosophy-details summary,.philosophy-details details p{font-size:13px}.section-intro{gap:30px}.section-intro>div{max-width:340px}.section-intro p{font-size:15px}.section-intro .text-button{font-size:13px}.project-main>div{max-width:330px}.project-main p{font-size:15px}.project-bottom{align-items:flex-start;gap:20px}.footer-bottom>div{gap:16px}}
@media(max-width:600px){
 .announcement{font-size:9px;letter-spacing:.45px;height:34px;justify-content:center}.announcement span:last-child{display:none}
 .brand{font-size:15px}.header{height:78px}.mobile-nav:not([hidden]){top:78px}.header-actions{gap:20px}
 .hero{height:740px}.hero-content{top:24%;left:7%;right:7%}.hero h1{font-size:clamp(35px,11.7vw,62px)}.hero .eyebrow{font-size:9px;line-height:1.7;letter-spacing:.8px;max-width:270px}.hero .tiny-line{width:20px}
 .hero p{font-size:16px;line-height:1.8;margin-top:24px}.hero p br{display:none}.hero-actions{margin-top:28px;gap:21px}.hero-actions .button,.hero-actions .text-button{font-size:14px;gap:22px}.hero-actions .button{padding:17px 20px}
 .hero-caption{font-size:8px;letter-spacing:.5px;max-width:170px}.hero-caption span{font-size:10px}.scroll-cue{font-size:9px;gap:10px}.hero-bottom{bottom:26px}
 .benefits{padding:25px 7%;gap:21px 15px}.benefits>div{font-size:12px;line-height:1.6;gap:10px}.benefits svg{width:19px;height:19px}
 .section-label,.eyebrow,.project-kicker{font-size:10px;letter-spacing:1px}.section-intro>div,.section-intro p{max-width:none}.section-intro p{font-size:16px;line-height:1.8}.section-intro .text-button{font-size:14px}.section-intro h2{font-size:36px}
 .range-link{font-size:13px;padding:8px 15px}.product-grid{gap:30px 14px}.product-tag{font-size:8px;line-height:1.6;left:12px;right:24px}.product-number{font-size:8px}.visual-caption{font-size:10px;left:12px;right:12px;line-height:1.5}.product-description{position:relative;padding-right:28px}.product-description h3{font-size:25px}.product-description p{font-size:13px;line-height:1.7;max-width:none}.product-description .round-button{position:absolute;right:0;top:0;width:25px;height:25px}.collection-footer,.collection-footer .text-button{font-size:14px}
 .philosophy{min-height:0}.philosophy-copy{padding:48px 7%}.philosophy-copy .eyebrow{font-size:10px;letter-spacing:1px}.philosophy-copy h2{font-size:44px}.philosophy-copy>p{font-size:16px;max-width:none}.philosophy-details summary{font-size:14px;line-height:1.6;padding:20px 0;gap:10px}.philosophy-details details p{font-size:14px;max-width:none;padding-left:25px}.philosophy-copy .text-button{font-size:14px}.photo-footnote{font-size:9px}
 .accessory-copy>p,.accessory-topics{font-size:15px}.accessory-copy .eyebrow{font-size:10px}.accessory-copy .button{font-size:14px;gap:18px}.accessory-photo-caption{font-size:9px;line-height:1.7;letter-spacing:.7px}
 .detail-section{min-height:570px}.detail-content .eyebrow{font-size:10px}.detail-content h2{font-size:34px}.detail-content>p{font-size:15px}.detail-content>p br{display:none}.detail-values{font-size:12px;gap:14px;line-height:1.6}.detail-values span{font-size:10px}.detail-content>.text-button{font-size:13px;gap:15px}
 .project-main p{font-size:16px;line-height:1.8}.project-main>div{max-width:none}.project-main .button{font-size:14px;gap:20px}.project-bottom,.project-bottom .text-button{font-size:13px;line-height:1.8}.project-kicker{line-height:1.7}
 .faq-intro .eyebrow{font-size:10px}.faq-items summary{font-size:16px;line-height:1.6;padding:22px 0}.faq-items details p{font-size:15px;line-height:1.8}.faq h2{font-size:36px}
 .footer-top{grid-template-columns:1fr;gap:35px}.footer-top>div:first-child{display:block;grid-column:auto}.footer-top>div:first-child p{font-size:14px;max-width:none;margin-top:22px}.footer-logo{font-size:19px}.footer-column,.footer-column button{font-size:15px}.footer-column>span{font-size:11px}.footer-bottom,.footer-bottom>div{font-size:11px;line-height:1.8}.footer-bottom>div{flex-wrap:wrap}.footer-bottom>a{font-size:10px}
 .modal{padding:40px 23px;max-height:calc(100svh - 24px)}.modal .eyebrow{font-size:10px}.modal-note,.guide-description,.guide-result-note{font-size:14px}.product-modal{padding:0}.product-modal-copy{padding:28px 24px 32px}.product-modal-copy>p{font-size:15px}.spec-list li{font-size:13px}.product-modal-copy>.product-install-note{font-size:12px}.product-modal-copy .button,.product-modal-copy>.text-button{font-size:13px}
 .guide-modal h2{font-size:30px}.guide-modal .button{font-size:13px;gap:15px}.choice-option>span{font-size:16px}.choice-option small,.guide-range small{font-size:12px}.guide-range strong{font-size:20px}.guide-range img{width:65px}.guide-back{font-size:13px}.selection-item{flex-wrap:wrap}.selection-item img{width:70px}.selection-item p,.selection-remove{font-size:12px}.brief-output{font-size:13px}.toast{font-size:13px}
}

/* Corps de lecture agrandi, indépendant du zoom du navigateur. */
.hero p,.section-intro p,.philosophy-copy>p,.accessory-copy>p,.detail-content>p,.project-main p{font-size:18px;line-height:1.85}
.desktop-nav a,.button,.text-button,.header-project,.range-link{font-size:15px}
.philosophy-details summary,.philosophy-details details p,.faq-items details p{font-size:16px;line-height:1.8}
.faq-items summary{font-size:18px}.product-description p{font-size:15px}.footer-column,.footer-column button,.footer-top>div:first-child p{font-size:15px}
@media(max-width:600px){.hero p,.section-intro p,.philosophy-copy>p,.accessory-copy>p,.detail-content>p,.project-main p{font-size:17px;line-height:1.85}.hero-actions .button,.hero-actions .text-button,.section-intro .text-button,.philosophy-copy .text-button,.accessory-copy .button,.project-main .button{font-size:15px}.philosophy-details summary,.philosophy-details details p,.faq-items details p{font-size:16px}.faq-items summary{font-size:17px}.product-description p{font-size:14px}.range-link{font-size:14px}.mobile-nav a,.mobile-nav button{font-size:18px}}
@media(max-width:360px){.product-grid{grid-template-columns:1fr}.product-visual{aspect-ratio:1.15}.product-tag{font-size:10px}.visual-caption{font-size:12px}.product-description p{font-size:14px}.hero-actions .button{gap:15px}.hero h1{letter-spacing:-2px}.detail-values{font-size:11px;gap:10px}.detail-values>div{padding-right:10px}}
