@font-face{font-family:"KAIJIE Arabic";src:url('/assets/fonts/NotoSansArabic-variable.ttf') format('truetype');font-weight:100 900;font-display:swap}
/* Preserve the accepted design, adapting line length rather than truncating. */
html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .hero-heading h1{font-size:clamp(38px,4.2vw,82px)!important;line-height:1.12!important;max-width:1250px!important;letter-spacing:-.04em}
html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .hero-heading h1 span{white-space:normal!important;max-width:100%;text-wrap:balance}
html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .hero-copy{max-width:560px;line-height:1.65}
html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) :is(.button,.text-link,.header-cta){white-space:normal;line-height:1.55}
html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) :is(.page-title,.section-title){text-wrap:balance;overflow-wrap:break-word}
html[lang=de] .page-title{font-size:clamp(38px,5vw,82px)}
html[lang=ru] :is(.eyebrow,.nav-link,.button,.text-link){letter-spacing:.04em}
html[lang=ru] #wpc-system .wpc-space-heading{font-size:clamp(34px,3.3vw,56px);line-height:1.16}
html[lang=vi] :is(h1,h2,h3){line-height:1.2}
html[lang=vi] .hero-heading h1{line-height:1.22!important}
html[lang=ar]{--font:"KAIJIE Arabic",Tahoma,Arial,sans-serif;--mono:"KAIJIE Arabic",Tahoma,Arial,sans-serif}
html[lang=ar] body{font-family:var(--font);line-height:1.85}
html[lang=ar] :is(h1,h2,h3,.eyebrow,.button,.text-link,.nav-link,.header-cta,.language-trigger){letter-spacing:0!important}
html[lang=ar] :is(h1,h2,h3){line-height:1.5}
html[lang=ar] .hero-heading h1{line-height:1.5!important;font-weight:500}
html[lang=ar] .brand,html[lang=ar] .footer-language{direction:ltr}
html[lang=ar] .language-menu{direction:rtl}
html[lang=ar] .language-options button{direction:ltr}
.language-options button[lang=ar]{direction:ltr}
.language-options button[lang=ar] span{direction:rtl;unicode-bidi:isolate}
html[lang=ar] .hero-bottom{flex-direction:row}
html[lang=ar] #wpc-system{direction:ltr}
html[lang=ar] #wpc-system :is(.wpc-copy-area,#wpc-explore,.wpc-editorial){direction:rtl;text-align:right}
html[lang=ar] #wpc-system li span{margin-left:0;margin-inline-start:15px}
html[lang=ar] #wpc-system h2{font-size:clamp(25px,2.4vw,40px);line-height:1.65}
html[lang=ar] :is(.kj-table-scroll,.technical-table){direction:rtl}
html[lang=ar] :is(td,.technical-dimension,[data-product-code]){unicode-bidi:plaintext}
html[lang=ar] bdi[data-product-code]{direction:ltr;unicode-bidi:isolate}
html[lang=ar] :is(code,pre){direction:ltr;text-align:left;unicode-bidi:isolate}
html[lang=ar] input[type=email],html[lang=ar] input[type=tel]{direction:ltr;text-align:left}
html[lang=ar] .nav-submenu{left:auto;right:0}
html[lang=ar] .kb-rich-menu{direction:rtl}
html[lang=ar] .scene-viewer-navigation svg,html[lang=ar] .scene-pagination svg{transform:scaleX(-1)}
html[lang=ar] .kj-line-arrow{transform:scaleX(-1)}
html[lang=ar] #wpc-system #wpc-explore svg{transform:scaleX(-1)}
html[lang=ar] .scene-viewer img{direction:ltr}
.language-options .language-flag{flex-shrink:0}
.language-flag[viewBox="0 0 24 24"]{width:18px;height:18px;box-shadow:none}
html[lang=ar] .text-link:hover .kj-line-arrow,html[lang=ar] .button:hover .kj-line-arrow{transform:translateX(-7px) scaleX(-1)}
@media(min-width:1281px) and (max-width:1500px){
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .header-inner{gap:12px;padding-inline:2vw}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .primary-navigation{gap:10px}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) :is(.nav-link,.header-cta){font-size:9px;letter-spacing:.025em}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .header-actions{gap:12px}
 html[lang=ar] .nav-link{font-size:12px}
}

/* Arabic reading scale: keep the editorial hierarchy without Latin microtype. */
html[lang=ar] body{font-size:18px}
html[lang=ar] :is(p,li,dt,dd,label,input,textarea,select){font-family:var(--font);letter-spacing:0;line-height:1.9}
html[lang=ar] main p:not(.eyebrow):not(.note){font-size:17px}
html[lang=ar] :is(.lede,.page-intro>p:not(.eyebrow),.hero-copy){font-size:18px;line-height:1.9}
html[lang=ar] :is(.eyebrow,.note,figcaption,.image-caption,.visual-caption,.breadcrumb,.field label,small){font-size:15px;line-height:1.85;letter-spacing:0}
html[lang=ar] :is(.button,.text-link,.visual-link,.pdf-link,.header-cta,.nav-link,.language-trigger){font-family:var(--font);font-size:15px;line-height:1.75;letter-spacing:0}
html[lang=ar] :is(.button,.text-link) span{font-size:inherit;line-height:inherit}
html[lang=ar] .nav-link{font-size:14px;opacity:.85}
html[lang=ar] .header-cta{font-size:14px}
html[lang=ar] .primary-navigation{gap:clamp(9px,1vw,18px)}
html[lang=ar] .project-card .eyebrow{font-size:15px;margin-top:18px}
html[lang=ar] .project-card h3{font-size:clamp(25px,2.1vw,34px);line-height:1.55;margin-block:8px}
html[lang=ar] .project-card .note{font-size:17px;line-height:1.85}
html[lang=ar] :is(.scene-category-action,.scene-image-affordance,.scene-more,.scene-filter,.scene-collection-entry,.scene-pagination button,.scene-viewer button,.scene-collection-dialog button,.kj-filter-bar button,.kj-inpage,.kj-wall-choice-label,.kj-wall-preview-hint,.kj-wall-view-toggle,.wpc-tech-summary-meta,.wpc-tech-page-status,.wpc-tech-page-button,.wpc-tech-page-position){font-family:var(--font);font-size:15px;line-height:1.85;letter-spacing:0}
html[lang=ar] :is(.scene-gallery-footer p,.scene-collection-entry p,.kx-atlas-caption p,.kj-wall-preview-copy p){font-size:17px;line-height:1.85}
html[lang=ar] :is(.kx-atlas-category small,.kx-atlas-meter,.kx-atlas-image>span,.kb-wpc-foot,.kb-wpc-index,.kj-catalogue-zoom>span,.kj-technical-image>span,.kj-lightbox-tools button,.kj-lightbox figcaption,.kx-picture button>span){font-family:var(--font);font-size:14px;line-height:1.85;letter-spacing:0}
html[lang=ar] :is(.kj-catalogue-table,.technical-table) :is(th,td){font-size:16px;line-height:1.85;text-align:start}
html[lang=ar] :is(.kj-catalogue-table,.technical-table) small{font-size:14px}
html[lang=ar] .field :is(input,textarea,select){font-size:17px}
html[lang=ar] :is(.footer-links a,.footer-bottom,.footer-language button,.kj-motion-toggle){font-family:var(--font);font-size:14px;line-height:1.85;letter-spacing:0}
html[lang=ar] :is(.footer-bottom span,.footer-top p){font-size:15px}
html[lang=ar] :is(.kj-region-select button,.kj-region-status,.kj-globe-key,.kj-global-caption,.kj-map-credit){font-family:var(--font);font-size:14px;line-height:1.85;letter-spacing:0}
html[lang=ar] #wpc-system :is(.wpc-eyebrow,li,#wpc-explore){font-family:var(--font);font-size:14px;line-height:1.8;letter-spacing:0}
html[lang=ar] #wpc-system p{font-size:17px;line-height:1.85}
html[lang=ar] #wpc-system li{padding-block:10px}
html[lang=ar] #wpc-system #wpc-system-copy h2{margin-bottom:22px}
@media(max-width:1280px){
 html[lang=ar] .nav-link{font-size:18px;line-height:1.8}
}
@media(max-width:700px){
 html[lang=ar] :is(.hero-copy,.lede){font-size:17px}
 html[lang=ar] .project-card h3{font-size:27px}
 html[lang=ar] :is(.button,.text-link,.visual-link,.scene-more,.kj-wall-view-toggle){min-height:44px}
 html[lang=ar] .scene-image-affordance{font-size:14px}
 html[lang=ar] #wpc-system p{font-size:16px}
 html[lang=ar] #wpc-system :is(.wpc-eyebrow,li,#wpc-explore){font-size:14px}
 html[lang=ar] #wpc-system #wpc-system-copy h2{font-size:28px;line-height:1.5;margin-bottom:14px}
}
@media(max-width:700px){
 html:is([lang=ru],[lang=de]) .product-copy h3{font-size:clamp(22px,5.8vw,29px);line-height:1.18;overflow-wrap:break-word}
 html[lang=ru] #wpc-system .wpc-space-heading{font-size:34px;line-height:1.2}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .hero-heading h1{font-size:clamp(27px,7.5vw,43px)!important;line-height:1.2!important;max-width:100%!important}
 html[lang=ar] .hero-heading h1{font-size:clamp(26px,7vw,40px)!important;line-height:1.6!important}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .hero-copy{font-size:14px;line-height:1.7}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .page-title{font-size:clamp(31px,8.5vw,50px);line-height:1.2}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .section-title{font-size:clamp(27px,7.6vw,42px);line-height:1.25}
 html[lang=ar] :is(.page-title,.section-title){line-height:1.6}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .nav-link{font-size:13px;line-height:1.65}
 html[lang=ar] .nav-link{font-size:15px}
 html:is([lang="pt-BR"],[lang=fr],[lang=it],[lang=ar],[lang=de],[lang=vi],[lang=ru]) .final-cta h2{font-size:clamp(30px,8vw,48px);line-height:1.3}
 html[lang=ar] .final-cta h2{line-height:1.6}
 html[lang=ar] #wpc-system .wpc-space-heading{font-size:40px;line-height:1.5}
 .footer-language{display:flex;flex-wrap:wrap;gap:12px}
 .language-options{max-height:min(510px,calc(100dvh - 85px))}
}

/* Component microcopy and responsive Arabic overrides follow shared breakpoints. */
html[lang=ar] :is(.kb-chapter-nav a,.kx-local-nav a,.kx-factory-index a,.drawer-toggle span,.kj-profile-options button,.kj-credential-image>span,.pdf-image-type,.kj-spc-outline>span,.scene-pagination>span,.kb-principles article>span,.kb-photo button>span,[data-scene-open]>span){font-family:var(--font);font-size:15px;line-height:1.85;letter-spacing:0}
html[lang=ar] :is(.kb-context,.wpc-tech-pagination .wpc-tech-page-status){font-size:15px!important;line-height:1.85!important}
html[lang=ar] .kb-principles>div>span{font-family:var(--font);font-size:15px;line-height:1.85;letter-spacing:0}
html[lang=ar] .project-card :is(.eyebrow,.note){color:#5e6057}
html[lang=ar] .kx-atlas-category{font-size:17px!important;line-height:1.7}
html[lang=ar] .kx-atlas-category small{font-size:14px!important;line-height:1.85}
html[lang=ar] .nav-link{padding-block:12px;line-height:1.65}
html[lang=ar] .nav-submenu a{font-family:var(--font);font-size:16px;line-height:1.8;letter-spacing:0}
html[lang=ar] :is(.kb-rich-menu p,.kb-menu-description){font-size:16px;line-height:1.85}
html[lang=ar] .language-options button[lang=ar]{font-family:var(--font);font-size:16px;line-height:1.8}
html[lang=ar] :is(.scene-viewer-caption,.scene-collection-caption,.kj-lightbox-caption){font-size:16px;line-height:1.85}
html[lang=ar] .scene-image figcaption h3{line-height:1.65;overflow-wrap:break-word}
html[lang=ar] h2[id]{scroll-margin-top:calc(var(--header-height) + 32px)}
html[lang=ar] span[data-i18n-native]{font-family:inherit;font-size:inherit;line-height:inherit;letter-spacing:inherit}
html[lang=ar] .kj-case-meta{font-size:15px;line-height:1.85}
html[lang=ar] .gallery-disclosure>summary{font-family:var(--font);font-size:15px;line-height:1.85;letter-spacing:0}
html[lang=ar] #sample-reading .sample-editorial-images figcaption p{font-size:17px;line-height:1.85}
@media(max-width:700px){
 html[lang=ar] .hero-copy{font-size:17px;line-height:1.85}
 html[lang=ar] .nav-link{font-size:18px;line-height:1.8}
 html[lang=ar] .scene-image-open .scene-image-affordance{font-size:14px;line-height:1.85}
}
